Журнал вычислительной математики и математической физики, 2019, T. 59, № 7, стр. 1100-1107

О блочных разностных схемах высокого порядка для жестких линейных дифференциально-алгебраических уравнений

М. В. Булатов 13*, В. Х. Линь 2**, Л. С. Соловарова 1***

1 Институт динамики систем и теории управления СО РАН
664033 Иркутск, ул. Лермонтова, 134, Россия

2 Вьетнамский национальный университет
10000 Ханой, Вьетнам

3 Институт систем энергетики им. Л.А. Мелентьева СО РАН
664033 Иркутск, ул. Лермонтова, 130, Россия

* E-mail: mvbul@icc.ru
** E-mail: linhvh@vnu.edu.vn
*** E-mail: soleilu@mail.ru

Поступила в редакцию 12.02.2018
После доработки 12.02.2018
Принята к публикации 11.03.2019

Полный текст (PDF)

Аннотация

В статье рассматривается начальная задача для жестких линейных дифференциально-алгебраических уравнений. Для решения этих задач предлагается блочный вариант многошаговых разностных схем. Сформулированы достаточные условия сходимости методов к точному решению и получена оценка скорости сходимости. Приведены результаты численных расчетов тестовых примеров. Библ. 12. Табл. 2.

Ключевые слова: дифференциально-алгебраические уравнения, индекс, жесткие задачи, блочные разностные схемы.

1. ВВЕДЕНИЕ

Рассмотрим систему обыкновенных дифференциальных уравнений (ОДУ)

(1.1)
$A(t)x{\kern 1pt} '(t) + B(t)x(t) = f(t),\quad t \in [0,1],$
(1.2)
$x(0) = {{x}_{0}},$
где $A(t)$, $B(t)$ есть $(n \times n)$-матрицы, $f(t)$ и $x(t)$ – заданная и искомая n-мерные вектор-функции.

В том случае, если

(1.3)
$\det A(t) \equiv 0,$
то систему (1.1) принято называть дифференциально-алгебраическими уравнениями (ДАУ). Всюду в дальнейшем изложении предполагается, что элементы $A(t)$, $B(t)$ и $f(t)$ обладают достаточной гладкостью, необходимой для проведения выкладок, и начальные условия (1.2) согласованы с правой частью, т.е. задача (1.1) имеет достаточно гладкое решение. Под решением задачи (1.1) будем понимать вектор-функцию, которая обращает (1.1) в тождество и удовлетворяет начальному условию (1.2).

Характеристикой сложности рассматриваемых задач является понятие индекса, которое имеет несколько определений. Приведем одно из них (см., например, [1]).

Определение 1. Если $r$ – наименьшее число аналитических дифференцирований (1.1), необходимых для того, чтобы из данной системы путем алгебраических преобразований выделить систему ОДУ, разрешенную относительно производной, то r будем называть индексом системы (1.1).

Если элементы матриц $A(t)$ и $B(t)$ – вещественно-аналитические функции, то данное определение эквивалентно следующему (см. [2], [3]). Пусть существуют неособенные для любого $t \in [0,1]$ матрицы $P(t)$ и $Q(t)$ с вещественно-аналитическими коэффициентами такие, что

