• PDF
• Cite
• Share
Article Contents  Article Contents

# An entropy stable high-order discontinuous Galerkin method for cross-diffusion gradient flow systems

• * Corresponding author: José A. Carrillo
JAC was partially supported by the EPSRC grant number EP/P031587/1. JAC would like to thank the Department of Applied Mathematics at Brown University for their kind hospitality and for the support through the IBM Visiting Professorship scheme. CWS was partially supported by ARO grant W911NF-16-1-0103 and NSF grant DMS-1719410.
• As an extension of our previous work in , we develop a discontinuous Galerkin method for solving cross-diffusion systems with a formal gradient flow structure. These systems are associated with non-increasing entropy functionals. For a class of problems, the positivity (non-negativity) of solutions is also expected, which is implied by the physical model and is crucial to the entropy structure. The semi-discrete numerical scheme we propose is entropy stable. Furthermore, the scheme is also compatible with the positivity-preserving procedure in  in many scenarios, hence the resulting fully discrete scheme is able to produce non-negative solutions. The method can be applied to both one-dimensional problems and two-dimensional problems on Cartesian meshes. Numerical examples are given to examine the performance of the method.

Mathematics Subject Classification: Primary: 65M12, 65M60; Secondary: 35K51.

 Citation: • • Figure 1.  Numerical solutions to the tumor encapsulation problem in Example 4.2 with $\beta = 0.0075$ and $\gamma = 10$ at $t = 0.02$, $t = 0.2$, $t = 1$ and $t = 2$. We use piecewise cubic polynomials in the scheme. The mesh size is $h = 0.04$ in Figure 1a and Figure 1c, and is $h = 0.02$ in Figure 1b and Figure 1d. The corresponding entropy profiles are given in Figure 1e and Figure 1f. The reference solutions are given in black lines obtained by using the $P^1$ scheme on a mesh with $h = 0.002$

Figure 2.  Numerical solutions to the tumor encapsulation problem in Example 4.2 with $\beta = 0.0075$ and $\gamma = 1000$ at $t = 0.02$, $t = 0.2$, $t = 1$ and $t = 2$. The mesh size is $h = 0.02$ and the time step is $\tau = 0.02h^2$. The scaling parameter is set as $0.95\theta^ \varepsilon_{l, i}$ in the positivity-preserving procedure. Piecewise cubic polynomials are used in Figure 2a and Figure 2c, and piecewise quartic polynomials are used in Figure 2b and Figure 2d. The reference solution is given in black lines obtained by using the $P^1$ scheme on a mesh with $h = 0.001$

Figure 3.  Numerical solutions to the surfactant spreading problem in Example 4.3 at $t = 1$, $t = 3$ and $t = 6$. The mesh size is $h = 0.05$ and the time step is $\tau = 0.02h^2$. We apply piecewise cubic polynomials for producing Figure 3a and Figure 3c. Piecewise quartic polynomials are used in Figure 3b and Figure 3d. Positivity-preserving limiter is activated mainly near the leading front of $\rho_2$. The reference solutions are given in black lines obtained with $P^1$ scheme on a mesh with $h = 0.0025$. The profiles of discrete entropy are depicted in Figure 3e and Figure 3f

Figure 4.  Numerical solutions to the surfactant spreading problem (15) at $t = 0.25$. The solution is computed with piecewise cubic polynomials $k = 3$, mesh size $h = 0.02$ and time step $\tau = 0.003h^2$

Figure 5.  Numerical solutions to the seawater intrusion problem in Example 5.3 at $t = 0, 0.2, 0.79, 12$. Solutions are obtained with piecewise cubic polynomials on a uniform square mesh on $[0, 1]\times [0, 1]$, with $h^x = h^y =0.05$. The time step is set as $\tau = 0.002(h^x)^2$ in the simulation. $b$, $b+\rho_2$ and $b+\rho_1+\rho_2$ are depicted from bottom to top respectively

