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

Численный метод 3-го порядка для интегрирования по времени уравнений Навье–Стокса

В. Г. Крупа *

ЦИАМ
111116 Москва, ул. Авиамоторная, 2, Россия

* E-mail: krupavg@mail.ru

Поступила в редакцию 01.04.2019
После доработки 01.07.2019
Принята к публикации 08.07.2019

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

Аннотация

Предложен линейно неявный (типа Розенброка) численный метод для интегрирования по времени трехмерных уравнений Навье–Стокса для сжимаемого газа. Метод имеет четыре стадии и 3-й порядок точности по времени. В качестве тестового примера рассмотрена задача Коши на трехмерном торе. Рассчитанные распределения сопоставляются с решением, задаваемым ABC-потоком. Библ. 13. Фиг. 5.

Ключевые слова: линейно неявный метод Рунге–Кутты, метод Розенброка, W-метод, уравнения Навье–Стокса, ABC-поток.

ВВЕДЕНИЕ

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

Ограничение на шаг по времени, связанное с применением сильно неравномерных разностных сеток или, в общем случае, жесткость полученной системы требуют применения неявных методов. Неявный линеаризованный метод Эйлера блестяще зарекомендовал себя при решении стационарных задач методом установления, однако, имеет всего лишь 1-й порядок точности по времени. Для применения неявных методов Рунге–Кутты более высоких порядков необходимо на каждом временном шаге решать систему нелинейных уравнений. Размерность такой системы может быть большой. Для прямого численного моделирования турбулентности или достаточно сложной инженерной задачи в рамках осредненных по Рейнольдсу уравнений размерность системы может достигать несколько десятков миллиардов. Получить решение такой системы (при высоком порядке аппроксимации пространственных производных) с большой точностью итерационным (типа Ньютона) методом сложно. Как показывает опыт, даже в сравнительно простой ситуации – обтекание пластины, достаточно высокое число Рейнольдса, метод трапеций – для уменьшения начальной невязки на 2, 3 порядка требуется 3–5 итераций на каждом временном слое. Уменьшить невязку до уровня значений ${{10}^{{ - 7}}}{\kern 1pt} - {\kern 1pt} {{10}^{{ - 8}}}$ не удается ни за какое, сколько-нибудь разумное, число итераций. Трудность усугубляется тем, что a priori неизвестно, с какой точностью нужно решать систему нелинейных уравнений. Таким образом, интегрирование по времени неявным методом Рунге–Кутты может превратиться в очень трудоемкую процедуру со слабо контролируемой точностью вычислений.

Преодолеть указанную трудность позволяют методы типа Розенброка [1]. В этих методах на каждой стадии решается (без итераций) система линейных уравнений. Поэтому такие методы так же называют линейно неявными методами Рунге–Кутты.

Основная цель настоящей работы – разработка линейно неявного метода 3-го порядка точности по времени для уравнений Навье–Стокса. Предлагаемый подход является по сути вариантом W-метода [2]: в отличие от классического метода Розенброка в W-методе не требуется (точного) вычисления матрицы Якоби $A$. В настоящей работе предлагается выбирать матрицу $A$ так, чтобы соответствующий неявный оператор допускал факторизацию по координантным направлениям. Метод имеет 4 стадии – на каждой стадии решение линейной системы находится скалярными трехточечными прогонками.

Ранее, применительно к трехмерным уравнениям Навье–Стокса для сжимаемого газа, методы типа Розенброка повышенного порядка точности с управляемой длиной шага по времени рассматривались в ряде работ [3]–[6]. В [3]–[5] для аппроксимации пространственных производных использовался разрывный метод Галеркина (DG); в [6] – конечно-разностные (центральные разности с искусственной диссипацией) аппроксимации. Для решения системы линейных уравнений применялся метод обобщенных минимальных невязок (GMRES). На ряде тестовых задач оценивалась эффективность методов типа Розенброка и диагонально неявных методов Рунге–Кутты. Предлагаемый в настоящей работе метод по конструкции наиболее близок к (рассмотренному в [3], [6]) четырехстадийному W-методу ROS34PW2 3-го порядка, разработанному в [7] для интегрирования жестких систем уравнений.

Для оценки точности предложенного метода в качестве тестового примера рассматривается задача с начальными данными (задача Коши) на трехмерном торе. В уравнения Навье–Стокса для сжимаемого газа добавляются источниковые члены таким образом, чтобы предельное при $t \to \infty $ решение являлось ABC-потоком. Для аппроксимации по пространству применяется разностная схема типа Годунова 3-го (на гладких решениях) порядка точности. Численное интегрирование по времени осуществлялось тремя различными способами: линейно неявным методом Эйлера и линейно неявными методами 2-го и 3-го порядков точности. Рассчитанные распределения сопоставляются с решением, задаваемым ABC-потоком.

1. ИНТЕГРИРОВАНИЕ ПО ВРЕМЕНИ

Для системы обыкновенных дифференциальных уравнений $y{\kern 1pt} ' = f(y),\;y({{t}_{0}}) = {{y}_{0}}$ модифицированный W-метод записывается в виде

${{k}_{i}} = hf({{g}_{i}}) + hA({{g}_{i}},{{\gamma }_{{ii}}}h)\sum\limits_{j = 1}^i \,{{\gamma }_{{ij}}}{{k}_{j}}\quad i = 1,\; \ldots ,\;s,$
(1.1)
${{g}_{i}} = {{y}_{0}} + \sum\limits_{j = 1}^{i - 1} \,{{\alpha }_{{ij}}}{{k}_{j}},$
${{y}_{1}} = {{y}_{0}} + \sum\limits_{j = 1}^s \,{{b}_{j}}{{k}_{j}},$
где $h$ – шаг по времени, $s$ – число стадий, ${{\alpha }_{{ij}}},\;{{\gamma }_{{ij}}},\;{{b}_{i}}$ – коэффициенты метода. В отличие от классического W-метода [2], в (1.1) матрица $A$ предполагается зависящей произвольным (гладким) образом от ${{g}_{i}}$ и ${{\gamma }_{{ii}}}h$. Зависимость от ${{g}_{i}}$ выбирается из соображений устойчивости и для эффективного обращения матрицы неявного оператора (см. разд. 2). Зависимость от ${{\gamma }_{{ii}}}h$ (для автономных систем) возникает из-за следующего обстоятельства. Перепишем первое уравнение в (1.1) в следующем виде:
(1.2)
$\begin{gathered} (I - h{{\gamma }_{{ii}}}A){{{\hat {k}}}_{i}} = hf({{g}_{i}}) + \frac{1}{{{{\gamma }_{{ii}}}}}\sum\limits_{j = 1}^{i - 1} \,{{\gamma }_{{ij}}}{{k}_{j}}, \\ {{{\hat {k}}}_{i}} = {{k}_{i}} + \frac{1}{{{{\gamma }_{{ii}}}}}\sum\limits_{j = 1}^{i - 1} \,{{\gamma }_{{ij}}}{{k}_{j}}, \\ \end{gathered} $
где $I$ – единичная матрица. В таком виде удается избежать умножения на матрицу $A$ и задача сводится к обращению неявного оператора в левой части (1.2). Для эффективного нахождения неизвестных ${{\hat {k}}_{i}}$ выберем матрицу $A$ так, чтобы неявный оператор допускал факторизацию по координантным направлениям:
(1.3)
$I - h{{\gamma }_{{ii}}}A = (I - h{{\gamma }_{{ii}}}{{A}_{\xi }})(I - h{{\gamma }_{{ii}}}{{A}_{\eta }})(I - h{{\gamma }_{{ii}}}{{A}_{\zeta }}),$
где матрицы ${{A}_{\xi }},{{A}_{\eta }},{{A}_{\zeta }}$ суть функции ${{g}_{i}}$. Из (1.3) видно, что матрица $A$ в общем случае зависит от ${{\gamma }_{{ii}}}h$. Применительно к уравнениям Навье–Стокса явный вид матриц ${{A}_{\xi }},{{A}_{\eta }},{{A}_{\zeta }}$ будет приведен в разд. 2.

