Дискретные численные методы решения обыкновенных дифференциальных уравнений. Учебное пособие
.pdfинтегрирования. В этом случае получается явный m -этапный метод Рунге – Кутты:
yn +1 = yn + hϕ(xn , yn ,h),
|
m |
= f (x, y), |
|
|
ϕ(x, y,h) = ∑ cr kr , k1 |
|
|
|
r =1 |
|
|
kr = |
r −1 |
|
|
f (x + har , y + h∑ brs k s ), r = 2, 3, ... , m. |
(1.11) |
||
s=1
Формула (1.11) удобна для практического использования при решении обыкновенных дифференциальных уравнений, так как она не требует вычисления дополнительных начальных данных и позволяет легко менять шаг интегрирования.
Наиболее известной является формула четырехэтапного метода:
|
yn+1 = yn |
+ |
h |
|
(k1 + 2k2 + 2k3 + k4 ), |
|
|||||||||||||||||
|
|
|
|
||||||||||||||||||||
|
|
|
|
|
|
|
|
6 |
|
|
|
|
|
|
|
|
|
|
|
|
|||
k = f (x |
|
|
, y |
|
), k |
|
|
|
= f (x |
|
+ |
1 |
h, y |
|
+ |
1 |
hk ), |
||||||
n |
n |
2 |
n |
|
n |
|
|||||||||||||||||
1 |
|
|
|
|
|
|
|
|
2 |
|
2 |
|
1 |
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
k3 = f (xn |
+ |
1 |
h, yn |
+ |
1 |
hk2 ), k4 = f (xn + h, yn + hk3 ) . (1.12) |
|||||||||||||||||
|
|
||||||||||||||||||||||
|
2 |
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
||||||
Методы (1.11) можно усложнить, полагая, что коэффициенты
{kr } определяются из системы m нелинейных уравнений. |
При этом |
|||||||||||
получается более точный неявный m -этапный метод Рунге – |
Кутты: |
|||||||||||
|
|
|
|
yn +1 = yn + hϕ(xn , yn ,h), |
|
|
||||||
|
|
|
|
|
|
|
m |
|
|
|
|
|
|
|
|
|
|
|
ϕ(x, y,h) = ∑ cr kr , |
|
|
||||
|
|
|
|
|
|
|
r =1 |
|
|
|
|
|
k |
|
= |
|
|
|
, y + h |
m |
k |
|
|
= 1, 2, ... , m. |
(1.13) |
r |
f x + ha |
r |
b |
s |
, r |
|||||||
|
|
|
|
|
∑ rs |
|
|
|
|
|||
|
|
|
|
|
|
|
s=1 |
|
|
|
|
|
Методы (1.13) являются более точными, чем соответствующие явные m -этапные методы (1.11), так как они содержат больше параметров. Однако вычислительный алгоритм при этом значительно усложняется, поскольку приходится для нахождения коэффициентов ar , brs , kr использовать итерационные методы.
11
Пример 1.2. Приведем пример на применение формул РунгеКутты. Будем искать решение уравнения
y′ = y, y(0) = 1
на отрезке [0, 1] при h = 0,1.
Точное решение имеет вид y = e x . Применяя формулы (1.12) и
обозначая |
|
|
yi |
= |
1 |
(k1 + 2k 2 |
+ 2k3 + k 4 ) , |
получим численное решение |
|||||||||||||||||||||
|
|
6 |
|||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
задачи. Ход вычислений приведен в табл. 1.2. |
|
|
|
||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Таблица 1.2 |
|
|
|
Численное решение задачи y′ = y, |
y(0) = 1 методом Рунге – |
Кутты |
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
xi |
|
|
|
|
|
yi |
|
|
|
|
|
|
f (xi , yi ) |
|
|
|
|
|
ki |
|
|
|
|||||
|
|
xi |
|
|
|
|
|
yi |
|
|
|
f (x |
|
|
f (xi , yi ) |
|
|
|
|
) |
hf1 = k1 |
k1 |
|
|
|||||
x |
|
+ h |
|
|
y |
|
+ |
1 |
k |
|
|
|
+ h |
|
, y |
|
+ 1 |
|
k |
|
|
|
|||||||
i |
2 |
|
i |
1 |
i |
2 |
i |
2 |
1 |
hf 2 = k 2 |
2k2 |
|
|
||||||||||||||||
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
xi + |
h |
2 |
|
yi + |
1 |
|
|
|
f (xi + |
h |
2 , yi + |
1 |
2 k |
2 ) |
hf 3 = k3 |
2k3 |
|
|
|||||||||||
|
|
2 k2 |
|
|
hf 4 = k 4 |
k4 |
|
|
|||||||||||||||||||||
xi + h |
|
|
yi + k3 |
|
|
f (xi + h, yi + k3 ) |
|
|
|
|
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||
|
|
0,0 |
|
|
1,000000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 yi |
|
yi |
|||||||
|
0,00 |
|
|
1,000000 |
|
|
|
1,000000 |
|
|
|
|
|
0,100000 |
0,100000 |
|
|
||||||||||||
|
0,05 |
|
|
1,050000 |
|
|
|
1,050000 |
|
|
|
|
|
0,105000 |
0,210000 |
|
|
||||||||||||
|
0,05 |
|
|
1,052500 |
|
|
|
1,052500 |
|
|
|
|
|
0,105250 |
0,210500 |
|
|
||||||||||||
|
0,10 |
|
|
1,105250 |
|
|
|
1,105250 |
|
|
|
|
|
0,110525 |
0,110525 |
|
|
||||||||||||
|
|
0,1 |
|
|
1,10517 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,631025 |
|
0,105174 |
|||||
|
0,10 |
|
|
1,105170 |
|
|
|
1,105170 |
|
|
|
|
|
0,110517 |
0,110517 |
|
|
||||||||||||
|
0,15 |
|
|
1,160429 |
|
|
|
1,160429 |
|
|
|
|
|
0,116043 |
0,232086 |
|
|
||||||||||||
|
0,15 |
|
|
1,163191 |
|
|
|
1,163191 |
|
|
|
|
|
0,116319 |
0,232638 |
|
|
||||||||||||
|
0,20 |
|
|
1,221489 |
|
|
|
1,221489 |
|
|
|
|
|
0,122149 |
0,122149 |
|
|
||||||||||||
|
|
0,2 |
|
|
1,22140 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,697390 |
|
0,116231 |
|||||
|
0,20 |
|
|
1,221400 |
|
|
|
1,221400 |
|
|
|
|
|
0,122140 |
0,122140 |
|
|
||||||||||||
|
0,25 |
|
|
1,282470 |
|
|
|
1,282470 |
|
|
|
|
|
0,128247 |
0,256494 |
|
|
||||||||||||
|
0,25 |
|
|
1,285524 |
|
|
|
1,285524 |
|
|
|
|
|
0,128552 |
0,257104 |
|
|
||||||||||||
|
0,30 |
|
|
1,349952 |
|
|
|
1,349952 |
|
|
|
|
|
0,134995 |
0,134995 |
|
|
||||||||||||
|
|
0,3 |
|
|
1,34986 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,770733 |
|
0,128456 |
|||||
|
0,30 |
|
|
1,349860 |
|
|
|
1,349860 |
|
|
|
|
|
0,134986 |
0,134986 |
|
|
||||||||||||
|
0,35 |
|
|
1,417353 |
|
|
|
1,417353 |
|
|
|
|
|
0,141735 |
0,283470 |
|
|
||||||||||||
|
0,35 |
|
|
1,420727 |
|
|
|
1,420727 |
|
|
|
|
|
0,142073 |
0,284146 |
|
|
||||||||||||
|
0,40 |
|
|
1,491933 |
|
|
|
1,491933 |
|
|
|
|
|
0,149193 |
0,149193 |
|
|
||||||||||||
|
|
0,4 |
|
|
1,49183 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,851795 |
|
0,141966 |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12
Окончание табл. 1.2
xi |
yi |
f (xi , yi ) |
ki |
6 yi |
yi |
0,40 |
1,491830 |
1,491830 |
0,149183 |
0,149183 |
|
0,45 |
1,566421 |
1,566421 |
0,156642 |
0,313284 |
|
0,45 |
1,570151 |
1,570151 |
0,157015 |
0,314030 |
|
0,50 |
1,648845 |
1,648845 |
0,164884 |
0,164884 |
|
0,5 |
1,64873 |
|
|
0,941381 |
0,156897 |
0,50 |
1,648730 |
1,648730 |
0,164873 |
0,164873 |
|
0,55 |
1,731166 |
1,731166 |
0,173117 |
0,346234 |
|
0,55 |
1,735288 |
1,735288 |
0,173529 |
0,347058 |
|
0,60 |
1,822259 |
1,822259 |
0,182226 |
0,182226 |
|
0,6 |
1,82213 |
|
|
1,040391 |
0,173398 |
0,60 |
1,822130 |
1,822130 |
0,182213 |
0,182213 |
|
0,65 |
1,913236 |
1,913236 |
0,191324 |
0,382648 |
|
0,65 |
1,917792 |
1,917792 |
0,191779 |
0,383558 |
|
0,70 |
2,013909 |
2,013909 |
0,201391 |
0,201391 |
|
0,7 |
2,01377 |
|
|
1,149810 |
0,191635 |
0,70 |
2,013770 |
2,013770 |
0,201377 |
0,201377 |
|
0,75 |
2,114458 |
2,114458 |
0,211446 |
0,422892 |
|
0,75 |
2,119493 |
2,119493 |
0,211949 |
0,423898 |
|
0,80 |
2,225719 |
2,225719 |
0,222572 |
0,222572 |
|
0,8 |
2,22556 |
|
|
1,270739 |
0,211790 |
0,80 |
2,225560 |
2,225560 |
0,222556 |
0,222556 |
|
0,85 |
2,336838 |
2,336838 |
0,233684 |
0,467368 |
|
0,85 |
2,342402 |
2,342402 |
0,234240 |
0,468480 |
|
0,90 |
2,459800 |
2,459800 |
0,245980 |
0,245980 |
|
0,9 |
2,45962 |
|
|
1,404384 |
0,234064 |
0,90 |
2,459620 |
2,459620 |
0,245962 |
0,245962 |
|
0,95 |
2,582601 |
2,582601 |
0,258260 |
0,516520 |
|
0,95 |
2,588750 |
2,588750 |
0,258875 |
0,517750 |
|
1,00 |
2,718495 |
2,718495 |
0,271850 |
0,271850 |
|
1,0 |
2,71830 |
|
|
1,552082 |
0,258680 |
В табл. 1.3 приведены значения точного решения y = e x с пятью верными десятичными знаками.
|
|
|
|
|
|
|
|
Таблица 1.3 |
|
|
|
Точное решение задачи y′ = y, |
y(0) = 1 |
|
|
||||
|
|
|
|
|
|
|
|
|
|
x |
0,1 |
|
0,2 |
0,3 |
0,4 |
|
0,5 |
|
0,6 |
e x |
1,10517 |
|
1,22140 |
1,34986 |
1,49182 |
|
1,64872 |
|
1,82212 |
|
|
|
|
|
|
|
|
|
|
|
x |
|
0,7 |
0,8 |
0,9 |
|
1,0 |
|
|
|
e x |
|
2,01375 |
2,22554 |
2,45960 |
|
2,71828 |
|
|
|
|
|
|
13 |
|
|
|
|
|
Как мы видим, результаты численных расчетов отличаются от точного решения незначительно. Так при выбранном шаге интегрирования h = 0,1 абсолютная погрешность метода на конце интервала интегрирования в точке x = 1 составляет 2·10-5, что соответствует относительной погрешности 0,0007 %.
1.3.ЛИНЕЙНЫЕ МНОГОШАГОВЫЕ МЕТОДЫ
Врассматриваемых выше одношаговых методах, после того как yn +1 получено, приближение yn уже не используется в дальнейших
расчетах. Идея многошаговых методов состоит в использовании некоторых предварительно вычисленных значений yn , yn−1 ,..., yn−k . Способ построения многошаговых методов заключается в следующем.
Интегрируя (1.1) в пределах от x до x + ξ , получаем
|
y(x + ξ) − y(x) = |
x +ξ |
(1.14) |
|
∫ f (t , y(t))dt , |
||
|
|
x |
|
где x |
и x + ξ – некоторые точки отрезка [a, b] . Функцию f (t, y(t)) за- |
||
меним |
интерполяционным полиномом, принимающим |
значения |
|
f n = f (xn , yn ) на множестве точек xn , в которых yn ранее вычислены.
Если xn , xn−1 ,..., xn−k |
являются узлами интерполяции, то интерпо- |
|||||||||||
ляционный полином для функции |
f (x, y) |
в форме Ньютона можно |
||||||||||
записать в виде |
|
|
− s |
|
|
|
|
t − x |
|
|
|
|
|
k |
|
|
|
|
|
|
|
|
|||
P(t) = |
∑ |
(-1) r |
Ñr f |
n |
, |
s = |
|
n |
, |
(1.15) |
||
|
|
|||||||||||
|
|
|
|
|
|
|
h |
|
|
|
||
|
r =0 |
|
r |
|
|
|
|
|
|
|
|
|
s |
|
s(s -1)...(s - r +1) |
r |
|
|
|
|
|
|
|
|
||
где |
|
= |
|
, Ñ |
|
f |
n |
– |
r -тая разность функции f (x |
n |
, y |
n |
) . |
|
|
||||||||||||
|
|
|
r! |
|
|
|
|
|
|
||||
r |
|
|
|
|
|
|
|
|
|
|
|||
Подставляя интерполяционный полином вместо подынтеграль- |
|||||||||||||
ной функции в выражение (1.14) и проинтегрировав его, получим различные формулы, которые определяются положением точек x и
x + ξ относительно узлов интерполяции. Например, при |
x = xn , ξ = h |
||
получаем формулу |
|
|
|
xn+1 |
k |
|
|
yn+1 - yn = ∫ P(t)dt =h∑γ r |
Ñr f n , |
(1.16) |
|
xn |
r =0 |
|
|
14
которая соответствует методу Адамса – Бэшфорта. Полагая x = xn−1 , ξ = h , получаем формулу
k |
|
yn - yn−1 = h∑γ r*Ñr f n , |
(1.17) |
r =0
которая соответствует методу Адамса – Мултона. Формулы Адамса (1.16) и (1.17) представляют собой соответственно класс явных и неявных методов.
1.4. БЛОЧНЫЕ МЕТОДЫ
Блочные методы основаны на принципе одновременного вычисления блока приближений yn+1 , yn+2 , ... , yn+ N .
Например, при N = 2 имеем неявный блочный метод:
yn+1 |
- |
1 |
yn+2 |
= |
1 |
yn |
+ |
h |
( f n - f n+2 ), |
|
||||
|
|
|
|
|||||||||||
|
2 |
|
|
2 |
|
|
4 |
|
|
|||||
yn+2 = yn |
+ |
h |
( f n |
+ 4 f n+1 + f n+2 ). |
(1.18) |
|||||||||
3 |
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Из формул (1.18) определяется блок ( yn +1, yn+ 2 ) по известному блоку ( yn−1 , yn ) .
1.5.ГИБРИДНЫЕ МЕТОДЫ
Вгибридных методах объединяются свойства линейных многошаговых и одношаговых методов. Как известно, в линейных многошаговых
методах |
используется |
информация |
лишь |
в |
точках |
xn = a + nh, |
n = 0, 1, 2, ..., а в методах Рунге – |
Кутты значения функции |
|||
f (x, y) вычисляют в промежуточных точках, например в точках xn + h . 2
Формулы k -шагового гибридного метода имеют следующий вид:
k |
α j yn+ j |
k |
β j f |
∑ |
= h ∑ |
||
j=0 |
|
j =0 |
|
где ak ¹ 0 , a0 + b0 ¹ 0 , g ¹ 0, 1, 2,..., k , f
n+ j + hβγ fn+γ , |
(1.19) |
n + γ = f (xn + γ , yn + γ ) .
15
Путем выбора параметров γ и βγ в формуле (1.19) можно получить методы с лучшими свойствами, чем у обычных линейных многошаговых методов.
1.6. МЕТОДЫ ОБРЕШКОВА
Это разностные методы, в которых используются производные высших порядков. Эти методы являются многошаговым обобщением с использованием разложения в ряд Тейлора. В k -шаговом методе Обрешкова, который имеет представление
k |
l |
|
k |
|
|
|
|
∑α j yn+ j = ∑ h |
i |
∑ β ij |
(i) |
|
, |
(1.20) |
|
|
yn+ j |
||||||
j =0 |
i=1 |
j =0 |
|
|
|
|
|
используются первые l |
производных от y . |
|
|
|
|
||
16
2. ЧИСЛЕННОЕ РЕШЕНИЕ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ ОДНОШАГОВЫМИ И МНОГОШАГОВЫМИ МЕТОДАМИ
2.1. МЕТОДЫ АДАМСА – БЭШФОРТА И АДАМСА – МУЛТОНА
В настоящее время методы Адамса являются одними из перспективных численных методов интегрирования для решения задачи Коши. Доказано, что при применении многошаговых численных методов Адамса для решения задачи Коши до 12 порядка область устойчивости уменьшается. При дальнейшем увеличении порядка область устойчивости, а также точность метода возрастает. Кроме того, при одинаковой точности для многошаговых методов на одном шаге интегрирования требуется меньше вычислений правых частей дифференциальных уравнений, чем в методах Рунге – Кутты. К достоинствам методов Адамса относится и то обстоятельство, что в них легко меняется шаг интегрирования и порядок метода.
На практике широко используются два типа методов Адамса – явные и неявные. Явные методы известны как методы Адамса – Бэшфорта, неявные – как методы Адамса – Мултона.
Рассмотрим применение численных методов для решения задачи Коши
y′ = f (x, y), x [a, b], y(a) = y0 . |
(2.1) |
При решении задачи (2.1) с помощью одношаговых методов значение yn+1 зависит только от информации в предыдущей точке xn . Можно предположить, что можно добиться большей точности, если использовать информацию о нескольких предыдущих точках xn , xn−1 , ..., xn−k . На этой идее основаны многошаговые методы.
Большинство многошаговых методов возникает на основе следующего подхода. Если подставить в уравнение (2.1) точное решение
y(x) и проинтегрировать уравнение на отрезке [xn , xn+1 ], |
то получим |
|
xn+1 |
xn+1 |
|
y(xn+1 ) − y(xn ) = ∫ y′(x)dx = |
∫ f (x, y(x))dx . |
(2.2) |
xn |
xn |
|
17 |
|
|
Заменяя в формуле (2.2) функцию f (x, y(x)) интерполяционным полиномом P(x) , получим приближенный метод
|
|
|
|
|
|
xn+1 |
|
|
|
||
|
|
yn+1 = yn |
|
+ ∫ P(x)dx . |
(2.3) |
||||||
|
|
|
|
|
|
xn |
|
|
|
|
|
Для того, чтобы построить |
|
полином P(x) , предположим, что |
|||||||||
yn , yn−1 , ... , yn−k |
– |
приближения |
|
к |
решению |
в точках |
|||||
xn , xn−1 , ... , xn−k . Полагаем, что узлы |
xi расположены равномерно с |
||||||||||
шагом h . Тогда |
fi = f (xi , yi ) , ( i = n, |
n − 1,..., n − k ) есть приближе- |
|||||||||
ния к f (x, y(x)) |
в точках xn , xn−1 , ... , xn−k . |
|
|
|
|||||||
В качестве P(x) |
возьмем интерполяционный полином степени k |
||||||||||
удовлетворяющий условиям |
|
|
|
|
|
|
|
|
|||
|
P(xi ) = fi , ( i = n, n − 1,..., |
n − k ) . |
|
||||||||
Если проинтегрировать этот полином явно, то получим следую- |
|||||||||||
щий метод: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
xn+1 |
|
|
|
||
|
|
yn+1 = yn |
|
+ ∫ P(x)dx . |
(2.4) |
||||||
|
|
|
|
|
|
xn |
|
|
|
|
|
При k = 0 полином P(x) есть константа, равная f n , |
и формула |
||||||||||
(2.4) превращается в обычный метод Эйлера. |
|
|
|
||||||||
При k = 1, P(x) |
является линейной функцией, проходящей через |
||||||||||
точки (xn−1 , f n−1 ) и (xn , f n ) , т.е. |
|
|
|
|
|
|
|
|
|||
|
P(x) = − |
x − xn |
|
f n−1 |
+ |
x − xn−1 |
f n . |
(2.5) |
|||
|
h |
|
|||||||||
|
|
|
|
|
|
|
h |
|
|
|
|
Интегрируя этот полином от xn до xn+1 , получим двухшаговый |
|||||||||||
метод |
|
|
|
|
|
|
|
|
|
|
|
|
|
yn+1 = yn + |
h |
(3 f n − f n−1 ) , |
(2.6) |
||||||
|
|
|
|||||||||
|
|
|
|
2 |
|
|
|
|
|
|
|
который использует информацию в двух точках xn и xn−1 . |
|
||||||||||
Если k = 2 , |
то P(x) представляет собой квадратичный полином, |
||||||||||
интерполирующий данные (xn−2 , f n−2 ) , (xn−1 , f n−1 ) и (xn , f n ) . Можно показать, что соответствующий метод имеет вид
18
yn+1 |
= yn |
+ |
h |
(23 f n − 16 f n−1 + 5 f n−2 ) . |
(2.7) |
|||||
|
||||||||||
|
|
|
|
|
12 |
|
|
|||
Если k = 3, то соответствующий метод определяется формулой |
||||||||||
yn+1 = yn |
+ |
|
h |
|
(55 f n − 59 f n−1 + 37 f n−2 − 9 f n−3 ) . |
(2.8) |
||||
24 |
||||||||||
При k = 4 имеем |
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|||
yn +1 = yn |
+ |
|
h |
|
(1901 fn − 2774 fn −1 + 2616 fn − 2 − |
|
||||
720 |
|
|||||||||
|
|
|
|
|
|
|||||
|
|
|
−1274 fn −3 + 251 fn −4 ). |
(2.9) |
||||||
Отметим, что метод (2.7) является трехшаговым, (2.8) – четы- |
||||||||||
рехшаговым и (2.9) |
– |
|
пятишаговым. Формулы (2.6)–(2.9) |
известны |
||||||
как методы Адамса – |
Бэшфорта. Метод (2.6) имеет второй порядок |
|||||||||
точности, поэтому его называют методом Адамса – Бэшфорта второго порядка. Аналогично, методы (2.7), (2.8) и (2.9) называются соответственно методами Адамса – Бэшфорта третьего, четвертого и пятого порядков.
Продолжая этот процесс, используя все большее число предыдущих точек, а также интерполяционный полином более высокой степени, получим методы Адамса – Бэшфорта сколь угодно высокого порядка.
Многошаговые методы порождают трудности, которых не возникает при использовании одношаговых методов. Эти трудности становятся понятными, если, например, обратиться к методам Адамса – Бэшфорта пятого порядка (2.9).
В задаче (2.1) |
задано начальное значение y0 , но при |
n = 0 для |
|
счета по формуле (2.9) |
необходима информация |
в точках |
|
x−1 , x−2 , x−3 , x−4 , |
которая, |
естественно, отсутствует. Обычный вы- |
|
ход из данной ситуации заключается в использовании какого-либо одношагового метода того же порядка точности, например метода Рунге – Кутты, до тех пор, пока не будет получено достаточно значений для работы многошагового метода. Или же можно на первом шаге использовать одношаговый метод, на втором – двухшаговый и так далее, пока не будут получены все стартовые значения. При этом су-
19
щественно, чтобы эти стартовые значения были вычислены с той же степенью точности, с какой будет работать окончательный метод. Поскольку стартовые методы имеют более низкий порядок точности, вначале приходится считать с меньшим шагом и использовать больше промежуточных точек.
Вывод методов (2.6)–(2.9) основан на замене функции f (x, y) интерполяционным полиномом P(x) . Известно, что имеет место теорема, доказывающая существование и единственность интерполяцион-
ного полинома. Если узлы x0 , x1 ,..., xn различны, |
то для любых |
f 0 , f1 , ..., f n существует единственный полином P(x) |
степени не вы- |
ше n такой, что P(xi ) = fi , i = 0, 1, ... , n . |
|
Хотя интерполяционный полином является единственным, имеется несколько способов представления этого полинома. Чаще всего используются полиномы Лагранжа, но и они оказываются неудобными, если к набору данных нужно добавить (или удалить из него) ка- кой-либо узел. В этом случае имеется другое представление интерполяционного полинома. Это представление Ньютона
P (x) = f |
0 |
+ |
(x − x0 ) |
Ñf |
0 |
+ |
(x − x0 )(x − x1 ) |
Ñ2 f |
0 |
+ ... |
|||
|
|
|
|||||||||||
n |
|
|
|
h |
|
2!h 2 |
|
||||||
|
|
|
|
|
|
|
|
(2.10) |
|||||
|
|
|
|
(x - x0 )(x - x1 )...(x - xn−1 ) |
|
|
|
||||||
|
... + |
Ñn f 0 , |
|
|
|||||||||
|
|
|
|
||||||||||
n!h n
где
Ñfi = fi+1 - fi ,
Ñ2 f 0 = Ñf1 - Ñf 0 = f 2 - 2 f1 + f 0 ,
Ñ3 f 0 = Ñ2 f1 - Ñ2 f 0 = f3 - 3 f 2 + 3 f1 - f 0 ,
........................
Ñn f 0
n =
i
= f |
|
n |
|
n |
|
|
- ... + (-1) n f |
|
, |
|
n |
- |
f |
n−1 |
+ |
f |
n−2 |
0 |
|||
|
|
|
|
|
|
|
||||
|
|
|
1 |
|
2 |
|
|
|
|
|
n(n -1)...(n - i + 1) . i!
20