Table 1.  Accuracy test of the SKT population model in Example 4.1, with central flux for $\mathit{\boldsymbol{\hat \xi }}$ and Lax-Friedrichs flux for $\widehat {F\mathit{\boldsymbol{u}}}$

 $k$ $N$ $L^1$ error order $L^2$ error order $L^\infty$ error order 1 20 2.852E-02 - 1.009E-02 - 8.675E-03 - 40 9.370E-03 1.61 3.461E-03 1.54 2.918E-03 1.57 80 3.031E-03 1.63 1.149E-03 1.59 9.292E-04 1.65 160 9.527E-04 1.67 3.609E-04 1.67 2.765E-04 1.75 2 20 1.093E-03 - 4.283E-04 - 4.440E-04 - 40 1.022E-04 3.42 4.329E-05 3.31 4.291E-05 3.37 80 1.164E-05 3.13 5.223E-06 3.05 5.183E-06 3.05 160 1.414E-06 3.04 6.480E-07 3.01 6.428E-07 3.01 3 20 7.543E-05 - 2.840E-05 - 3.058E-05 - 40 8.282E-06 3.19 3.208E-06 3.15 3.901E-06 2.97 80 8.588E-07 3.27 3.501E-07 3.20 4.431E-07 3.14 160 8.748E-08 3.30 3.642E-08 3.27 4.812E-08 3.20 4 20 2.170E-06 - 9.649E-07 - 1.752E-06 - 40 3.209E-08 6.08 1.746E-08 5.79 3.606E-08 5.60 80 8.787E-10 5.19 5.031E-10 5.12 1.066E-09 5.08 160 2.620E-11 5.07 1.542E-11 5.03 3.288E-11 5.02

Table 2.  Accuracy test of the SKT population model in Example 4.1, with alternating fluxes ${\mathit{\boldsymbol{\hat \xi }}} = \boldsymbol{\xi}_h^-$ and $\widehat {F\mathit{\boldsymbol{u}}} = (F_h \boldsymbol{u}_h)^+$

 $k$ $N$ $L^1$ error order $L^2$ error order $L^\infty$ error order 1 20 8.476E-02 - 3.128E-02 - 2.359E-02 - 40 2.055E-02 2.04 7.346E-03 2.090 5.189E-03 2.18 80 5.088E-03 2.01 1.803E-03 2.027 1.235E-03 2.07 160 1.268E-03 2.00 4.486E-04 2.007 3.049E-04 2.02 2 20 1.313E-03 - 5.584E-04 - 6.613E-04 - 40 1.490E-04 3.14 6.531E-05 3.096 7.530E-05 3.14 80 1.815E-05 3.04 8.039E-06 3.022 9.240E-06 3.03 160 2.250E-06 3.01 1.001E-06 3.005 1.146E-06 3.01 3 20 4.008E-05 - 1.908E-05 - 3.948E-05 - 40 2.420E-06 4.05 1.160E-06 4.040 2.645E-06 3.90 80 1.503E-07 4.01 7.200E-08 4.010 1.682E-07 3.98 160 9.374E-09 4.00 4.493E-09 4.002 1.056E-08 3.99 4 20 1.603E-06 - 8.465E-07 - 1.774E-06 - 40 4.754E-08 5.08 2.615E-08 5.017 6.252E-08 4.83 80 1.469E-09 5.02 8.149E-10 5.004 2.028E-09 4.95 160 4.577E-11 5.00 2.544E-11 5.001 6.375E-11 4.99

Table 3.  Accuracy test of the SKT population model in Example 1 with $k = 3$, with central flux for ${\mathit{\boldsymbol{\hat \xi }}}$ and the Lax-Friedrichs flux for $\widehat {F\mathit{\boldsymbol{u}}} = \{F_h \boldsymbol{u}_h\} + \frac{\tilde{\alpha}}{2}[ \boldsymbol{\rho}_h]$. Here $\tilde{\alpha} = 0, 10\alpha, 900\alpha$ respectively

 $\tilde{\alpha}$ $N$ $L^1$ error order $L^2$ error order $L^\infty$ error order $0$ 20 9.502E-05 - 3.419E-05 - 3.141E-05 - 40 1.196E-05 2.99 4.260E-06 3.00 4.207E-06 2.90 80 1.501E-06 2.99 5.331E-07 3.00 5.222E-07 3.01 160 1.878E-07 3.00 6.667E-08 3.00 6.516E-08 3.00 $10\alpha$ 20 3.941E-05 - 1.692E-05 - 2.287E-05 - 40 3.833E-06 3.36 1.644E-06 3.36 2.245E-06 3.35 80 3.351E-07 3.52 1.477E-07 3.48 2.136E-07 3.39 160 2.720E-08 3.62 1.238E-08 3.58 1.865E-08 3.52 $900\alpha$ 20 2.873E-06 - 1.096E-06 - 1.981E-06 - 40 1.558E-07 4.21 6.967E-08 3.98 1.213E-07 4.03 80 1.075E-08 3.86 4.892E-09 3.83 8.305E-09 3.87 160 7.043E-10 3.93 3.261E-10 3.91 5.546E-10 3.90