Для метода (1.1), (1.3) условия 3-го порядка примут следующий вид:

$(A1)\quad \sum {{{b}_{j}}} = 1,$
$(A2)\quad 2\sum {{{b}_{j}}{{\alpha }_{{jk}}}} = 1,$
$(A3)\quad \sum {{{b}_{j}}{{\gamma }_{{jk}}}} = 0,$
$(B1)\quad 3\sum {{{b}_{j}}{{\alpha }_{{jk}}}{{\alpha }_{{jl}}}} = 1,$
(1.4)
$\begin{gathered} (B2)\quad 6\sum {{{b}_{j}}{{\alpha }_{{jk}}}{{\alpha }_{{kl}}}} = 1, \\ (B3)\quad \sum {{{b}_{j}}{{\alpha }_{{jk}}}{{\gamma }_{{kl}}}} = 0, \\ \end{gathered} $
$(B4)\quad \sum {{b}_{j}}{{\gamma }_{{jk}}}{{\alpha }_{{kl}}} = 0,$
$(B5)\quad \sum {{{b}_{j}}{{\gamma }_{{jk}}}{{\gamma }_{{kl}}}} = 0,$
$(C1)\quad \sum {{{b}_{j}}{{\gamma }_{{jk}}}{{\alpha }_{{jl}}}} = 0,$
$(C2)\quad \sum {{{b}_{j}}{{\gamma }_{{jj}}}{{\gamma }_{{jk}}}} = 0,$
где суммирование происходит по всем индексам от 1 до $s$ и ${{\alpha }_{{ij}}} = 0,\;j \geqslant i,\;{{\gamma }_{{ij}}} = 0,\;j > i$ . Первые три условия $(A1){\kern 1pt} - {\kern 1pt} (A3)$ в (1.4) соответствуют порядку 2. Условия $(A1){\kern 1pt} - {\kern 1pt} (A3),\;(B1){\kern 1pt} - {\kern 1pt} (B5)$ совпадают с условиями для W-метода, приведенными в [2] (см. также [8, c. 135]). Условие $(C1)$ возникает из-за зависимости $A$ от ${{g}_{i}}$; условие $(C2)$ – из-за зависимости $A$ от ${{\gamma }_{{ii}}}h$ в силу (1.3). Потребуем, чтобы диагональные члены ${{\gamma }_{{ii}}}$ были равными. Это требование упростит дальнейшее рассмотрение. Тогда $(C2)$ будет выполнено в силу условия $(A3)$ в (1.4). Поэтому далее будем считать что условие $(C2)$ заменено на $s - 1$ уравнений ${{\gamma }_{{11}}} = {{\gamma }_{{22}}} = \ldots = {{\gamma }_{{ss}}}$.

Трехстадийный, L-устойчивый (для скалярного линейного уравнения) метод 3-го порядка, удовлетворяющий (1.4), невозможен. Это будет показано в конце раздела. Поэтому далее будет рассматриваться случай $s = 4$.

При $s = 4$ число неизвестных (тех, которые могут быть отличны от нуля) ${{b}_{i}} - 4,\;{{\alpha }_{{ij}}} - 6,\;{{\gamma }_{{ij}}} - 10$. Всего 20 неизвестных и 12 уравнений. Исследование решений такой системы во всей полноте довольно трудоемко. Ниже будет указан (несложный) алгоритм, позволяющий легко получать частные, L-устойчивые решения системы (1.4).

Условия $(A1),\;(A2),\;(B1),\;(B2)$ в (1.4) совпадают с условиями на коэффициенты для явного метода Рунге–Кутты 3-го порядка. Поэтому величины ${{b}_{i}},\;{{\alpha }_{{ij}}}$ можно считать известными. При известных ${{b}_{i}},\;{{\alpha }_{{ij}}}$ задача сводится к нахождению ${{\gamma }_{{ij}}}$. Удобно ввести следующие величины:

(1.5)
${{\alpha }_{i}} = \sum\limits_j \,{{\alpha }_{{ij}}},\quad {{\beta }_{j}} = \sum\limits_i \,{{b}_{i}}{{\alpha }_{{ij}}},\quad {{\gamma }_{i}} = \sum\limits_j \,{{\gamma }_{{ij}}},\quad {{\sigma }_{k}} = \sum\limits_j \,{{b}_{j}}{{\gamma }_{{jk}}}.$

Уравнения для ${{\gamma }_{i}}$ и ${{\sigma }_{k}}$ в силу (1.4), (1.5) примут следующий вид:

(1.6)
$\begin{gathered} \sum {{{b}_{j}}{{\gamma }_{j}}} = 0,\quad \sum {{{\beta }_{k}}{{\gamma }_{k}}} = 0,\quad \sum {{{b}_{j}}{{\alpha }_{j}}{{\gamma }_{j}}} = 0, \\ \sum {{{\sigma }_{k}}} = 0,\quad \sum {{{\alpha }_{k}}{{\sigma }_{k}}} = 0,\quad \sum {{{\gamma }_{k}}{{\sigma }_{k}}} = 0. \\ \end{gathered} $
По определению (1.5) ${{\sigma }_{4}} = {{b}_{4}}{{\gamma }_{{44}}} = {{b}_{4}}{{\gamma }_{1}}$, поэтому можно считать, что неизвестных ${{\sigma }_{k}}$ только 3.

Заметим, что при известных ${{\gamma }_{i}},{{\sigma }_{k}}$( удовлетворяющих (1.6)) легко находится общее (однопараметрическое) решение для ${{\gamma }_{{ij}}}$. Приведем ответ:

(1.7)
$\begin{gathered} {{\gamma }_{{11}}} = {{\gamma }_{{22}}} = {{\gamma }_{{33}}} = {{\gamma }_{{44}}} = {{\gamma }_{1}},\quad {{\gamma }_{{21}}} = {{\gamma }_{2}} - {{\gamma }_{1}},\quad {{\gamma }_{{31}}} = {{\gamma }_{3}} - {{\gamma }_{1}} - {{\gamma }_{{32}}}, \\ {{\gamma }_{{41}}} = \frac{{{{\sigma }_{1}} - {{b}_{1}}{{\gamma }_{1}} - {{b}_{2}}{{\gamma }_{{21}}} - {{b}_{3}}{{\gamma }_{{31}}}}}{{{{b}_{4}}}},\quad {{\gamma }_{{43}}} = \frac{{{{\sigma }_{3}} - {{b}_{3}}{{\gamma }_{1}}}}{{{{b}_{4}}}},\quad {{\gamma }_{{42}}} = {{\gamma }_{4}} - {{\gamma }_{1}} - {{\gamma }_{{43}}} - {{\gamma }_{{41}}}, \\ \end{gathered} $
где ${{\gamma }_{{32}}}$ – параметр. Метод предполагается 4-стадийным, поэтому ${{b}_{4}} \ne 0$.

