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 ] 

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



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

Сейчас этот форум просматривают: Shadow


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

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