(1.4)
$P(t)A(t)Q(t) = \left( {\begin{array}{*{20}{c}} {{{E}_{k}}}&0 \\ 0&{N(t)} \end{array}} \right),$
(1.5)
$P(t)A(t)Q{\kern 1pt} '(t) + P(t)B(t)Q(t) = \left( {\begin{array}{*{20}{c}} {J(t)}&0 \\ 0&{{{E}_{{n - k}}}} \end{array}} \right),$
где ${{E}_{k}}$ – единичная матрица размером $k$, $N$ – верхнетреугольная матрица с нулевыми квадратными блоками на диагонали и индексом нильпотентности $r \geqslant 1$, т.е. ${{N}^{r}}(t) \equiv 0,\;{{N}^{{r - 1}}}(t)\not { \equiv }0$ для $t \in [0,1]$. Умножая (1.1) на $P(t)$ и производя замену $x(t) = Q(t)y(t)$, получаем
(1.6)
$\begin{gathered} P(t)A(t)Q(t)y{\kern 1pt} {\text{'}}(t) + (P(t)A(t)Q(t){\kern 1pt} '(t) + P(t)B(t)Q(t))y(t) = \\ = \;\left( {\begin{array}{*{20}{c}} {{{E}_{k}}}&0 \\ 0&{N(t)} \end{array}} \right)\left( {\begin{array}{*{20}{c}} {y_{1}^{'}} \\ {y_{1}^{'}} \end{array}} \right) + \left( {\begin{array}{*{20}{c}} {J(t)}&0 \\ 0&{{{E}_{{n - k}}}} \end{array}} \right)\left( {\begin{array}{*{20}{c}} {{{y}_{1}}} \\ {{{y}_{2}}} \end{array}} \right) = \left( {\begin{array}{*{20}{c}} {{{g}_{1}}} \\ {{{g}_{2}}} \end{array}} \right), \\ \end{gathered} $
где ${{(g_{1}^{{\text{т }}}(t),g_{2}^{{\text{т }}}(t))}^{{\text{т }}}} = P(t)f(t)$, $(y_{1}^{{\text{т }}}(t),y_{2}^{{\text{т }}}(t)) = {{Q}^{{ - 1}}}(t)x(t)$. В этом случае ${{y}_{1}}(t)$ является общим решением ОДУ вида $y_{1}^{'} + J(t){{y}_{1}} = {{g}_{1}}(t)$, а ${{y}_{2}}$ находят по формуле [4]:
${{y}_{2}} = \sum\limits_{j = 0}^{r - 1} \,{{( - 1)}^{j}}{{T}^{j}}{{g}_{2}}(t),$
где действие оператора $T$ на вектор-функцию ${{g}_{2}}(t)$ определено по правилу

${{T}^{0}}{{g}_{2}} = {{g}_{2}},\quad T{{g}_{2}} = N(t)\tfrac{d}{{dt}}{{g}_{2}}.$

Другие определения индекса приведены в [1]–[5].

Далее приведем примеры, иллюстрирующие сложности численного решения ДАУ.

Пример 1 (см. [3]):

(1.7)
$\left( {\begin{array}{*{20}{c}} 1&{\alpha t} \\ 0&0 \end{array}} \right)\left( {\begin{array}{*{20}{c}} {u{\text{'}}(t)} \\ {v{\text{'}}(t)} \end{array}} \right) + \left( {\begin{array}{*{20}{c}} 0&{1 + \alpha } \\ 1&{\alpha t} \end{array}} \right)\left( {\begin{array}{*{20}{c}} {u(t)} \\ {v(t)} \end{array}} \right) = \left( {\begin{array}{*{20}{c}} {f(t)} \\ {g(t)} \end{array}} \right),\quad t \in [0,1],$
где $\alpha $ – числовой параметр. При любых значениях $\alpha $ данный пример имеет единственное решение индекса два $u(t) = g(t) - \alpha tv,$ $v(t) = f(t) - g{\text{'}}(t)$, не зависящее от начальных условий.

Матрицы $P(t)$ и $Q(t)$, приводящие данный пример к виду (1.4), равны $P(t) = E$, $Q(t) = \left( {\begin{array}{*{20}{c}} { - \alpha t}&1 \\ 1&0 \end{array}} \right)$ соответственно.

Если мы применим неявный метод Эйлера, то анализ, который мы опускаем для краткости, показывает, что метод неустойчив для $\alpha < - \tfrac{1}{2}$. Если $\alpha = - 1$, данная схема неприменима, потому что $\det ({{A}_{{i + 1}}} + h{{B}_{{i + 1}}}) \equiv 0$.

Пример 2 (см. [5]):

(1.8)
$\left( {\begin{array}{*{20}{c}} {\mu - 1}&{\mu t} \\ 0&0 \end{array}} \right)\left( {\begin{array}{*{20}{c}} {u{\text{'}}(t)} \\ {v{\text{'}}(t)} \end{array}} \right) + \left( {\begin{array}{*{20}{c}} 0&0 \\ {\mu - 1}&{\mu t - 1} \end{array}} \right)\left( {\begin{array}{*{20}{c}} {u(t)} \\ {v(t)} \end{array}} \right) = \left( {\begin{array}{*{20}{c}} 0 \\ 0 \end{array}} \right),$
$u(0) = \tfrac{1}{{\mu - 1}}$, $v(0) = 1$, $\mu < 0$ – скалярный параметр. Точное решение данного примера:
$u(t) = \frac{{1 - \mu t}}{{\mu - 1}}exp(\mu t),\quad v(t) = exp(\mu t).$
При $\mu \ll 0$ данный пример становится жестким. Применяя для данного примера неявную схему Эйлера, которая весьма успешно справляется с решением жестких ОДУ, получаем
${{u}_{{i + 1}}} = \frac{{1 - \mu {{t}_{{i + 1}}}}}{{\mu - 1}}{{v}_{{i + 1}}},\quad {{v}_{{i + 1}}} = (1 + z){{v}_{i}},$
где $z = \mu h$. Таким образом, данный алгоритм для устойчивости требует ограничения на шаг интегрирования $h \in \left( {0; - \tfrac{2}{\mu }} \right)$.

Другие примеры линейных ДАУ, численное решение которых требует, в отличие от жестких ОДУ, существенного ограничения на шаг интегрирования, можно найти в [5], [6].

В статье [7], используя результаты [8], приведен пример жесткой линейной системы ОДУ, для численного решения которой ряд неявных методов РК (неявный метод Эйлера, Лобатто IIIC и др.) также требовал ограничения на шаг интегрирования.

Таким образом, разработка алгоритмов численного решения жестких ДАУ является достаточно актуальной задачей. Именно это обстоятельство инициировало продолжение исследований, начатых в [9]–[11]. В данной статье мы предлагаем переписать (1.1) в виде $(A(t)x(t)){\kern 1pt} {\text{'}} + (B(t) - A{\text{'}}(t))x(t)$ = f(t) и уже для такой записи применять блочные многошаговые методы.

2. БЛОЧНЫЕ МЕТОДЫ

Перепишем исходную систему (1.1) в виде

(2.1)
$(A(t)x(t)){\kern 1pt} {\text{'}} + C(t)x(t) = f(t),\quad t \in [0,1],$
где $C(t) = B(t) - A{\kern 1pt} '(t)$.

Приведем построение интерполяционного варианта таких схем для системы (2.1) с условием (1.3). Пусть $L({{y}_{0}},{{y}_{1}},...,{{y}_{{k + s - 1}}},t)$ – интерполяционный полином степени $k + s - 1$, проходящий через точки $({{y}_{0}},{{t}_{0}})$, $({{y}_{1}},{{t}_{1}})$, … , $({{y}_{{k + s - 1}}},{{t}_{{k + s - 1}}})$, $t \in [{{t}_{0}},{{t}_{{k + s - 1}}}]$, ${{t}_{j}} = jh$, $j = 0,1,...,k + s - 1$.

Тогда справедливо представление

(2.2)
$L{\kern 1pt} '{{({{y}_{0}},{{y}_{1}},...,{{y}_{{k + s - 1}}},t)}_{{t = {{t}_{{k + j}}}}}} = \frac{1}{h}\sum\limits_{l = 0}^{k + s - 1} \rho _{l}^{j}{{y}_{{k + s - 1 - l}}},\quad j = 0,1,...,s - 1.$

Пусть заранее заданы (вычислены) стартовые значения

(2.3)
${{x}_{j}} \approx x({{t}_{j}}),\quad {{t}_{j}} = jh,\quad j = 0,1,...,k - 1.$

Основываясь на формулах (2.2), выпишем блочные разностные схемы для решения задачи (2.1) с условием (2.3):

$\sum\limits_{j = 0}^{k + s - 1} \rho _{j}^{s}{{A}_{{i + s - j}}}{{x}_{{i + s - j}}} + h{{C}_{{i + s}}}{{x}_{{i + s}}} = h{{f}_{{i + s}}},$
$\begin{gathered} . \hfill \\ . \hfill \\ . \hfill \\ \end{gathered} $
(2.4)
$\sum\limits_{j = 0}^{k + s - 1} \rho _{j}^{2}{{A}_{{i + s - j}}}{{x}_{{i + s - j}}} + h{{C}_{{i + 2}}}{{x}_{{i + 2}}} = h{{f}_{{i + 2}}},$
$\sum\limits_{j = 0}^{k + s - 1} \rho _{j}^{1}{{A}_{{i + s - j}}}{{x}_{{i + s - j}}} + h{{C}_{{i + 1}}}{{x}_{{i + 1}}} = h{{f}_{{i + 1}}}.$
Приведем частные случаи схем вида (2.4). При $s = 1$ получим методы, основанные на формуле дифференцирования назад [11]. Известно, что при $k > 6$ эти методы неустойчивы (см. [1], [3]). При $s = 2$ и $k = 2$ будем иметь

(2.5)
$\begin{gathered} \frac{1}{{6h}}(2{{A}_{{i + 2}}}{{x}_{{i + 2}}} + 3{{A}_{{i + 1}}}{{x}_{{i + 1}}} - 6{{A}_{i}}{{x}_{i}} + {{A}_{{i - 1}}}{{x}_{{i - 1}}}) + {{C}_{{i + 1}}}{{x}_{{i + 1}}} = {{f}_{{i + 1}}}, \\ \frac{1}{{6h}}(11{{A}_{{i + 2}}}{{x}_{{i + 2}}} - 18{{A}_{{i + 1}}}{{x}_{{i + 1}}} + 9{{A}_{i}}{{x}_{i}} - 2{{A}_{{i - 1}}}{{x}_{{i - 1}}}) + {{C}_{{i + 2}}}{{x}_{{i + 2}}} = {{f}_{{i + 2}}}. \\ \end{gathered} $

Обоснование данных схем проведем для частного случая рассматриваемой задачи, а именно, когда матрицы $A(t)$ и $C(t)$ имеют блочный вид

(2.6)
$A(t) = \left( {\begin{array}{*{20}{c}} 0&{\mathcal{A}(t)} \\ 0&0 \end{array}} \right),\quad C(t) = \left( {\begin{array}{*{20}{c}} E&{\mathcal{C}(t)} \\ 0&E \end{array}} \right),$
где элементы матриц $\mathcal{A}(t)$, $\mathcal{C}(t)$ и вектор-функции $f(t)$ предполагаются достаточно гладкими. Обозначим ${{\epsilon }_{j}} = x({{t}_{j}}) - {{x}_{j}}$, тогда уравнение ошибки схемы (2.4) имеет вид
$\sum\limits_{j = 0}^{k + s - 1} \rho _{j}^{s}{{A}_{{i + s - j}}}{{\varepsilon }_{{i + s - j}}} + h{{C}_{{i + s}}}{{\varepsilon }_{{i + s}}} = h\xi _{{i + s}}^{s},$
$\begin{gathered} . \hfill \\ . \hfill \\ . \hfill \\ \end{gathered} $
(2.7)
$\sum\limits_{j = 0}^{k + s - 1} \rho _{j}^{2}{{A}_{{i + s - j}}}{{\varepsilon }_{{i + s - j}}} + h{{C}_{{i + 2}}}{{\varepsilon }_{{i + 2}}} = h\xi _{{i + 2}}^{2},$
$\sum\limits_{j = 0}^{k + s - 1} \rho _{j}^{1}{{A}_{{i + s - j}}}{{\varepsilon }_{{i + s - j}}} + h{{C}_{{i + 1}}}{{\varepsilon }_{{i + 1}}} = h\xi _{{i + 1}}^{1},$
где
(2.8)
$\xi _{{i + s}}^{l} = {{\left. {\frac{1}{h}\sum\limits_{j = 0}^{k + s - 1} \rho _{j}^{l}{{A}_{{i + s - j}}}{{x}_{{i + s - j}}} - (A(t)x(t)){\text{'}}{\kern 1pt} } \right|}_{{t = {{t}_{{i + l}}}}}},\quad l = 1,2, \ldots ,s,$
представляет собой погрешность численного дифференцирования. В силу предположения о достаточной гладкости входных данных и формул численного дифференцирования [12] справедлива оценка

(2.9)
$\left\| {\xi _{{i + s}}^{l}} \right\| = O({{h}^{{k + s - 1}}}).$

Положим $k$ кратным $s$. В противном случае искусственно увеличиваем $k$ до минимального числа, кратного $s$, и полагая $\rho _{m}^{l} = 0$, $m = k + 1,...,q$, $l = 1,2,...,s$, вводим обозначения

(2.10)
$\mathcal{M}_{i}^{p} = \left( {\begin{array}{*{20}{c}} {\rho _{{sp}}^{s}{{A}_{{i + s(1 - p)}}}}&{\rho _{{sp - 1}}^{s}{{A}_{{i + s(1 - p) - 1}}}}&{...}&{\rho _{{sp - s}}^{s}{{A}_{{i - sp}}}} \\ {\rho _{{sp}}^{{s - 1}}{{A}_{{i + s(1 - p)}}}}&{\rho _{{sp - 1}}^{{s - 1}}{{A}_{{i + s(1 - p) - 1}}}}&{...}&{\rho _{{sp - s}}^{{s - 1}}{{A}_{{i - sp}}}} \\ {...}&{...}&{...}&{...} \\ {\rho _{{sp}}^{1}{{A}_{{i + s(1 - p)}}}}&{\rho _{{sp - 1}}^{1}{{A}_{{i + s(1 - p) - 1}}}}&{...}&{\rho _{{sp - s}}^{1}{{A}_{{i - sp}}}} \end{array}} \right),$
где $p = 0,1,...,q,$
${{S}_{i}} = \operatorname{diag} ({{C}_{{i + s}}},{{C}_{{i + s - 1}}},...,{{C}_{{i + 1}}}),$
${{\vartheta }_{i}} = {{(\varepsilon _{{i + s}}^{{\text{т }}},\varepsilon _{{i + s - 1}}^{{\text{т }}},...,\varepsilon _{{i + 1}}^{{\text{т }}})}^{{\text{т }}}},\quad {{\eta }_{i}} = {{(\xi _{{i + s}}^{{\text{т }}},\xi _{{i + s - 1}}^{{\text{т }}},...,\xi _{{i + 1}}^{{\text{т }}})}^{{\text{т }}}}.$
С учетом данных обозначений перепишем (2.7) в виде
(2.11)
$(h{{S}_{i}} + \mathcal{M}_{i}^{0}){{\vartheta }_{i}} = - \mathcal{M}_{i}^{1}{{\vartheta }_{{i - 1}}} - \mathcal{M}_{i}^{2}{{\vartheta }_{{i - 2}}} - ... - \mathcal{M}_{i}^{q}{{\vartheta }_{{i - q}}} + {{\eta }_{i}},$
$i = q,q + s,...,N - s$. В силу того, что матрицы $\mathcal{M}_{i}^{p}$ состоят из квадратных матриц с двумя нулевыми блоками на диагонали (см. формулу (2.6)), то
(2.12)
${{(h{{S}_{i}} + \mathcal{M}_{i}^{0})}^{{ - 1}}} = \frac{1}{h}{{E}_{{ns}}} - \frac{1}{{{{h}^{2}}}}\mathcal{M}_{i}^{0} - \frac{1}{h}{{\bar {S}}_{i}},$
где ${{\bar {S}}_{i}}$ – блочно-диагональная матрица $\operatorname{diag} (\bar {S}_{i}^{1},\bar {S}_{i}^{2},...,\bar {S}_{i}^{s})$,
$\bar {S}_{i}^{j} = \left( {\begin{array}{*{20}{c}} 0&{{{C}_{{i + s - j}}}} \\ 0&0 \end{array}} \right),\quad j = 0,1,...,s - 1,$
и
(2.13)
${{\bar {S}}_{i}}\mathcal{M}_{i}^{j} \equiv 0,\quad \mathcal{M}_{i}^{0}\mathcal{M}_{i}^{j} \equiv 0,\quad j = 1,2,...,q.$
Учитывая этот факт, формулы (2.6), (2.8), (2.11) и (2.12), получаем
(2.14)
${{\vartheta }_{i}} = - \frac{1}{h}\sum\limits_{j = 1}^q \,\mathcal{M}_{i}^{j}{{\vartheta }_{{i - j}}} + \frac{1}{h}{{\eta }_{i}}.$
Обозначим ${{\zeta }_{i}} = {{(\vartheta _{i}^{{\text{т }}},\vartheta _{{i - 1}}^{{\text{т }}},...,\vartheta _{{i - q + 1}}^{{\text{т }}})}^{{\text{т }}}}$ и перепишем (2.14) в виде одношагового соотношения ${{\zeta }_{i}} = {{\mathcal{R}}_{i}}{{\zeta }_{{i - 1}}} + {{\omega }_{i}},$ где
(2.15)
${{\mathcal{R}}_{i}} = \left( {\begin{array}{*{20}{c}} { - \frac{1}{h}\mathcal{M}_{i}^{1}}&{ - \frac{1}{h}\mathcal{M}_{i}^{2}}&{...}&{ - \frac{1}{h}\mathcal{M}_{i}^{{q - 1}}}&{ - \frac{1}{h}\mathcal{M}_{i}^{q}} \\ E&0&{...}&0&0 \\ {...}&{...}&{...}&{...}&{...} \\ 0&0&{...}&E&0 \end{array}} \right),$
${{\omega }_{i}} = {{({{\eta }_{i}},0,0,...,0)}^{{\text{т }}}}$. Здесь 0 есть $(sn \times sn)$ – нулевые матрицы.

Хотя $\left\| {{{\mathcal{R}}_{i}}} \right\|$ неограничена, опуская выкладки, можно показать, что

(2.16)
$\prod\limits_{j = 0}^\chi \,{{\mathcal{R}}_{{i - j}}} \equiv 0,\quad {\text{е с л и }}\quad \chi \geqslant 2q,\quad \left\| {\prod\limits_{j = 0}^\chi \,{{\mathcal{R}}_{{i - j}}}} \right\| = O\left( {\frac{1}{h}} \right)\quad {\text{в }}\;{\text{п р о т и в н о м }}\;{\text{с л у ч а е }}.$

Таким образом, для погрешности получим

$\begin{gathered} {{\zeta }_{i}} = {{\mathcal{R}}_{i}}{{\zeta }_{{i - 1}}} + {{\omega }_{i}} = {{\mathcal{R}}_{i}}({{\mathcal{R}}_{{i - 1}}}{{\zeta }_{{i - 2}}} + {{\omega }_{{i - 1}}}) + {{\omega }_{i}} = \\ = {{\mathcal{R}}_{i}}{{\mathcal{R}}_{{i - 1}}}...{{\mathcal{R}}_{{i - 2q + 1}}}{{\omega }_{{i - 2q + 1}}} + {{\mathcal{R}}_{i}}{{\mathcal{R}}_{{i - 1}}}...{{\mathcal{R}}_{{i - 2q}}}{{\omega }_{{i - 2q}}} + ... + {{\mathcal{R}}_{i}}{{\omega }_{{i - 1}}} + {{\omega }_{i}}. \\ \end{gathered} $

Отсюда, с учетом формул (2.13), (2.15), оценок (2.16), формул погрешности численного дифференцирования (2.9), вытекает $\left\| \zeta \right\| = O({{h}^{{k + s - 1}}})$.

Таким образом, доказана

Лемма 1. Пусть матрицы $A(t)$ и $C(t)$ в задаче (2.1) имеют вид (2.6), элементы матриц $\mathcal{A}(t)$, $\mathcal{C}(t)$ и $f(t)$ принадлежат классу $C_{{[0,1]}}^{{k + s}}$ и начальные условия заданы в виде $\left\| {{{x}_{j}} - x({{t}_{j}})} \right\| = O({{h}^{{k + s}}})$, $j = 0,1,...,k$. Тогда разностные схемы (12) сходятся к точному решению исходной задачи со скоростью $O({{h}^{{k + s - 1}}})$.

Перейдем теперь к вопросу о сходимости блочных методов для задачи

(2.17)
$x{\kern 1pt} {\text{'}} + B(t)x = f(t),\quad t \in [0,1],\quad x(0) = {{x}_{0}},$
где $B(t)$ есть $(n \times n)$-матрица и предполагается, что элементы $B(t)$ и $f(t)$ и обладают той гладкостью, которая необходима для дальнейших рассуждений.

Если в разностных схемах (2.4) зафиксировать $s$ – число стадий, то возникает вопрос: при каких ограничениях на $k$ данные алгоритмы будут устойчивы для задачи (2.17)?

Приведем стандартную схему исследования на предмет устойчивости методов (2.4) для задачи (2.17). Для этого достаточно рассмотреть очень простой пример:

(2.18)
$x{\kern 1pt} ' = 0,$
для которого выпишем матрицу перехода от $i$-го к $i + s + 1$-му шагу. Введем обозначения
(2.19)
${{\mathcal{U}}_{j}} = \left( {\begin{array}{*{20}{c}} {\rho _{{js}}^{s}}&{\rho _{{js + 1}}^{s}}&{...}&{\rho _{{j(s + 1) - 1}}^{s}} \\ {\rho _{{js}}^{{s - 1}}}&{\rho _{{js + 1}}^{{s - 1}}}&{...}&{\rho _{{j(s + 1) - 1}}^{{s - 1}}} \\ {...}&{...}&{...}&{...} \\ {\rho _{{js}}^{1}}&{\rho _{{js + 1}}^{1}}&{...}&{\rho _{{j(s + 1) - 1}}^{1}} \end{array}} \right).$
Положим $\det {{\mathcal{U}}_{0}}$ не равным нулю и представим данные методы как одношаговые. Тогда матрица перехода от шага к шагу будет иметь вид

$\mathcal{K} = - \left( {\begin{array}{*{20}{c}} {\mathcal{U}_{0}^{{ - 1}}{{\mathcal{U}}_{1}}}&{\mathcal{U}_{0}^{{ - 1}}{{\mathcal{U}}_{2}}}&{...}&{\mathcal{U}_{0}^{{ - 1}}{{\mathcal{U}}_{{q - 1}}}}&{\mathcal{U}_{0}^{{ - 1}}{{\mathcal{U}}_{q}}} \\ E&0&{...}&0&0 \\ {...}&{...}&{...}&{...}&{...} \\ 0&0&{...}&E&0 \end{array}} \right).$

Теперь дадим определение устойчивости методов (2.4) для задачи (2.17), которое аналогично определению устойчивости многошаговых схем, записанных как одношаговые.

Определение 2. Блочный метод (2.4) называется устойчивым для задачи (2.17), если все собственные значения матрицы $\mathcal{K}$ лежат внутри единичного круга и на границе круга нет кратных собственных чисел.

Лемма 2. Пусть элементы матрицы $B(t)$ и вектор-функции $f(t)$ принадлежат классу $C_{{[0,1]}}^{{k + s}}$ и стартовые значения заданы в виде $\left\| {x({{t}_{j}}) - x(j)} \right\| = O({{h}^{{k + s}}})$, $j = 0,1,\;...,\;k - 1$. Если методы (2.4) устойчивы, то данные схемы сходятся к точному решению (2.17) и справедлива оценка $\left\| {x({{t}_{j}}) - x(j)} \right\| = O({{h}^{{k + s - 1}}})$, $j = k,k + 1,\;...,\;N$, $N = 1{\text{/}}h$.

Мы проводим доказательство леммы 2, используя стандартную технику для многошаговых схем, записанных как одношаговые методы, и теорему Лакса. Для краткости изложения доказательство не приводится.

Например, для схемы (2.5) матрица перехода от $({{x}_{{i - 1}}},{{x}_{i}})$ к $({{x}_{{i + 1}}},{{x}_{{i + 2}}})$ имеет вид

$\mathop {\left( {\begin{array}{*{20}{c}} 2&3 \\ {11}&{ - 18} \end{array}} \right)}\nolimits^{ - 1} \left( {\begin{array}{*{20}{c}} 6&{ - 1} \\ { - 9}&2 \end{array}} \right) = \frac{1}{{69}}\left( {\begin{array}{*{20}{c}} {81}&{ - 24} \\ {84}&{ - 15} \end{array}} \right).$

Собственные числа данной матрицы $\left| {{{\lambda }_{1}}} \right| = 1$, $\left| {{{\lambda }_{1}}} \right| = \tfrac{1}{{23}}$, т.е. метод (2.5) будет устойчивым для задачи $x{\kern 1pt} {\text{'}} + B(t)x = f(t)$ и сходится к точному решению с третьим порядком, если элементы матриц $B(t)$ и вектор-функции $f(t)$ принадлежат классу $C_{{[0,1]}}^{4}$ и $\left\| {{{x}_{1}} - x(h)} \right\| = O({{h}^{4}})$.

Относительно сходимости данных схем к точному решению (1.1), (1.2) справедлива

Теорема 1. Пусть для задачи (1.1), (1.2) выполнены условия.

1) ДАУ имеет индекс не выше двух;

2) элементы матриц $A(t)$, $B(t)$ и $f(t)$ принадлежат классу $C_{{[0,1]}}^{{k + s}}$;

3) матрица $P(t) = P$ – постоянная в формуле (1.4);

4) блочные схемы (2.4) устойчивы и собственные числа матрицы $\mathcal{K}$ лежат в единичном круге и на границе круга нет кратных собственных чисел;

5) стартовые значения заданы следующим образом $\left\| {x({{t}_{j}}) - x(j)} \right\| = O({{h}^{{k + s}}})$.

Тогда блочные схемы (2.4) сходятся, и справедлива оценка $\left\| {x({{t}_{j}}) - x(j)} \right\| = O({{h}^{{k + s - 1}}})$.

Доказательство. Умножим (2.4) на матрицу $P$ из формулы (1.4) и произведем замену переменной ${{x}_{j}} = {{Q}_{j}}{{y}_{j}}$, где ${{Q}_{j}} = Q({{t}_{j}})$. Будем иметь

$\sum\limits_{j = 0}^{k + s - 1} \rho _{j}^{m}P{{A}_{{i + s - j}}}{{Q}_{{i + s - j}}}{{y}_{{i + s - j}}} + hP{{C}_{{i + s + 1 - m}}}{{Q}_{{i + s + 1 - m}}}{{y}_{{i + s + 1 - m}}} = hP{{f}_{{i + m}}}.$

В силу условий теоремы матрица $P{{A}_{{i + s - j}}}{{Q}_{{i + s - j}}}$ имеет блочный вид:

$PA{{Q}_{q}} = \left( {\begin{array}{*{20}{c}} {{{E}_{d}}}&0&0 \\ 0&0&{N({{t}_{{i + s - j}}})} \\ 0&0&0 \end{array}} \right),$
$\begin{gathered} P{{C}_{{i + s - j}}}{{Q}_{{i + s - j}}} = P({{B}_{q}} - A_{q}^{'}){{Q}_{q}} = P{{B}_{q}}{{Q}_{q}} - PA_{q}^{'}{{Q}_{q}} = P{{A}_{q}}Q_{q}^{'} + P{{B}_{q}}{{Q}_{q}} - P{{A}_{q}}Q_{q}^{'} - \\ - \;PA_{q}^{'}{{Q}_{q}} = (P{{A}_{q}}Q_{q}^{'} + P{{B}_{q}}{{Q}_{q}}) - (PAQ)_{{t = {{t}_{q}}}}^{'} = \left( {\begin{array}{*{20}{c}} {{{J}_{{{{t}_{q}}}}}}&0&0 \\ 0&E&0 \\ 0&0&E \end{array}} \right) - \left( {\begin{array}{*{20}{c}} 0&0&0 \\ 0&0&{N'({{t}_{q}})} \\ 0&0&0 \end{array}} \right). \\ \end{gathered} $
Таким образом, из данной формулы относительно ${{y}_{q}} = {{(y_{{1q}}^{{\text{т }}},y_{{2q}}^{{\text{т }}})}^{{\text{т }}}}$ будем иметь разностные схемы
(2.20)
$\begin{gathered} \sum\limits_{j = 0}^{k + s - 1} \,\rho _{j}^{s}{{y}_{{1,i + s - j}}} + h{{J}_{{i + s}}}{{y}_{{1,i + s}}} = h{{\Psi }_{{i + s}}}, \\ \vdots \\ \sum\limits_{j = 0}^{k + s - 1} \,\rho _{j}^{2}{{y}_{{1,i + s - j}}} + h{{J}_{{i + 2}}}{{y}_{{1,i + 2}}} = h{{\Psi }_{{i + 2}}}, \\ \sum\limits_{j = 0}^{k + s - 1} \,\rho _{j}^{1}{{y}_{{1,i + s - j}}} + h{{J}_{{i + 1}}}{{y}_{{1,i + 1}}} = h{{\Psi }_{{i + 1}}}, \\ \end{gathered} $
где ${{\Psi }_{{i + m}}}$ – вектор, состоящий из первых $d$ элементов $P{{f}_{{i + m}}}$, $m = 1,2, \ldots ,s$.

Оценка $\left\| {{{y}_{{1j}}} - {{y}_{1}}({{t}_{j}})} \right\| = O({{h}^{{k + s - 1}}})$ вытекает из второго, четвертого и пятого условия теоремы и леммы 2. Оценка $\left\| {{{y}_{{2j}}} - {{y}_{2}}({{t}_{j}})} \right\| = O({{h}^{{k + s - 1}}})$ вытекает из второго и пятого условия теоремы и леммы 1. Вспоминая что, ${{y}_{j}} = {{(y_{{1j}}^{{\text{т }}},y_{{2j}}^{{\text{т }}})}^{{\text{т }}}} = Q_{j}^{{ - 1}}{{x}_{j}}$, получаем

$\left\| {x({{t}_{j}}) - x(j)} \right\| = O({{h}^{{k + s - 1}}}).$
Теорема доказана.

Отметим, что третье условие теоремы 1 нельзя ослабить. В случае переменной матрицы $P(t)$ нельзя гарантировать сходимость схем (2.4) . Для иллюстрации вышесказанного приведем простой пример ДАУ индекса два с матрицами

$A = \left( {\begin{array}{*{20}{c}} 0&1 \\ 0&0 \end{array}} \right),\quad B = \left( {\begin{array}{*{20}{c}} 1&0 \\ 0&1 \end{array}} \right).$

Умножим это уравнение на матрицу

$P(t) = \left( {\begin{array}{*{20}{c}} 1&0 \\ {\alpha t}&1 \end{array}} \right),$
где $\alpha $ – числовой параметр, и полученную систему запишем в виде (2.1).

Имеем

(2.21)
$\begin{gathered} \left[ {\left( {\begin{array}{*{20}{c}} 0&1 \\ 0&{\alpha t} \end{array}} \right)x} \right]{\text{'}} + \left( {\begin{array}{*{20}{c}} 1&0 \\ {\alpha t}&{1 - \alpha } \end{array}} \right)x = \left( {\begin{array}{*{20}{c}} {\varphi (t)} \\ {\psi (t)} \end{array}} \right), \\ {{(\varphi (t),\psi (t))}^{ \top }} = P(t)f(t). \\ \end{gathered} $

Если $\alpha = 1$ и $s = 1$ (что соответствует основанной на ФДН-методе многошаговой схеме в [11]), то тогда получим систему линейных алгебраических уравнений относительно ${{x}_{{i + 1}}}$ со следующей матрицей коэффициентов:

$\left( {\begin{array}{*{20}{c}} h&{{{\rho }_{0}}} \\ {h{{t}_{{i + 1}}}}&{{{\rho }_{0}}{{t}_{{i + 1}}}} \end{array}} \right).$
Очевидно, что эта матрица является вырожденной для всех ${{t}_{{i + 1}}}$, т.е. схема неприменима.

Можно также показать, что мы получаем тождественно вырожденную систему линейных алгебраических уравнений относительно ${{(x_{{i + 2}}^{{\text{т }}},x_{{i + 1}}^{{\text{т }}})}^{{\text{т }}}}$ для схемы (2.5) при $\alpha = 1{\text{/}}2$.

3. ЧИСЛЕННЫЕ ЭКСПЕРИМЕНТЫ

В данном разделе приведем результаты численных расчетов для предложенных схем.

Для ДАУ (1.7) в примере 1 на интервале $[0,1]$ применим метод (2.5), который согласно теореме 1 сходится c третьим порядком.

Мы взяли $u(t) = exp(t) - \alpha t(exp(0.5t) - exp(t))$, $v(t) = exp(0.5t) - exp(t)$ в качестве точного решения. В этом случае правая часть (1.7) определена следующим образом $f(t) = exp(0.5t)$, $g(t) = exp(t)$. Погрешности численного решения для значения параметра $\alpha = - 0.6$ и различных значений шага интегрирования приведены в табл. 1. Достаточно очевидно, что результаты численного эксперимента подтверждают порядок сходимости метода.

Здесь, как и в следующем примере, ${\text{er}}{{{\text{r}}}_{u}} = {{\max }_{{1 \leqslant i \leqslant N}}}\left| {{{u}_{i}} - u({{t}_{i}})} \right|$, ${\text{er}}{{{\text{r}}}_{v}} = {{\max }_{{1 \leqslant i \leqslant N}}}\left| {{{v}_{i}} - v({{t}_{i}})} \right|$.

Далее мы определяем $\mu = - {{10}^{5}}$ для ДАУ (1.8) в примере 2, который представляет собой жесткое ДАУ. Напомним, что неявный метод Эйлера, примененный к этому примеру, устойчив только для $h < 2 \times {{10}^{{ - 5}}}$. Результаты численных расчетов по методу (2.5), которые подтверждают сходимость, отражены в табл. 2.

Таблица 1.  

Погрешности решения примера (1.7) методом (2.5)

h 0.1 0.05 0.025
${\text{er}}{{{\text{r}}}_{u}}$ $1.1 \times {{10}^{{ - 4}}}$ $1.3 \times {{10}^{{ - 5}}}$ $1.5 \times {{10}^{{ - 6}}}$
${\text{er}}{{{\text{r}}}_{\text{v}}}$ $3.2 \times {{10}^{{ - 4}}}$ $4.1 \times {{10}^{{ - 5}}}$ $5 \times {{10}^{{ - 6}}}$
Таблица  2.  

Погрешности решения примера (1.8) методом (2.5)

$h$ 0.2 0.1 0.05
${\text{er}}{{{\text{r}}}_{u}}$ $7.2 \times {{10}^{{ - 8}}}$ $1.4 \times {{10}^{{ - 12}}}$ $1.1 \times {{10}^{{ - 12}}}$
${\text{er}}{{{\text{r}}}_{\text{v}}}$ $9 \times {{10}^{{ - 8}}}$ $1.6 \times {{10}^{{ - 12}}}$ $1.7 \times {{10}^{{ - 12}}}$

Таким образом, мы можем сделать вывод, что численные результаты согласуются с теоретическими результатами.

4. ЗАКЛЮЧЕНИЕ

В данной статье предложено семейство блочных многостадийных многошаговых разностных схем, которые обобщают известные методы ФДН для численного решения линейных ДАУ индекса не более $2$. Сформулированы условия сходимости предложенных схем, которые, в отличие от ранее рассмотренных авторами методов ФДН, могут иметь более высокий порядок. Кроме того, блочные схемы при $k = 1$ являются одношаговыми, что открывает возможности построения алгоритмов с автоматическим выбором шага, разработанных для жестких ОДУ. Преимущества предлагаемых методов продемонстрированы на численных расчетах тестовых примеров индекса два и жесткого ДАУ индекса один. Для данных примеров ранее разработанные алгоритмы либо были неустойчивыми, либо принципиально неприменимы, либо требовали существенного ограничения на шаг интегрирования.

Список литературы

  1. Хайрер Э., Ваннер Г. Решение обыкновенных дифференциальных уравнений. Жесткие и дифференциально-алгебраические задачи. М.: Мир, 1999.

  2. Чистяков В.Ф. Алгебро-дифференциальные операторы с конечномерным ядром. Новосибирск: Сиб. издат. фирма “Наука”, 1996.

  3. Brenan K.E., Campbell S.L., Petzold L.R. Numerical Solution of Initial-Value Problems in Differential-Algebraic Equations. Philadelphia: SIAM, 1996.

  4. Бояринцев Ю.Е. Регулярные и сингулярные системы линейных обыкновенных дифференциальных уравнений. Новосибирск: Наука, 1980.

  5. Lamour R., März R., Tischendorf C. Differential-Algebraic Equations: A Projector Based Analysis. Springer, 2013.

  6. Kunkel P., Mehrmann V. Stability properties of differential-algebraic equations and spin-stabilized discretizations // Electr. Trans. Numer. Anal. 2007. V. 26. P. 385–420.

  7. Булатов М.В., Соловарова Л.С. О потере L-устойчивости неявного метода Эйлера для одной линейной задачи // Известия Иркутского государственного университета. Сер. Матем. 2015. Т. 12. С. 3–11.

  8. Chistyakov V.F. О сохранении типа устойчивости разностных схем при решении жестких дифференциально-алгебраических уравнений // Сиб. журн. вычисл. матем. 2011. Т. 4. № 4. P. 443–456.

  9. Bulatov M.V. Numerical solution of differential-algebraic equations by block methods. Comp. Science-ICCS, 2003. P. 516–522.

  10. Булатов М.В., Минг-Гонг Ли, Соловарова Л.С. О разностных схемах первого и второго порядков для дифференциально-алгебраических уравнений индекса не выше двух // Ж. вычисл. матем. и матем. физ. 2010. Т. 50. № 11. С. 1909–1918.

  11. Bulatov M.V., Linh V.H., Solovarova L.S. On BDF-based multistep schemes for some classes of linear differential-algebraic equations of index at most 2 // Acta Math. Vietnam. 2016. V. 41. № 4. P. 715–730.

  12. Бахвалов Н.С. Численные методы. М.: Наука, 1975.

Дополнительные материалы отсутствуют.