Перейдем к ограничениям на коэффициенты, которые накладывает условие L-устойчивости. В общем случае исследование устойчивости методов типа Розенброка очень сложно. Рассмотрим скалярный линейный случай $f = \lambda y$. Напомним определения: метод называется A-устойчивым, если $\left| {R(z)} \right| \leqslant 1$ при $z \in {{\mathbb{C}}_{ - }}$, где $z = \lambda h$, ${{\mathbb{C}}_{ - }}$ – левая полуплоскость, $R(z)$ – функция устойчивости, ${{y}_{1}} = R(z){{y}_{0}}$; метод называется L-устойчивым, если он А-устойчив и $R(\infty ) = 0$. При $A = \lambda $ метод (1.1) сводится к однократно диагонально неявному методу Рунге–Кутты (SDIRK) с матрицей ${{a}_{{ij}}} = {{\alpha }_{{ij}}} + {{\gamma }_{{ij}}}$. Такие методы хорошо изучены. Условия А-устойчивости для таких методов при $R(\infty ) = 0$ приведены в [8, c. 117]. В нашем случае ${{\gamma }_{1}}$ должна удовлетворять неравенству

(1.8)
$0.2236478 \leqslant {{\gamma }_{1}} \leqslant 0.57281606.$
Далее, для $R(\infty )$ справедлива формула (см. [8, c. 59]):
(1.9)
$R(\infty ) = 1 - {{b}^{{\text{т}}}}{{A}^{{ - 1}}}1,\quad {{b}^{{\text{т}}}} = ({{b}_{1}},\; \ldots ,\;{{b}_{s}}),\quad {{1}^{{\text{т}}}} = (1,\; \ldots ,\;1),\quad A = ({{a}_{{ij}}}).$
Условие $R(\infty ) = 0$, вычисленное по формуле (1.9), в нашем случае принимает вид
$\frac{{{{c}_{1}}}}{{{{\gamma }_{1}}}} + \frac{{{{c}_{2}}}}{{\gamma _{1}^{2}}} + \frac{{{{c}_{3}}}}{{\gamma _{1}^{3}}} + \frac{{{{c}_{4}}({{\alpha }_{{32}}} + {{\gamma }_{{32}}})}}{{\gamma _{1}^{4}}} = 1,$
(1.10)
${{c}_{1}} = 2,\quad {{c}_{2}} = - 0.5,\quad {{c}_{3}} = {{a}_{{21}}}({{\alpha }_{{32}}}{{b}_{3}} + {{\alpha }_{{42}}}{{b}_{4}} + {{\sigma }_{2}} - {{b}_{2}}{{\gamma }_{1}}) + ({{\alpha }_{3}} + {{\gamma }_{3}} - {{\gamma }_{1}}){{a}_{{43}}}{{b}_{4}},$
${{c}_{4}} = - {{a}_{{21}}}{{a}_{{43}}}{{b}_{4}},\quad {{a}_{{43}}}{{b}_{4}} = {{b}_{4}}{{\alpha }_{{43}}} + {{\sigma }_{3}} - {{b}_{3}}{{\gamma }_{1}},\quad {{a}_{{21}}} = {{\alpha }_{{21}}} + {{\gamma }_{2}} - {{\gamma }_{1}}.$
В (1.10) коэффициенты ${{c}_{i}}$ явно зависят только от ${{b}_{i}},\;{{\alpha }_{{ij}}},\;{{\gamma }_{i}},\;{{\sigma }_{j}}$, но не от ${{\gamma }_{{ij}}}$.

Приведем алгоритм нахождения частных, L-устойчивых решений (1.4).

АЛГОРИТМ

Шаг 1. Находятся/задаются ${{b}_{j}},\;{{\alpha }_{{ij}}}$, удовлетворяющие в (1.4) уравнениям $(A1),\;(A2),\;(B1),\;(B2).$

Шаг 2. Из первых трех линейных уравнений (1.6) для ${{\gamma }_{i}}$ находятся ${{\gamma }_{2}},\;{{\gamma }_{3}},\;{{\gamma }_{4}}$ как линейные функции ${{\gamma }_{1}}$. При известных ${{\gamma }_{i}}$ из последних трех линейных уравнений (1.6) для ${{\sigma }_{i}}({{\sigma }_{4}} = {{b}_{4}}{{\gamma }_{1}})$ находятся ${{\sigma }_{1}},\;{{\sigma }_{2}},\;{{\sigma }_{3}}$ как рациональные функции ${{\gamma }_{1}}$.

Шаг 3. Вычисляются коэффициенты ${{c}_{3}}$ и ${{c}_{4}}$ в (1.10) и находится ${{\gamma }_{{32}}}$ как (рациональная) функция ${{\gamma }_{1}}$.

Шаг 4. По (1.7) вычисляются ${{\gamma }_{{ij}}}$. Задается величина ${{\gamma }_{1}}$, удовлетворяющая (1.8), и определяются числовые значения коэффициентов.

Пример 1. Пусть выполнено ${{\beta }_{i}} = {{b}_{i}}(1 - {{\alpha }_{i}}),\;i = 2,3,\;{{\alpha }_{4}} = 0$. Tогда из $(A1),\;(A2),\;(B1),\;(B2)$ в (1.4) находим 4-х параметрическое (параметры ${{\alpha }_{2}},\;{{\alpha }_{3}},\;{{\alpha }_{{32}}},\;{{b}_{4}}$) решение:

(1.11)
$\begin{gathered} {{b}_{2}} = \frac{{1{\text{/}}2{{\alpha }_{3}} - 1{\text{/}}3}}{{{{\alpha }_{2}}({{\alpha }_{3}} - {{\alpha }_{2}})}},\quad {{b}_{3}} = \frac{{1{\text{/}}3 - 1{\text{/}}2{{\alpha }_{2}}}}{{{{\alpha }_{3}}({{\alpha }_{3}} - {{\alpha }_{2}})}},\quad {{b}_{1}} = 1 - {{b}_{2}} - {{b}_{3}} - {{b}_{4}},\quad {{\alpha }_{2}} \ne {{\alpha }_{3}},\quad {{\alpha }_{i}} \ne 0,\quad i = 2,3, \\ {{b}_{4}} \ne 0,\quad {{\alpha }_{{21}}} = {{\alpha }_{2}},\quad {{\alpha }_{{31}}} = {{\alpha }_{3}} - {{\alpha }_{{32}}},\quad {{\alpha }_{{42}}} = \frac{{{{b}_{2}}(1 - {{\alpha }_{2}}) - {{b}_{3}}{{\alpha }_{{32}}}}}{{{{b}_{4}}}}, \\ {{\alpha }_{{43}}} = \frac{{{{b}_{3}}(1 - {{\alpha }_{3}})}}{{{{b}_{4}}}},\quad {{\alpha }_{{41}}} = - ({{\alpha }_{{42}}} + {{\alpha }_{{43}}}). \\ \end{gathered} $
Далее детально рассмотрим случай ${{\alpha }_{2}} = 1{\text{/}}3,\;{{\alpha }_{3}} = 1{\text{/}}2,\;{{b}_{4}} = 1{\text{/}}2$. Применяя шаг 1 алгоритма, по формулам (1.11) получаем таблицу Бутчера для ${{b}_{i}}$ и ${{\alpha }_{{ij}}}$ (${{\alpha }_{{32}}}$ – параметр):

