2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему
 
 Локальная погрешность метода Рунге-Кутты 4-го порядка
Сообщение10.01.2020, 22:39 


10/12/17
50
Дана система из двух дифференциальных уравнений 1-го порядка.
$$\left\{
\begin{array}{rcl}
 \frac{du}{dt}=-\lambda u \\
 \frac{dz}{dt}=-\omega z+\lambda u \\
\end{array}
\right.$$
С решением этой системы методом РК проблем не возникает.Но при коррекции шага,используя оценку локальной погрешности по правилу Рунге возникают трудности.
Для оценки локальной погрешности необходимо вычислить $S = \frac{\hat{u_{n+1}}-u_{n+1}}{2^p -1}$,
где $\hat{u_{n+1}}$ - точка численной траектории,полученная с шагом $\frac{h}{2}$ из точки $x+\frac{h}{2}$, а $u_{n+1}$ - точка численной траектории,полученная из текущей точки с шагом h.
$u_{n+1}$ получаем по формулам :
$$\left\{\begin{array}{rcl} 
\\k1=h f1(x,u,z) 
\\ l1=h f2(x,u,z) 
\\ k2=h f1(x+\frac{h}{2},u+\frac{k1}{2},z+\frac{l1}{2}) 
\\ l2=h f2(x+\frac{h}{2},u+\frac{k1}{2},z+\frac{l1}{2}) 
\\ k3=h f1(x+\frac{h}{2},u+\frac{k2}{2},z+\frac{l2}{2}) 
\\ l3=h f2(x+\frac{h}{2},u+\frac{k2}{2},z+\frac{l2}{2}) 
\\ k4=h f1(x+h,u+k3,z+l3) 
\\ l4=h f2(x+h,u+k3,z+l3) 
\\ K=u+(k1+2k2+2k3+k4) 
\\ L=z+(l1+2l2+2l3+l4) 
\\\end{array}\right.$$
А в формулах для $\hat{u_{n+1}}$ я не уверена.Так же для записи нужна точка численной траектории полученная из текущей точки с шагом $\frac{h}{2}$(но так как её расчёт трудностей не вызывает,то я обозначу её как М и N)
$$\left\{\begin{array}{rcl} 
\\k1=\frac{h}{2} f1(x+\frac{h}{2},M,N)
\\ l1=\frac{h}{2} f2(x+\frac{h}{2},M,N) 
\\ k2=\frac{h}{2} f1(x+\frac{h}{4},M+\frac{k1}{2},N+\frac{l1}{2}) 
\\ l2=\frac{h}{2} f2(x+\frac{h}{4},M+\frac{k1}{2},N+\frac{l1}{2}) 
\\ k3=\frac{h}{2} f1(x+\frac{h}{4},M+\frac{k2}{2},N+\frac{l2}{2}) 
\\ l3=\frac{h}{2} f2(x+\frac{h}{4},M+\frac{k2}{2},N+\frac{l2}{2}) 
\\ k4=\frac{h}{2} f1(x+\frac{h}{2},M+k3,N+l3) 
\\ l4=h f2(x+\frac{h}{2},M+k3,N+l3) 
\\ K=u+(k1+2 k2+2 k3+k4) 
\\ L=z+(l1+2 l2+2 l3+l4) 
\\\end{array}\right.$$

Помогите разобраться правильно ли записаны формулы.

 Профиль  
                  
 
 Re: Локальная погрешность метода Рунге-Кутты 4-го порядка
Сообщение10.01.2020, 23:24 
Заслуженный участник


09/05/12
25179
Выглядят они страшненько, но дело даже не в этом. Зачем вам нужна явная запись для использования правила Рунге? Фактически ведь сравнивать придется результаты численного интегрирования с разным шагом...

 Профиль  
                  
 
 Re: Локальная погрешность метода Рунге-Кутты 4-го порядка
Сообщение11.01.2020, 09:57 


10/12/17
50
Эту запись использую в программе,чтобы решить систему двух ДУ.Но с оценкой локальной погрешности не выходит результат,который должен быть.S получается слишком большим.Вот я и думаю что ошибка закралась в формулах

 Профиль  
                  
 
 Re: Локальная погрешность метода Рунге-Кутты 4-го порядка
Сообщение12.01.2020, 13:01 
Заслуженный участник


09/05/12
25179
Если вы для каждого случая написали специальную программу/подпрограмму/функцию, то ошибка там где-нибудь, конечно, есть, поскольку чесать правой ногой левое ухо без ошибок невозможно. Но так просто не надо делать. Надо написать реализацию метода Рунге-Кутты с постоянным шагом, задаваемым в виде параметра, а потом работать с результатами двух запусков этой реализации.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group