- •Начальная задача для обыкновенных дифференциальных уравнений Лекция 24
- •Многошаговые Методы Адамса.
- •Предиктор корректорные методы Адамса.
- •Примеры решения типовых задач
- •5.2 Вторая формула Милна – формула уточнения.
- •Сведение задачи Коши для систем дифференциальных уравнений первого порядка к задаче Коши для оду первого порядка с использованием векторных обозначений.
- •Вопросы по теме
Примеры решения типовых задач
Пример. Решить экстраполяционным методом Адамса уравнение:
(33)
с начальным условием y(1) = 2.70 на интервале [1; 2.25], принимая h = 0.25 . В качестве разгонных точек x0, x1, x2, x3 и соответствующих решений y0, y1, y2, y3 для реализации метода Адамса взять значения, полученные методом Эйлера в точках: x1, x2, x3. Все вычисления вести с тремя верными в узком смысле знаками.
Решение. Вычислительная схема экстраполяционного метода Адамса определяется выражением:
(10)
Поскольку на основе разгонных данных для функции f (xi, yi) можно вычислить только конечные разности до третьего порядка включительно: fi; 2fi; 3fi, то для решения данной задачи формула (10) перепишется в виде:
Далее в соответствии с условием задачи по методу Эйлера на интервале [1; 1.75] с шагом h = 0.25 необходимо найти приближённые значения решения y1, y2, y3 данного уравнения. Для этого используется численная схема, определяемая уравнением:
, i
= 0, 1, …,
n
Очевидно, что для получения необходимых разгонных данных метода Адамса: y1 y(1.25); y2 y(1.5); y3 y(1.75) по методу Эйлера необходимо реализовать трёхшаговый вычислительный процесс.
Шаг
1:
В
результате находим:
Шаг
2:
В
результате находим:
Шаг
3:
В
результате находим:
Таким образом, в качестве разгонных значений для метода Адамса имеем следующие приближённые значения решения:
x0 = 1, x1 = 1.25, x2 = 1.5, x3. = 1.75,
y0 = 2.70; y1 = 2.36; y2 = 2.01; y3 = 1.67;
Далее в соответствии с требованиями метода Адамса на основе полученных расходных данных вычислим приближённые значения функции:
f
(xi,
yi)
=
i
=
0,
1, 2, 3;
f(x0, y0) = f(1.00; 2.70) = 1.35;
f(x1 y1) = f(1.25; 2.36) = 1.42;
f(x2, y2) = f(1.50; 2.01) = 1.34;
f(x3, y3) = f(1.75; 1.67) = 1.19.
Далее для реализации метода Адамса на основе имеющихся данных составим для функции f (xi, yi) таблицу конечных разностей:
Таблица 2 Конечные разности функции f (xi, yi) i = 0, 1, 2, 3;
-
i
xi
yi
f i
f i
2f i
3f i
0
1
2
3
4
5
1.00
1.25
1.50
1.75
2.00
2.25
2.70
2.36
2.01
1.67
1.39
1.14
1.35
1.42
1.34
1.19
1.04
0.7
0.08
0.15
0.15
0.15
0.07
0.00
0.08
0.07
Теперь по формуле при h = 0.25 и i = 3
получим:
и подставляя из таблицы 2 соответствующие значения функции f (x3, y3) = f3 = 1.19 и её конечных разностей: f2 = 0.15; 2f1 = 0.07; 3f0 = 0.08; (которые в таблице 2 подчёркнуты) окончательно получим:
Далее на основе полученного приближённого значения y4 = 1.39; вычисляем значение f (x4, y4) = f(2.00; 1.39) = f4 = 1.04; и конечные разности f3 = 0.15; 2f2 = 0.00; 3f1 = 0.07; (которые в таблице 2 обведены рамкой) окончательно получим при i = 4:
;
Этот вычислительный пошаговый процесс можно продолжать и далее…
Отметим, что для получения более точных результатов разгонные значения для метода Адамса целесообразно было бы получить более точным методом, например, методом Рунге-Кутта четвёртого порядка. Здесь мы использовали метод Эйлера исключительно из-за его просты.
Метод Милна четвёртого порядка.
Ещё одним методом прогноза и коррекции, используемым на практике, является метод Милна, в рамках которого имеется две формулы – первая и вторая формулы Милна, которые используются соответственно для предсказания и уточнения (коррекции) искомого решения y(x) задачи Коши.
5.1 Первая формула Милна – формула предсказания.
Снова строим численный методы решения начальной задачи.
y(x) = f (x, y), x [x0, b] (1)
y (x0) = y 0 (2)
При этом считаем, что в узлах xi–3, x i–2, xi–1, xi (т.е. в разгонных точках) уже получены приближённые значения функции y(x) и f (x, y(x) ):
-
yi3 y(xi3),
yi2 y(xi2),
yi1 y(xi1),
yi y(xi).
fi3 = f (xi3, yi3) f (xi3, y(xi3) ),
fi2 = f (xi2, yi2) f (xi2 y(xi2) ),
fi1 = f (xi1, yi1) f (xi1, y(xi1) ),
fi = f (xi, yi) f (xi, y(xi) ).
Проинтегрируем уравнение (3) на промежутке [xi3, xi+1], содержащем узлы xi–3, x i–2, xi–1, xi:
(34)
В выражении (34) функцию f (x,y(x)) заменим первым интерполяционным полиномом Ньютона третьей степени P3(x) с базовой точкой x i3, построенным по четырём узлам xi–3, x i–2, xi–1, xi
P3(x
i3
+ qh)
=
f
i3
+
q
f
i3
+
+
. (35)
При
подстановке в выражение (34) полинома
(35), зависящего от переменной
,
в интеграле формулы (34) необходимо
сделать замену переменной:
x
x
i3
+ qh;
в соответствии с которой:
.
Поэтому в результате выражение (34) перепишется в следующем виде:
Отсюда,
выразив конечные разности
через
значения функции f
(x,
y):
;
,
получим первую явную формулу (предсказания) Милна четвёртого порядка:
, (36)
которая, очевидно, является экстраполяционной,
поскольку делает предсказание решения
y (xi+1)
на основе интерполяционного полинома,
построенного по узлам
xi–3,
x i–2,
xi–1,
xi.
Далее в лекции, полученные по формуле
предсказания (36) приближённые значения
yi
для искомого решения y(x
i), будем
обозначать как
.
Оценка шаговой погрешности первой формулы Милна.
Главный член локальной погрешности формулы (36) можно найти при интегрировании первого из неучтённых в (35) слагаемого интерполяционного полинома Ньютона:
Считая
значения четвёртых разностей примерно
одинаковым в используемой области
таблицы конечных разностей функции fi,
опустим индекс у функции f
в записи
;
в результате получим следующее
приближённое представление решения в
точке x
i+1
на основе первой формулы Милна:
(37)