(1.12)
$\begin{array}{*{20}{c}} {1{\text{/}}3}&\vline & {1{\text{/}}3}&{}&{}&{} \\ {1{\text{/}}2}&\vline & {1{\text{/}}2 - {{\alpha }_{{32}}}}&{{{\alpha }_{{32}}}}&{}&{} \\ 0&\vline & {4{{\alpha }_{{32}}}}&{ - 2(1 + 2{{\alpha }_{{32}}})}&2&{} \\ \hline b&\vline & 0&{ - 3{\text{/}}2}&2&{1{\text{/}}2} \end{array}$

На шаге 2 из (1.6) получаем (${{\beta }^{{\text{т}}}} = (1{\text{/}}2, - 1,1,0)$):

(1.13)
${{\gamma }^{{\text{т}}}} = ({{\gamma }_{1}},{{\gamma }_{1}},{{\gamma }_{1}}{\text{/}}2,{{\gamma }_{1}}),\quad {{\sigma }^{{\text{т}}}} = ( - {{\gamma }_{1}}{\text{/}}2,0,0,{{\gamma }_{1}}{\text{/}}2).$
На шаге 3, используя (1.12), (1.13) для коэффициентов в (1.10), получаем ${{c}_{3}} = 1{\text{/}}6 - {{\gamma }_{1}} + \gamma _{1}^{2},$ ${{c}_{4}} = (2{{\gamma }_{1}} - 1){\text{/}}3$. Условие (1.10) перепишется в виде
(1.14)
${{\alpha }_{{32}}} + {{\gamma }_{{32}}} = \frac{{{{\gamma }_{1}}(6\gamma _{1}^{3} - 18\gamma _{1}^{2} + 9{{\gamma }_{1}} - 1)}}{{2(2{{\gamma }_{1}} - 1)}},\quad {{\gamma }_{1}} \ne 1{\text{/}}2.$
На шаге 4 из (1.7), (1.12) для ${{\gamma }_{{ij}}}$ получаем
(1.15)
$\begin{array}{*{20}{c}} {{{\gamma }_{1}}}&\vline & {{{\gamma }_{1}}}&{}&{}&{} \\ {{{\gamma }_{1}}}&\vline & 0&{{{\gamma }_{1}}}&{}&{} \\ {{{\gamma }_{1}}{\text{/}}2}&\vline & { - {{\gamma }_{1}}{\text{/}}2 - {{\gamma }_{{32}}}}&{{{\gamma }_{{32}}}}&{{{\gamma }_{1}}}&{} \\ {{{\gamma }_{1}}}&\vline & {{{\gamma }_{1}} + 4{{\gamma }_{{32}}}}&{3{{\gamma }_{1}} - 4{{\gamma }_{{32}}}}&{ - 4{{\gamma }_{1}}}&{{{\gamma }_{1}}} \\ \hline \gamma &\vline & {}&{}&{}&{} \end{array}$
(1.12), (1.14), (1.15) задают двухпараметрическое (${{\alpha }_{{32}}},\;{{\gamma }_{1}}$ – параметры) семейство решений.

Пример 2. Условиям $(A1),\;(A2),\;(B1),\;(B2)$ в (1.4) будут удовлетворять коэффициенты любого явного метода Рунге–Кутты 4-го порядка точности. На шаге 1 возьмем “правило 3/8”:

(1.16)
$\begin{array}{*{20}{c}} {1{\text{/}}3}&\vline & {1{\text{/}}3}&{}&{}&{} \\ {{\text{2/3}}}&\vline & { - 1{\text{/}}3}&1&{}&{} \\ 1&\vline & 1&{ - 1}&1&{} \\ \hline b&\vline & {1{\text{/}}8}&{3{\text{/}}8}&{3{\text{/}}8}&{1{\text{/}}8} \end{array}$

На шаге 2 система в (1.6) для определения ${{\gamma }_{2}},\;{{\gamma }_{3}},\;{{\gamma }_{4}}$ в данном случае оказывается вырожденной, но разрешимой. Для простоты выкладок положим ${{\gamma }_{4}} = {{\gamma }_{1}}$. Тогда из (1.6) получаем (${{\beta }^{{\text{т}}}} = (1{\text{/}}8,1{\text{/}}4,1{\text{/}}8,0)$):

(1.17)
${{\gamma }^{{\text{т}}}} = \left( {{{\gamma }_{1}}, - \frac{1}{3}{{\gamma }_{1}}, - \frac{1}{3}{{\gamma }_{1}},{{\gamma }_{1}}} \right),\quad {{\sigma }^{{\text{т}}}} = \left( { - \frac{1}{8}{{\gamma }_{1}},\frac{3}{8}{{\gamma }_{1}}, - \frac{3}{8}{{\gamma }_{1}},\frac{1}{8}{{\gamma }_{1}}} \right).$
Подсчет коэффициентов в (1.10) на шаге 3 по (1.16), (1.17) показывает, что ${{c}_{i}},i \leqslant 3$, совпадают с ${{c}_{i}}$ примера 1, а для ${{c}_{4}}$ и ${{\gamma }_{{32}}}$ имеем формулы
(1.18)
${{c}_{4}} = \frac{{(4{{\gamma }_{1}} - 1)(1 - 6{{\gamma }_{1}})}}{{24}},\quad {{\alpha }_{{32}}} + {{\gamma }_{{32}}}\frac{{4{{\gamma }_{1}}(6\gamma _{1}^{3} - 18\gamma _{1}^{2} + 9{{\gamma }_{1}} - 1)}}{{(4{{\gamma }_{1}} - 1)(1 - 6{{\gamma }_{1}})}},\quad {{\gamma }_{1}} \ne \frac{1}{4},\frac{1}{6}.$
На шаге 4 положим ${{\gamma }_{1}} = 1{\text{/}}2$, тогда из (1.18) ${{\gamma }_{{32}}} = - 3{\text{/}}4$ и ${{\gamma }_{{ij}}}$, вычисленные по (1.7), имеют вид

(1.19)
$\begin{array}{*{20}{c}} {1{\text{/}}2}&\vline & {1{\text{/}}2}&{}&{}&{} \\ { - 1{\text{/}}6}&\vline & { - 2{\text{/}}3}&{1{\text{/}}2}&{}&{} \\ { - 1{\text{/}}6}&\vline & {1{\text{/}}12}&{ - 3{\text{/}}4}&{1{\text{/}}2}&{} \\ {1{\text{/}}2}&\vline & {3{\text{/}}4}&{9{\text{/}}4}&{ - 3}&{1{\text{/}}2} \\ \hline \gamma &\vline & {}&{}&{}&{} \end{array}$

