- •Глава 8 Одношаговые методы решения задачи Коши
- •8.1. Задача Коши. Метод Эйлера
- •8.2. Неявный метод Эйлера
- •8.3. Погрешности метода решения
- •8.4. Модифицированные методы Эйлера
- •8.5. Правило Рунге
- •8.6. Методы Рунге-Кутта
- •8.7. Метод Рунге-Кутта-Фельберга
- •Неявный метод Эйлера.
- •Методы Рунге-Кутта.
- •Метод Рунге-Кутта-Фельберга.
8.4. Модифицированные методы Эйлера
Представим точное
решение дифференциального уравнения
,
проходящее через точку
,
в виде ряда Тейлора:
(8.17)
Запишем приближенное решение в виде:
(8.18)
Подберем такую
функцию Ф, чтобы
было равно сумме первых трех слагаемых
в формуле (8.17). Будем искать функцию Ф в
виде:
,
где
– пока неизвестные коэффициенты.
Разложим функцию Ф в ряд по степеням h:
(8.19)
где по-прежнему
.
Из сравнения (8.17) и (8.19) с учетом (8.18) следует, что коэффициенты должны удовлетворять соотношениям:
(8.20)
Положив
,
т.е.
,
получим первый
модифицированный метод Эйлера:
(8.21)
Произведение,
стоящее в правой части формулы (8.21),
имеет вид формулы прямоугольников для
вычисления интегралов (см. рис. 8.2).
Отличие от квадратурной формулы
прямоугольников состоит в том, что нам
неизвестно точное значение функции f
в середине отрезка интегрирования
.
Положив
,
т.е.
,
получим второй
модифицированный метод Эйлера:
(8.22)
Произведение,
стоящее в правой части формулы (8.22),
похоже на квадратурную формулу трапеций.
Отличие от формулы трапеций состоит в
том, что нам неизвестно точное значение
функции f
в точке
.
Пример 8.6. Найдем решение начальной задачи:
, –
двумя методами:
методом Эйлера и вторым модифицированным
методом Эйлера. Проведем только один
шаг решения, т.е. найдем
.
Сравним результаты вычислений с точным
решением.
Точное решение легко может быть найдено аналитически, либо может быть найдено в среде Mathematica выполнением команды:
In[]:=DSolve[ {y'[x]==x+y[x], y[1]==1}, y[x], x]//Expand
Точное решение
равно:
и
.
Решение методом
Эйлера:
.
Решение вторым модифицированным методом Эйлера:
.
Видим, что решение модифицированным методом ближе к точному решению.
Пример 8.7. Найдем решение начальной задачи:
.
В примере 8.2 эта
задача решена методом Эйлера. Получены
значения:
.
Точное решение этой задачи равно:
Найдем теперь
решение первым модифицированным методом.
Проведем только один шаг решения, т.е.
найдем
.
.
.
Видим, что решение модифицированным методом существенно точнее, чем решение простым методом Эйлера.
8.5. Правило Рунге
Рассматриваем метод порядка p. Обозначим:
u
– точное решение в точке
,
лежащее на интегральной кривой, проходящей
через точку
;
y – приближенное значение в точке , полученное при решении, исходя из точки , с шагом h;
y*– приближенное значение в точке , полученное в результате перехода из точки за два шага половинной длины h/2.
Локальная погрешность
решения с шагом h:
Погрешность решения
с шагом h/2:
Вычтем второе
неравенство из первого:
Получаем отсюда первую формулу Рунге – оценку погрешности более точного решения – решения с шагом h/2:
(8.23)
Зная оценку погрешности, можно улучшить решение, полученное с шагом h/2. Получим тем самым вторую формулу Рунге, описывающую уточненное решение:
(8.24)
Пример 8.9. Найдем решение начальной задачи:
.
В примере 8.6 эта
задача решена модифицированным методом
Эйлера. Найдем теперь решение в точке
,
используя простой метод Эйлера, и уточним
результат по правилу Рунге.
Решение с шагом
:
.
Решение с шагом
:
Оценка погрешности:
.
Уточненное решение:
.
Результат совпадает с решением, найденным с помощью модифицированного метода Эйлера.
Вспомним, что точное решение равно: и .
