Тогда
Из тгеории интерполяции функций известно, что существует один и только один многочлен
степени не выше k, принимающий в
точке
заданные значения
соответственно. Этот многочлен
в случае достаточно гладкой функции
уклоняется от
на отрезке
на величину порядка
так что
Разностная формула Адамса имеет вид 4
При подстановке в левую часть вместо
соответственно значений
получим невязку порядка
При
интерполяционный многочлен
и формула (12) превращается в (7).
Далее,
Следовательно, формула (12) превращается в (8). Аналогично при
из (12) получаются формулы (9) и (10) соответственно.
Для вычисления по схеме (7) достаточно знать
. Для того чтобы начать вычисления по схеме (8), надо заранее знать, кроме
также еще и
Схема (9) требует использования
, а схема (10) — четырех значений:
. Эти значения могут быть найдены по схеме Рунге — Кутта; с помощью схемы Эйлера с мелким шагом; с помощью разложения решения в окрестности точки
в степенной ряд. Нестандартное начало счета является одним из недостатков схем Адамса по сравнению со схемами Рунге — Кутта. Отмечавшимся ранее достоинством схем Адамса является то, что для вычисления
нужно, в дополнение к уже вычисленным в процессе отыскания
значениям
вычислить только одно значение функций
и произвести некоторое число вычитаний для вычисления
.
Итак, преимущества методов Адамса перед методами Рунге—Кутта заключаются в меньшей трудоемкости вычислений на один шаг. Основные недостатки — нестандартное начало счета, невозможность (без усложнения формул) в процессе счета изменить, начиная с какой-то точки
, шаг
с которым ведутся вычисления. Последнее обстоятельство существенно в тех случаях, когда решение и его производные на некоторых участках меняются быстро, а на других изменяются медленно.
Схема Рунге — Кутта, если такого рода обстоятельства выясняются в процессе счета, может, например, но заданной подпрограмме автоматически уменьшить шаг или увеличить шаг на гладких участках, чтобы не производить лишней работы.
По-видимому, наиболее рационально использование обоих методов — Рунге—Кутта и Адамса с автоматическим переходом с одного из них на другой в процессе счета. При этом начинать счет надо по схеме Рунге — Кутта. В программе должен быть предусмотрен автоматический выбор шага, при котором
расчет ведется с нужной точностью. При этом программа выбора шага должна предусматривать некоторый «консерватизм при выборе шага: диктовать изменение шага только в случае.
если требуется «довольно сильно» его изменить. Если оказывается, что при вычислении нескольких последовательных значений
по схеме Рунге — Кутта не происходит изменения шага, целесообразен автоматический переход на счет по более экономной схеме Адамса. Как только вновь появляется необходимость изменить шаг, программа расчета должна переходить на вычисления по схеме Рунге — Кутта и т. д.
Для контроля правильности выбора шага обычно параллельно ведут вычисления с некоторым заданным и вдвое меньшим шагом. В пределах требуемой точности решения должны совпадать. В противном случае надо вести вычисления с более мелким шагом. Нужно также предусмотреть пробу на возможность увеличить шаг.