logo search
METOD_2 информатика

Методы Эйлера и Рунге-Кутта решения задачи Коши

Простейший метод решения задачи Коши – метод Эйлера. Формула метода Эйлера:

y(xi+1) = y(xi) + h·f(xi,y(xi)), или

yi+1 = yi + h·f(xi,yi) (5)

Лучший результат дают модификации этого метода –так называемые методы Рунге-Кутта второго порядка. Формула Рунге-Кутта второго порядка с коррекцией в средней точке имеет вид:

(6)

y*i+1/2 – вспомогательное значение (оно вычисляется раньше, чемyi+1).

Другой метод Рунге-Кутта второго порядка – метод с коррекцией по средней производной. Формула для него имеет следующий вид.

(7)

y*i+1 – вспомогательное значение.

Еще точнее формулы метода Рунге-Кутта четвертого порядка:

(8)

В этих формулах сначала последовательно вычисляются k1, k2, k3, k4,а затем – yi+1.

При использовании формул численного решения ДУ (5) – (8) возникают погрешности. Они не превосходят:

Постоянные const1, const2, const3, const4 зависят только от поведения решения исходной задачи Коши вблизи точного решения на участке[a,b]и не зависят от выбора шагаh. Как видно, при уменьшении шагаhвkраз, погрешность уменьшается вkраз для метода Эйлера–метод первого порядка, вk2раз для формул (6) и (7) – методы второго порядка и, соответственно, вk4 раз для (8) – метод четвертого порядка. Шагhнеобходимо выбирать достаточно малым, чтобы погрешность решения не превосходила заданной величины.

Пример решения задачи Коши методом Эйлера.

Возьмем шаг h = 0.1, имеем

y0 = y(x0) = y(1) = 3,

y1 = y0 + h·f(x0,y0) = 3 + 0.1(3 – 2·1) = 3.1 » y(1.1)

y2= y1 + h·f(x1,y1) = 3.1 + 0.1(3.1 – 2·1.1) = 3.19 » y(1.2)

y3 = y2 + h·f(x2,y2) = 3.19 + 0.1(3.19 – 2·1.2) = 3.269 » y(1.3)

и т.д., пока не достигнем заданной точки b.