
num-meth
.pdf
4.3. Линейные многошаговые методы |
111 |
Будем считать свободными параметры |
|
α := α1 и |
β := β0. |
Тогда из системы (4.77) находим выражение остальных параметров:
α2 = 1 − α, β1 = 2 − 2β − α/2, β2 = β − α/2.
Из подстановки в (4.76) приводит к двухпараметрическому семейству двухшаговых методов, имеющих, по крайней мере, второй алгебраический порядок точности:
yi+1 = αyi + (1 − α)yi−1 + |
(4.78) |
+h[βfi+1 + (2 − 2β − α/2)fi + (β − α/2)fi−1]. |
При α = 1, β = 0 это семейство содержит частным случаем метод Адамса-Башфорта второго порядка (см.(4.46)), а при α = 1, β = 1/2—метод Адамса-Моултона второго порядка (4.53) (он же—метод трапеций, единственный из содержащихся в (4.78) одношаговых методов).
Выберем еще одну степень свободы, потребовав, чтобы метод (4.78) имел третий порядок. Аналогично тому, как получали третье уравнение системы (4.77), полагаем y(x) ≡ x3 и используем значения этой функции 0, h3, 8h3 и значения ее производной 0, 3h2, 12h2 на сетке x0 = 0, x1 = h, x2 = 2h в равенстве (4.78) с фиксированными i = 1. Имеем:
8h3 = αh3 + 12βh3 + (6 − 6β − 3α/2)h3,
откуда получаем выражение β = 13 + 12α . Таким образом, двухпараметрическое семейство
методов, по крайней мере, второго порядка (4.78) превращается в однопараметрическое семейство методов, по крайней мере, третьего порядка
+h[( |
|
+ 12)fi+1 |
|
( |
|
− |
yi+1 |
= αyi + (1 − α)yi−1 + |
(4.79) |
||||||
3 |
+ |
3 |
|
3 )fi + |
( |
3 |
− |
12 )fi−1]. |
|||||||
|
1 |
|
α |
|
|
4 |
|
|
2α |
|
|
1 |
|
5α |
|
Распоряжаться оставшимся единственным параметром α в (4.79) можно из разных соображений. Например, чтобы формула (4.79) была явной, нужно обнулить коэффициент при fi+1, т.е. положить α = −4. В результате этого приходим к двухшаговому методу
третьего порядка |
(4.80) |
yi+1 = 5yi−1 − 4yi + h(4fi + 2fi−1). |
Чтобы метод (4.79) относился к семейству (4.68) методов Адамса, следует обнулить коэффициент при yi−1, т.е. взять α = 1. При этом получаем известный метод Адамса-Моултона третьего порядка (4.54). При α = 0 формула (4.79) определяет метод Симпсона, иначе, вторую формулу Милна (4.65), имеющую четвертый порядок точности (см. выражение ее остаточного члена, точнее локальной ошибки в формуле (4.64)).
Как будет выяснено позже, свободный параметр в многошаговых методах может потребоваться для того, чтобы за его счет улучшить численную устойчивость метода.
Замечание. Существуют линейные многошаговые методы, не вписывающиеся в общую формулу (4.69). к таким относятся так называемые методы с забеганием вперед. В основе вывода этих методов тоже лежит интегро-интерполяционный метод подход, но, в отличие от методов Адамса, опирающихся на второй интерполяционый многочлен Ньютона при апроксимации подынтегральной функции f в интегральном равенстве (4.37)

