Розв'язок диференціального рівняння першого порядку методом Рунге-Кутта четвертого порядку

Нехай потрібно знайти наближений розв'язок звичайного диференціального рівняння першого порядку y'=f (x ,y), з заданою початковою умовою y(a)=y0 методом Рунге- Кутта четвертого порядку на відрізку [a, b] з заданим кроком h. Згідно даного методу, значення функції y(x) у вузлових точках обчислюються за формулою:

Y[i+1]=y[1]+h/6(K[i]+2K[2]+2K[3]+K[4]), i=0, 1, 2,...

де K[1]=f(x[i], y[i]); K[2]=f(x[i]+h/2, y[i]+h/2K[1]); K[3]=f(x[i]+h/2, y[i]+h/2K[2]); K[4]=f(x[i]+h, y+hK[3]).

Для реалізація поставленої задачі була розроблена програма в середовищі програмування Delphi, яка від користувача приймає наступні дані: початок та кінець відрізка, початкову умову і крок (саме рівняння задається програмно).

Результатом виконання програми є вивід послідовності точок та значень функції в цих точках, а також побудова відповідного графіка в компоненті TChart.

Метод Рунге-Кутта на Delphi

Інтерфейс програми, який реалізує метод Рунге-Кутта четвертого порядку

Скачати метод Рунге-Кутта четвертого порядку точності.

Матеріал був корисним, поділись в соціальних мережах:

Коментарі

Один коментар по темі “Розв'язок диференціального рівняння першого порядку методом Рунге-Кутта четвертого порядку”
  1. Polma пише:

    Спасибо! Все просто и четко, в том числе и с масштабами амплитуд на выходе.

Якщо тобі сподобалась дана тема, залиш свій коментар