Покажем, что не существует трехстадийного L-устойчивого метода 3-го порядка, т.е. метода, для которого выполнено (1.4) (без условия $(C2)$ и предположения о равенстве ${{\gamma }_{{ii}}}$) при $s = 3$. Будем считать, что ${{\gamma }_{{11}}}{{\gamma }_{{22}}}{{\gamma }_{{33}}} \ne 0$. В противном случае функция устойчивости $R(z)$ будет иметь вид $R(z) = P(z){\text{/}}Q(z),$ $\deg Q(z) = \deg (1 - {{\gamma }_{{11}}}z)(1 - {{\gamma }_{{22}}}z)(1 - {{\gamma }_{{33}}}z) = 2$. (Случай $\deg Q \leqslant 1$, очевидно, невозможен из-за условия порядка.) Из условия L-устойчивости ($R(\infty ) = 0$) следует, что $\deg P = 1$. Из условия порядка ($p = 3$) вытекает, что $R(z)$ – (2.1) аппроксимация Паде для ${{e}^{z}}$. Такая аппроксимация единственна; из явного вида для $Q(z)$ следует, что $Q(z)$ имеет только комплексные корни. Получили противоречие (${{\gamma }_{{ii}}}$ – действительны). Из условий ${{\gamma }_{{ii}}} \ne 0$ вытекает, что введенные в (1.5) векторы $\gamma $ и $\sigma $ отличны от нуля. Далее, общее решение уравнений $(A1),\;(A2),\;(B1),\;(B2)$ в (1.4) при $s = 3$ дается формулами (1.11) при ${{b}_{4}} = 0,\;{{\alpha }_{{32}}} = 1{\text{/}}(6{{b}_{3}}{{\alpha }_{2}})$. Три первых однородных уравнения в (1.6) должны иметь нетривиальное рещение $\gamma $. Приравняв соответствующий детерминант нулю и воспользовавшись формулами (1.11), получим ${{\alpha }_{3}} = 1$. Разрешим эту систему относительно ${{\gamma }_{1}}$, тогда ${{\gamma }_{2}}{\text{/}}{{\gamma }_{1}}$ и ${{\gamma }_{3}}{\text{/}}{{\gamma }_{1}}$ будут зависеть только от ${{\alpha }_{2}}$. Поэтому коэффициенты однородной системы (1.6) для $\sigma $ можно считать зависящими только от ${{\alpha }_{2}}$. Приравняв нулю соответствующий определитель, получим ${{\alpha }_{2}} = 1$. Получили противоречие: ${{\alpha }_{2}} = {{\alpha }_{3}}$. Случаи, неохваченные формулами (1.11) при ${{\alpha }_{2}} = {{\alpha }_{3}}$ или ${{\alpha }_{3}} = 0$, рассматриваются аналогично. Случай ${{\alpha }_{2}} = 0$ невозможен.

2. ФАКТОРИЗАЦИЯ НЕЯВНОГО ОПЕРАТОРА И АППРОКСИМАЦИЯ ПРОСТРАНСТВЕННЫХ ПРОИЗВОДНЫХ

Факторизация (1.3) осуществляется так же, как для линейно неявного метода Эйлера. Такой подход хорошо известен, см., например, [9]. Приведем основные шаги его построения для уравнений Навье–Стокса, записанных в криволинейной системе координат $\xi ,\eta ,\zeta (\xi = \xi (x,y,z),$ $\eta = \eta (x,y,z),$ $\zeta = \zeta (x,y,z),$ $x,\;y,\;z$ – декартовые координаты):

$\frac{{\partial U}}{{\partial t}} + \frac{{\partial F}}{{\partial \xi }} + \frac{{\partial G}}{{\partial \eta }} + \frac{{\partial H}}{{\partial \zeta }} = \frac{{\partial {{F}_{v}}}}{{\partial \xi }} + \frac{{\partial {{G}_{v}}}}{{\partial \eta }} + \frac{{\partial {{H}_{v}}}}{{\partial \zeta }},$
где индексом $v$ обозначены диффузионные члены уравнений Навье–Стокса.

Достаточно описать вид первого множителя в правой части (1.3); остальные множители строятся аналогично с очевидной заменой. Пусть

$J = \frac{{\partial F}}{{\partial U}},\quad J = {{S}_{\xi }}({{\Lambda }^{ + }} - {{\Lambda }^{ - }})S_{\xi }^{{ - 1}},\quad {{\Lambda }^{ \pm }} = \frac{1}{2}({\text{|}}\Lambda {\text{|}} \pm \Lambda ),$
где $\Lambda ({\text{|}}\Lambda {\text{|}})$ – диагональная матрица, составленная из (модуля) собственных значений матрицы Якоби $J,\;{{S}_{\xi }}$ – матрица (размером $5 \times 5$) , приводящая $J$ к диагональному виду. Пусть тройка целых чисел n, m, l – номер центра ячейки разностной сетки; шаги сетки считаем равномерными, равными 1. Далее, считаем индексы m, l фиксированными, поэтому их опускаем. Тогда действие первого множителя в (1.3) на cеточную функцию ${{f}_{n}}$ задается в виде
(2.1)
$\begin{gathered} (I - h{{\gamma }_{{ii}}}{{A}_{\xi }})f = {{S}_{\xi }}[I - h{{\gamma }_{{ii}}}(\Delta {{\Lambda }^{ - }} - \nabla {{\Lambda }^{ + }} + \Delta {{\nu }_{\xi }}\nabla )]S_{\xi }^{{ - 1}}f, \\ \Delta {{f}_{n}} = {{f}_{{n + 1}}} - {{f}_{n}},\quad \nabla {{f}_{n}} = {{f}_{n}} - {{f}_{{n - 1}}},\quad {{\nu }_{\xi }} = \nu (\xi _{x}^{2} + \xi _{y}^{2} + \xi _{z}^{2}), \\ \end{gathered} $
где $\nu $ – величина, пропорциональная коэффициенту кинематической вязкости. Обращение матрицы в (2.1) на каждом этапе сводится к умножениям матриц ${{S}_{\xi }},\;S_{\xi }^{{ - 1}}$ на вектор и решению трехдиагональной системы уравнений. Такое решение легко находится трехточечной скалярной прогонкой.

Применение направленных (в зависимости от знака собственных значений) разностей в (2.1) позволяет получить свойство диагонального преобладания (что способствует повышению устойчивости метода прогонки), однако, зависимость ${{A}_{\xi }}$ от ${{g}_{i}}$ становится, вообще говоря, негладкой. Гладкость нарушается в точках, в которых собственное значение обращается в нуль. По-видимому, можно надеяться, что в большинстве случаев таких точек относительно немного и это обстоятельство не оказывает решающего влияния на точность расчета.

Способ аппроксимации конвективных членов проще всего описать для случая скалярного уравнения; аппроксимация диффузионных (вязких) членов осуществлялась центральными разностями. Введем по оси $x$ равномерную сетку с шагом $h$ и проинтегрируем уравнение ${{u}_{t}} + f{{(u)}_{x}} = 0$ по ячейке с номером с $n$. Получим

