Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Классический метод Рунге-Кутта






Метод Рунге-Кутта четвертого порядка получаем при

P=4, c1=0, c2= c3=1/2, c4=1, d1=d4=1/6, d2=d3=1/3

Расчетные формулы имеют вид:

; (i=1, 2, …, m) (9)

То есть берутся 4 направления и усредняются.

Для практической реализации погрешности решения можно применять правило Рунге, полагая P =4:

Программа решения дифференциального уравнения методом Рунге-Кутта:

program RungeKutta; {*** Mетод Рунге - Кутта ***}

var d, x, a, b, h, y, k1, k2, k3, k4: real;

m, i: integer;

function f(x, y: real): real;

begin f: =cos(x);

end;

BEGIN writeln('Введите значения концов отрезка [a, b]');

readln(a, b);

writeln('Введите начальное значение y0=y(x0)'); readln(y);

writeln('Введите число значений функции на промежутке [a, b]');

read(m);

x: =a; h: =(b-a)/m;

for i: =0 to m do

begin writeln (x: 10: 3, y: 15: 4);

k1: =h*f(x, y);

k2: =h*f(x+h/2, y+k1/2);

k3: =h*f(x+h/2, y+k2/2);

k4: =h*f(x+h, y+k3);

d: =(k1+k2*2+k3*2+k4)/6; y: =y+d; x: =x+h

end; readln;

END.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.