Table 4.  Accuracy test of the cross-diffusion system in Example 5.1, with central flux for ${\mathit{\boldsymbol{\hat \xi }}}$ and Lax-Friedrichs flux for $\widehat {F\mathit{\boldsymbol{u}}}$

 $k$ $N^x$ $L^1$ error order $L^2$ error order $L^\infty$ error order 1 10 1.185E-01 - 5.349E-02 - 5.732E-02 - 20 4.656E-02 1.35 2.147E-02 1.32 2.265E-02 1.34 40 1.773E-02 1.39 8.266E-03 1.38 8.692E-03 1.38 80 6.218E-03 1.51 2.921E-03 1.50 3.084E-03 1.50 2 10 8.206E-03 - 4.362E-03 - 8.402E-03 - 20 9.124E-04 3.17 5.659E-04 2.95 9.942E-04 3.08 40 1.077E-04 3.08 7.186E-05 2.98 1.213E-04 3.04 80 1.315E-05 3.03 9.068E-06 2.99 1.515E-05 3.00 3 10 9.481E-04 - 5.256E-04 - 9.990E-04 - 20 1.061E-04 3.16 5.847E-05 3.17 1.112E-04 3.17 40 1.128E-05 3.23 6.169E-06 3.25 1.216E-05 3.19 80 1.119E-06 3.33 6.042E-07 3.35 1.232E-06 3.30 4 10 4.685E-05 - 2.649E-05 - 7.459E-05 - 20 1.212E-06 5.27 8.159E-07 5.02 2.837E-06 4.72 40 3.328E-08 5.19 2.273E-08 5.17 7.754E-08 5.19

Table 5.  Accuracy test of the cross-diffusion system in Example 5.1 with alternating fluxes $\mathit{\boldsymbol{\hat \xi }} = \mathit{\boldsymbol{\xi }}_h^ -$ and $\widehat {F\mathit{\boldsymbol{u}}} = {\left( {{F_h}{\mathit{\boldsymbol{u}}_h}} \right)^ + }$

 $k$ $N^x$ $L^1$ error order $L^2$ error order $L^\infty$ error order 1 10 3.848E-01 - 1.853E-01 - 2.415E-01 - 20 9.608E-02 2.00 4.397E-02 2.08 4.372E-02 2.47 40 2.376E-02 2.02 1.075E-02 2.03 1.014E-02 2.11 80 5.916E-03 2.01 2.667E-03 2.01 2.525E-03 2.01 2 10 1.510E-02 - 8.132E-03 - 2.121E-02 - 20 1.673E-03 3.17 9.563E-04 3.09 2.328E-03 3.19 40 1.923E-04 3.12 1.169E-04 3.03 2.662E-04 3.13 80 2.294E-05 3.07 1.453E-05 3.01 3.192E-05 3.06 3 10 8.253E-04 - 4.525E-04 - 1.449E-03 - 20 4.998E-05 4.05 2.922E-05 3.95 1.044E-04 3.80 40 3.075E-06 4.02 1.850E-06 3.98 6.675E-06 3.97 80 1.912E-07 4.01 1.161E-07 4.00 4.216E-07 3.99 4 10 5.174E-05 - 3.287E-05 - 1.448E-04 - 20 1.683E-06 4.94 1.127E-06 4.87 4.972E-06 4.86 40 5.276E-08 5.00 3.620E-08 4.96 1.485E-07 5.07

Table 6.  Accuracy test for Example 5.1, with central flux for ${\mathit{\boldsymbol{\hat \xi }}}$ and Lax-Friedrichs flux for $\widehat {F\mathit{\boldsymbol{u}}} = \{ {F_h}{\mathit{\boldsymbol{u}}_h}\} + \frac{{\tilde \alpha }}{2}\left[ {\mathit{\boldsymbol{\rho }}h} \right]$

 $\tilde{\alpha}$ $N^x$ $L^1$ error order $L^2$ error order $L^\infty$ error order 0 10 1.082E-03 - 6.170E-04 - 1.139E-03 - 20 1.328E-04 3.07 7.682E-05 3.01 1.373E-04 3.05 40 1.651E-05 3.01 9.595E-06 3.00 1.722E-05 3.00 80 2.063E-06 3.00 1.199E-06 3.00 2.157E-06 3.00 $100\alpha$ 10 2.505E-04 - 1.266E-04 - 1.528E-04 - 20 1.234E-05 4.34 6.425E-06 4.30 1.234E-05 3.63 40 6.709E-07 4.20 3.609E-07 4.15 9.094E-07 3.76 80 3.923E-08 4.10 2.178E-08 4.05 6.480E-08 3.81
• Figures(5)

Tables(6)

## Article Metrics  DownLoad:  Full-Size Img  PowerPoint