Математика / Начала анализа

Метод Адамса — Башфорта второго порядка для ОДУ

Двухшаговый метод Адамса — Башфорта использует два уже вычисленных наклона и получает явное приближение второго порядка с одним новым вызовом правой части.

Опубликовано: Обновлено:

Формула

$$y_{n+1}=y_n+h\left(\frac32 f_n-\frac12 f_{n-1}\right)$$
Схема AB2: линейная экстраполяция наклона
AB2: линейная экстраполяция наклонаAB2: линейная экстраполяция наклонаf₀=1; f₁≈1,105170918Экстраполированный средний наклон:1,5f₁−0,5f₀≈1,157756377y₂=f₁+0,1·1,157756377≈1,220946556Точное exp(0,2)≈1,221402758

Для y′=y: прошлый наклон 1, текущий exp(0,1); следующий шаг начинается при t=0,1.

Обозначения

$y_n,y_{n-1}$
два предыдущих состояния, единица y
$f_n,f_{n-1}$
наклоны в двух узлах, единица y/единица t
$h$
равномерный шаг, единица t

Условия применения

Нужны два согласованных начальных значения и равномерная сетка. Для старта y1 обычно применяют RK2 или другой одношаговый метод. Правая часть должна быть достаточно гладкой, а порядок и устойчивость предполагают сохранение шага без неучтённых разрывов.

Ограничения

Метод не самозапускается и чувствителен к ошибкам стартовых значений. Область устойчивости уже, чем у многих неявных методов; при изменении шага коэффициенты нельзя оставлять прежними. В жёстких задачах AB2 может требовать чрезмерно малый шаг или давать паразитное раскачивание.

Подробное объяснение

AB2 относится к явным многошаговым методам: новый результат строится из текущего состояния и истории правой части. Коэффициенты 3/2 и -1/2 получаются интегрированием линейной интерполяции f по двум последним узлам. Поэтому метод использует тенденцию наклона, а не только его последнее значение.

Экономия состоит в хранении прошлого наклона fₙ₋₁: перед переходом нужно вычислить только новый наклон fₙ в текущем узле. Но память о предыдущем наклоне становится частью состояния алгоритма. Ошибка в запуске или случайный сбой истории может продолжаться на всех следующих шагах.

Для гладкой задачи AB2 имеет глобальный второй порядок: локальная ошибка O(h³), общая O(h²). Это справедливо при корректном старте и постоянном h. Для второго глобального порядка достаточно ошибки старта O(h²); один шаг Эйлера из точного начального условия этому отвечает. Однако длинный стартовый участок первого порядка может ухудшить итог.

На тесте y'=λy множитель определяется характеристическим многочленом, а не простой одной дробью. Помимо физической моды есть паразитные корни многошаговой схемы; условие нулевой устойчивости гарантирует, что они не растут при h→0. Поэтому сравнивают не только точность, но и спектр шаговой матрицы.

AB2 особенно удобен в задачах с дорогой правой частью и длинным гладким интервалом. При событиях, смене режима или адаптивном шаге историю нужно перестроить; безопаснее временно вернуться к одношаговому методу, чем подставлять старые коэффициенты механически.

Как пользоваться формулой

  1. Получите y0 и y1 на равномерной сетке, причём стартовый метод должен быть не хуже требуемого второго порядка.
  2. Сохраните f_{n-1} и вычислите f_n=f(t_n,y_n) перед формированием нового значения.
  3. Подставьте два наклона в y_{n+1}=y_n+h(3f_n/2-f_{n-1}/2), не меняя знаки коэффициентов.
  4. После шага сдвиньте историю: старый f_n станет f_{n-1} для следующего перехода.
  5. Периодически сравнивайте с меньшим шагом и следите, что при событии или смене h история пересобрана.

Историческая справка

Многошаговые методы используют историю правой части вместо нескольких новых стадий внутри каждого шага. Семейство Адамса — Башфорта в современной записи получают интегрированием интерполяционного многочлена по уже известным узлам. Для двух последних наклонов линейная экстраполяция даёт коэффициенты 3/2 и −1/2.

