﻿ 满足最大值原理的熵格式计算线性传输方程
 文章快速检索
 同济大学学报(自然科学版)  2017, Vol. 45 Issue (8): 1243-1248.  DOI: 10.11908/j.issn.0253-374x.2017.08.021 0

### 引用本文

CHEN Rongsan, SU Meng, ZOU Min, XIAO Li. On Maximum-Principle-Satisfying Entropy Scheme for Linear Advection Equation[J]. Journal of Tongji University (Natural Science), 2017, 45(8): 1243-1248. DOI: 10.11908/j.issn.0253-374x.2017.08.021.

### 文章历史

On Maximum-Principle-Satisfying Entropy Scheme for Linear Advection Equation
CHEN Rongsan, SU Meng, ZOU Min, XIAO Li
School of Mathematics and Physics, China University of Geosciences, Wuhan 430074, China
Abstract: Mao Dekang et al developed an entropy scheme for computing one dimensional hyperbolic conservation equations, which has a super convergence property and is suitable for long time numerical computation. But the entropy scheme does not satisfy the maximum principle. Over-shooting or under-shooting may occur in the vicinity of maximum or minimum points. In this work, numerical simulations of one dimensional and two dimensional linear advection equations are carried out. The numerical results show that the proposed scheme does not lead to over-shooting or under-shooting, moreover, non-physical oscillations do not occur.
Key words: maximum principle    entropy scheme    linear advection equation

 $\left\{ \begin{array}{l} {u_t} + a{u_x} + b{u_y} = 0,\\ u\left( {x,y,0} \right) = {u_0}\left( {x,y} \right),\forall x \in \mathit{\Omega }\mathit{.} \end{array} \right.$ (1)

 $\left\{ \begin{array}{l} {u_t} + a{u_x} = 0,\\ u\left( {x,0} \right) = {u_0}\left( x \right),\forall x \in \mathit{\Omega }\mathit{.} \end{array} \right.$ (2)

1 一维线性传输方程满足最大值原理熵格式的描述

 $\left\{ \begin{array}{l} U{\left( u \right)_t} + aU{\left( u \right)_x} = 0,\\ u\left( {x,0} \right) = {u_0}\left( x \right),\forall x \in \mathit{\Omega }\mathit{.} \end{array} \right.$ (3)

 $u\left( {x,t} \right) = {u_0}\left( {x - at} \right)$ (4)

 $M = \mathop {\max }\limits_x {u_0}\left( x \right),$ (5)
 $m = \mathop {{\rm{Min}}}\limits_x {u_0}\left( x \right),$ (6)

 ${u_{j,n}} \approx \frac{1}{h}\int_{{x_{j - 1/2}}}^{{x_{j + 1/2}}} {u\left( {x,{t_n}} \right){\rm{d}}x}$ (7)

 ${U_{j,n}} \approx \frac{1}{h}\int_{{x_{j - 1/2}}}^{{x_{j + 1/2}}} {U\left( {u\left( {x,{t_n}} \right)} \right){\rm{d}}x}$ (8)

(1) 重构.首先给出tn时刻每一个网格Ij内熵重构解，它是一个线性函数，

 ${R_{\rm{E}}}\left( {x;{u_n},{U_n}} \right) = {u_{j,n}} + {s_{j,n,e}}\left( {x - {x_j}} \right),$ (9)

 $\frac{1}{h}\int_{{x_{j - 1/2}}}^{{x_{j + 1/2}}} {{R_{\rm{E}}}\left( {x;{u_n},{U_n}} \right){\rm{d}}x} = {u_{j,n}},$ (10)

 $\frac{1}{h}\int_{{x_{j - 1/2}}}^{{x_{j + 1/2}}} {U\left( {{R_{\rm{E}}}\left( {x;{u_n},{U_n}} \right)} \right){\rm{d}}x} = {U_{j,n}}$ (11)

 ${\left( {{s_{j,n,{\rm{e}}}}} \right)^2} = \frac{{12\left( {{U_{j,n}} - {{\left( {{u_{j,n}}} \right)}^2}} \right)}}{{{h^2}}}.$ (12)

 $\begin{array}{l} {R_{{\rm{ME}}}}\left( {x;{u_n},{U_n}} \right) = \theta \left( {{R_{{\rm{ME}}}}\left( {x;{u_n},{U_n}} \right) - {u_{j,n}}} \right) + {u_{j,n}},\\ \theta = {\rm{min}}\left\{ {\left| {\frac{{{M_0} - {u_{j,n}}}}{{M' - {u_{j,n}}}}} \right|,\left| {\frac{{{m_0} - {u_{j,n}}}}{{m' - {u_{j,n}}}}} \right|,1} \right\}, \end{array}$ (13)

(2) 发展.以重构函数RME(x; un, Un)作为tn层的初值，求解以下初值问题:

 $\left\{ \begin{array}{l} {v_t} + a{v_x} = 0, - \infty < x < \infty ,{t_n} < t < {t_{n + 1}},\\ v\left( {x,{t_n}} \right) = {R_{{\rm{ME}}}}\left( {x;{u_n},{U_n}} \right), - \infty < x < \infty . \end{array} \right.$ (14)

(3) 网格平均.在t=tn+1时的数值解和数值熵分别计算为

 $u_j^{n + 1} = \frac{1}{h}\int_{{x_{j - 1/2}}}^{{x_{j + 1/2}}} {v\left( {x,{t_{n + 1}}} \right){\rm{d}}x} ,$ (15)
 $U_j^{n + 1} = \frac{1}{h}\int_{{x_{j - 1/2}}}^{{x_{j + 1/2}}} {U\left( {v\left( {x,{t_{n + 1}}} \right)} \right){\rm{d}}x} .$ (16)
2 二维线性传输方程满足最大值原理熵格式的描述

 $\left\{ \begin{array}{l} U{\left( u \right)_t} + aU{\left( u \right)_x} + bU{\left( u \right)_y} = 0,\\ u\left( {x,y,0} \right) = {u_0}\left( {x,y} \right),\forall x \in \mathit{\Omega }\mathit{.} \end{array} \right.$ (17)

 $M = \mathop {{\rm{Max}}}\limits_{x,y} {u_0}\left( {x,y} \right),$ (18)
 $m = \mathop {{\rm{Min}}}\limits_{x,y} {u_0}\left( {x,y} \right),$ (19)

 ${u_{j,n,k}} \approx \frac{1}{{{h^2}}}\int_{{x_{j - 1/2}}}^{{x_{j + 1/2}}} {\int_{{y_{k - 1/2}}}^{{y_{k + 1/2}}} {u\left( {x,y,{t_n}} \right){\rm{d}}x} } {\rm{d}}\mathit{y,}$ (20)
 ${U_{j,n,k}} \approx \frac{1}{{{h^2}}}\int_{{x_{j - 1/2}}}^{{x_{j + 1/2}}} {\int_{{y_{k - 1/2}}}^{{y_{k + 1/2}}} {U\left( {u\left( {x,y,{t_n}} \right)} \right){\rm{d}}x} } {\rm{d}}\mathit{y,}$ (21)

(1) 重构.在tn层上熵重构函数RE(x, y; un, Un)在网格Ij, k上取为xy的一次函数，

 ${R_{\rm{E}}}\left( {x,\mathit{y};{u_n},{U_n}} \right) = {u_{j,n,k}} + \alpha \left( {{{\left( {{s_x}} \right)}_{j,n,\mathit{k}}}\left( {x - {x_j}} \right) + {{\left( {{s_y}} \right)}_{j,n,\mathit{k}}}\left( {y - {y_k}} \right)} \right),$ (22)

 $\frac{1}{{{h^2}}}\int_{{x_{j - 1/2}}}^{{x_{j + 1/2}}} {\int_{{y_{k - 1/2}}}^{{y_{k + 1/2}}} {{R_{\rm{E}}}\left( {x,y;{\mathit{u}_n},{\mathit{U}_n}} \right){\rm{d}}x} } {\rm{d}}\mathit{y,} = {u_{j,n,k}},$ (23)

 $\frac{1}{{{h^2}}}\int_{{x_{j - 1/2}}}^{{x_{j + 1/2}}} {\int_{{y_{k - 1/2}}}^{{y_{k + 1/2}}} {U\left( {{R_{\rm{E}}}\left( {x,y;{\mathit{u}_n},{\mathit{U}_n}} \right)} \right){\rm{d}}x} } {\rm{d}}\mathit{y,} = {U_{j,n,k}}$ (24)

RE(x, y; un, Un)自动满足式(23).可通过式(24) 解出，

 ${\alpha ^2} = \frac{{12\left( {{U_{j,n}} - {{\left( {{u_{j,n}}} \right)}^2}} \right)}}{{{h^2}\left( {{{\left( {{{\left( {{s_x}} \right)}_{j,n,k}}} \right)}^2} + {{\left( {{{\left( {{s_y}} \right)}_{j,n,k}}} \right)}^2}} \right)}}$ (25)

 $\theta \left( {{R_{{\rm{ME}}}}\left( {x,y;{u_n},{U_n}} \right) - {u_{j,n,k}}} \right) + {u_{j,n,k}},$ (26)
 $\theta = {\rm{min}}\left\{ {\left| {\frac{{{M_0} - {u_{j,n,k}}}}{{M' - {u_{j,n,k}}}}} \right|,\left| {\frac{{{m_0} - {u_{j,n,k}}}}{{m' - {u_{j,n,k}}}}} \right|,1} \right\}$ (27)

(2) 发展.求解初值问题：

 $\left\{ \begin{array}{l} {v_t} + a{v_x} + b{v_y} = 0,\\ - \infty < x,y < \infty ,{t_n} < t < {t_{n + 1}},\\ v\left( {x,y,{t_n}} \right) = {R_{{\rm{ME}}}}\left( {x,y;{u_n},{U_n}} \right), - \infty < x,y < \infty . \end{array} \right.$ (28)

(3) 网格平均. t=tn+1时刻的数值解和数值熵的计算分别为

 ${u_{j,n + 1,k}} = \frac{1}{{{h^2}}}\int_{{x_{j - 1/2}}}^{{x_{j + 1/2}}} {\int_{{y_{k - 1/2}}}^{{y_{k + 1/2}}} {v\left( {x,y,{t_{n + 1}}} \right){\rm{d}}x{\rm{d}}y,} }$ (29)
 ${U_{j,n + 1,k}} = \frac{1}{{{h^2}}}\int_{{x_{j - 1/2}}}^{{x_{j + 1/2}}} {\int_{{y_{k - 1/2}}}^{{y_{k + 1/2}}} {{{\left( {v\left( {x,y,{t_{n + 1}}} \right)} \right)}^2}{\rm{d}}x{\rm{d}}y.} }$ (30)

 ${u_{j,n + 1,k}} = {u_{j,n,k}} - \lambda \left( {{{\hat f}_{j + 1/2,n,k}} + {{\hat f}_{j - 1/2,n,k}}} \right) - \lambda \left( {{{\hat g}_{j,n,k + 1/2}} + {{\hat g}_{j,n,k - 1/2}}} \right),$ (31)
 ${U_{j,n + 1,k}} = {U_{j,n,k}} - \lambda \left( {{{\hat F}_{j + 1/2,n,k}} + {{\hat F}_{j - 1/2,n,k}}} \right) - \lambda \left( {{{\hat G}_{j,n,k + 1/2}} + {{\hat G}_{j,n,k - 1/2}}} \right),$ (32)

 ${{\hat f}_{j \pm 1/2,n,k}} = \frac{1}{{h\tau }}\int_{{t_n}}^{{t_{n + 1}}} {\int_{{y_{k - 1/2}}}^{{y_{k + 1/2}}} {av\left( {{x_{j \pm 1/2}},y,t} \right){\rm{d}}y{\rm{d}}t,} }$ (33)
 ${{\hat g}_{j,n,k \pm 1/2}} = \frac{1}{{h\tau }}\int_{{t_n}}^{{t_{n + 1}}} {\int_{{x_{j - 1/2}}}^{{x_{j + 1/2}}} {bv\left( {x,{y_{k \pm 1/2}},t} \right){\rm{d}}\mathit{x}{\rm{d}}t,} }$ (34)
 ${{\hat F}_{j \pm 1/2,n,k}} = \frac{1}{{h\tau }}\int_{{t_n}}^{{t_{n + 1}}} {\int_{{y_{k - 1/2}}}^{{y_{k + 1/2}}} {a{{\left( {v\left( {{x_{j \pm 1/2}},y,t} \right)} \right)}^2}{\rm{d}}y{\rm{d}}t,} }$ (35)
 ${{\hat G}_{j,n,k \pm 1/2}} = \frac{1}{{h\tau }}\int_{{t_n}}^{{t_{n + 1}}} {\int_{{x_{j - 1/2}}}^{{x_{j + 1/2}}} {b{{\left( {v\left( {x,{y_{k \pm 1/2}},t} \right)} \right)}^2}{\rm{d}}\mathit{x}{\rm{d}}t,} }$ (36)

3 数值实验

 $u\left( {x,0} \right) = \left\{ \begin{array}{l} \exp \left\{ { - \frac{1}{{1 - 16{{\left( {x - \frac{1}{2}} \right)}^2}}}} \right\},x \in \left[ {\frac{1}{4},\frac{3}{4}} \right),\\ 0,\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;x \notin \left[ {\frac{1}{4},\frac{3}{4}} \right). \end{array} \right.$ (37)

 图 1 算例1, 200网格的数值解 Fig.1 Example 1, numerical solution on a grid of 200 cells

 $u\left( {x,0} \right) = \exp \left\{ { - 100 \cdot {{\left( {x - \frac{1}{2}} \right)}^2}} \right\}\sin \left( {80x} \right),0 \le x < 1.$ (38)

 图 2 算例2, 200网格的数值解 Fig.2 Example 2, numerical solution on a grid of 200 cells

 $u\left( {x,y,0} \right) = \left\{ \begin{array}{l} \exp \left\{ { - \frac{1}{{1 - 16{{\left( {x - \frac{1}{2}} \right)}^2}}}} \right\} \times \exp \left\{ { - \frac{1}{{1 - 16{{\left( {y - \frac{1}{2}} \right)}^2}}}} \right\},\\ x \in \left[ {\frac{1}{4},\frac{3}{4}} \right) \times \left[ {\frac{1}{4},\frac{3}{4}} \right),\\ 0,x \notin \left[ {\frac{1}{4},\frac{3}{4}} \right) \times \left[ {\frac{1}{4},\frac{3}{4}} \right). \end{array} \right.$ (39)

 图 3 算例3, 200网格t=20的数值解 Fig.3 Example 3, numerical solution on a grid of 200 cells at t=20

 $\begin{array}{l} u\left( {x,y,0} \right) = \exp \left\{ { - 1000 \cdot {{\left( {x - \frac{1}{2}} \right)}^2}} \right\}\\ \begin{array}{*{20}{l}} {\sin \left( {80x} \right) \cdot \exp \left\{ { - 100 \times {{\left( {y - \frac{1}{2}} \right)}^2}} \right\}\sin \left( {80y} \right),}\\ {\left( {x,y} \right) \in \left[ {0,1} \right) \times \left[ {0,1} \right).} \end{array} \end{array}$ (40)

 图 4 算例4, 200网格t=10的数值解 Fig.4 Example 4, numerical solution on a grid of 200 cells at t=10
4 结论

 [1] GODUNOV S K. A finite difference method for computation of discontinuous solutions of the equations of fluid dynamics[J]. Matematicheskii Sbornik, 1959, 47(11): 357 [2] HARTEN A and OSHER S. Uniformly high-order accurate non-oscillatory scheme Ⅱ[J]. SIAM Journal on Numerical Analysis, 1987, 24(2): 279 DOI:10.1137/0724022 [3] COCKBURN B and SHU C W. TVB Runge-Kutta local projecting discontinuous Galerkin finite element methods for conservation laws Ⅱ: general frame work[J]. Mathematics of Computation, 1989, 52(186): 411 [4] SHU C W and OSHER S. Efficient implementation of essentially non-oscillatory shock-capturing schemes Ⅱ[J]. Journal of Computational Physics, 1989, 83(2): 32 [5] JIANG G S and SHU C W. Efficient implementation of weighted ENO schemes[J]. Journal of Computational Physics, 1996, 126(1): 202 DOI:10.1006/jcph.1996.0130 [6] TADMOR E. Numerical viscosity of entropy stable schemes for systems of conservation laws[J]. Mathematics of Computation, 1987, 49(179): 91 DOI:10.1090/S0025-5718-1987-0890255-3 [7] TADMOR E. Entropy stability theory for difference approximations of nonlinear conservation laws and related time-dependent problems[J]. Acta Numerica, 2003, 12(12): 451 [8] TADMOR E and ZHONG W. Entropy stable approximations of navier-stokes equations with no artificial numerical viscosity[J]. Journal of Hyperbolic Differential Equations, 2006, 3(3): 529 DOI:10.1142/S0219891606000896 [9] CHENG X H, NIE Y F, FENG J H, et al. Self-adjusting entropy-stable scheme for compressible Euler equations[J]. Chinese Physics B, 2015, 24(2): 16 [10] 刘友琼, 封建湖, 梁楠, 等. 求解浅水波方程的熵相容格式[J]. 应用数学与力学, 2013, 34(12): 1247 LIU Youqiong, FENG Jianhu, LIANG Nan, et al. An entropy-consistent flux scheme for shallow water equations[J]. Applied Mathematics and Mechanics, 2013, 34(12): 1247 [11] 程晓晗, 封建湖, 聂玉峰. 求解双曲守恒律方程的WENO型熵相容格式[J]. 爆炸与冲击, 2014, 34(4): 501 CHENG Xiaohan, FENG Jianhu and NIE Yufeng. WENO type entropy consistent scheme for hyperbolic conservation laws[J]. Explosion & Shock Waves, 2014, 34(4): 501 DOI:10.11883/1001-1455(2014)04-0501-07 [12] OSHER S and LIU X D. Non-oscillatory high order accurate self similar maximum principle satisfying shock capturing schemes[J]. SIAM Journal on Numerical Analysis, 1996, 33(2): 760 DOI:10.1137/0733038 [13] ZHANG X X and SHU C W. On maximum-principle-satisfying high order schemes for scalar conservation laws[J]. Journal of Computational Physics, 2010, 229(9): 3091 DOI:10.1016/j.jcp.2009.12.030 [14] LI H X, WANG Z G and MAO D K. Numerically neither dissipative nor compressive scheme for linear advection equation and its application to the Euler system[J]. Journal of Scientific Computing, 2008, 36(3): 285 DOI:10.1007/s10915-008-9192-x [15] CUI Y F and MAO D K. Error self-canceling of a difference scheme maintaining two conservation laws for linear advection equation[J]. Mathematics of Computation, 2012, 81(278): 715 [16] CHEN R S, ZOU M and XIAO L. Entropy-TVD scheme for the shallow water equations in one dimension[J]. Journal of Scientific Computing, 2017, 71(2): 822 DOI:10.1007/s10915-016-0322-6