112 Глава 4. Численные методы решения обыкновенных дифференциальных уравнений
применяется интерполяционный многочлен Бесселя. Он использует более близкую к промежутку [xi, xi+1] информацию о функции, что обеспечивает большую локальную точность. Однако в результате получаются формулы, в которых участвуют недоступные для непосредственного (и даже неявного) вычисления значения, следующие за yi+1. Например, основная формула наиболее известного представителя методов с забеганием вперед—
метода Коуэлла четвертого порядка—имеет вид
yi+1 = yi + |
h |
[−fi+2 |
+ 13fi+1 |
+ 13fi − fi−1]. |
(4.81) |
24 |
Одиночное применение таких формул невозможно, и методы с забеганием вперед реализуют совместно с другими, например, с методами Адамса. Так, выполнение одного шага метода Коуэлла (4.81) может осуществляться по следующему алгоритму.
Считая уже известным с предыдущего шага значения yi−1, fi−1 := f(xi−1, yi+1), yi, вычисляем значение fi := f(xi, yi); после этого проводим последовательные сближения по
|
|
|
|
|
|
(j) |
(j) |
(1) |
h |
|
|
формулам, где fi+1 := f(xi+1, yi+1) : fi+1 := yi + |
|
|
(3fi − fi−1) |
||||||||
2 |
|
||||||||||
(методом Адамса-Башфорта второго порядка), |
|
|
|
||||||||
(2) |
|
h |
(1) |
− fi−1) |
|
|
|
|
|||
fi+1 := yi + |
|
|
|
|
(5fi+1 |
|
|
|
|
||
12 |
|
|
|
|
|||||||
(методом Адамса-Моултона третьего порядка), |
|
|
|
||||||||
(2) |
|
|
|
|
h |
(2) |
|
|
|
|
|
fi+2 := yi+1 |
+ |
|
(23fi+1 − 16fi + 5fi−1) |
|
|
|
|||||
12 |
|
|
|
||||||||
(методом Адамса-Башфорта третьего порядка), |
|
|
|
||||||||
(3) |
|
h |
|
|
(2) |
|
|
|
|
||
fi+1 := yi + |
|
|
|
(−fi+2 + 13fi+1 + 13fi − fi−1) |
|
|
|
||||
24 |
|
|
|
(методом Коуэлла четвертого порядка); после проверки на точность полагаем yi+1
4.3.5О численном решении систем дифференциальных уравнений первого порядка
Пусть требуется найти решение задачи Коши для системы обыкновенных дифференциальных уравнений первого порядка, разрешенных относительно производных:
y′ = f (x, y , . . . , y ),
1 1 1 n
y2′ = f2(x, y1, . . . , yn),
...
yn′ = fn(x, y1, . . . , yn),
Введем следующие векторные обозначения:
y (x ) = y0,
1 0 1
y2(x0) = y20,
...
yn(x0) = yn0.
|
y1 |
|
|
y1′ |
|
|
y10 |
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
. |
|
|
. |
|
|
. |
|
|
|
Y := |
.. |
|
, Y ′ := |
.. |
|
, Y := |
.. |
|
, |
|
y2 |
|
y2′ |
|
y20 |
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
yn |
|
|
yn′ |
|
|
yn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4.3. Линейные многошаговые методы |
|
|
113 |
|
f1(x, y1, . . . , yn), |
|
|
|
|
|
|
|
|
. |
|
F (x, Y ) := |
|
.. |
|
f2(x, y1, . . . , yn), |
. |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
fn(x, y1, . . . , yn), |
|
|
С ними данная задача Коши принимает вид |
|
|
|
Y ′ = F (x, Y ), |
Y (x0) = y0, |
(4.82) |
по форме точно такой же, как и рассматриваемая до сих пор задача (4.35)-(4.36).
К векторному дифференциальному уравнению (4.82) можно применить любой из численных методов, изучавшихся в этой и в предыдущих главах (благодаря линейной структуре методов).
При этом скалярными величинами в формулах, определяющих методы, являются только независимая переменная x и расчетный шаг h; всем остальным величинам соответствуют введенные выше векторы размерности n. Следует лишь учесть, что при контроле точности вместо модуля нужно использовать норму вектора (например, норму-максимум).
4.3.6Численное решение дифференциальных уравнений высших порядков. Методы Адамса-Штермера
Одним из основных способов численного решения начальных задач для дифференциальных уравнений высших порядков является сведение их к соответствующим задачам для систем уравнений первого порядка.
Будем рассматривать уравнение второго порядка
y′′ = f(x, y, y′), x [x0, b] |
(4.83) |
с начальными условиями |
(4.84) |
y(x0) = y0, y′(x0) = y0′ . |
Введя новую переменную равенством z = y′, от уравнения (4.83) переходим к эквивалентной системе
y′ = z,
z′ = f(x, y, z).
Начальные условия (4.84) для нее перепишутся в виде
y(x0) = y0,
(4.85)
(4.86)
z(x0) = y0′ .
Кзадаче Коши (4.85)-(4.86), в соответствии со сказанным в предыдущем параграфе, можно применить любой численный процесс из рассмотренных.
Альтернативой способу сведения к системам могут послужить методы, выводимые специально для уравнений высших порядков, например, на интегро-интерполяционной ос-
нове. Покажем, как может быть построен такой метод типа метода Адамса для задачи (4.83)-(4.84).

114 Глава 4. Численные методы решения обыкновенных дифференциальных уравнений
Пусть известны значения yi ≈ y(xi), yi′ ≈ y′(xi) и несколько предыдущих приближенных значений решения y(x) и его производной y′(x). Требуется получить формулы для вычисления величин yi+1 и yi′+1—приближенных значений функции y(x) и y′(x) в очередной расчетной точке xi+1 = xi + h. Для их вывода проинтегрируем уравнение (4.83) на промежутке [xi, x], в результате чего приходим к интегральному уравнению
y′(x) = y′(xi) + ∫x f(t, y, y′)dt |
(4.87) |
xi |
|
относительно неизвестной функции y′(x). Зафиксируем в нем x = xi+1, заменим y′(xi)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
xi+1 |
|
|
|
известным приближенным значением yi′ и подставим в интеграле |
|
x∫i |
f(x, y(x), y′(x))dx |
||||||||||||||||||
вместо функции f(x, y(x), y′(x)) интерполяционный многочлен Ньютона (второй) |
|
||||||||||||||||||||
|
|
|
|
|
|
Pk(x) = Pk(xi + qh) = fi + q∆fi−1 + |
|
|
|
||||||||||||
+ |
q(q + 1) |
∆2f |
|
+ |
· · · |
+ |
q(q + 1) . . . (q + k − 1) |
∆kf |
|
, |
|
|
(4.88) |
||||||||
|
i−2 |
|
|
i−k |
|
|
|||||||||||||||
2! |
|
|
|
|
|
|
|
|
k! |
|
|
|
|
|
|
||||||
построенный по значениям fj |
:= f(xj, yj, yj′ ) (где j = i − k, i − k + 1, . . . , i − 1, i). После |
||||||||||||||||||||
интегрирования получаем конечноразностную формулу |
|
|
|
|
|
|
|
|
|||||||||||||
1 |
|
|
|
5 |
|
|
3 |
251 |
|
|
|
|
|
||||||||
yi′+1 = yi′ + h(fi + |
|
∆fi−1 + |
|
∆2fi−2 + |
|
∆3fi−3 + |
|
∆4fi−4 |
+ . . . ), |
(4.89) |
|||||||||||
2 |
12 |
8 |
720 |
которая представляет собой экстраполяционный метод Адамса-Башфорта (см (4.44)), применяемый здесь для нахождения приближенных значений производной, а не самого решения.
Для выражения значения yi+1 ≈ y(xi+1) решения данной задачи через те же конечные разности, что участвуют в формуле (4.89), проинтегрируем равенство (4.87) в пределах от xi до xi+1. Имеем точное равенство
|
xi+1 |
x |
|
|
y(xi+1) ≈ y(xi) + |
∫ [y′(xi) + ∫ |
f(t, y, y′)dt]dx, |
|
|
|
xi |
xi |
|
|
которое заменяем приближенным равенством |
|
|
|
|
|
xi+1 x |
|
|
|
y(xi+1) ≈ yi + hyi′ + ∫ |
∫ |
f(t, y, y′)dtdx. |
(4.90) |
|
|
xi |
xi |
|
|
Результат подстановки в правую часть последнего вместо f(t, y(t), y′(t)) интерполяционного многочлена Pk(t) вида (4.88) принимаем за искомое значение yi+1, т.е. полагаем
xi+1 x |
|
|
|
yi+1 = yi + hyi′ + ∫ |
∫ |
Pk(t)dtdx. |
(4.91) |
xi |
xi |
|
|
Сделав замены переменных интегрирования x = xi + ph и t = xi + qh, выполним двойное

4.3. Линейные многошаговые методы |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
115 |
||||||||||||||||||||||
интегрирование многочлена: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
xi+1 x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
p |
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
∫ |
∫ |
Pk(t)dtdx = h2 |
∫ |
dp |
∫ |
Pk(xi + qh)dq = |
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
xi |
xi |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
|
0 |
|
|
|
|
|||||||||
|
1 |
|
p |
[fi + q∆fi−1 + |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
= h2 ∫0 |
dp ∫0 |
|
|
q |
q + 1) |
|
|
|
|
|
|
|
|
q(q + 1)(q + 2) |
||||||||||||||||||||||||||||||
|
|
( |
|
|
|
|
|
∆2fi−2 |
+ |
|
|
|
|
|
|
|
∆3fi−3 + |
|||||||||||||||||||||||||||
|
|
|
|
|
|
|
2! |
|
|
|
|
|
|
3! |
|
|||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
q |
q |
+ 1)( |
q + 2)(q + 3) |
∆4fi−4 + . . . ]dq = |
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
( |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4! |
|
|
|
|
|
|
|
|
|||||||
1 |
|
|
|
p2 |
|
|
|
p3 |
|
|
|
|
|
p2 |
|
|
|
|
|
|
|
1 |
|
|
|
p4 |
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||
= h2 ∫0 |
[fip + |
|
|
|
|
∆fi−1 + |
( |
|
|
+ |
|
|
|
)∆2fi−2 + |
|
|
( |
|
+ p3 + p2)∆3fi−3 + |
|||||||||||||||||||||||||
|
2 |
|
|
6 |
|
|
4 |
6 |
4 |
|||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
( |
p5 |
|
|
|
3p4 |
|
11p3 |
|
+ 3p2)∆4fi−4 + . . . ]dp = |
|||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
+ |
|
|
|
+ |
|
|
|
+ |
|
|
|
|
|
|||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
24 |
5 |
|
|
2 |
3 |
|
|
|||||||||||||||||||||||||||
|
|
|
( |
1 |
|
|
1 |
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
19 |
|
|
|
|
|
|
|
|
|
|
3 |
∆4fi−4 + . . . ). |
||||||||||
|
= h2 |
|
|
fi + |
|
∆fi−1 + |
|
∆2fi−2 + |
|
|
∆3fi−3 + |
|
||||||||||||||||||||||||||||||||
|
|
2 |
6 |
8 |
180 |
32 |
Подставляя это выражение двойного интеграла в (4.91), получаем конечноразностную формулу для приближенного вычисления самого решения y(x) в точке xi+1:
yi+1 = yi + hyi′ + |
|
|
|
|
|
|
|
|
|
|
|
||||
+ |
h2 |
(fi + |
1 |
∆fi−1 |
+ |
1 |
∆2fi−2 |
+ |
19 |
∆3fi−3 |
+ |
3 |
∆4fi−4 |
+ . . . ). |
(4.92) |
2 |
3 |
4 |
90 |
16 |
Совокупность формул (4.89) и (4.92) определяет для задачи (4.83)-(4.84) семейство многошаговых экстраполяционных методов Адамса в конечноразностном виде. Фиксируя в них порядок последней используемой разности, тем самым задаем шаговость и порядок метода (если последними учитываются k-е разности, то в скобках формул (4.89) и (4.92) берется k + 1 слагаемых, что как раз соответствует шаговости и порядку метода), причем первые из отбрасываемых слагаемых (с учетом множителя за скобками) грубо характеризуют шаговую погрешность вычисления yi′+1 и yi+1.
Например, при k = 3 в (4.88), т.е. при использовании первых, вторых и третьих разностей, из (4.89) и (4.92) получаем для задачи (4.83)-(4.84) следующий явный четырехшаговый метод Адамса четвертого порядка (в ординатном виде):
|
|
|
|
|
h |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
yi′+1 |
= yi′ + |
|
(55fi − 59fi−1 + 37fi−2 |
− 9fi−3), |
|
|
|
|
|||||||||||
24 |
|
|
|
(4.93) |
|||||||||||||||
|
|
|
|
|
|
|
|
h2 |
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y |
|
= y |
|
+ hy′ |
+ |
|
|
(323f |
i − |
264f |
i−1 |
+ 159f |
i−2 |
− |
38f |
i−3 |
). |
||
|
i+1 |
|
i |
|
i |
360 |
|
|
|
|
|
Главная часть локальной ошибки первой из формул (4.93) составляет величину 251720h∆4fi−4 =
O(h5), а второй—величину 323 h2∆4fi−4 = O(h6).
Нетрудно вывести и неявные методы Адамса для задачи (4.83)-(4.84), подменяя функцию f в равенствах (4.87) и (4.90) интерполяционным многочленом вида (4.88) с увеличенными на единицу индексами, т.е. многочленом Pk(xi+1 +qh). Совершенно очевидно, что для вычисления yi′+1 при этом будет использована выведенная ранее интерполяционная
116 Глава 4. Численные методы решения обыкновенных дифференциальных уравнений
формула Адамса-Моултона (4.51), где вместо yi, yi+1 следует записать соответственно yi′, yi′+1. Вывод неявной формулы для вычисления yi+1 предоставим читателю. На базе явных и неявных методов можно устраивать предиктор-корректорные алгоритмы с пошаговым контролем точности.
Рассмотрим один частный вид уравнений (4.83), для которых вычисления по методу Адамса можно сделать более лаконичными. Будем строить метод решения задачи Коши для уравнения
y′′ = f(x, y), |
(4.94) |
правая часть которого не содержит производной. Обратив внимание на то, что в таком случае при вычислении значений fj значения производной не требуются, вместо двух формул, реализующих явный метод Адамса (4.89), (4.92), можно попытаться ограничиться одной формулой (4.92), если удастся избавиться в ней от слагаемого hyi′. С этой целью выведем вспомогательную формулу типа (4.92), также содержащую слагаемое hyi′, что позволит исключить его алгебраическим сложением формул.
Проинтегрируем равенство (4.87), в котором вместо функции f(x, y, y′) будем подразумевать функцию f(x, y)—правую часть уравнения (4.94), на промежутке [xi−1, xi]. Имеем
y(xi) = y(xi−1) + hy′(xi) +x |
∫xi |
x∫x f(t, y(t))dtdx. |
(4.95) |
|
i 1 |
i |
|
Подставляя сюда yi−1 вместо y′(xi), yi′ вместо y′(xi) и тот же многочлен Ньютона (4.88) вместо подынтегральной функции f, получим формулу, аналогичную (4.91):
yi = yi−1 + hyi′ +x |
∫xi |
x∫x Pk(t)dtdx. |
(4.96) |
|
i 1 |
i |
|
Стеми же заменами переменных x = xi + ph и t = xi + qh производим двойное интегрирование в (4.96) (см. выкладки при выводе формулы (4.92)):
|
|
|
|
|
∫xi ∫x |
Pk(t)dtdx = h2 |
∫0 |
dp |
∫p Pk(xi + qh)dq = |
|||||||
|
(− |
|
|
|
xi 1 xi |
|
|
|
−1 |
|
0 |
|
+ . . . ). |
|||
= h2 |
1 |
|
1 |
1 |
|
∆2fi−2 + |
1 |
∆3fi−3 + |
7 |
∆4fi−4 |
||||||
|
fi + |
|
∆fi−1 + |
|
|
|
|
|
||||||||
2 |
6 |
24 |
45 |
480 |
Будем теперь рассматривать совместно получающуюся подстановкой в (4.96) этого выражения двойного интеграла формулу
|
|
|
|
|
|
|
|
|
|
|
|
yi = yi−1 + hyi′ + |
|
||
+ |
h2 |
(−fi + |
1 |
∆fi−1 |
+ |
1 |
∆2fi−2 |
+ |
2 |
∆3fi−3 |
+ |
7 |
∆4fi−4 |
+ . . . ) |
(4.97) |
2 |
3 |
12 |
45 |
240 |
и формулу (4.92), где, как и в (4.97), считаем fj := f(xj, yj). Вычитая из равенства (4.92) равенство (4.97), приходим к формуле
|
|
|
|
|
|
|
|
yi+1 = 2yi − yi−1 + |
|
|||
+h2 |
(fi + |
1 |
∆2fi−2 |
+ |
1 |
∆3fi−3 |
+ |
19 |
∆4fi−4 |
+ . . . ), |
(4.98) |
|
|
|
|
|
|||||||||
12 |
12 |
240 |
4.4. О проблемах численной устойчивости |
117 |
которая называется формулой Штермера, а также формулой Адамса-Штермера. Как видим, метод Штермера решения начальной задачи (4.94), (4.84) определяется одной явной формулой (4.98) и является более простым и экономичным по сравнению с базовым для него методом Адамса.
Так же просто выводится и неявная формула Штермера, которая может быть привлечена к организации вычислений по схеме "предсказание-уточнение".
4.4О проблемах численной устойчивости
Описывается общий принцип построения методов решения задач численного анализа и определяются связанные с этим понятия аппроксимации, устойчивости, сходимости. Показывается реализация этого принципа при аппроксимации разностными уравнениями начальных задач для обыкновенных дифференциальных уравнений. Приводятся краткие сведения о решениях линейных разностных уравнений с постоянными коэффициентами, которые затем используются при изучении поведения решений и ошибок некоторых простейших схем. Вводится определение устойчивости по Дальквисту, дающее возможность легко выявлять неустойчивые многошаговые методы. Через понятие области устойчивости определяется А-устойчивость и A(α)-устойчивость разностных методов, обеспечивающие приемлемость этих методов для решения жестких задач (в частности, выделяются чисто неявные методы дифференцирования назад, обладающие таким свойством).
4.4.1Общая схема решения задач численного анализа.
4.4.1.1Аппроксимация, устойчивость, сходимость.
Большинство задач численного анализа, будь то начальные или граничные задачи для дифференциальных уравнений, интегральные уравнения и т.п., достаточно естественно можно записать в виде уравнения
F (y) = z, |
(4.99) |
где F : Y → Z - линейный или нелинейный оператор (или функционал), переводящий элементы метрического пространства Y в метрическое пространство Z. Суть приближенных методов решения таких задач, как ясно видно из всего предшествующего материала заключается в том, что уравнение (4.99) заменяется близким ему, в некотором смысле более простым (обычно конечномерным) уравнением
Fn(yn) = zn. |
(4.100) |
Это уравнение определяется оператором Fn : Yn → Zn, соответствующим данному оператору F и действующим из метрического пространства Yn в метрическое пространство Zn. При этом элементы yn Yn и zn Zn рассматриваются как образы элементов y Y и z Z соответствующих исходных пространств, и такая связь задается некоторыми операторами сноса φn : Y → Yn и ψn : Z → Zn, т.е. равенствами
yn = φn(y), zn = ψn(z).
Обратное соответствие между пространствами Yn и Y , а точнее, между Yn и некоторым подпространством пространства Y , устанавливается с помощью оператора восполнения
ϕ−n 1:
y = ϕ−1 |
(yn). |
(4.101) |
n |
|
|
118 Глава 4. Численные методы решения обыкновенных дифференциальных уравнений
Чтобы понять, как можно описать близость задач (4.99) и (4.100), проследим связь между пространствами Y , Z, Zn и Yn на уровне элементов.
Зафиксируем некоторый элемент y Y . Его образом в пространстве Z, благодаря данному оператору F , будет элемент z = F (y), а в пространстве Zn с помощью оператора сноса ψn получаем элемент ψn(F (y)). С другой стороны, тому же элементу y оператор сноса φn ставит в соответствие элемент yn = φn(y) пространства Yn, а ему, в свою очередь, новый оператор Fn сопоставляет элемент Fn(φn(y)) пространства Zn. Так как элементы z˜n := ψn(F (y)) и zˆn := Fn(φn(y)) служат образами одного и того же элемента y из Y в одном и том же пространстве Zn, то по близости между ними можно судить о том, насколько близки операторы Fn и F .
Определение 4.4.1. Говорят, что уравнение
Fn(yn) = ψn(z) |
(4.102) |
аппроксимирует уравнение (4.99) (оператор Fn аппроксимирует оператор F ), если для любых y из D(F ) Y мера аппроксимации
ρzn (Fn(φn(y)), ψn(F (y))) |
(4.103) |
стремится к нулю при n → ∞. (Здесь ρzn (·, ·) обозначает метрику, т.е. расстояние между указанными в скобках элементами пространства Zn).
Чтобы иметь возможность грубо сравнивать качество различных моделей типа (4.102) задачи (4.99), часто используют понятие порядка аппроксимации, связывая стремление к нулю меры аппроксимации (4.103) с порядком убывания какой-либо зависящей от n
малой величины (шага аппроксимации).
Предположим, что решения y Y и yn Yn уравнений соответственно (4.99) и (4.102) существуют и единственны. Поскольку решение задачи (4.99) ищется в пространстве Y , ее приближенным решением считается получаемый с помощью оператора восполнения (4.101) элемент
y(n) = φ−n 1(yn)
решение же yn задачи (4.102) называется каркасом приближенного решения. Наверное, главным вопросом любой теории приближенных методов решения задач вида (4.99) является вопрос о том, можно ли приближенным решением y(n) сколь угодно хорошо отразить поведение точного решения y , иначе, вопрос о сходимости y(n) к y .
Определение 4.4.2. Говорят, что имеет место сходимость приближенных решений y(n) к точному решению y уравнения (4.99), если
ρY (y , y(n)) −→ 0
(n→∞)
(т.е. если расстояние между y(n) и y по метрике пространства Y может быть сделано сколь угодно малым).
Очевидно, имеет смысл рассматривать также сходимость каркасов приближенных решений, понимая под этим выполнение условия
ρYn (yn, φn(y )) −→ 0.
(n→∞)

4.4. О проблемах численной устойчивости |
119 |
Подобно порядку аппроксимации, вводится понятие порядка сходимости приближенных решений и/или их каркасов.
Наличие фактических оценок величин ρYn (yn, φn(y )) позволяет не только делать выводы о сходимости приближенных решений и/или их каркасов, но и указывать погрешности получаемых приближений к решению.
Вопрос о сходимости приближенных решений y(n) к y тесно связан с тем, можем ли мы надежно получать каркас решения yn, решая упрощенную задачу (4.102)? Дело в том, что эта упрощенная задача (4.102), вообще говоря, другая и тоже решается приближенно; улучшение качества аппроксимации, т.е. уменьшение ее меры (4.103), влечет увеличение размерности n решаемой задачи (4.102), а значит, рост объема вычислений, что, в свою очередь, может привести к катастрофическому нарастанию вычислительных погрешностей.
Определение 4.4.3. Вычислительный процесс называется устойчивым, если малые погрешности исходных данных вызывают малые погрешности результата (рост погрешностей ограничен).
В определении 4.4.3 заложено скорее понятие, чем строгое определение численной (иначе, вычислительной) устойчивости. Имеется ряд более конкретных определений численной устойчивости применительно к более конкретно поставленным задачам приближенных вычислений.
4.4.2Простейшие разностные аппроксимации задачи Коши
4.4.2.1 Глобальная погрешность метода Эйлера |
|
||
Вернемся к изучению численных процессов решения начальной задачи |
|
||
|
|
y′ = f(x, y), x [x0, b], |
(4.104) |
|
|
y(x0) = y0 |
|
Положив h = |
b−x0 |
, введем на отрезке [x0, b] равномерную сетку |
|
|
n |
|
|
|
|
ωh = {xi|xi = x0 + ih(i = 0, 1, . . . , n)}. |
(4.105) |
Функции, определенные во всех узлах xi сетки ωh, называются сеточными функциями. Например, если некоторая функция y = φ(x) определена в узлах сетки ωh, то сеточной функцией следует считать функцию yi = φ(xi) дискретного аргумента i = 0, 1, ..., n, т.е. (n + 1)-мерный вектор (φ(x0), φ(x1), . . . , φ(xn)). В свете сказанного в предыдущем параграфе бесконечномерная дифференциальная задача (4.104), состоящая в нахождении удовлетворяющей ей функции - решения y = y(x), сводится к конечномерной задаче вычисления (n + 1)-мерного вектора (y(x0), y(x1), ..., y(xn)) - соответствующей этому решению y(x) сеточной функции y(xi) на ωh, другими словами, каркаса решения y0 ≈ y(x0), y1 ≈ y(x1), . . . , yn ≈ y(xn). Одним из основных приемов такого сведения является уже использовавшийся в разностный подход, т.е. рассмотрение уравнения (4.104) в узлах сетки ωh и аппроксимация в них производной y′ через соседние значения сеточной функции, соответствующей исходному решению y = y(x) (иначе, замена дифференциального оператора разностным).
Знание порядков используемых формул аппроксимации производной и их остаточных членов позволяет получать представление о порядке аппроксимации данной бесконечномерной задачи конечномерной, выводить оценки погрешностей приближенных решений

120 Глава 4. Численные методы решения обыкновенных дифференциальных уравнений
(на сетке) и изучать устойчивость и сходимость каркасов решений. В связи с таким подходом к построению конечномерных моделей дифференциальных уравнений, соответствующие численные методы их решения называют разностными уравнениями или разностными схемами.
Положим в (4.104) x = xi и к левой части полученного равенства
|
y′(xi) = f(xi, y(xi)) |
|
||||
применим простейшие аппроксимации первого и порядков. Имеем: |
|
|||||
y(xi+1) − y(xi) |
= f(xi, y(xi)) + O(h); |
|
||||
|
h |
|
|
|
|
|
|
y(xi) − y(xi−1) |
= f(xi, y(xi)) + O(h); |
(4.106) |
|||
|
h |
|||||
|
|
|
|
|
||
y(xi+1) − y(xi−1) |
= f(xi, y(xi)) + O(h2); |
(4.107) |
||||
|
2h |
|
|
|
|
|
−3y(xi) + 4y(xi+1) − y(xi+2) |
= f(xi, y(xi)) + O(h2); |
|
||||
|
2h |
|
|
|
|
|
y(xi−2) − 4y(xi−1) + 3y(xi) |
= f(xi, y(xi)) + O(h2); |
(4.108) |
||||
|
2h |
|
|
|
|
Отбрасывание в этих равенствах последнего слагаемого, характеризующего порядок аппроксимации, и замена в них точных значений y(xj) решения y(x) в j-х узлах сетки ωh приближенными значениями yj приводит к следующим разностным схемам:
yi+1 = yi + hf(xi, yi), i = 0, 1, . . . , n − 1; |
(4.109) |
||||||||
yi+1 = yi + hf(xi+1, yi+1), |
i = 0, 1, . . . , n − 1; |
(4.110) |
|||||||
yi+1 = yi−1 + 2hf(xi, yi), |
i = 1, . . . , n − 1; |
(4.111) |
|||||||
yi+1 = 4yi − 3yi−1 − 2hf(xi−1, yi−1), |
i = 1, . . . , n − 1; |
(4.112) |
|||||||
4 |
yi − |
1 |
yi−1 − |
2h |
|
i = 1, . . . , n − 1; |
(4.113) |
||
yi+1 = |
|
|
|
f(xi+1, yi+1), |
|||||
3 |
3 |
3 |
Первые три из схем (4.109)-(4.113) определяют хорошо знакомые методы Эйлера: явный, неявный и уточненный. Последние две схемы второго порядка представляют собой явный и неявный двухшаговые методы второго порядка, внимание которым будет уделено позже.
До сих пор нами изучались лишь локальные ошибки методов, т.е. ошибки, возникающие на одном текущем шаге в предположении, что исходным материалом для получения результата этого шага служат точные значения. Попытаемся теперь хотя бы в простейших случаях изучить поведение ошибок в их взаимосвязи на соседних шагах и получить представление о процессе накопления методической погрешности к n-му шагу. Знание того, как изменяются погрешности от шага к шагу, позволяет делать выводы о численной устойчивости разностного метода и о сходимости поставляемых им каркасов приближенных
решений, получать оценки глобальной погрешности. |
|
Обозначим |
(4.114) |
δi = y(xi) − yi |
- разность между значением точного решения y = y(x) задачи (4.104) в i-м узле сетки (4.105) и соответствующей компонентой каркаса решения, получаемого тем или иным разностным методом.