В вычислительных изложениях XX–XXI веков эта конструкция отделяется от семейства Адамса — Моултона, которое включает неизвестный конечный наклон и требует неявного решения. Учебник Fundamentals of Numerical Computation рассматривает оба семейства и отдельно запуск, хранение истории и устойчивость. Такая организация отражает главное практическое различие: короткая формула шага не определяет полностью алгоритм, пока не указаны стартовые значения и правило обновления наклонов.

Историческая линия формулы

Адамс — Башфорт — устоявшееся имя явного многошагового семейства. Коэффициенты двухшагового варианта выводятся из линейной интерполяции правой части на равномерной сетке. Историю семейства нужно отличать от общей идеи квадратуры и от реализации запуска решателя.

Пример

Рассмотрим y'=y, y(0)=1. Для запуска возьмём точное значение y1=e^0,1≈1,105170918 при h=0,1; затем f0=1 и f1=y1. Шаг AB2 до t=0,2 даёт y2=y1+0,1(1,5·1,105170918-0,5·1)=1,220946556. Точное e^0,2≈1,221402758, ошибка около -0,000456202. Разность заметнее, чем у RK4, но метод использовал только один новый вызов f на втором шаге. Единицы согласованы: h умножает наклоны, а коэффициенты 3/2 и -1/2 безразмерны. В реальном запуске y1 получают отдельным стартовым методом; точное y1 здесь нужно только для проверки AB2.

Частая ошибка

Не запускайте AB2 одним значением: нужен предыдущий узел. Не используйте неравномерный h без вывода новых коэффициентов. Не забывайте сдвигать f-историю после шага. Не стартуйте методом первого порядка, если проверяете второй порядок. Не переносите историю через разрыв или изменение модели.

Практика

Задачи с решением

Линейная производная

Условие. Пусть f0=1, f1=1,1, y1=1,1, h=0,1. Найдите следующий AB2-шаг.

Решение. y2=1,1+0,1(1,5·1,1-0,5·1)=1,215.

Ответ. y₂=1,215.

Затухание

Условие. Для y'=-y, y0=1, y1=0,9 и h=0,1 найдите y2.

Решение. f0=-1, f1=-0,9; y2=0,9+0,1(1,5·(-0,9)-0,5·(-1))=0,815.

Ответ. y2=0,815.

Калькулятор

Расчёт: Следующее y

Равномерный шаг AB2; два наклона вводятся в порядке текущий и предыдущий.

Введите значенияКалькулятор покажет ответ, промежуточные величины и ход подстановки.
  • Равномерный шаг AB2; два наклона вводятся в порядке текущий и предыдущий.

Дополнительные источники

  • https://fncbook.com/multistep/
  • https://fncbook.com/implicit/

Связанные формулы

Математика

Явный метод Эйлера: решение задачи Коши по шагам

$y_{n+1}=y_n+h f(t_n,y_n),\qquad t_{n+1}=t_n+h$

Явный метод Эйлера приближённо решает уравнение y′ = f(t,y), продолжая решение по наклону в начале каждого шага. При гладком решении глобальная ошибка имеет первый порядок по шагу.

Математика

Метод Хойна: явное усреднение двух наклонов

$k_1=f(t_n,y_n),\quad k_2=f(t_n+h,y_n+hk_1),\quad y_{n+1}=y_n+\frac h2(k_1+k_2)$

В этой двухстадийной схеме сначала делают прогноз Эйлера на полный шаг, затем усредняют начальный и прогнозный конечный наклоны. Метод имеет второй порядок, но названия его вариантов различаются в литературе.

Математика

Неявная трапециевидная схема Кранка — Николсон для ОДУ

$y_{n+1}=y_n+\frac h2[f(t_n,y_n)+f(t_{n+1},y_{n+1})]$

Неявная трапециевидная схема усредняет производные на концах шага, включая неизвестный новый уровень. Она имеет второй порядок и A-устойчивость, но при крупном шаге затухание может сопровождаться сменой знака.