$\frac{{d{{u}_{n}}}}{{dt}} + \frac{{f({{u}_{{n + 1/2}}}) - f({{u}_{{n - 1/2}}})}}{h} = 0,\quad {{u}_{n}} = \frac{1}{h}\int\limits_{{{x}_{{n - 1/2}}}}^{{{x}_{{n + 1/2}}}} {udx} .$
Для линейного уравнения $f = au$ схема типа Годунова имеет вид
$f({{u}_{{n + 1/2}}}\left\{ \begin{gathered} a{{U}_{{ - ,n + 1/2}}},\quad a \geqslant 0, \hfill \\ a{{U}_{{ + ,n + 1/2}}},\quad a < 0, \hfill \\ \end{gathered} \right.$
где ${{U}_{{ \pm ,n + 1/2}}}$ – предельные справа (слева) значения $u(x,t)$ на границе ячейки $n + 1{\text{/}}2$. Величины ${{U}_{{ \pm ,n \mp 1/2}}}$ вычисляются по рекуррентным формулам:
$U_{{ - ,n + 1/2}}^{k} = U_{{ - ,n + 1/2}}^{{k - 1}} - \frac{1}{k}\sum\limits_{l = 1}^{k - 1} \frac{{{{{( - 1)}}^{{k - l}}}}}{{C_{{k - 1}}^{l}}}\alpha _{l}^{{k - 1}}\Phi _{l}^{k},$
$\Phi _{l}^{k} \equiv \phi _{l}^{k}{{\Delta }^{{k - 1}}}{{u}_{{n - l + 1}}} + (1 - \phi _{l}^{k}){{\Delta }^{{k - 1}}}{{u}_{{n - l}}},\quad \phi _{l}^{k} \equiv \phi _{l}^{k}({{\Delta }^{{k - 1}}}{{u}_{{n - l}}},{{\Delta }^{{k - 1}}}{{u}_{{n - l + 1}}}),$
$\alpha _{1}^{k} = \phi _{1}^{k}\alpha _{1}^{{k - 1}},\alpha _{l}^{k} = \phi _{l}^{k}\alpha _{l}^{{k - 1}} + (1 - \phi _{{l - 1}}^{k})\alpha _{{l - 1}}^{{k - 1}},\quad l = 2,\;..,\;k - 1,\quad \alpha _{k}^{k} = (1 - \phi _{{k - 1}}^{k})\alpha _{{k - 1}}^{{k - 1}},$
(2.2)
$U_{{ - ,n + 1/2}}^{1} = {{u}_{n}},\quad \alpha _{1}^{1} = 1,\quad U_{{ + ,n - 1/2}}^{k} = U_{{ + ,n - 1/2}}^{{k - 1}} + \frac{1}{k}\sum\limits_{l = 1}^{k - 1} \frac{{{{{( - 1)}}^{{k - l}}}}}{{C_{{k - 1}}^{{l - 1}}}}\beta _{l}^{{k - 1}}\Phi _{{k - l}}^{k},$
$\Phi _{{k - l}}^{k} \equiv \phi _{{k - l}}^{k}{{\Delta }^{{k - 1}}}{{u}_{{n - l}}} + (1 - \phi _{{k - l}}^{k}){{\Delta }^{{k - 1}}}{{u}_{{n - l + 1}}},\quad \phi _{{k - l}}^{k} \equiv \phi _{{k - l}}^{k}({{\Delta }^{{k - 1}}}{{u}_{{n - l + 1}}},{{\Delta }^{{k - 1}}}{{u}_{{n - l}}}),$
$\beta _{1}^{k} = (1 - \phi _{{k - 1}}^{k})\beta _{1}^{{k - 1}},\quad \beta _{l}^{k} = \phi _{{k - l + 1}}^{k}\beta _{{l - 1}}^{{k - 1}} + (1 - \phi _{{k - l}}^{k})\beta _{l}^{{k - 1}},\quad l = 2,\;..,\;k - 1,\quad \beta _{k}^{k} = \phi _{1}^{k}\beta _{{k - 1}}^{{k - 1}},$
$U_{{ + ,n - 1/2}}^{1} = {{u}_{n}},\quad \beta _{1}^{1} = 1,$
где $C_{n}^{l}$ – биномиальный коэффициент, число сочетаний из $n$ по $l;{{\Delta }^{l}}{{u}_{n}}$ – конечная разность $l$-го порядка: ${{\Delta }^{l}}{{u}_{n}} = {{\Delta }^{{l - 1}}}{{u}_{{n + 1}}} - {{\Delta }^{{l - 1}}}{{u}_{n}}$; $\phi _{l}^{k}(x,y)$ – некоторые однородные степени нуль функции двух переменных. Число $k$ определяет точность схемы – аппроксимация производной по $x$ будет точной на многочленах степени $k - 1$; случай $k = 2$ соответствует TVD-схеме.

Применительно к уравнениям Навье–Стокса/Эйлера схема типа Годунова строится следующим, хорошо известным способом. Формулы (2.2) применяются для “характеристических переменных” $W = S_{\xi }^{{ - 1}}U$. Далее, с помощью процедуры решения задачи о произвольном разрыве [10] вычисляется поток на границе ячейки $\xi = n + 1{\text{/}}2$. Для направлений $\eta ,\;\zeta $ построение аналогично.

3. ПОСТАНОВКА ЗАДАЧИ

Задача решалась в рамках трехмерных уравнений Навье–Стокса для сжимаемого газа с источниковыми членами $F,\;{{F}_{E}}$:

$\frac{{\partial \rho }}{{\partial t}} + \nabla \cdot \rho v = 0,\quad p = (\gamma - 1)\rho T{\text{/}}\gamma ,$
(3.1)
$\frac{{\partial \rho v}}{{\partial t}} + \nabla \cdot \rho vv = - \nabla p + \frac{1}{{{\text{Re}}}}\nabla \cdot \tau + F,\quad \tau = - (2{\text{/}}3)\mu \nabla \cdot v\delta + 2\mu S,\quad S = (\nabla v + {{(\nabla v)}^{{\text{т}}}}){\text{/}}2,$
$\frac{{\partial E}}{{\partial t}} + \nabla \cdot v(E + p) = \frac{1}{{{\text{Re}}}}\nabla (v \cdot \tau - q) + {{F}_{E}},\quad E = p{\text{/}}(\gamma - 1) + \rho {{v}^{2}}{\text{/}}2,\quad q = - \mu \nabla T{\text{/Pr}},$
где $\rho $ – плотность, $v$ – скорость, $p$ – давление, $T$ – температура, $\delta $ – единичный тензор, $\gamma $ – показатель адиабаты, ${\text{Re,}}\;{\text{Pr}}$ – числа Рейнольдса и Прандтля. Система (3.1) записана в безразмерной форме: линейные размеры отнесены к некоторой характерной величине ${{L}_{\infty }}$, $\rho $ отнесено к ${{\rho }_{\infty }}$, $v$ – к ${{V}_{\infty }}$ , $p$ – к ${{\rho }_{\infty }}V_{\infty }^{2}$, $T$ – к $V_{\infty }^{2}{\text{/}}{{c}_{p}},({{c}_{p}}$ – удельная теплоемкость при постоянном объеме), $\mu $ – к ${{\mu }_{\infty }}$.

Источниковые члены $F,{{F}_{E}}$ задавались так, чтобы стационарное решение системы (3.1) являлось ABC-потоком:

(3.2)
$\begin{gathered} v_{{ABC}}^{x} = Asin\lambda z + Ccos\lambda y,\quad v_{{ABC}}^{y} = Bsin\lambda x + Acos\lambda z,\quad v_{{ABC}}^{z} = Csin\lambda y + Bcos\lambda x, \\ \rho = 1,\quad p + \frac{{\rho v_{{ABC}}^{2}}}{2} = H,\quad H = {\text{const}}{\text{.}} \\ \end{gathered} $

Явный вид $F,{{F}_{E}}$ легко получить, подставляя (3.2) в (3.1):

(3.3)
$\begin{gathered} F = \frac{{{{\lambda }^{2}}\mu }}{{{\text{Re}}}}{{v}_{{ABC}}},\quad {{F}_{E}} = F \cdot {{v}_{{ABC}}} - \frac{1}{{\gamma - 1}}{{v}_{{ABC}}} \cdot \nabla \frac{{v_{{ABC}}^{2}}}{2} + \frac{1}{{{\text{Re}}}}\left( {\frac{\gamma }{{\gamma - 1}}\frac{\mu }{{{\text{Pr}}}}\Delta \frac{{v_{{ABC}}^{2}}}{2} - \varepsilon } \right), \\ \varepsilon = 2\mu {{S}_{{ABC}}}:{{S}_{{ABC}}}. \\ \end{gathered} $
Для системы (3.1), (3.3) ставилась задача Коши на трехмерном торе ${{\mathbb{T}}^{3}}$:
(3.4)
$t = 0,\quad \rho = 1,\quad v = 0,\quad p = \frac{1}{{\gamma {{{\text{M}}}^{2}}}},$
где М – число Маха. Предполагая, что при $t \to \infty $ решение задачи (3.1) стремится к стационарному решению (3.2), легко определить константу $H$ в (3.2). Проинтегрируем уравнение энергии по области ${{\mathbb{T}}^{3}} \times [0,t]$. С учетом (3.4) получим (интеграл от источникового члена ${{F}_{E}}$ равен нулю)
(3.5)
$\mathop {\left\langle {\frac{p}{{\gamma - 1}}} \right\rangle }\nolimits_t + \mathop {\left\langle {\frac{{{{v}^{2}}}}{2}} \right\rangle }\nolimits_t = \mathop {\left\langle {\frac{p}{{\gamma - 1}}} \right\rangle }\nolimits_0 + \mathop {\left\langle {\frac{{{{v}^{2}}}}{2}} \right\rangle }\nolimits_0 = \frac{1}{{\gamma (\gamma - 1){{{\text{M}}}^{2}}}}.$
Угловые скобки в (3.5) – осреднение по тору ${{\mathbb{T}}^{3}}$. Устремляя $t \to \infty $, из (3.2), (3.5) находим константу Бернулли:

(3.6)
$H = \frac{1}{{\gamma {{{\text{M}}}^{2}}}} + \frac{{2 - \gamma }}{2}({{A}^{2}} + {{B}^{2}} + {{C}^{2}}).$

4. РЕЗУЛЬТАТЫ РАСЧЕТОВ

Численное решение задачи (3.1), (3.3), (3.4) находилось при значениях параметров $\gamma = 1.4,$ $\mu = 1,$ ${\text{Pr}} = 0.72,$ ${\text{Re = 10}}0,$ ${\text{M}} = 0.5,$ $A = 1,$ $B = 0.5,$ $C = 0,$ $\lambda = 2\pi $.

Шаги разностной сетки $h$ выбирались равномерными по всем направлениям $h = 1{\text{/}}N$, где $N$ – число узлов в каком-либо направлении. Число Куранта $K$ вычислялось по формуле ${\text{K}} = 3\Delta t({\text{M}} + 1){\text{/}}({\text{M}}h)$, где $\Delta t$ – величина шага по времени.

Аппроксимация пространственных производных осуществлялась с 3-м порядком точности по формулам (2.2) с $k = 4,$ $\phi _{l}^{n} = \phi (x,y) = \left| x \right|{\text{/}}(\left| x \right| + \left| y \right|)$; вязкие члены аппроксимировались с 4-м порядком центральными разностями.

Интегрирование по времени с 3-м порядком осуществлялось методом (1.16), (1.19). Также проводились расчеты методом (1.12), (1.15) с ${{\alpha }_{{32}}} = 0,$ ${{\gamma }_{{32}}} = - 1{\text{/}}9,$ ${{\gamma }_{{11}}} = 1{\text{/}}3$. Распределения, полученные этим методом, оказались близки к распределениям, рассчитанным по (1.16), (1.19) и поэтому далее не приводятся. Для сравнения выполнялись расчеты линейно неявным методом Эйлера (${{\alpha }_{{11}}} = 0,\;{{b}_{1}} = {{\gamma }_{1}} = 1$) и методом 2-го порядка [11]:

(4.1)
${{b}_{1}} = - 2,\quad {{b}_{2}} = 3,\quad {{\alpha }_{{21}}} = \frac{1}{6},\quad {{\gamma }_{{11}}} = \frac{3}{2},\quad {{\gamma }_{{21}}} = - 1,\quad {{\gamma }_{{22}}} = 2.$

На границах вычислительной области $(x = 0,1;\;y = 0,1;\;z = 0,1)$ выставлялись условия периодичности. Обращение матрицы неявного оператора осуществлялось скалярной циклической, трехточечной прогонкой (см., например, [12, c. 86]).

Временные затраты расчета каким-либо методом с большой точностью пропорциональны числу его стадий: время выполнения 1-го шага по времени для методов 2-го и 3-го порядков в 2 и, соответственно, 4 раза больше по сравнению с линейно неявным методом Эйлера.

Точное нестационарное решение задачи (3.1), (3.3), (3.4) неизвестно, поэтому точность метода интегрирования по времени оценивалась сравнением со стационарным (пределом при $t \to \infty $) решением (3.2). Заметим, что численное “стационарное” решение данной задачи зависит от метода интегрирования по времени. Действительно, если сделать 1 шаг по времени двумя различными методами и, приняв полученные (и восполненные соответствующим образом) распределения в качестве начальных данных, получить точное решение, то, как видно из (3.5), эти (точные) решения будут, вообще говоря, различаться. Этим, в частности, задача на торе отличается, например, от задачи расчета стационарного обтекания профиля, – для такой задачи стационарное решение определяется аппроксимацией пространственных производных/граничных условий и не зависит от метода интегрирования по времени и начального приближения.

Сопоставление численного решения с решением (3.2) осуществлялось следующим образом.

Рассчитанные распределения в сечении $x = 0.5,\;y = 0.5$ записывались на каждом временном шаге и затем осреднялись на промежутке $80 \leqslant t \leqslant 100$. Как показывают расчеты, при $t \geqslant 50$ численное решение можно считать стационарным с довольно большой точностью: величина невязки решения в норме ${{l}_{\infty }}$ равнялась $ \approx {\kern 1pt} {{10}^{{ - 7}}}{\kern 1pt} - {\kern 1pt} {{10}^{{ - 9}}}$.

Хорошо известно (см., например, [13]), что течения, задаваемые ABC-потоком, могут оказаться крайне неустойчивыми. При выбранных в настоящей работе параметрах численное решение, полученное методом 3-го порядка при $N = 33,K = 1$, оставалось устойчивым до $t \leqslant 500$. Что произойдет с численным решением при $t$, равным, например, ${{10}^{6}}$ – неизвестно.

Из (3.2), (3.6) следует, что при выбранных параметрах $A,\;B,\;C$ при $x = 0.5,$ $y = 0.5$ давление $p$ не зависит от $z$ и равно ${{p}_{ * }} = 1{\text{/}}(\gamma {{M}^{2}}) - 0.5(\gamma - 1)({{A}^{2}} + {{B}^{2}} + {{C}^{2}}) = 2.60714285$.

Рассчитанные распределения $p(z)$ при $K = 4$ и $N = 9,15,33,63$ приведены на фиг. 1а, б, в, г соответственно. На фиг. 1 и далее сплошная линия с маркером $ \circ $ соответствует расчету методом Эйлера, линия с $\square $ – расчету методом 2-го порядка, линия с $ + $ – расчету методом 3-го порядка. Горизонтальная штриховая линия – $p = {{p}_{ * }}$. На фиг. 1 по оси ординат выбран различный масштаб. Распределение ошибки ${{\varepsilon }_{p}}$ для давления в норме ${{l}_{\infty }}$ в зависимости от величины шага $h$ при $K = 4$ приведено на фиг. 2 (обе шкалы логарифмические); распределения в нормах ${{l}_{1}},\;{{l}_{2}}$ аналогичны и поэтому не приводятся. Штриховые прямые на фиг. 2 – зависимости, пропорциональные $h,\;{{h}^{2}}$, ${{h}^{3}}$ и ${{h}^{4}}$. Аналогичное распределение для ошибки скорости ${{\varepsilon }_{v}}$ приведено на фиг. 3, на этой фигуре штриховые прямые – зависимости, пропорциональные ${{h}^{3}}$ и ${{h}^{4}}$. Как и следовало ожидать, при фиксированном $h$ точность расчета возрастает с увеличением порядка аппроксимации по времени. При этом распределения давления, полученные различными методами, с очень большой точностью отличаются сдвигом на постоянную по оси ординат (фиг. 1). Как видно из фиг. 2, для метода Эйлера ошибка ${{\varepsilon }_{p}}$ падает чуть быстрее, чем $O(h)$, для метода 2-го порядка точность метода близка к теоретической, для метода 3-го порядка убывание ошибки (примерно) соответствует порядку аппроксимации пространственных производных. Ошибка ${{\varepsilon }_{v}}$ для компонент скорости слабо зависит от метода интегрирования по времени и порядок убывания ошибки также соответствует 3–4 порядку аппроксимации пространственных производных (фиг. 3). При этом отличие в компонентах скорости, полученных различными методами, примерно на 2 порядка меньше отличия в давлении. Распределения температуры вполне аналогичны распределениям давления и поэтому не приводятся. Величина сдвига в распределениях давления с точностью $ \approx 10\% $ равна разности констант $H$: для $N = 9$ рассчитанные значения констант равны 3.22570980, 3.23797792, 3.24142873, для $N = 15$ – 3.22619314, 3.23271241, 3.23427132, для $N = 33$ – 3.22898588, 3.23158921, 3.23220390, для $N = 63$ – 3.23052568, 3.23189454, 3.23214559 для методов 1‑го–3-го порядков соответственно. Значение, рассчитанное по (3.6), $H = 3.23214285$.

Фиг. 1.
Фиг. 2.
Фиг. 3.

Результаты расчетов для $N = 33$ и $K = 0.5,1,2,4$ приведены на фиг. 4, 5. На фиг. 4 (обе шкалы логарифмические) приведено распределение ошибки ${{\varepsilon }_{p}}$ для давления в зависимости от величины шага по времени $\Delta t$. Штриховая прямая на фиг. 4 соответствует зависимости, пропорциональной $\Delta t$ . Как видно из графиков, для метода Эйлера уменьшение ошибки ${{\varepsilon }_{p}}$ близко к линейной зависимости. Для метода 3-го порядка ошибка ${{\varepsilon }_{p}}$ практически не меняется от величины шага по времени и, по-видимому, приблизительно равна ошибке аппроксимации по пространственным производным. Штриховая кривая с маркером $\diamondsuit $ на фиг. 4 – зависимость $5.13016 \times {{10}^{{ - 5}}} + 209.95\Delta {{t}^{2}}$, – в этом выражении первый член соответствует ошибке ${{\varepsilon }_{p}}$ для метода 3-го порядка, а коэффициент при $\Delta {{t}^{2}}$ определялся из условия равенства величине ошибки для метода 2-го порядка при $\Delta t = 1.3468 \times {{10}^{{ - 2}}}$. Аналогичное распределение для ошибки скорости ${{\varepsilon }_{v}}$ представлено на фиг. 5 (шкала по оси абсцисс – логарифмическая). Как видно из графиков, влияние величины шага по времени и порядка метода интегрирования по времени на компоненты скорости относительно невелико.

Фиг. 4.
Фиг. 5.

Таким образом, для данной задачи при $t \to \infty $ численные решения для компонент скорости, полученные различными методами, – близки и в основном определяются аппроксимацией пространственных производных. Распределения давления и температуры с точностью до аддитивной постоянной также хорошо совпадают. Порядок аппроксимации метода по времени главным образом влияет на рассчитанную величину константы Бернулли $H$.

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

  1. Rosenbrock H.H. Some general implicit processes for the numerical solutions of differential equations // Computer J. 1962. V. 5. P. 329–330.

  2. Steihaug T., Wolfbrandt A. An attempt to avoid exact Jacobian and nonlinear equations in the numerical solution of stiff differential equations // Math. Comp. 1979. V. 33. № 146. P. 521–534.

  3. Liu X., Xia Y., Luo H., Xuan L. A comparative study of Rosenbrock-type and implicit Runge–Kutta time integration for discontinuous Galerkin method for unsteady 3D compressible Navier-Stokes equations // Commun. Comput. Phys. 2016. V. 20. № 4. P. 1016–1044.

  4. Bassi F., Botti L., Colombo A., Ghidoni A., Massa F. Linearly implicit Rosenbrock-type Runge–Kutta schemes applied to the Discontinuous Galerkin solution of compressible and incompressible unsteady flows // Comput. Fluids. 2015. V. 118. P. 305–320.

  5. Wang L., Yuy M. A comparative study of implicit Jacobian-free Rosenbrock–Wanner, ESDIRK and BDF methods for unsteady flow simulation with high-order flux reconstruction formulations // 2018 AIAA Aerospace Sciences Meeting. AIAA 2018–1095.

  6. Blom D.S., Birken P., Bijl H.,Kessels F., Meister A., van Zuijlen A.H. A comparison of Rosenbrock and ESDIRK methods combined with iterative solvers for unsteady compressible flows // Adv. Comput. Math. 2016. V. 42. P. 1401–1426.

  7. Rang J., Angermann L. New Rosenbrock W-methods of order 3 for partial differential algebraic equations of index 1 // BIT Num. Math. 2005. V. 45. P. 761–787.

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

  9. Coakley T.J. Implicit upwind method for the compressible Navier-Stokes equations // AIAA Journal. 1985. V. 23. № 3. P. 374–380.

  10. Годунов С.К. Разностный метод численного расчета разрывных решений уравнений гидродинамики // Матем. сб. 1959. Т. 47(89). № 3. С. 271–306.

  11. Крупа В.Г. Прямой расчет турбулентного пограничного слоя на пластине // Ж. вычисл. матем. и матем. физ. 2016. Т. 56. № 8. С. 136–153.

  12. Самарский А.А., Николаев Е.С. Методы решения сеточных уравнений. М.: Наука, 1978.

  13. Friedlander S., Gilbert A.D., Vishik M. Hydrodynamic instability for certain ABC flows // Geophys. Astrophys. Fluid Dynamics. 1993. V. 73. P. 97–107.

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