- •Основные понятия и определения
- •Метод эйлера
- •Ошибка метода Эйлера
- •Метод Хьюна
- •Методы Рунге-КуттЫ.
- •Явные одношаговые методы численного решения обыкновенных дифференциальных уравнений с автоматическим выбором шага интегрирования
- •Метод рунге-кутта четвертого порядка точности с автоматическим контролем шага
- •Метод рунге-кутта-мерсона с контролем шага
- •Метод фельдберга с контролем шага
- •Метод ингленда с контролем шага
- •Многошаговые методы численного интегрирования дифференциальных уравнений
- •Методы Адамса-Башфорта
- •Методы Адамса-Моултона
- •Методы прогноза-коррекции
Многошаговые методы численного интегрирования дифференциальных уравнений
Одношаговые методы численного решения ДУ для нахождения значения в последующей точке используют только решение в точке . В этом разделе будут изложены многошаговые методы, использующие для решения задачи Коши информацию о нескольких точках. Широко распространенным семейством многошаговых методов являются методы Адамса. Различают явные и неявные многошаговые методы. Явные многошаговые методы используют явную схему (по известным значениям функции в предыдущих узлах находится значение в последующем узле ). К классу неявных методов относятся методы, использующие информацию о последующих и предыдущих точках.
К явной группе относятся методы Адамса-Башфорта, к неявной – методы Адамса-Моултона.
Методы Адамса-Башфорта
Пусть дано уравнение с начальным условием .
, |
(28) |
Многошаговые методы численного интегрирования основываются на интерполяции правой части уравнения (28). Запишем это уравнение в виде и проинтегрируем его на отрезке :
|
|
где - точное значение функции в точке .
Идея состоит в том, чтобы заменить функцией, интеграл от которой легко вычисляется. Существует множество типов интерполирующих функций; в этом разделе рассмотрим методы, связанные с полиномиальной интерполяцией. Функция заменяется полиномом степени , таким, что (многочлен аппроксимирует функцию на отрезке по значениям ).
Общая формула явного метода Адамса:
|
|
где - приближенные значения, найденные с помощью численного метода.
Явно интегрируя многочлен, получают формулы численного решения ДУ.
Простейший метод Адамса получается при и совпадает с методом Эйлера первого порядка точности:
|
(29) |
При (порядок метода ) многочлен задает прямую, проходящую через точки .
Рис.1.
Интерполяционный многочлен Ньютона (далее ИМН) на :
. |
|
Подставим значения , :
|
|
Проинтегрируем полином и подставим значения коэффициентов :
|
|
Получили формулу двухшагового метода Адамса-Башфорта:
|
(30) |
Чтобы начать решение по формуле (3), необходимо знать значение .
Для запуска решения используется одношаговый метод того же порядка (для данного случая - метод Эйлера с пересчетом (метод трапеций), модифицированный метод Эйлера и т. д.):
|
|
Дальше работает только многошаговый метод:
|
|
Пример 1: , , .
Аналитическое решение: .
Рис.2.
Сведем это уравнение к СДУ второго порядка:
|
|
Запишем систему в векторной форме:
, , , . |
|
Используем явный двухшаговый метод (30):
. |
|
Возьмем .
Первые две точки решения получим одношаговым методом трапеций:
|
|
Теперь у нас достаточно данных для продолжения решения только двухшаговым методом:
|
|
Пусть , есть квадратичный полином, интерполирующий данные (рис. 3).
Рис.3.
Итерполяционный многочлен Ньютона, построенный по этим точкам,
Найдем коэффициенты интерполяционного многочлена:
|
|
Определим значение интеграла
. |
|
Введем замену переменных
, |
(31) |
Тогда:
Определенный интеграл:
|
|
Формула трехшагового метода Адамса-Башфорта имеет вид:
, |
(32) |
Решение запускается с помощью одношагового метода третьего порядка точности:
, |
|
В практических расчетах чаще всего используется вариант метода Адамса, имеющий четвертый порядок точности и использующий на каждом шаге результаты предыдущих четырех ( , интерполяционный многочлен здесь является кубическим полиномом). Именно его и называют обычно методом Адамса:
, |
(33) |
Методы более высоких порядков получаются при увеличении числа предыдущих точек. С ростом степени многочлена формулы становятся более громоздкими, но принцип остается тем же.
Для запуска решения используется метод Рунге-Кутта того же порядка.
Получим формулу (33).
Итерполяционный многочлен Ньютона:
. |
|
Пусть .
Определим разность первого порядка функции как , а разности более высокого порядка как результат повторного применения этой операции:
, - биномиальные коэффициенты
|
(34) |
С помощью разностей (7) определим полином степени N как:
, ,
|
(35) |
При многочлен примет вид:
, |
|
Введя замену (34), получим:
, . |
|
Найдем интеграл:
|
|
Отсюда непосредственно следует формула (33).
Объем вычислений по методу Адамса примерно в четыре раза меньше, чем в методе Рунге-Кутта, поскольку последний требует четырехкратного вычисления правой части уравнения на каждой итерации, а в методе Адамса правая часть вычисляется один раз; остальные значения ( , и ) однократно вычисляются на предыдущих трех итерациях и пересылаются в текущую итерацию простым копированием. Такая экономия особенно существенна, если в правой части ДУ стоит сложное аналитическое выражение.