Ме́тод А́дамса — конечноразностный многошаговый метод численного интегрирования обыкновенных дифференциальных уравнений первого порядка. В отличие от метода Рунге-Кутты использует для вычисления очередного значения искомого решения не одно, а несколько значений, которые уже вычислены в предыдущих точках.
Назван по имени предложившего его в 1855 году английского астронома Джона К. Адамса .
Пусть дана система дифференциальных уравнений первого порядка
y
′
=
f
(
x
,
y
)
,
y
(
x
0
)
=
y
0
{\displaystyle y'=f(x,y),y(x_{0})=y_{0}}
,
для которой надо найти решение на сетке с постоянным шагом
x
n
−
x
0
=
(
n
−
1
)
h
{\displaystyle x_{n}-x_{0}=(n-1)h}
. Расчётные формулы метода Адамса для решения этой системы имеют вид:[1]
a) экстраполяционные — метод Адамса-Башфорта
y
n
+
1
=
y
n
+
h
∑
λ
=
0
k
u
−
λ
f
(
x
n
−
λ
,
y
n
−
λ
)
{\displaystyle y_{n+1}=y_{n}+h\sum _{\lambda =0}^{k}{u_{-\lambda }f(x_{n-\lambda },y_{n-\lambda })}}
,
б) интерполяционные или неявные — метод Адамса-Мультона
y
n
+
1
=
y
n
+
h
∑
λ
=
−
1
k
−
1
v
−
λ
f
(
x
n
−
λ
,
y
n
−
λ
)
{\displaystyle y_{n+1}=y_{n}+h\sum _{\lambda =-1}^{k-1}{v_{-\lambda }f(x_{n-\lambda },y_{n-\lambda })}}
,
где
u
−
λ
,
v
−
λ
{\displaystyle u_{-\lambda },v_{-\lambda }}
— некоторые вычисляемые постоянные.
При одном и том же
k
{\displaystyle k}
формула б) точнее[2] , но требует решения нелинейной системы уравнений для нахождения значения
y
n
+
1
{\displaystyle y_{n+1}}
. На практике находят приближение из а), а затем приводят одно или несколько уточнений по формуле
y
n
+
1
(
i
+
1
)
=
y
n
+
h
∑
λ
=
0
k
−
1
v
−
λ
f
(
x
n
−
λ
,
y
n
−
λ
)
+
h
v
1
f
(
x
n
+
1
,
y
n
+
1
(
i
)
)
{\displaystyle y_{n+1}^{(i+1)}=y_{n}+h\sum _{\lambda =0}^{k-1}{v_{-\lambda }f(x_{n-\lambda },y_{n-\lambda })}+hv_{1}f(x_{n+1},y_{n+1}^{(i)})}
.
Методы Адамса
k
{\displaystyle k}
-го порядка требуют предварительного вычисления решения в
k
{\displaystyle k}
начальных точках. Для вычисления начальных значений обычно используют одношаговые методы, например, 4-стадийный метод Рунге — Кутты 4-го порядка точности.
Локальная погрешность методов Адамса
k
{\displaystyle k}
-го порядка —
O
(
h
k
)
{\displaystyle O(h^{k})}
. Структура погрешности метода Адамса такова, что погрешность остаётся ограниченной или растёт очень медленно в случае асимптотически устойчивых решений уравнения. Это позволяет использовать этот метод для отыскания устойчивых периодических решений, в частности, для расчёта движения небесных тел.
Явные методы Адамса — Башфорта[3]
y
n
+
1
=
y
n
+
h
f
(
t
n
,
y
n
)
{\displaystyle y_{n+1}=y_{n}+hf(t_{n},y_{n})}
, (метод Эйлера )
y
n
+
2
=
y
n
+
1
+
h
(
3
2
f
(
t
n
+
1
,
y
n
+
1
)
−
1
2
f
(
t
n
,
y
n
)
)
,
y
n
+
3
=
y
n
+
2
+
h
(
23
12
f
(
t
n
+
2
,
y
n
+
2
)
−
4
3
f
(
t
n
+
1
,
y
n
+
1
)
+
5
12
f
(
t
n
,
y
n
)
)
,
y
n
+
4
=
y
n
+
3
+
h
(
55
24
f
(
t
n
+
3
,
y
n
+
3
)
−
59
24
f
(
t
n
+
2
,
y
n
+
2
)
+
37
24
f
(
t
n
+
1
,
y
n
+
1
)
−
3
8
f
(
t
n
,
y
n
)
)
,
y
n
+
5
=
y
n
+
4
+
h
(
1901
720
f
(
t
n
+
4
,
y
n
+
4
)
−
1387
360
f
(
t
n
+
3
,
y
n
+
3
)
+
109
30
f
(
t
n
+
2
,
y
n
+
2
)
−
637
360
f
(
t
n
+
1
,
y
n
+
1
)
+
251
720
f
(
t
n
,
y
n
)
)
.
{\displaystyle {\begin{aligned}y_{n+2}&=y_{n+1}+h\left({\frac {3}{2}}f(t_{n+1},y_{n+1})-{\frac {1}{2}}f(t_{n},y_{n})\right),\\y_{n+3}&=y_{n+2}+h\left({\frac {23}{12}}f(t_{n+2},y_{n+2})-{\frac {4}{3}}f(t_{n+1},y_{n+1})+{\frac {5}{12}}f(t_{n},y_{n})\right),\\y_{n+4}&=y_{n+3}+h\left({\frac {55}{24}}f(t_{n+3},y_{n+3})-{\frac {59}{24}}f(t_{n+2},y_{n+2})+{\frac {37}{24}}f(t_{n+1},y_{n+1})-{\frac {3}{8}}f(t_{n},y_{n})\right),\\y_{n+5}&=y_{n+4}+h\left({\frac {1901}{720}}f(t_{n+4},y_{n+4})-{\frac {1387}{360}}f(t_{n+3},y_{n+3})+{\frac {109}{30}}f(t_{n+2},y_{n+2})-{\frac {637}{360}}f(t_{n+1},y_{n+1})+{\frac {251}{720}}f(t_{n},y_{n})\right).\end{aligned}}}
Неявные методы Адамса — Мультона[3]
y
n
=
y
n
−
1
+
h
f
(
t
n
,
y
n
)
{\displaystyle y_{n}=y_{n-1}+hf(t_{n},y_{n})}
, (неявный метод Эйлера)
y
n
+
1
=
y
n
+
1
2
h
(
f
(
t
n
+
1
,
y
n
+
1
)
+
f
(
t
n
,
y
n
)
)
,
y
n
+
2
=
y
n
+
1
+
h
(
5
12
f
(
t
n
+
2
,
y
n
+
2
)
+
2
3
f
(
t
n
+
1
,
y
n
+
1
)
−
1
12
f
(
t
n
,
y
n
)
)
,
y
n
+
3
=
y
n
+
2
+
h
(
3
8
f
(
t
n
+
3
,
y
n
+
3
)
+
19
24
f
(
t
n
+
2
,
y
n
+
2
)
−
5
24
f
(
t
n
+
1
,
y
n
+
1
)
+
1
24
f
(
t
n
,
y
n
)
)
,
y
n
+
4
=
y
n
+
3
+
h
(
251
720
f
(
t
n
+
4
,
y
n
+
4
)
+
646
720
f
(
t
n
+
3
,
y
n
+
3
)
−
264
720
f
(
t
n
+
2
,
y
n
+
2
)
+
106
720
f
(
t
n
+
1
,
y
n
+
1
)
−
19
720
f
(
t
n
,
y
n
)
)
.
{\displaystyle {\begin{aligned}y_{n+1}&=y_{n}+{\frac {1}{2}}h\left(f(t_{n+1},y_{n+1})+f(t_{n},y_{n})\right),\\y_{n+2}&=y_{n+1}+h\left({\frac {5}{12}}f(t_{n+2},y_{n+2})+{\frac {2}{3}}f(t_{n+1},y_{n+1})-{\frac {1}{12}}f(t_{n},y_{n})\right),\\y_{n+3}&=y_{n+2}+h\left({\frac {3}{8}}f(t_{n+3},y_{n+3})+{\frac {19}{24}}f(t_{n+2},y_{n+2})-{\frac {5}{24}}f(t_{n+1},y_{n+1})+{\frac {1}{24}}f(t_{n},y_{n})\right),\\y_{n+4}&=y_{n+3}+h\left({\frac {251}{720}}f(t_{n+4},y_{n+4})+{\frac {646}{720}}f(t_{n+3},y_{n+3})-{\frac {264}{720}}f(t_{n+2},y_{n+2})+{\frac {106}{720}}f(t_{n+1},y_{n+1})-{\frac {19}{720}}f(t_{n},y_{n})\right).\end{aligned}}}
Метод конечных разностей
Общие статьи Виды разностных схем