Журнал вычислительной математики и математической физики, 2022, T. 62, № 3, стр. 367-380

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

П. П. Матус 12*, Б. Д. Утебаев 2**

1 Католический ун-т
20–950 Люблин, ул. Al. Raclawickie, 14, Польша

2 Ин-т матем. НАН Беларуси
220030 Минск, ул. Сурганова, 11, Беларусь

* E-mail: piotr.p.matus@gmail.com
** E-mail: bakhadir1992@gmail.com

Поступила в редакцию 11.03.2021
После доработки 23.08.2021
Принята к публикации 17.11.2021

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

Аннотация

Доказывается, что обычная явная монотонная разностная схема бегущего счета “левый уголок”, аппроксимирующая начально-краевую задачу для одномерного уравнения переноса с постоянным коэффициентом $a > 0$, имеет произвольный k-й порядок точности на гладких решениях при условии типа Куранта. Полученные результаты обобщаются на многомерные уравнения при допущении существования слабых разрывов решения. С использованием специального усреднения Стеклова по нелинейности строятся монотонные разностные схемы для уравнений с переменными коэффициентами и полулинейных гиперболических уравнений первого порядка. Приведенные результаты вычислительных экспериментов иллюстрируют эффективность рассматриваемых методов. Библ. 31. Фиг. 3. Табл. 3.

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

ВВЕДЕНИЕ

Существует множество задач о распространении частиц в веществе: определение нейтронных потоков в реакторе, распространение света в среде и т.п. Такие задачи приводят к интегродифференциальным уравнениям, дифференциальная часть которых является уравнениями переноса [1]

$\frac{{\partial u}}{{\partial t}} + a\frac{{\partial u}}{{\partial x}} = 0.$
Здесь $a$ – скорость распространения частиц. Для определенности полагаем $a > 0$. Самой распространенной явной, монотонной, устойчивой при числах Куранта $\gamma = a\tau {\text{/}}h$, удовлетворяющих условию
$0 < \gamma \leqslant 1,$
является схема бегущего счета первого порядка аппроксимации “левый уголок”
$\frac{{y_{i}^{{n + 1}} - y_{i}^{n}}}{\tau } + a\frac{{y_{i}^{n} - y_{{i - 1}}^{n}}}{h} = 0.$
Эта схема могла бы быть идеальной, если бы не присущая ей высокая аппроксимационная вязкость.

Многими авторами была предпринята попытка повысить порядок аппроксимации этой схемы с сохранением основных свойств вычислительного алгоритма, таких как: однородность, позитивность [2] (монотонность), устойчивость и др.

Важную роль в формировании направления развития компактных алгоритмов сыграла теорема Годунова [3], утверждающая, что линейные, монотонные разностные схемы не могут иметь порядок аппроксимации выше первого при $\gamma \ne 1$. Компактными принято называть разностные схемы, которые имеют повышенный порядок аппроксимации, но пишутся на шаблоне, не существенно отличающемся от традиционного для данного уравнения [4], [5].

Теорема Годунова фактически наложила запрет на поиск приемлемого решения в классе линейных алгоритмов и направила усилия математиков на построение и исследование нелинейных разностных схем [6]–[10]. Особо следует отметить работы [11]–[13], в которых построены квазимонотонные разностные схемы повышенного порядка аппроксимации для систем уравнений гиперболического типа, основанных на добавлении в вычислительный алгоритм антидиффузионных потоков. В работах [10], [14], [15] построение и анализ схем повышенного порядка точности проведено на основе аппроксимаций Паде и принципа нелинейной регуляризации. Так называемый мультиоператорный метод построения компактных аппроксимаций и схем произвольно высокого порядка точности предложен в [4]. Схемы произвольного порядка аппроксимации рассматривались также в работах [16], [17]. Распространенными подходами к повышению точности схем являются подходы, в которых вместо кусочно-постоянных распределений внутри ячейки применяются линейные и параболические распределения [18], [19], TVD-подходы [20] и т.д.

Весьма любопытный новый подход к построению монотонных алгоритмов высокой разрешающей способности предложен в работах [7], [21]. В частности, он объединяет позитивные черты, присущие консервативным и характеристическим разностным схемам и позволяет строить явные однородные монотонные алгоритмы на неизменном минимально возможном вычислительном шаблоне. Самое интересное заключается в том, что этот подход обозначился на пути полного отказа от традиционного понятия аппроксимации – поиску решения в классе кусочно-постоянных функций.

Центральной идеей всей работы является понятие условной аппроксимации (когда временной и пространственные шаги сетки связаны определенными соотношениями), которое и позволило заметить замечательные свойства обычной схемы “левый уголок”, такие как монотонность, устойчивость, произвольный порядок аппроксимации и точности как на достаточно гладких решениях, так и на слабых разрывах решения. Отметим, что требуемые в работе условия условной аппроксимации являются совершенно не обременительными, так как они практически совпадают с условиями условной монотонности и условной устойчивости, которые могут быть выполнены лишь при числах Куранта, изменяющихся в пределах от нуля до единицы.

Укажем, что сама идея применения понятия условной аппроксимации является далеко не новой и неоднократно использовалась при построении эффективных вычислительных методов для уравнений математической физики. Достаточно указать разностные схемы Саульева и Дюфорта–Франкела для параболических уравнений [22], конечно-разностные методы Лакса–Вендроффа для систем гиперболических уравнений [23]. Подобная идея использовалась и в работе [17] для построения разностных схем произвольного порядка аппроксимации для гиперболических уравнений на косых расширенных шаблонах при условии $\tau = O\left( h \right)$.

Перейдем к краткому описанию содержания работы. В разд. 1–3 доказывается, что при выполнении условия $0 \leqslant \gamma = 1 - \alpha {{h}^{{k - 1}}},\,\,\,\,\alpha \geqslant 0$ – произвольное число, разностная схема “левый уголок” аппроксимирует однородное линейное уравнение переноса с произвольным k-м порядком как на гладких ($k \geqslant 1$), так и на слабых разрывах ($k \geqslant 2$) исходного решения. Доказываются оценки точности в равномерной норме.

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

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

В разд. 6 приводятся результаты вычислительных экспериментов применения разностных схем произвольного порядка точности к расчету дифференциальных задач как с гладкими, так и разрывными решениями. В последнем случае рассмотрены задачи о распространении прямоугольного импульса, расчет ударной волны с переменной амплитудой и задача с переменными коэффициентами. Во всех случаях сохраняется монотонность разностного решения (отсутствие нефизических осцилляций) и ударные волны размазываются на минимальное число сеточных интервалов по пространству.

1. ОДНОРОДНОЕ УРАВНЕНИЕ ПЕРЕНОСА

В прямоугольнике ${{\bar {Q}}_{T}} = \left\{ {\left( {x,t} \right):0 \leqslant x \leqslant l,\;0 \leqslant t \leqslant T} \right\}$ будем рассматривать начально-краевую задачу для уравнения переноса

(1.1)
$\frac{{\partial u}}{{\partial t}} + a\frac{{\partial u}}{{\partial x}} = 0,\quad a = {\text{const}} > 0,\quad 0 < x \leqslant l,\quad 0 < t \leqslant T,$
(1.2)
$u\left( {0,t} \right) = \mu \left( t \right),\quad t > 0,\quad u\left( {x,0} \right) = {{u}_{0}}\left( x \right),\quad x \in \left[ {0,l} \right],$
имеющую точное решение

