
Метод Рунге-Кутта
Це найбільше часто використовуваний метод при чисельному розв'язанні задачі Коші, тому що дозволяє одержати наближене рішення з великою точністю.
Нехай необхідно вирішити диференціальне рівняння уI=f(x,y) при початкових умовах у(х=х0)=у0 на відрізку [a,b]. Розіб'ємо інтервал інтегрування на n рівних частин.
x0=a xn=b
x1=x0+h
x1=x1+h=x0+2h
…
xn=x0+nh
Покажемо сутність методу для першого інтервалу [x0,x1]. З точки М0(х0,у0) проведемо дотичну до кривої у=f(х). Рівняння дотичної буде мати вид:
у-у0=f I(x0,y0)(x-x0)
у-у0=10(x-x0) 10=f(x0,y0)
Знайдемо
точку
пересічення
дотичної
і прямої
це
буде точка
.
Знайдемо
кут
нахилу дотичної
до кривої в цій точці.
1
y



2



45







3





M1
M0


x0
x0+h
x

З точки М0 проведемо пряму з цим кутом нахилу.
y-у0 =20(х-х0)
Знайдемо
точку
пересічення
цієї прямої з прямої
.
Це
буде точка
.
Обчислимо
кут
нахилу дотичної
до інтегральної кривої в
даній точці
Проведемо пряму з даним кутом нахилу з точки М0. Рівняння прямої:
у-у0=30(х-х0)
Пересічення
цієї прямої з прямої х=х0+h
– це
точка
(x0+h,y0+30h).
Обчислимо
кут
нахилу дотичної
до інтегральної кривої в
даній точці
Обчислимо середній кут нахилу 0:
Проведемо
дотичну
до інтегральної кривої
до точки
M
з точки
М0.
Точка М1
– точка пересічення
цієї прямої з прямої х=х0+h.
Вона являється
шуканою.
у-у0=0(x-x0)
у1=у0+0h
у2=у1+1h
Таким чином, алгоритм розв'язання полягає в наступному:
-
розіб'ємо відрізок [a,b] n рівних частин;
-
для першого інтервалу [x0,x0+h] обчислимо кути нахилу
10=f(x0,y0)
;
-
визначимо середній кут нахилу 0
;
-
обчислимо значення шуканої функції в точці х1=х0+h.
Повторимо пункти 2,3,4 для інших підінтервалів.
k=1,2,…,h.
При тій самій кількості розбивок інтервалу метод РунгеКутта дозволяє одержати більш високу точність у порівнянні з раніш розглянутими методами, або для досягнення однієї й тієї ж точності зменшити кількість розбивок.
Метод РунгеКутта має 4-й порядок точності від кроку розбивки h. Чим менше крок h, тим більше точність у ступені h4, і навпаки. Для практичних обчислень похибку в останній n точці можна одержати
де yn – значення функції в точці xn при кількості розбивок n,
–
значення
функції в точці
xn
при
кількості розбивок 2n.
Багатокрокові методи розв'язання
диференціальних рівнянь
У раніше розглянутих методах на кожному кроку обчислень використовується інформація про значення шуканого розв'язку в одній попередній точці. Існує ряд методів, що дозволяють одержати рішення з великою точністю, використовуючи рішення в декількох точках, раніше отриманих. Ці методи називаються багатокроковими. Серед них найбільше часто використовуються методи Адамса. Сутність цих методів полягає в наступному. Нехай знайдені приблизні рішення функції в(х) у (k+1) точці, тобто в точках xi, xi-1, xi-2, …, xi-k відомі уi, уi-1, уi-2, …, уi-k. Для одержання функції за даними точками побудуємо інтерполяційний поліном Рk(x). Будемо вважати, що уI=Pk(x,y). Тоді
Використовуючи інтерполяційну формулу Ньютона (інтерполяція тому) і обмежуючись різницями 3-го порядку, можна одержати екстраполяційну формулу Адамса
Fi=hf(xi,y(xi))
Формула Адамса - Башфорта
Якщо у формулі різниці представити у вигляді виразів:
Fi-1=h(fi-fi-1)
2Fi-2=h(fi-2fi-1+fi-2)
3Fi-1=h(fi-3fi-1+3fi-2-fi-3),
то одержимо формула Адамса Башфорта:
fi=f(xi,yi)
Формула Адамса Мултона
Після обчислень yi+1 по формулі Адамса з початку визначається
fi+1=f(xi+1,yi+1),
а потім yi+1 уточнюється по формулі
Це формула Адамса Мултона. Для оцінювання похибки методу Адамса Мултона можна використовувати формулу:
Метод Мілна
Цей метод є багатокроковим із 4-м порядком точності типу пророкування - корекція. Для його роботи необхідно якимось однокроковим методом знайти попереднє значення у0, у1, у2, у3 у точках х0, х1, х2, х3. Потім по цих точках треба обчислити попередньо значення
i=
3, 4, 5, …
fi=f(xi,yi)
Потім
обчислюється
Далі відбувається коректування yi+1
Дана послідовність упопер. і укор. повторюється для усіх n точок інтервалу. Гранична абсолютна похибка значення yi визначається по формулі: