Изменение шага в многошаговых методах
ЦЕЛЬ ЛЕКЦИИ: Показать, как можно на основе так называемого вектора Нордсика, не прибегая к задаче интерполяции, эффективно изменять шаг интегрирования в процессе численного решения обыкновенных дифференциальных уравнений.
Сущность проблемы изменения шага в многошаговых методах сводится к следующему.
В текущий момент времени в памяти компьютера хранятся вычисленные значения решения и умноженные на значения его производной в моменты времени . Обозначим их вектором
.
Если в момент времени принимается решение об изменении шага интегрирования, т. е. , где , то для выполнения шага интегрирования многошаговым методом необходимы предшествующие значения решения и значения его производной в моменты времени . Эти значения образуют вектор
,
причем только . Остальные компоненты вектора должны быть перевычислены. Использование для этой цели интерполяционной процедуры может потребовать значительных вычислительных усилий.
Имеется другой путь. Введем так называемый вектор Нордсика, который для значений временного шага и имеет вид
,
.
Заметим, что , так как эти величины относятся к одному и тому же моменту времени .
Следовательно, значения векторов и связаны простым соотношением
,
или в компактной форме
,
где – диагональная матрица.
С другой стороны, вектор Нордсика может быть определен посредством следующего линейного преобразования переменных:
,
где – невырожденная матрица преобразования переменных линейного многошагового метода.
Объединение введенных матричных преобразований приводит к линейной системе
,
из которой для заданного вектора можно найти искомый вектор . Так как матрица имеет невысокий порядок, то такая процедура перехода от к оказывается достаточно эффективной.
Рассмотрим, как строится матрица преобразования переменных многошагового метода на примере явного метода Адамса третьего порядка. В этом случае
и
.
При построении матрицы воспользуемся тем свойством, что явный
метод Адамса третьего порядка позволяет найти точное решение, описываемое полиномом третьей степени
.
Очевидно, что
.
Полагая величину постоянной на трех шагах, выберем , , и вычислим из соотношений для , зна-чения :
.
Решим эту систему относительно коэффициентов :
Подставляя значения коэффициентов в соотношения для , нетрудно найти, что
В итоге связь вектора Нордсика явного метода Адамса третьего порядка с вектором имеет следующий вид:
.
Это преобразование переменных имеет место также для неявного метода Адамса четвертого порядка. Действительно, неявный метод Адамса четвертого порядка является трехшаговым методом и для него векторы и такие же, как и для явного метода Адамса третьего порядка.
Наконец, в случае метода Гира третьего порядка (он является трехшаговым) векторы и соответственно равны
Действуя по аналогии, нетрудно получить, что
.
В заключение подчеркнем, что для любого многошагового метода можно построить матрицу преобразования переменных. В свою очередь, привлечение матриц и позволяет эффективно перевычислять вектор при изменении шага интегрирования.
Сделаем ряд практических замечаний по проблеме выбора шага.
Замечание 1. При оценке погрешности интегрирования многошагового метода порядка по формуле необходимо вычислить значение . Это легко сделать, используя -ю компоненту вектора Нордсика на двух соседних шагах:
.
Погрешность расчета находится следующим образом:
.
Замечание 2. При изменении шага интегрирования локальная погрешность оценивается по формуле
.
Из этого соотношения легко найти параметр :
,
где – допустимая величина локальной погрешности.