(1.3)
$u(x,t) = \left\{ \begin{gathered} {{u}_{0}}\left( {x - at} \right),\quad 0 \leqslant at \leqslant x \leqslant l, \hfill \\ \mu \left( {t - \frac{x}{a}} \right),\quad 0 \leqslant x < at. \hfill \\ \end{gathered} \right.$

В области ${{\bar {Q}}_{T}}$ введем обычные равномерные сетки узлов с постоянными шагами $h,\,\tau $ соответственно по пространству и времени

${{\bar {\omega }}_{{h\tau }}} = {{\bar {\omega }}_{h}} \times {{\bar {\omega }}_{\tau }},\quad {{\bar {\omega }}_{h}} = \left\{ {{{x}_{i}} = ih,\;i = \overline {0,N} ,\;hN = l} \right\},\quad {{\bar {\omega }}_{h}} = {{\omega }_{h}} \cup \left\{ {{{x}_{0}} = 0} \right\},$
${{\bar {\omega }}_{\tau }} = \left\{ {{{t}_{n}} = n\tau ,\;n = \overline {0,{{N}_{0}}} ,\;\tau {{N}_{0}} = T} \right\},\quad {{\bar {\omega }}_{\tau }} = {{\omega }_{\tau }} \cup \left\{ {{{t}_{0}} = T} \right\},\quad \omega = {{\omega }_{h}} \times {{\omega }_{\tau }}.$

В работе используются обычные обозначения теории разностных схем [22], [24].

Для численного решения задачи (1.1), (1.2) будем использовать широко известную явную схему “левый уголок”:

(1.4)
${{y}_{t}} + a{{y}_{{\bar {x}}}} = 0,$
(1.5)
$y\left( {0,\hat {t}} \right) = \mu \left( {\hat {t}} \right),\quad t \in {{\omega }_{\tau }},\quad y\left( {x,0} \right) = {{u}_{0}}\left( x \right),\quad x \in {{\bar {\omega }}_{h}},$
или в индексной форме:
(1.6)
$y_{i}^{{n + 1}} = \left( {1 - \gamma } \right)y_{i}^{n} + \gamma y_{{i - 1}}^{n},\quad i = \overline {1,N} ,\quad n = \overline {0,{{N}_{0}} - 1} ,$
где $\gamma = a\tau {\text{/}}h$ – число Куранта, удовлетворяющее условию монотонности и устойчивости решения разностной схемы

(1.7)
$0 < \gamma \leqslant 1.$

2. ПОГРЕШНОСТЬ  АППРОКСИМАЦИИ

При произвольных $h$ и $\tau $ разностная схема (1.4), (1.5) имеет первый порядок аппроксимации. Тем не менее, поскольку шаги сетки уже связаны условием Куранта (1.7), возникает вопрос: нельзя ли повысить порядок точности метода в классе схем условной аппроксимации

(2.1)
$\gamma = 1 - \alpha {{h}^{{k - 1}}},$
где $\alpha \geqslant 0$ – произвольная постоянная, удовлетворяющая условию (1.7), $k \geqslant 1$ – целое число. Оказывается, можно. Во-первых, при $\alpha = 0,\,\,\gamma = 1$ схема бегущего счета (1.6) совпадает с методом характеристик и поэтому является точной [25]–[27].

Под точной разностной схемой мы понимаем такой вычислительный метод, для которого либо погрешность аппроксимации на точном решении дифференциальной задачи равна нулю ($\psi = 0$), либо приближенное решение совпадает с точным во всех узлах сетки:

$y_{i}^{n} = u_{i}^{n} = u\left( {{{x}_{i}},{{t}_{n}}} \right),\quad \left( {{{x}_{i}},{{t}_{n}}} \right) \in {{\bar {\omega }}_{{h\tau }}}.$

Обозначим через ${{C}^{{m,n}}}\left( {{{{\bar {Q}}}_{T}}} \right)$ класс непрерывных функций, имеющих в ${{\bar {Q}}_{T}}$ непрерывные производные по $x$ до порядка $m$ включительно и по $t$ до порядка $n$.

Пусть теперь $u\left( {x,t} \right) \in {{C}^{{k + 1,k + 1}}}\left( {{{{\bar {Q}}}_{T}}} \right)$. Тогда при выполнении условия (2.1) разностная схема (1.4), (1.5) аппроксимирует исходную дифференциальную задачу (1.1), (1.2) с порядком $k$, т.е.

$\psi = O\left( {{{h}^{k}} + {{\tau }^{k}}} \right),\quad k \geqslant 1.$

Действительно, из уравнений (1.1), (2.1) и формулы Тейлора следуют соотношения

(2.2)
$\begin{gathered} h - a\tau = \alpha {{h}^{k}},\quad \alpha \ne 0, \\ \psi = - {{u}_{t}} - a{{u}_{{\bar {x}}}} = \frac{a}{{2!}}\left( {h - a\tau } \right)\frac{{{{\partial }^{2}}u}}{{\partial {{x}^{2}}}} - \frac{a}{{3!}}\left( {{{h}^{2}} - {{{\left( {a\tau } \right)}}^{2}}} \right)\frac{{{{\partial }^{3}}u}}{{\partial {{x}^{3}}}} + ... \\ ... + {{( - 1)}^{k}}\frac{a}{{k!}}\left( {{{h}^{{k - 1}}} - {{{\left( {a\tau } \right)}}^{{k - 1}}}} \right)\frac{{{{\partial }^{k}}u}}{{\partial {{x}^{k}}}} + O\left( {{{h}^{k}} + {{\tau }^{k}}} \right) = O\left( {{{h}^{k}} + {{\tau }^{k}}} \right). \\ \end{gathered} $
Подставляя $y = z + u$ в уравнения (1.4), (1.5), получаем задачу для погрешности метода
(2.3)
$z_{i}^{{n + 1}} = \left( {1 - \gamma } \right)z_{i}^{n} + \gamma z_{{i - 1}}^{n} + \tau \psi _{i}^{n},$
(2.4)
$z_{0}^{{n + 1}} = 0,\quad z_{i}^{0} = 0.$
Так как решение задачи (2.3), (2.4) удовлетворяет условиям принципа максимума [22], [28], то на основании его следствия получаем оценку точности метода
${{\left\| {{{z}^{{n + 1}}}} \right\|}_{{\bar {C}}}} \leqslant T{{\left\| {{{\psi }^{n}}} \right\|}_{C}} \leqslant c\left( {{{h}^{k}} + {{\tau }^{k}}} \right),\quad k \geqslant 1,$
т.е. решение явной разностной схемы “левый уголок” сходится с произвольным порядком $k$, где $k$ – любое целое число, зависящее лишь от условий гладкости точного решения.

Здесь как обычно ${{\left\| {\, \cdot \,} \right\|}_{{\bar {С}}}} = \mathop {\max }\limits_{x \in {{{\bar {\omega }}}_{h}}} \left\| {\, \cdot \,} \right\|,\;{{\left\| {\, \cdot \,} \right\|}_{С}} = \mathop {\max }\limits_{x \in {{\omega }_{h}}} \left\| {\, \cdot \,} \right\|$.

3. СЛАБЫЕ РАЗРЫВЫ

В этом случае функция $u\left( {x,t} \right)$ является непрерывной, а ее первые производные могут иметь разрывы I рода. Выясним порядок аппроксимации и точности разностной схемы (1.6), (1.5) в предположении, что шаги сетки связаны соотношением (2.1).

Для определенности предположим, что $x - at \geqslant 0$. Тогда в произвольных точках $\left( {{{x}_{i}},{{t}_{{n + 1}}}} \right),\,\,\left( {{{x}_{i}},{{t}_{n}}} \right)$ в соответствии с (1.3) имеем

$u\left( {{{x}_{i}},{{t}_{{n + 1}}}} \right) = {{u}_{0}}\left( {{{x}_{i}} - a{{t}_{{n + 1}}}} \right) = {{u}_{0}}\left( {{{x}_{{i - 1}}} - a{{t}_{n}} + h - a\tau } \right),$
$u\left( {{{x}_{i}},{{t}_{n}}} \right) = {{u}_{0}}\left( {{{x}_{i}} - a{{t}_{n}}} \right).$

При сделанных выше предположениях для погрешности аппроксимации $\psi $ имеет место следующее соотношение:

$\begin{gathered} \psi _{i}^{n} = - \left( {u_{i}^{{n + 1}} - \left( {1 - \gamma } \right)u_{i}^{n} - \gamma u_{{i - 1}}^{n}} \right) = - \left( {{{u}_{0}}\left( {\xi _{{i - 1}}^{n} + h\left( {1 - \gamma } \right)} \right) - \left( {1 - \gamma } \right)u_{i}^{n} - \gamma {{u}_{0}}\left( {\xi _{{i - 1}}^{n}} \right)} \right) = \\ \, = - \left( {1 - \gamma } \right)\left( {h\frac{{{{u}_{0}}\left( {\xi _{{i - 1}}^{n} + h\left( {1 - \gamma } \right)} \right) - {{u}_{0}}\left( {\xi _{{i - 1}}^{n}} \right)}}{{h\left( {1 - \gamma } \right)}} - u_{i}^{n}} \right) = O\left( {{{h}^{{k - 1}}}} \right),\quad k \geqslant 2. \\ \end{gathered} $

Точность вычислительного метода при этих слабых предположениях характеризуется произвольным порядком

${{\left\| z \right\|}_{{\overline C }}} \leqslant {{c}_{1}}\left( {{{h}^{{k - 1}}} + {{\tau }^{{k - 1}}}} \right),\quad k \geqslant 2.$

4. НЕОДНОРОДНЫЕ УРАВНЕНИЯ

4.1. Линейное уравнение

Рассмотрим начально-краевую задачу для неоднородного уравнения

$\frac{{\partial u}}{{\partial t}} + a\frac{{\partial u}}{{\partial x}} = f\left( {x,t} \right),$
$u\left( {x,0} \right) = {{u}_{0}}\left( x \right),\quad u\left( {0,t} \right) = \mu \left( t \right).$
Тогда для разностной схемы “левый уголок” получаем
${{y}_{t}} + a{{y}_{{\bar {x}}}} = \varphi ,$
$\,\varphi = \frac{1}{\tau }\int\limits_{{{t}_{n}}}^{{{t}_{{n + 1}}}} {f\left( {{{x}_{{i - 1}}} + \frac{h}{\tau }\left( {t - {{t}_{n}}} \right),t} \right)dt} ,$
остаются справедливы все предыдущие утверждения: при $\gamma = 1$ данная разностная схема является точной [27], а при условии (2.1) она обладает произвольным порядком аппроксимации.

4.2. Схема “по потоку”

Аналогичными свойствами обладает и чисто неявная схема “по потоку”:

(4.1)
${{y}_{t}} + a{{\hat {y}}_{x}} = \varphi ,$
или в индексной форме:
$y_{{i + 1}}^{{n + 1}} = \left( {1 - \frac{1}{\gamma }} \right)y_{i}^{{n + 1}} + \frac{1}{\gamma }y_{i}^{n},$
которая монотонна и устойчива в C-норме при $\gamma \geqslant 1$. Кроме того, она обладает произвольным порядком аппроксимации и точности при выполнении условия

$\gamma - 1 = {{\alpha }_{1}}{{h}^{{k - 1}}},\quad {{\alpha }_{1}} \geqslant 0,\quad k \geqslant 1\;\; - \;\;{\text{целые числа}}{\text{.}}$

4.3. Схемы с весами

Комбинируя схемы (1.4), (4.1), можно построить целый класс разностных схем произвольного порядка точности

(4.2)
${{y}_{{\left( \mu \right)t}}} + ay_{{\bar {x}}}^{{\left( \sigma \right)}} = \varphi ,$
(4.3)
$y\left( {x,0} \right) = {{u}_{0}}\left( x \right),\quad x \in {{\bar {\omega }}_{h}},\quad y\left( {0,\hat {t}} \right) = {{\mu }_{0}}\left( {\hat {t}} \right),\quad t \in {{\bar {\omega }}_{\tau }},$
где

${{y}_{{\left( \mu \right)}}} = \mu y_{i}^{n} + \left( {1 - \mu } \right)y_{{i - 1}}^{n},\quad y_{i}^{{\left( \sigma \right)}} = \sigma y_{i}^{{n + 1}} + \left( {1 - \sigma } \right)y_{i}^{n},\quad 0 \leqslant \mu ,\quad \sigma \leqslant 1.$

Перепишем схему (4.2), (4.3) в канонической форме:

(4.4)
$\begin{gathered} \left( {\mu + \gamma \sigma } \right)y_{i}^{{n + 1}} = \left( {\mu + \gamma \sigma - \gamma } \right)y_{i}^{n} + \left( {\mu + \gamma \sigma - 1} \right)y_{{i - 1}}^{{n + 1}} + \\ + \;\left( {1 - \mu + \gamma \left( {1 - \sigma } \right)} \right)y_{{i - 1}}^{n} + \tau \varphi _{i}^{n},\quad i = \overline {1,N} ,\quad n = \overline {0,{{N}_{0}} - 1} . \\ \end{gathered} $

Для монотонности и устойчивости необходимо потребовать неотрицательность всех коэффициентов в уравнении (4.4). Это возможно при выполнении условия [27]

$\mu + \gamma \sigma \geqslant \max \left( {\gamma ,1} \right).$
При этом же условии разностная схема (4.4) устойчива в C-норме и справедлива априорная оценка

${{\left\| {{{y}^{{n + 1}}}} \right\|}_{{\overline C }}} \leqslant \max \left\{ {\mathop {\max }\limits_{t \in {{{\bar {\omega }}}_{\tau }}} \left| {\mu \left( t \right)} \right|,{{{\left\| {{{u}_{0}}} \right\|}}_{{\overline C }}}} \right\} + \sum\limits_{k = 0}^n {\tau {{{\left\| {{{\varphi }^{k}}} \right\|}}_{{\overline C }}}} .$

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

$\mu + \sigma = \gamma = 1 - \alpha {{h}^{{k - 1}}},\quad \alpha \geqslant 0,\quad k \geqslant 2.$

4.4. Точная схема для автономного обыкновенного дифференциального уравнения

Рассмотрим задачу Коши

(4.5)
$\frac{{du}}{{dt}} = {{f}_{1}}\left( u \right){{f}_{2}}\left( t \right),\quad u\left( 0 \right) = {{u}_{0}}.$

Используя специальное усреднение Стеклова функции ${{f}_{1}}\left( u \right)$, на сетке ${{\bar {\omega }}_{\tau }}$ тривиальным образом строится точная разностная схема вида [25], [27]

$\frac{{{{u}^{{n + 1}}} - {{u}^{n}}}}{\tau } = {{\varphi }_{1}}\left( {{{u}^{n}},{{u}^{{n + 1}}}} \right){{\varphi }_{2}}\left( t \right),\quad {{u}^{0}} = {{u}_{0}},$
${{\varphi }_{1}}\left( {{{u}^{n}},{{u}^{{n + 1}}}} \right) = {{\left[ {\frac{1}{{{{u}^{{n + 1}}} - {{u}^{n}}}}\int\limits_{{{u}^{n}}}^{{{u}^{{n + 1}}}} {\frac{{d\xi }}{{f\left( \xi \right)}}} } \right]}^{{ - 1}}},$
${{\varphi }_{2}}\left( t \right) = \frac{1}{\tau }\int\limits_{{{t}_{n}}}^{{{t}_{{n + 1}}}} {{{f}_{2}}\left( \xi \right)d\xi ,\quad t \in {{\omega }_{\tau }}} .$

4.5. Монотонная схема для полулинейного уравнения

Пусть задана начально-краевая задача для уравнения вида

(4.6)
$\frac{{\partial u}}{{\partial t}} + a\frac{{\partial u}}{{\partial x}} = f\left( u \right).$
Тогда точная при $\gamma = 1$ разностная схема имеет вид (см. [25], [27])

(4.7)
$\begin{gathered} \frac{{y_{i}^{{n + 1}} - y_{i}^{n}}}{\tau } + a\frac{{y_{i}^{n} - y_{{i - 1}}^{n}}}{h} = \varphi , \\ \varphi = \varphi \left( {y_{{i - 1}}^{n},y_{i}^{{n + 1}}} \right) = {{\left[ {\frac{1}{{y_{i}^{{n + 1}} - y_{{i - 1}}^{n}}}\int\limits_{y_{{i - 1}}^{n}}^{y_{i}^{{n + 1}}} {\frac{{d\xi }}{{f\left( \xi \right)}}} } \right]}^{{ - 1}}}. \\ \end{gathered} $

Монотонность и устойчивость разностной схемы следует из эквивалентности уравнения (4.7) выражению

$\frac{1}{{\phi _{i}^{{n + 1}}}} = \frac{1}{{\phi _{i}^{n}}} + \tau ,\quad \phi {\kern 1pt} '\left( \xi \right) = \frac{1}{{f\left( \xi \right)}}.$

4.6. Разностные схемы для уравнений с переменными коэффициентами

Рассмотрим дифференциальное уравнение

(4.8)
$\frac{{\partial u}}{{\partial t}} + с\left( {x,t} \right)\frac{{\partial u}}{{\partial x}} = f\left( u \right),\quad c\left( {x,t} \right) = {{c}_{1}}\left( x \right){{c}_{2}}\left( t \right) > 0,\quad 0 < x \leqslant l,\quad t > 0,$
с начальным и краевым условиями (1.2).

В этом случае уже нельзя построить разностные схемы произвольного порядка точности на обычных прямоугольных сетках. Тем не менее, используя идею построения точной схемы для уравнения (4.5), аналогичные методы можно построить и для уравнения (4.8) на подвижных характеристических сетках

$\frac{{d{{x}_{i}}\left( t \right)}}{{dt}} = c\left( {{{x}_{i}}\left( t \right),t} \right),\quad {{x}_{i}}\left( 0 \right) = {{x}_{{i0}}},$
которые несмотря на нелинейность находятся на основании точной аппроксимации
(4.9)
$\frac{{x_{i}^{{n + 1}} - x_{i}^{n}}}{\tau } = {{\left( {\frac{1}{{x_{i}^{{n + 1}} - x_{i}^{n}}}\int\limits_{x_{i}^{n}}^{x_{i}^{{n + 1}}} {\frac{{d\xi }}{{{{c}_{1}}\left( \xi \right)}}} } \right)}^{{ - 1}}}\frac{1}{\tau }\int\limits_{{{t}_{n}}}^{{{t}_{{n + 1}}}} {{{c}_{2}}\left( \eta \right)d\eta ,\quad i = \overline {0,N} ,\quad n = \overline {0,{{N}_{0}} - 1} } ,$
где $x_{i}^{0} = {{x}_{{i0}}}$ – начальное разбиение отрезка $[0,l]$, $x_{0}^{{n + 1}} \in (0,T],$ $n = \overline {0,{{N}_{0}} - 1} $.

Запишем теперь уравнение (4.8) вдоль характеристики ${{x}_{i}}\left( t \right)$

(4.10)
${{\left. {\frac{{du}}{{dt}}} \right|}_{{\frac{{dx}}{{dt}} = c\left( {x,t} \right)}}} = f\left( u \right),\quad u\left( 0 \right) = {{u}^{0}}.$
Тогда точная схема для уравнения (4.10) имеет вид (см. [27])

(4.11)
$\frac{{y_{i}^{{n + 1}} - y_{i}^{n}}}{\tau } = {{\left( {\frac{1}{{y_{i}^{{n + 1}} - y_{i}^{n}}}\int\limits_{y_{i}^{n}}^{y_{i}^{{n + 1}}} {\frac{{d\xi }}{{f\left( \xi \right)}}} } \right)}^{{ - 1}}}.$

Рассмотрим теперь уравнение переноса в дивергентной форме:

(4.12)
$\frac{{\partial u}}{{\partial t}} + \frac{\partial }{{\partial x}}\left( {с\left( {x,t} \right)u} \right) = 0,\quad c\left( {x,t} \right) = {{c}_{1}}\left( x \right){{c}_{2}}\left( t \right) > 0,\quad 0 < x \leqslant l,\quad t > 0,$
с начальным и краевым условиями (1.2).

Если коэффициент $c\left( {x,t} \right)$ отрицательный для всех $0 \leqslant x < l$, $t > 0$, то граничное условие должно быть поставлено на правой границе $\left\{ {x = l,\,\,t \geqslant 0} \right\}$.

Перепишем уравнение (4.12) в рассмотренном выше виде (4.8)

(4.13)
$\frac{{\partial u}}{{\partial t}} + с\left( {x,t} \right)\frac{{\partial u}}{{\partial x}} = {{c}_{3}}\left( {x,t} \right)u,\quad {{c}_{3}}\left( {x,t} \right) = - c_{1}^{'}\left( x \right){{c}_{2}}\left( t \right).$
В свою очередь, линейное неоднородное уравнение (4.13) эквивалентно системе нелинейных обыкновенных дифференциальных уравнений

$\frac{{dx}}{{dt}} = c\left( {x,t} \right),\quad {{\left. {\frac{{du}}{{dt}}} \right|}_{{\frac{{dx}}{{dt}} = c\left( {x,t} \right)}}} = {{c}_{3}}\left( {x,t} \right)u.$

Соответствующая точная разностная схема на подвижной сетке имеет вид [27]

$\frac{{x_{i}^{{n + 1}} - x_{i}^{n}}}{\tau } = {{\left( {\frac{1}{{x_{i}^{{n + 1}} - x_{i}^{n}}}\int\limits_{x_{i}^{n}}^{x_{i}^{{n + 1}}} {\frac{{d\xi }}{{{{c}_{1}}\left( \xi \right)}}} } \right)}^{{ - 1}}}\frac{1}{\tau }\int\limits_{{{t}_{n}}}^{{{t}_{{n + 1}}}} {{{c}_{2}}\left( \eta \right)d\eta } ,$
$\frac{{u_{i}^{{n + 1}} - u_{i}^{n}}}{\tau } = \frac{1}{\tau }\int\limits_{{{t}_{n}}}^{{{t}_{{n + 1}}}} {{{c}_{3}}\left( {{{x}_{i}}\left( \eta \right),\eta } \right)d\eta } {{\left( {\frac{1}{{u_{i}^{{n + 1}} - u_{i}^{n}}}\int\limits_{u_{i}^{n}}^{u_{i}^{{n + 1}}} {\frac{{d\xi }}{\xi }} } \right)}^{{ - 1}}}.$

Последнее уравнение можно переписать в виде

$u_{i}^{{n + 1}} = u_{i}^{n}\exp \left( {\int\limits_{{{t}_{n}}}^{{{t}_{{n + 1}}}} {{{c}_{3}}\left( {{{x}_{i}}\left( t \right),t} \right)dt} } \right).$

В случае, когда интегралы в правой части (4.9), (4.11) не могут быть вычислены точно, рекомендуется применять формулу Эйлера–Маклорена, основанную на правиле трапеций

$\int\limits_{{{x}_{0}}}^{{{x}_{N}}} {u\left( x \right)dx} \approx h\left( {\frac{{{{u}_{0}}}}{2} + \sum\limits_{n = 1}^{N - 1} {{{u}_{n}} + \frac{{{{u}_{N}}}}{2}} } \right) + \sum\limits_{m = 1}^M {{{{\left( { - 1} \right)}}^{m}}{{a}_{m}}{{h}^{{2m}}}\left[ {u_{N}^{{\left( {2m - 1} \right)}} - u_{0}^{{\left( {2m - 1} \right)}}} \right]} ,$
с погрешностью $O\left( {{{h}^{{2M + 2}}}} \right)$. При $M = 6$ порядок точности квадратурной формулы $O\left( {{{h}^{{14}}}} \right)$.

В [29] предлагается специальная методика расчета коэффициентов ${{a}_{m}}$

$\frac{1}{{2M{\kern 1pt} '\; + 1}} = \frac{1}{2} + \sum\limits_{m = 1}^{M{\kern 1pt} '} {{{{\left( { - 1} \right)}}^{m}}\frac{{\left( {2M{\kern 1pt} '} \right)!}}{{\left( {2M{\kern 1pt} '\; - 2m + 1} \right)!}}{{a}_{m}}} ,\quad M{\kern 1pt} ' = \overline {1,M} ,$
не зависящая от шага $h$ и функции $u\left( x \right)$.

5. ТРЕХМЕРНОЕ УРАВНЕНИЕ ПЕРЕНОСА

В параллелепипеде ${{\bar {Q}}_{T}} = \bar {\Omega } \times [0,T],$ $\bar {\Omega } = \left\{ {{\mathbf{x}} = \left( {{{x}_{1}},{{x}_{2}},{{x}_{3}}} \right):0 \leqslant {{x}_{k}} \leqslant {{l}_{k}},\;k = 1,2,3} \right\} = \Omega \cup \partial \Omega $,

$\partial \Omega = \left\{ {{\mathbf{x}} \in \bar {\Omega }:\,\,\prod\limits_{k = 1}^3 {{{x}_{k}} = 0} } \right\},$
рассмотрим начально-краевую задачу вида
$\frac{{\partial u}}{{\partial t}} + \left( {{\mathbf{b}}\nabla } \right)u = f\left( {{\mathbf{x}},t} \right),\quad {\mathbf{x}} \in \Omega ,\quad t \in \left( {0,T} \right],$
${\mathbf{b}} = {{\left( {{{b}_{1}},{{b}_{2}},{{b}_{3}}} \right)}^{{\text{т}}}},\quad \left( {{\mathbf{b}}\nabla } \right)u = \sum\limits_{i = 1}^3 {{{b}_{i}}\frac{{\partial u}}{{\partial {{x}_{i}}}}} ,$
${{\left. u \right|}_{{{\mathbf{x}} \in \partial \Omega }}} = g\left( {{\mathbf{x}},t} \right),\quad \left( {{\mathbf{x}},t} \right) \in \partial \Omega \times \left( {0,T} \right],$
$u\left( {{\mathbf{x}},0} \right) = {{u}_{0}}\left( {\mathbf{x}} \right),\quad {\mathbf{x}} \in \bar {\Omega },$
где ${{b}_{k}} = {\text{const}} > 0,$ $k = 1,2,3$. В ${{\bar {Q}}_{T}}$ введем обычные равномерные сетки с постоянными шагами по всем направлениям [27]

${{\bar {\omega }}_{h}} = {{\bar {\omega }}_{{{{h}_{1}}}}} \times {{\bar {\omega }}_{{h{}_{2}}}} \times {{\bar {\omega }}_{{{{h}_{3}}}}},$
${{\bar {\omega }}_{{{{h}_{\alpha }}}}} = \left\{ {x_{\alpha }^{{\left( {{{i}_{\alpha }}} \right)}} = {{i}_{\alpha }}{{h}_{\alpha }},\,\,{{i}_{\alpha }} = \overline {0,{{N}_{\alpha }}} ,\,\,{{h}_{\alpha }}{{N}_{\alpha }} = {{l}_{\alpha }}} \right\},\quad {{\bar {\omega }}_{{{{h}_{\alpha }}}}} = {{\omega }_{{{{h}_{\alpha }}}}} \cup \left\{ 0 \right\},\quad \alpha = 1,2,3,$
${{\bar {\omega }}_{\tau }} = \left\{ {{{t}_{n}} = n\tau ,\,\,n = \overline {0,{{N}_{0}}} ,\,\,\tau {{N}_{0}} = T} \right\} = {{\omega }_{\tau }} \cup \left\{ 0 \right\},\quad \partial {{\omega }_{h}} = {{\bar {\omega }}_{h}} \cap \partial \Omega .$

Казалось бы, явная разностная схема “левый уголок”

${{y}_{t}} + {{b}_{1}}{{y}_{{{{{\bar {x}}}_{1}}}}} + {{b}_{2}}{{y}_{{{{{\bar {x}}}_{2}}}}} + {{b}_{3}}{{y}_{{{{{\bar {x}}}_{3}}}}} = 0,$
будет обладать при соотношениях типа (2.1) указанными в одномерном случае свойствами произвольного порядка аппроксимации. Однако это не так. Уже ни при каких числах Куранта ${{\gamma }_{k}} = {{b}_{k}}\tau {\text{/}}{{h}_{k}},$ $k = 1,2,3$, она не является точной или схемой повышенного порядка аппроксимации.

При построении разностных схем бегущего счета произвольного порядка точности при аппроксимации производных по конкретным пространственным переменным будем использовать нестандартную процедуру взвешивания сеточного решения по двум другим пространственным направлениям [27]

(5.1)
$\begin{gathered} {{y}_{t}} + \left( {{\mathbf{b}}\nabla _{h}^{{ - \mu }}} \right)y = \varphi ,\quad {\mathbf{x}} \in {{\omega }_{h}},\quad t \in {{\omega }_{\tau }}, \\ \nabla _{h}^{{ - \mu }}y = \left( {\nabla _{h}^{{ - {{\mu }_{1}}}}y,\nabla _{h}^{{ - {{\mu }_{2}}}}y,\nabla _{h}^{{ - {{\mu }_{3}}}}y} \right),\quad \nabla _{h}^{{ \pm {{\mu }_{i}}}}y = {{y}_{{\left( { \pm {{\mu }_{{i,j}}}, \pm {{\mu }_{{i,k}}}} \right){{{\bar {x}}}_{i}}}}},\quad 1 \leqslant j < k \leqslant 3,\quad j,k \ne i, \\ \end{gathered} $
(5.2)
${{\left. y \right|}_{{{\mathbf{x}} \in \partial {{\omega }_{h}}}}} = g\left( {{\mathbf{x}},t} \right),\quad \left( {{\mathbf{x}},t} \right) \in \partial {{\omega }_{h}} \times \left[ {0,T} \right],$
(5.3)
$\begin{gathered} y\left( {{\mathbf{x}},0} \right) = {{u}_{0}}\left( {\mathbf{x}} \right),\quad {\mathbf{x}} \in {{{\bar {\omega }}}_{h}}, \\ \varphi = \varphi _{{{{i}_{1}}{{i}_{2}}{{i}_{3}}}}^{n} = \frac{1}{\tau }\int\limits_{{{t}_{n}}}^{{{t}_{{n + 1}}}} {f\left( {{\mathbf{x}}\left( \xi \right),\xi } \right)} d\xi ,\quad \frac{{d{\mathbf{x}}}}{{dt}} = {\mathbf{b}}. \\ \end{gathered} $

Отметим, что несмотря на усложнение алгоритма схема (5.1) обладает всеми свойствами схемы бегущего счета. Здесь и ниже мы используем следующие обозначения для взвешивания по пространству:

${{y}_{{\left( { \pm {{\mu }_{{i,j}}}, \pm {{\mu }_{{i,k}}}} \right)}}} = {{\mu }_{{i,j}}}{{y}_{{ \pm {{\mu }_{{i,k}}}}}} + \left( {1 - {{\mu }_{{i,j}}}} \right)y_{{ \pm {{\mu }_{{i,k}}}}}^{{\left( { \pm {{1}_{j}}} \right)}},\quad {{y}_{{\left( { \pm {{\mu }_{{i,k}}}} \right)}}} = {{\mu }_{{i,k}}}y\left( {\mathbf{x}} \right) + \left( {1 - {{\mu }_{{i,k}}}} \right)y\left( {{{{\mathbf{x}}}^{{\left( { \pm {{1}_{k}}} \right)}}}} \right),$
$0 \leqslant {{\mu }_{{i,j}}},\quad {{\mu }_{{i,k}}} \leqslant 1,\quad 1 \leqslant i,j,k \leqslant 3,\quad i \ne j,\quad i \ne k.$

Для дальнейшего исследования запишем разностную схему (5.1)–(5.3) в каноническом виде:

${{y}^{{n + 1}}} = \tau \varphi + \mu y + \sum\limits_{i = 1}^3 {{{\mu }_{i}}{{y}^{{ - {{1}_{i}}}}}} + \sum\limits_{1 \leqslant i < j \leqslant 3} {{{\mu }_{{ij}}}{{y}^{{ - {{1}_{i}} - {{1}_{j}}}}} + {{\mu }_{{123}}}{{y}^{{ - {{1}_{1}}, - {{1}_{2}}, - {{1}_{3}}}}}} ,$
(5.4)
${{\mu }_{i}} = c - {{c}_{i}},\quad {{c}_{i}} = {{\gamma }_{j}}{{\mu }_{{j,k}}} + {{\gamma }_{k}}{{\mu }_{{k,j}}},\quad 1 \leqslant j < k \leqslant 3,$
$j,k \ne i,\quad {{\mu }_{{ij}}} = {{c}_{i}} + {{c}_{j}} - {{\gamma }_{k}} - c,\quad i,j \ne k,$
${{\mu }_{{123}}} = \sum\limits_{i = 1}^3 {\left( {{{\gamma }_{i}} - {{c}_{i}}} \right) + c} .$

Условия неотрицательности коэффициентов в правой части (5.4) выполнены при

Здесь ${{\gamma }_{k}} = {{b}_{k}}\tau {\text{/}}{{h}_{k}},$ $k = 1,2,3$. Следовательно, на основании принципа максимума имеет место оценка [27]
${{\left\| {{{y}^{{n + 1}}}} \right\|}_{{C\left( {\bar {\omega }{}_{h}} \right)}}} \leqslant \int\limits_0^{{{t}_{{n + 1}}}} {{{{\left\| {f\left( {{\mathbf{x}}\left( \xi \right),\xi } \right)} \right\|}}_{{C\left( {\omega {}_{h}} \right)}}}d\xi } + \max \left\{ {\mathop {\max }\limits_{0 \leqslant k \leqslant n + 1} {{{\left\| {{{g}_{k}}} \right\|}}_{{C\left( {\partial \omega {}_{h}} \right)}}},{{{\left\| {{{u}_{0}}} \right\|}}_{{C\left( {\bar {\omega }{}_{h}} \right)}}}} \right\},$
${{\left\| {{{v}^{n}}} \right\|}_{{C\left( S \right)}}} = \mathop {\max }\limits_{{\mathbf{x}} \in S} \left| {{{v}^{n}}\left( {\mathbf{x}} \right)} \right|,\quad n = \overline {0,{{N}_{0}} - 1} ,$
выражающая условную устойчивость разностной схемы по отношению к малому возмущению всех входных данных задачи (5.1)–(5.3).

Нетрудно показать, что если выполнены условия

${{\mu }_{{i,j}}} + {{\mu }_{{j,i}}} = 1,\quad 1 \leqslant i < j \leqslant 3,\quad {{\mu }_{{ij}}}{{\mu }_{{ik}}} + {{\mu }_{{ji}}}{{\mu }_{{jk}}} + {{\mu }_{{ki}}}{{\mu }_{{kj}}} = 1,\quad i \ne j \ne k,$
${{\gamma }_{k}} = 1 - \mu \left( {h_{1}^{{k - 1}} + h_{2}^{{k - 1}} + h_{3}^{{k - 1}}} \right) > 0,$
то исходная разностная схема обладает произвольным k-м порядком условной аппроксимации, а при $\mu = 0$, кроме того, она является точной.

6. ВЫЧИСЛИТЕЛЬНЫЕ ЭКСПЕРИМЕНТЫ

В данном разделе приводятся результаты численных экспериментов применения разностных схем произвольного порядка точности к расчету задач как с достаточно гладкими, так и разрывными решениями.

Задача 1. Рассмотрим функцию $u\left( {x,t} \right) = 2\sin \left( {x - t} \right)$, которая является точным решением задачи (1.1), (1.2) при $a = 1$.

Для проверки порядка сходимости по пространственной и временной переменным при $\gamma = 1 - \alpha {{h}^{{k - 1}}}$ воспользуемся правилом Рунге (см. [30])

$p_{{{{L}_{\infty }}}}^{h} = {{\log }_{2}}\frac{{{{{\left\| {z(2h,\tau )} \right\|}}_{{{{L}_{\infty }}}}}}}{{{{{\left\| {z(h,\tau )} \right\|}}_{{{{L}_{\infty }}}}}}},\quad p_{{{{L}_{\infty }}}}^{\tau } = {{\log }_{2}}\frac{{{{{\left\| {z(h,2\tau )} \right\|}}_{{{{L}_{\infty }}}}}}}{{{{{\left\| {z(h,\tau )} \right\|}}_{{{{L}_{\infty }}}}}}}.$

В табл. 1 приведены порядки скорости сходимости по пространственному направлению при $\alpha = 1$, полученные экспериментальным путем. Так как разностное решение сходится к точному решению с порядком $O\left( {{{h}^{k}} + {{\tau }^{k}}} \right),\;k \geqslant 1$, то для проверки скорости сходимости мы берем шаг $h$ произвольным образом, шаг по времени при этом находится из формулы (2.2). Величины, представленные в табл. 1, соответствуют моменту времени $T = 1$. В качестве оценки погрешности было выбрано отклонение рассчитанных значений от точного решения в норме $C$.

Таблица 1.  

Скорость сходимости по пространственному направлению

$h$ $k = 2$ $k = 4$ $k = 6$ $k = 8$
${{\left\| z \right\|}_{{{{L}_{\infty }}}}}$ $p_{{{{L}_{\infty }}}}^{h}$ ${{\left\| z \right\|}_{{{{L}_{\infty }}}}}$ $p_{{{{L}_{\infty }}}}^{h}$ ${{\left\| z \right\|}_{{{{L}_{\infty }}}}}$ $p_{{{{L}_{\infty }}}}^{h}$ ${{\left\| z \right\|}_{{{{L}_{\infty }}}}}$ $p_{{{{L}_{\infty }}}}^{h}$
1/10 0.00849 8.5e–05 8.5e–07 8.5e–09
1/20 0.00212 2.00 5.3e–06 4.01 1.3e–08 6.01 3.3e–11 8.01
1/40 0.00052 2.02 3.3e–07 4.00 2.0e–10 6.00 1.2e–13 8.00
1/80 0.00013 2.00 2.0e–08 4.00 3.2e–12 6.00    

Данный вычислительный эксперимент иллюстрирует наши теоретические выводы.

Задача 2. Рассмотрим задачу (1.1) с начальной функцией, имеющей вид импульса прямоугольной формы (см. [31])

$u\left( {x,0} \right) = {{u}_{0}}\left( x \right) = \left\{ \begin{gathered} 1,\quad 0.2 < x < 1.2, \hfill \\ 0,\quad 0 < x < 0.2,\quad 1.2 < x < 2. \hfill \\ \end{gathered} \right.$

Результаты точного и приближенного решений распространения прямоугольного импульса со скоростью $a = 1$ представлены на фиг. 1 в момент времени $T = 0.3$. Параметры расчета: $k = 2$ (фиг. 1а), $k = 4$ (фиг. 1б), $\alpha = 2$.

Фиг. 1.

Решение задачи распространения прямоугольного импульса в момент времени $T = 0.3$ с шагом $h = 0.1$.

Легко видеть, что решение в обоих расчетах передается хорошо и сохраняется монотонность разностного решения (отсутствие нефизических осцилляций), а уже при $k = 4$ ударные волны размазываются на минимальное число сеточных интервалов по пространству.

Задача 3. Ударная волна с переменной амплитудой. Пусть в дифференциальной задаче (4.6), (1.2) $f\left( u \right) = - \lambda {{u}^{2}},\,\,\lambda = {\text{const}}$. Тогда точное решение имеет вид

$u\left( {x,t} \right) = \left\{ \begin{gathered} \frac{{{{u}_{0}}\left( {x - at} \right)}}{{1 + {{u}_{0}}\left( {x - at} \right)\lambda t}},\quad at \leqslant x \leqslant l,\quad 0 \leqslant t \leqslant T, \hfill \\ \frac{{\mu \left( {t - \frac{x}{a}} \right)}}{{1 + \mu \left( {t - \frac{x}{a}} \right)\lambda \frac{x}{a}}},\quad 0 \leqslant x < at,\quad 0 < t \leqslant T. \hfill \\ \end{gathered} \right.$
Начальное условие берется в виде
${{u}_{0}}\left( x \right) = \left\{ \begin{gathered} 2 + \sin \left( {2\pi x} \right),\quad 0 \leqslant x < 0.5, \hfill \\ 1 + \sin \left( {2\pi x} \right),\quad 0.5 < x \leqslant 1, \hfill \\ \end{gathered} \right.$
и граничное $\mu \left( t \right) = 2 - t\left( {4\lambda + 2\pi } \right)$.

Для аппроксимации дифференциальной задачи используется разностная схема (4.7) , в которой шаблонный функционал имеет вид

$\varphi _{i}^{n} = {{\left( {\frac{1}{{y_{i}^{{n + 1}} - y_{{i - 1}}^{n}}}\int\limits_{y_{{i - 1}}^{n}}^{y_{i}^{{n + 1}}} {\frac{{dy}}{{ - \lambda {{y}^{2}}}}} } \right)}^{{ - 1}}} = - \lambda y_{{i - 1}}^{n}y_{i}^{{n + 1}}.$

В табл. 2 приведены отклонения численного решения от точного в норме $C$ (или ${{L}_{\infty }}$), а также экспериментальные порядки скорости сходимости вне точки разрыва.

Таблица 2.  

Скорость сходимости по пространственному направлению при $\lambda = 1$

$h$ $k = 2$ $k = 4$ $k = 6$ $k = 8$
${{\left\| z \right\|}_{{{{L}_{\infty }}}}}$ $p_{{{{L}_{\infty }}}}^{h}$ ${{\left\| z \right\|}_{{{{L}_{\infty }}}}}$ $p_{{{{L}_{\infty }}}}^{h}$ ${{\left\| z \right\|}_{{{{L}_{\infty }}}}}$ $p_{{{{L}_{\infty }}}}^{h}$ ${{\left\| z \right\|}_{{{{L}_{\infty }}}}}$ $p_{{{{L}_{\infty }}}}^{h}$
1/10 0.00433 4.3e–05 4.3e–07 4.3e–09
1/20 0.00120 1.84 3.0e–06 3.84 7.5e–09 5.84 1.8e–11 7.84
1/40 0.00030 1.96 1.9e–07 3.96 1.2e–10 5.96 7.3e–14 7.96
1/80 7.7e–05 1.99 1.2e–08 3.99 1.8e–12 5.99    

На фиг. 2 представлены результаты точного и численного решения для $\lambda = 1$ (случай уменьшения амплитуды) и $\lambda = - 1$ (случай увеличения амплитуды) в моменты времени $T = 0$ и $T = 0.2$.

Фиг. 2.

Результаты расчетов при $k = 4$ с шагом $h = 0.025$ в моменты времени $T = 0$ (1) и $T = 0.2$ (2).

Фиг. 3.

Характеристическая сетка.

Таблица 3.  

Оценки точности метода при различных значениях временного шага в момент времени $T = 1$

$\tau $ ${{\left\| {{{u}_{h}} - u} \right\|}_{C}}$
0.1 1.5e–16
0.05 9.4e–17
0.025 5.9e–17
0.0125 5.2e–17

Задача 4. Рассмотрим неоднородное уравнение переноса с переменными коэффициентами

(6.1)
$\frac{{\partial u}}{{\partial t}} + с\left( {x,t} \right)\frac{{\partial u}}{{\partial x}} = {{c}_{1}}\left( {x,t} \right)u,$
в котором $c\left( {x,t} \right) = {{(x + 0.5)}^{2}}{{t}^{2}},$ ${{c}_{1}}\left( {x,t} \right) = - 2(x + 0.5){{t}^{2}}$. Входные данные задачи определяются из точного решения

$u\left( {x,t} \right) = {{\exp \left( { - {{{\left( {\frac{1}{{x + 0.5}} + \frac{{{{t}^{3}}}}{3}} \right)}}^{2}}} \right)} \mathord{\left/ {\vphantom {{\exp \left( { - {{{\left( {\frac{1}{{x + 0.5}} + \frac{{{{t}^{3}}}}{3}} \right)}}^{2}}} \right)} {{{{\left( {x + 0.5} \right)}}^{2}}}}} \right. \kern-0em} {{{{\left( {x + 0.5} \right)}}^{2}}}}.$

Воспользовавшись формулой (4.9), находим характеристическую сетку по формулам

$\begin{gathered} \frac{{x_{i}^{{n + 1}} - x_{i}^{n}}}{\tau } = {{\left( {\frac{1}{{x_{i}^{{n + 1}} - x_{i}^{n}}}\int\limits_{x_{i}^{n}}^{x_{i}^{{n + 1}}} {\frac{{dx}}{{{{{\left( {x + 0.5} \right)}}^{2}}}}} } \right)}^{{ - 1}}}\frac{1}{\tau }\int\limits_{{{t}^{n}}}^{{{t}^{{n + 1}}}} t dt, \\ x_{i}^{{n + 1}} = \frac{{3x_{i}^{n} + 0.5\left( {x_{i}^{n} + 0.5} \right)\left( {{{{\left( {{{t}_{{n + 1}}}} \right)}}^{3}} - {{{\left( {{{t}_{n}}} \right)}}^{3}}} \right)}}{{3 - \left( {x_{i}^{n} + 0.5} \right)\left( {{{{\left( {{{t}_{{n + 1}}}} \right)}}^{3}} - {{{\left( {{{t}_{n}}} \right)}}^{3}}} \right)}}, \\ \end{gathered} $
которая точно аппроксимирует нелинейное обыкновенное дифференциальное уравнение
$\frac{{dx}}{{dt}} = c\left( {x,t} \right).$
Вдоль характеристики $x = x\left( t \right)$ уравнение (6.1) записывается в виде
(6.2)
${{\left. {\frac{{du}}{{dt}}} \right|}_{{\frac{{dx}}{{dt}} = c\left( {x,t} \right)}}} = {{c}_{1}}\left( {x,t} \right)u.$
Далее, интегрируя (6.2), получаем точную разностную схему на подвижной сетке
$u_{i}^{{n + 1}} = u_{i}^{n}\exp \left( {\int\limits_{{{t}_{n}}}^{{{t}_{{n + 1}}}} {\frac{{6{{t}^{2}}}}{{{{t}^{3}} - \frac{3}{{{{x}_{{i0}}} + 0.5}}}}dt} } \right) = u_{i}^{n}{{{{{\left( {{{{\left( {{{t}_{{n + 1}}}} \right)}}^{3}} - \frac{3}{{{{x}_{{i0}}} + 0.5}}} \right)}}^{2}}} \mathord{\left/ {\vphantom {{{{{\left( {{{{\left( {{{t}_{{n + 1}}}} \right)}}^{3}} - \frac{3}{{{{x}_{{i0}}} + 0.5}}} \right)}}^{2}}} {{{{\left( {{{{\left( {{{t}_{n}}} \right)}}^{3}} - \frac{3}{{{{x}_{{i0}}} + 0.5}}} \right)}}^{2}}}}} \right. \kern-0em} {{{{\left( {{{{\left( {{{t}_{n}}} \right)}}^{3}} - \frac{3}{{{{x}_{{i0}}} + 0.5}}} \right)}}^{2}}}},$
где $x_{i}^{0} = {{x}_{{i0}}}$ – начальное разбиение отрезка $[0,l]$, $x_{0}^{{n + 1}} \in (0,T],$ $n = \overline {0,{{N}_{0}} - 1} $.

Выражаем благодарность М.П. Галанину за полезные дискуссии по тематике данной работы.

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

  1. Калиткин Н.Н., Козлитин И.А. Сравнение свойств схем бегущего счета для уравнения переноса // Матем. моделирование. 2006. Т. 18. № 4. С. 35–42.

  2. Роуч П. Вычислительная гидродинамика. М.: Мир, 1976. С. 618.

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

  4. Толстых А.И. О семействах компактных аппроксимаций 4-го и 5-го порядков с обращением двухточечных операторов для уравнений с конвективными членами // Ж. вычисл. матем. и матем. физ. 2010. Т. 50. № 5. С. 894–907.

  5. Толстых А.И. Компактные разностные схемы и их применение в задачах аэрогидродинамики. М.: Наука, 1990. С. 230.

  6. Александрикова Т.А., Галанин М.П., Еленина Т.Г. Нелинейная монотонизация схемы К.И. Бабенко для численного решения уравнения переноса // Матем. моделирование. 2004. Т. 16. № 6. С. 44–47.

  7. Головизнин В.М., Карабасов С.А. Балансно-характеристические схемы на кусочно-постоянных начальных-данных. Прыжковый перенос // Матем. моделирование. 2003. Т. 15. № 10. С. 71–83.

  8. Галанин М.П., Савенков Е.Б. Методы численного анализа математических моделей. М.: Изд-во МГТУ им. Н.Э. Баумана, 2010.

  9. Галанин М.П. Нелинейная квазимонотонная конечноэлементная схема для решения двумерных задач с переносом. Задача о скоростном скин-слое // Дифференц. ур-ния. 1996. Т. 32. № 7. С. 935–942.

  10. Вабищевич П.Н., Первичко В.А., Самарский А.А., Чуданов В.В. Нелинейные регуляризованные разностные схемы для многомерного уравнения переноса // Ж. вычисл. матем. и матем. физ. 2000. Т. 40. № 6. С. 900–907.

  11. Вязников К.В., Тишкин В.Ф., Фаворский А.П. Построение монотонных разностных схем повышенного порядка аппроксимации для систем уравнений гиперболического типа // Матем. моделирование. 1989. Т. 1. № 5. С. 95–120.

  12. Вязников К.В. Квазимонотонные разностные схемы повышенного порядка аппроксимации на неравномерных сетках // Матем. моделирование. 1990. Т. 2. № 3. С. 127–149.

  13. Ершов С.В. Квазимонотонная ENO-схема повышенной точности для интегрирования уравнений Эйлера и Навье–Стокса // Матем. моделирование. 1994. Т. 6. № 11. С. 63–75.

  14. Вабищевич П.Н. Двухслойные схемы повышенного порядка аппроксимации для нестационарных задач математической физики // Ж. вычисл. матем. и матем. физ. 2010. Т. 50. № 1. С. 118–130.

  15. Вабищевич П.Н. Двухслойные схемы повышенного порядка аппроксимации для нестационарных задач с кососимметричными операторами // Ж. вычисл. матем. и матем. физ. 2011. Т. 51. № 6. С. 1121–1132.

  16. Моисеев Н.Я., Силантьева И.Ю. Разностные схемы произвольного порядка аппроксимации для решения линейных уравнений переноса с постоянными коэффициентами методом Годунова с антидиффузией // Ж. вычисл. матем. и матем. физ. 2008. Т. 48. № 7. С. 1282–1293.

  17. Паасонен В.И. Свойства разностных схем на косых шаблонах для гиперболических уравнений // Сиб. журн. вычисл. матем. 2018. Т. 21. № 1. С. 83–97.

  18. Van Leer B.J. Towards the ultimate conservative difference scheme. Second-order sequl to Godunov’s method // J. Comput. Phys. 1979. V. 32. № 1. P. 101–136.

  19. Colella P., Woodward P.R. The piecewise parabolic method (PPM) for gas dynamical simulations // J. Comput. Phys. 1984. V. 54. № 1. P. 174–201.

  20. Harten A. High resolutions schemes for hyperbolic conservation laws // J. Comput. Phys. 1983. V. 49. P. 357–393.

  21. Головизнин В.М., Карабасов С.А., Кобринский И.М. Балансно-характеристические схемы с разделенными консервативными и потоковыми переменными // Матем. моделирование. 2003. Т. 15. № 9. С. 29–48.

  22. Самарский А.А. Теория разностных схем. М.: Наука, 1989. С. 616.

  23. Рихтмайер Р., Мортон К. Разностные методы решения краевых задач. М.: Мир, 1972.

  24. Samarskii A., Vabishchevich P., Matus P. Difference schemes with operator factors. London: Kluwer Academic Publishers, 2002.

  25. Matus P., Irkhin U., Lapinska-Chrzczonowicz M. Exact difference schemes for time-dependent problems // Comput. Meth. Appl. Math. 2005. V. 5. № 4. P. 422–448.

  26. Матус П.П., Ирхин В.А., Лапиньска-Хжчонович М., Лемешевский С.В. О точных разностных схемах для гиперболических и параболических уравнений // Дифференц. ур-ния. 2007. Т. 43. № 7. С. 978–986.

  27. Lemeshevsky S., Matus P., Poliakov D. Exact finite-difference schemes. Berlin–Boston: Walter de Gruyter, 2016.

  28. Matus P. The maximum principle and some of its applications // Comput. Meth. Appl. Math. 2002. V. 2. № 1. P. 50–91.

  29. Калиткин Н.Н. Квадратуры Эйлера–Маклорена высоких порядков // Матем. моделирование. 2004. Т. 16. № 10. С. 64–66.

  30. Tingchun Wang. Convergence of an eight-order compact difference scheme for the nonlinear Schrodinger equation // Advances in Numerical Analysis. 2012. P. 1–24.

  31. Ильин С.А., Тимофеев Е.В. Сравнение квазимонотонных разностных схем сквозного счета на задаче Коши для одномерного линейного уравнения переноса // Матем. моделирование. 1992. Т. 4. № 3. С. 62–75.

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