§ 1.3. Методы Рунге Кутты |
Признаюсь, я с некоторою
торжественностью возвещаю об этом новом лице.
Ф.М. Достоевский. Село Степанчиково и его обитатели
В этом параграфе описываются и исследуются явные методы
1.3.1. Задача повышения порядка сходимости.
В приложениях особенно важна задача повышения порядка сходимости разностных схем. Разностные схемы более высокого порядка позволяют уменьшить шаг сетки. Например, если при заданной точности ε схема первого порядка требует шага |
В соответствии с теоремой Лакса для повышения порядка сходимости, вообще говоря, нужно повышать порядок аппроксимации разностной схемы.
В этом и последующих параграфах в случаях, когда это необходимо, мы считаем уравнение (E) скалярным,
1.3.2. Схема Хойна, или предиктор-корректор.
Попытаемся повысить порядок аппроксимации явной схемы Эйлера следующим
образом. В исходном уравнении (E) заменим производную обычным конечно-разностным соотношением, а |
Аналитически эта идея реализуется в виде разностной схемы (S) с разностным оператором
|
Эта схема (которую иногда называют разностной схемой Хойна) также является явной в том смысле, что ее решение вычисляется по рекуррентным формулам:
(φτ)0 = x0, |
|
Разностную схему Хойна (вернее рекуррентный переход от
x*i= xi1 + τf(ti1, xi1), | (1а) |
| (1б) |
1.3.3. Аппроксимация схемы предиктор-корректор.
Покажем, что если f в (E) дважды непрерывно дифференцируема, то схема предиктор-корректор имеет второй порядок аппроксимации.
Решение φ трижды непрерывно дифференцируемо (см. утверждение о гладкости решений) и поэтому
|
Ниже мы обозначаем
φ′(ti1) = fi1, |
φ′′(ti1) = ft, i1 + fx, i1φ′(ti1) = ft, i1 + fx, i1fi1. |
Далее, поскольку f ∈ C2
f(t + τ, x + h) = f + ftτ + fxh + O(τ2) + O(|| h|| 2). |
Поэтому
f(ti, φ(ti1) + τf[ti1, φ(ti1)]) = |
= fi1 + ft, i1τ+ fx, i1τfi1 + O(τ2) + O(|| τfi1|| 2) = |
= fi1 + τφ′′(ti1) + O(τ2) + O(|| τfi1|| 2). |
Задача 1.3.1. Докажите, что
Поэтому, фактически, правая часть последнего равенства равна
Оценим теперь
|
+ f(ti, (Pτφ)i1 + τf[ti1, φ(ti1)]) = |
|
|
|
Таким образом,
Задача 1.3.2. Докажите, что эта оценка равеномерна по
Таким образом, схема предиктор-корректор является схемой второго порядка аппроксимации, и поэтому, если бы мы доказали ее устойчивость, то в силу теоремы Лакса он была бы схемой второго порядка точности. К этому вопросу мы еще вернемся.
1.3.4. Схемы
Схема предиктор-корректор, так же, как и явная схема Эйлера, является представителем обширного семейства явных схем
|
оборвем ряд, взяв первые k + 1 его членов:
| (2) |
выразим все производные решения из уравнения (E) и подставим в правую часть (2):
φ(ti) ≈ φ(ti1) + τδ(ti1, φ(ti1), τ); | (3) |
здесь через δ обозначен результат такой подстановки. Например, для k = 2
| (4) |
Задача 1.3.3. Найдите δ при k = 4.
Разложение (3) порождает очевидным образом класс разностных схем
xi = xi1 + τδ(ti1, xi1, τ). | (5) |
Этот класс обладает существенным
1.3.5. Схемы
Попытаемся аппроксимировать δ при
Φ(t, x, τ) = α1f(t, x) + α2f[t + β2τ, x + γ21τf(t, x)], |
(выбор обозначений для индексов у коэффициентов α, β, γ станет ясен чуть ниже), подбирая коэффициенты α1, α2, β2, γ21 так, чтобы главные члены в разложениях δ и Φ по степеням τ были одинаковы. Имеем
Φ(t, x, τ) = (α1 + α2)f +τα2(β2ft + γ21fxf) + O(τ2). |
Сравнение с (4) приводит к системе уравнений на коэффициенты α1, α2, β2, γ21
|
Эта система имеет однопараметрическое семейство решений
|
Задача 1.3.4. Докажите!
Найденный набор решений порождает однопараметрическое семейство разностных схем
| (6) |
Схема (6), естественно, дополняется начальным условием
x0 = x0, |
которое мы в дальнейшем будем часто опускать в случаях, когда его наличие очевидно.
При
Задача 1.3.5. Каков порядок аппроксимации схемы (6) при различных α?
Схему (6) обычно записывают в виде
xi = xi1 + τΦ(ti1, xi1, τ), | (7) |
| (8) |
k1 = f(t, x), k2 = f[t + β2τ, x + γ21τf(t, x)]. | (9) |
и называют явной двухэтапной (или двухстадийной) схемой
1.3.6. Явные схемы
Общая явная p-этапная схема
xi = xi1 + τΦ(ti1, xi1, τ), x0 = x0, | (10) |
| (11) |
| (12) |
Коэффициенты αs, βs и γsr определяются (как и в предыдущем пункте) так, чтобы функция Φ наилучшим образом аппроксимировала функцию δ в (5). Подробнее эта процедура выглядит так. Вычисляются частные производные функции Φ порядков
|
(13) |
которые сильно упрощают как решение, так и исследование системы уравнений на коэффициенты искомых схем.
1.3.7. Уравнения на коэффициенты явной трехэтапной схемы.
Для примера изложим в виде задач план вывода уравнений на коэффициенты явной трехэтапной схемы
Задача 1.3.6. Покажите, что при k = 3
|
(здесь и ниже индексы у f обозначают соответствующие производные, например,
Задача 1.3.7. Покажите, что при p = 3
Φ(t, x, 0) = (α1 + α2 + α3)f, |
Φ′τ(t, x, 0)= (α2β2 + α3β3)ft + (α2γ21 + α3γ31 + α3β3γ32)fx f, |
Φ′′ττ(t, x, 0)= (α2β22+ α3β32)ftt+ 2(α2β2γ21 + α3β3γ31 + α3β3γ32)ftx f + |
+ [α2γ221+ α3(γ31 + γ32)2]fxx f2 + 2α3β2γ32ft fx + 2α3γ21γ32ft2f. |
Задача 1.3.8. Приравнивая δ, δ′τ,δ′′ττ и Φ, Φ′τ,Φ′′ττ,соответственно, в точке
| (14) |
Задача 1.3.9. Найдите хотя бы одно решение системы (14). Найдите все ее решения.
Решив эти задачи, читатель повторит, по существу, путь, проделанный Куттой (сам Кутта провел эти вычисления для четырехэтапной схемы) и убедится в том, что громоздкость вычислений сверхбыстро растет с ростом p. К настоящему времени придуманы изящные обозначения и приемы, позволяющие существенно упростить эти выкладки. В общем случае p-этапной схемы вопросы о построении и разрешимости системы уравнений на коэффициенты схемы и о нахождении ее решений весьма сложен.
1.3.8. Порядок аппроксимации явных схем
Система уравнений для определения коэффициентов схемы явной p-этапной схемы
|
Максимальный достигнутый порядок аппроксимации для явных схем
1.3.9. Неявные методы
Прямым обобщением рассмотренных в этом параграфе методов являются так называемые неявные p-этапные методы
xi = xi1 + τΦ(ti1, xi1, τ), x0 = x0, |
где
|
| (15) |
Коэффициенты αs, βs и γsr находятся из тех же соображений, что и для явных методов. Простейшим представителем этого класса схем является неявный метод Эйлера:
xi = xi1 + τf(ti, xi). |
В отличие от явных методов
Эта система при достаточно малых τ всегда однозначно разрешима. Доказать это утверждение можно так. Положим k = (k1, ..., kp) ∈ Rmp и F: Rmp→Rmp (= (Rm)p) формулой
F(k) = (f1(k), ..., fp(k)), |
где
|
В этих обозначениях система (15) записывается в виде
k = F(k). | (16) |
Если теперь определить норму в Rmp, например,
равенством |
Задача 1.3.10. Докажите!
Поэтому при l < 1 при достаточно малых τ,
Задача 1.3.11. Проведите подробное доказательство.
Необходимость решать на каждом шаге систему (15) резко увеличивает объем необходимой вычислительной работы.
Если в формулах (15) γsr = 0 при s > r и хотя бы одно
k1 = f(t + β1τ, x + τγ11k1) |
относительно k1, затем уравнение
k2 = f(t + β2τ, x + τγ21k1+ τγ22k2) |
(с уже найденным k1) относительно k2,
Задача 1.3.12. Найдите все неявные двухэтапные методы
Возрастающий объем вычислительных затрат для неявных методов
File based on translation from
TEX by TTH,
version 3.05.
Created 23 May 2002, 20: 16.