Journal of Scientific Computing

, Volume 73, Issue 2–3, pp 1338–1359 | Cite as

A New Type of Finite Volume WENO Schemes for Hyperbolic Conservation Laws

Article

Abstract

A new type of finite difference weighted essentially non-oscillatory (WENO) schemes for hyperbolic conservation laws was designed in Zhu and Qiu (J Comput Phys 318:110–121, 2016), in this continuing paper, we extend such methods to finite volume version in multi-dimensions. There are two major advantages of the new WENO schemes superior to the classical finite volume WENO schemes (Shu, in: Quarteroni (ed) Advanced Numerical Approximation of Nonlinear Hyperbolic Equations, Lecture Notes in Mathematics, CIME subseries, Springer, Berlin, 1998), the first is the associated linear weights can be any positive numbers with only requirement that their summation equals one, and the second is their simplicity and easy extension to multi-dimensions in engineering applications. The new WENO reconstruction is a convex combination of a fourth degree polynomial with two linear polynomials defined on unequal size spatial stencils in a traditional WENO fashion. These new fifth order WENO schemes use the same number of cell average information as the classical fifth order WENO schemes Shu (1998), could get less absolute numerical errors than the classical same order WENO schemes, and compress nonphysical oscillations nearby strong shocks or contact discontinuities. Some benchmark tests are performed to illustrate the capability of these schemes.

Keywords

Fifth order WENO scheme Finite volume Unequal size spatial stencil Engineering application 

Mathematics Subject Classification

65M60 35L65 

1 Introduction

In this paper, we extend a new type of weighted essentially non-oscillatory (WENO) termed as WENO-ZQ scheme in [36] from finite difference version to finite volume version for solving hyperbolic conservation laws:
$$\begin{aligned} \left\{ \begin{array}{ll} u_t+ \nabla \cdot f(u)=0,\\ u(x_1,\ldots ,x_n,0)=u_0(x_1,\ldots ,x_n).\\ \end{array} \right. \end{aligned}$$
(1.1)
There are two major advantages of the new WENO schemes superior to the classical finite volume WENO schemes in [29], which is extended from the original finite difference WENO in [18], and in this paper we also term it as WENO-JS. The first is the associated linear weights can be set as any nonnegative parameters with the only limiting condition that their sum is one, and the second is their simplicity and easy extension to multi-dimensions in engineering applications.

In recent decades many numerical schemes were investigated to improve the first order methods [13] to arbitrary numerical order. Harten et al. [14] gave a weaker version of the TVD criterion and on which they introduced the basis for the reconstruction of high order essentially non-oscillatory (ENO) type schemes for the purpose of achieving uniform high order accuracy. Thereafter, Harten et al. [16] proposed ENO schemes to simulate one dimensional test cases. Harten [15] first presented a two dimensional extension of the finite volume ENO schemes. Then Casper [6] and together with Atkins [7] studied the finite volume approach in developing multi-dimensional high order accurate ENO schemes for simulating hyperbolic conservation laws. The crucial spirit of these ENO schemes [1, 6, 7, 15, 16] et al. is their application of the smoothest stencil and should discard other candidate stencils for approximating the variables at cell boundaries to a high order accuracy in smooth region while escaping spurious oscillations adjacent to strong shocks or contact discontinuities. In 1994, based on the spirit of ENO schemes, Liu et al. [22] proposed a finite volume WENO scheme that constructed from the rth order ENO scheme to gain (r+1)th order accuracy in smooth region. In 1996, Jiang and Shu [18] introduced a finite difference scheme, termed as WENO-JS, from the rth order ENO scheme to (2r-1)th order accuracy, and gave the new framework of designing smoothness indicators and nonlinear weights. The framework works well for both WENO reconstructions in the finite difference and finite volume version. Thereafter, many WENO schemes were widely developed and applied, such as two dimensional finite volume WENO schemes on unstructured meshes proposed by Hu and Shu [17], three dimensional finite volume WENO on structured meshes constructed by Titarev and Toro [32] and unstructured meshes designed by Zhang and Shu [34], Hermite WENO (HWENO) schemes and as limiters for solving Runge–Kutta discontinuous Galerkin (RKDG) methods in [23, 25].

The main idea of WENO schemes is a weighted combination of several local reconstructions based on different stencils and the usage of it as a final WENO reconstruction. The combination coefficients (also called non-linear weights) depend on the linear weights and smoothness indicators, are often chosen to increase the order of accuracy over that on each small spatial stencil. The linear weights are mainly determined by local geometry of the computing mesh, order of accuracy and the location of reconstruction point. When there are no linear weights, the WENO reconstruction will fail to increase the order of accuracy, and for negative linear weights, the WENO reconstruction will become unstable. The problem of non-existent linear weights for third order WENO reconstruction at the centre of the cell was addressed in [20] by Levy, Puppo and Russo in 1999, where the technique called central WENO was introduced. The same technique, under the name of central WENO or sometimes compact WENO, was later exploited at fifth order by Capdeville [5], Semplice, Coco and Russo [27] in two dimensions on unstructured grids, and studied in great details at third order by Kolb [19], Cravero and Semplice [9]. For the sake of overcoming the drawback of WENO reconstruction that the linear weights may not exist, we developed a new fifth order finite difference WENO-ZQ method [36] with the similar idea by Levy, Puppo and Russo [20, 21] for central WENO methods. A simple and effective technique for handling negative linear weights in WENO reconstruction was presented by Shi et al. [28]. Following the idea of the new fifth order finite difference WENO-ZQ scheme [36] and its development of adaptive order finite difference WENO schemes [2], we extend the new WENO methods from finite difference version to finite volume version in this paper. In the construction of this new finite volume WENO method, the associated linear weights can be any positive numbers on condition that their summation equals one. We also point out a fact that these new fifth order finite volume WENO-ZQ schemes are more efficient than the classical fifth order finite volume WENO-JS schemes [29], it is verified by our numerical tests in Sect. 3.

The organization of the paper is as follows. In Sect. 2, we emphasize the principle of constructing the new fifth order finite volume WENO-ZQ schemes in one and two dimensions in detail, and give some remarks for three dimensional finite volume WENO-ZQ scheme briefly since the extension of the reconstruction procedures from two to three dimensions is not distinctly different and omitted for simplicity. In Sect. 3, some classical tests are proposed to verify the simplicity and efficiency of these new schemes. Concluding remarks are given in Sect. 4.

2 Description of Finite Volume WENO-ZQ Schemes

2.1 WENO-ZQ Scheme in One Dimension

We first consider finite volume method for one dimensional conservation laws:
$$\begin{aligned} \left\{ \begin{array} {ll} u_t+ f_x(u)=0,\\ u(x,0)=u_0(x).\\ \end{array} \right. \end{aligned}$$
(2.1)
For simplicity, the computational mesh is distributed into some cells \(I_{i}=[x_{i-1/2},x_{i+1/2}]\), with the uniform cell size \(x_{i+1/2}-x_{i-1/2}=h\) and associated cell centers are \(x_i= \frac{1}{2}(x_{i+1/2}+x_{i-1/2})\). Taking the intervals \(I_i\) as our control volumes, the associated semidiscretization of (2.1) can be reformulated as
$$\begin{aligned} \frac{d\bar{u}(x_i,t)}{dt}+\frac{1}{h}(f(u(x_{i+1/2},t))-f(u(x_{i-1/2},t)))=0, \end{aligned}$$
(2.2)
where \(\bar{u}(x_i,t)=\frac{1}{h}\int _{x_{i-1/2}}^{x_{i+1/2}}u(\xi ,t)d\xi \) is the cell average. We approximate (2.2) by the following conservative formulation
$$\begin{aligned} \frac{d\bar{u}_i(t)}{dt}=L(u_i)=-\frac{1}{h}\left( \hat{f}_{i+1/2}-\hat{f}_{i-1/2}\right) , \end{aligned}$$
(2.3)
where \(\bar{u}_i(t)\) is the numerical approximation to the cell average \(\bar{u}(x_i,t)\), and the numerical flux \(\hat{f}_{i+1/2}\) is defined by \(\hat{f}_{i+1/2}=\hat{f}(u_{i+1/2}^-,u_{i+1/2}^+)\) with the values \(u_{i+1/2}^{\pm }\) which are obtained by the WENO reconstruction procedures narrated latter. In this paper, we take the Lax–Friedrichs flux:
$$\begin{aligned} \hat{f}(a,b)=\frac{1}{2}[f(a)+f(b)-\alpha (b-a)], \end{aligned}$$
(2.4)
where \(\alpha =max_u |f'(u)|\) is a constant and the maximum is taken over the whole range of u. If we can reconstruct \(u_{i+1/2}^{\pm }=u(x_{i+1/2}, t)+O(h^r)\), then (2.3) is the \(r-th\) order approximation to (2.2).

Now we describe in detail for the reconstruction procedure of \(u^-_{i+\frac{1}{2}}\) to approximate \(u(x_{i+1/2}, t)\) up to 5th order, and the reconstruction procedure of \(u^+_{i+\frac{1}{2}}\) is mirror symmetric with respect to \(x_{i+1/2}\) of that for \(u^-_{i+\frac{1}{2}}\).

Step 1. Choose the big stencil \(T_1=\{I_{i-2},I_{i-1},I_{i},I_{i+1},I_{i+2}\}\). Then a quartic polynomial based on the cell averages of \(T_1\) is obtained by requiring
$$\begin{aligned} \frac{1}{h} \int _{I_j}p_1(x)dx=\bar{u}_j,\ j=i-2,\ldots ,i+2. \end{aligned}$$
(2.5)
Step 2. Choose the other two smaller stencils \(T_2=\{I_{i-1},I_{i}\}\) and \(T_3=\{I_{i},I_{i+1}\}\). Then two linear polynomials based on the cell averages of \(T_2\) and \(T_3\) are obtained by requiring
$$\begin{aligned} \frac{1}{h} \int _{I_j}p_2(x)dx=\bar{u}_j,\ j=i-1,i, \end{aligned}$$
(2.6)
and
$$\begin{aligned} \frac{1}{h} \int _{I_j}p_3(x)dx=\bar{u}_j,\ j=i,i+1. \end{aligned}$$
(2.7)
Step 3. With the similar idea by Levy et al. [20, 21] for central WENO methods, we rewrite \(p_1(x)\) as:
$$\begin{aligned} p_1(x)=\gamma _1 \left( \frac{1}{\gamma _1}p_1(x)-\frac{\gamma _2}{\gamma _1}p_2(x)-\frac{\gamma _3}{\gamma _1}p_3(x)\right) +\gamma _2p_2(x)+\gamma _3p_3(x). \end{aligned}$$
(2.8)
Note that (2.8) holds true for any choice of \(\gamma _1, \gamma _2,\gamma _3\) with \(\gamma _1 \ne 0\). In this paper, we would like to take positive linear weights \(\gamma _1, \gamma _2,\gamma _3\) with \(\gamma _1+\gamma _2+\gamma _3=1\) and \(p_1(x)\) is the fifth order approximation to u(xt).
Step 4. Compute the smoothness indicators \(\beta _{\ell },\ \ell =1,2,3\), which measure how smooth the functions \(p_{\ell }(x),\ \ell =1,2,3,\) are in the target cell \(I_i\). The smaller these smoothness indicators, the smoother the functions are in \(I_i\). We use the same recipe for the smoothness indicators as specified in [3, 18, 29]:
$$\begin{aligned} \beta _{\ell }=\sum _{\kappa =1}^r\int _{I_i}h^{2\kappa -1}\left( \frac{d ^\kappa p_{\ell }(x)}{d x^\kappa }\right) ^2dx,\ \ell =1,2,3, \end{aligned}$$
(2.9)
where \(r=4\) for \(\ell =1\) and \(r=1\) for \(\ell =2,3\). The associated explicit expressions are
$$\begin{aligned} \beta _1= & {} \frac{1}{144}( \bar{u}_{i-2}-8 \bar{u}_{i-1}+8 \bar{u}_{i+1}- \bar{u}_{i+2})^2\nonumber \\&+\,\frac{1}{15600}(-11 \bar{u}_{i-2}+174 \bar{u}_{i-1}-326 \bar{u}_{i}+174 \bar{u}_{i+1}-11 \bar{u}_{i+2})^2\\&+\,\frac{781}{2880}(- \bar{u}_{i-2}+2 \bar{u}_{i-1}-2 \bar{u}_{i+1}+ \bar{u}_{i+2})^2\nonumber \\&+\,\frac{1421461}{1310400}( \bar{u}_{i-2}-4 \bar{u}_{i-1}+6 \bar{u}_{i}-4 \bar{u}_{i+1}+ \bar{u}_{i+2})^2,\nonumber \end{aligned}$$
(2.10)
$$\begin{aligned} \beta _2= & {} (\bar{u}_{i-1}-\bar{u}_{i})^2, \end{aligned}$$
(2.11)
and
$$\begin{aligned} \beta _3=(\bar{u}_{i}-\bar{u}_{i+1})^2. \end{aligned}$$
(2.12)
The expansions of (2.10) to (2.12) in Taylor series at \(x_{i}\) are obtained as
$$\begin{aligned} \beta _1= & {} h^2(u_i^\prime )^2+h^4 \left( \frac{1}{12}u^\prime _i u^{\prime \prime \prime }_i+\frac{13}{12}(u^{\prime \prime }_i)^2\right) \nonumber \\&+\,h^6 \left( \frac{1043}{960}(u^{\prime \prime \prime }_i)^2-\frac{21}{320}u^\prime _i u^{(5)}_i+\frac{7}{80} u^{\prime \prime }_i u^{(4)}_i \right) +O(h^8), \end{aligned}$$
(2.13)
$$\begin{aligned} \beta _2= & {} h^2(u_i^\prime )^2 - h^3u_i^\prime u^{\prime \prime }_i +h^4 \left( \frac{1}{4} (u^{\prime \prime }_i)^2+\frac{5}{12}u^\prime _i u^{\prime \prime \prime }_i \right) +O(h^5), \end{aligned}$$
(2.14)
and
$$\begin{aligned} \beta _3=h^2(u_i^\prime )^2 + h^3u_i^\prime u^{\prime \prime }_i +h^4 \left( \frac{1}{4} (u^{\prime \prime }_i)^2+\frac{5}{12}u^\prime _i u^{\prime \prime \prime }_i \right) +O(h^5). \end{aligned}$$
(2.15)
Step 5. Compute the nonlinear weights based on the linear weights and the smoothness indicators. For instance, we use \(\tau \) which is simply defined as the absolute deference between \(\beta _{1}\), \(\beta _{2}\) and \(\beta _{3}\), and is different to the formula specified in [4, 8, 10] for the stencils used for reconstruction are different. The formula of \(\tau \) was first presented in [36] for finite difference version and followed in [2]. The difference expansions in Taylor series are
$$\begin{aligned} \beta _{1}-\beta _{2}=h^3u_i^\prime u^{\prime \prime }_i+O(h^4)=O(h^3), \end{aligned}$$
(2.16)
and
$$\begin{aligned} \beta _{1}-\beta _{3}=-h^3u_i^\prime u^{\prime \prime }_i+O(h^4)=O(h^3). \end{aligned}$$
(2.17)
So it satisfies
$$\begin{aligned} \tau =\left( \frac{|\beta _{1}-\beta _{2}|+|\beta _{1}-\beta _{3}|}{2}\right) ^2=O(h^{6}). \end{aligned}$$
(2.18)
Then the non-linear weights are defined as
$$\begin{aligned} \omega _{\ell }=\frac{\bar{\omega }_{\ell }}{\sum _{\ell \ell =1}^{3}\bar{\omega }_{\ell \ell }}, \qquad \bar{\omega }_{\ell }=\gamma _{\ell }\left( 1+\frac{\tau }{\varepsilon +\beta _{\ell }}\right) ,\ \ \ \ell =1,2,3. \end{aligned}$$
(2.19)
Here \(\varepsilon \) is a small positive number to avoid the denominator of (2.19) to become zero. By the usage of (2.13) to (2.15) and (2.18) in the smooth region, it satisfies
$$\begin{aligned} \frac{\tau }{\varepsilon +\beta _{\ell }}=O(h^{4}), \ell =1,2,3, \end{aligned}$$
(2.20)
on condition that \(\varepsilon \ll \beta _{\ell }\). Therefore the nonlinear weights \(\omega _{\ell },\ \ell =1,2,3,\) satisfy the order accuracy condition \(\omega _{\ell }=\gamma _\ell +O(h^4)\) [4, 8, 10], providing the fifth order accuracy to the WENO scheme narrated in [18, 29]. In this paper we simply take \(\varepsilon = 10^{-6}\) in our computation.
Step 6. We replace the linear weights in (2.8) with nonlinear weights (2.19), and the new final reconstruction formulation of conservative values u(xt) at the point \(x_{i+1/2}\) of the target cell \(I_i\) is given by
$$\begin{aligned} u^-_{i+1/2}= & {} \omega _1\left( \frac{1}{\gamma _1}p_1(x_{i+1/2})-\frac{\gamma _2}{\gamma _1}p_2(x_{i+1/2})-\frac{\gamma _3}{\gamma _1} p_3(x_{i+1/2})\right) +\omega _2p_2(x_{i+1/2})\nonumber \\&+\,\omega _3p_3(x_{i+1/2}). \end{aligned}$$
(2.21)

Remark 1

The \(u^-_{i+1/2}\) is the fifth order approximation to u(xt) at the point \(x_{i+1/2}\) in the smooth region of the solution.
$$\begin{aligned}&u^-_{i+1/2}-u(x_{i+1/2},t)=\omega _1\left( \frac{1}{\gamma _1}p_1(x_{i+1/2})-\frac{\gamma _2}{\gamma _1}p_2(x_{i+1/2})-\frac{\gamma _3}{\gamma _1} p_3(x_{i+1/2})\right) \\&\qquad +\,\omega _2p_2(x_{i+1/2})+ \omega _3p_3(x_{i+1/2})-u(x_{i+1/2},t)\\&\quad =(\gamma _1+\omega _1-\gamma _1)\left( \frac{1}{\gamma _1}p_1(x_{i+1/2})-\frac{\gamma _2}{\gamma _1}p_2(x_{i+1/2})-\frac{\gamma _3}{\gamma _1} p_3(x_{i+1/2})-u(x_{i+1/2},t)\right) \\&\qquad +\,(\gamma _2+\omega _2-\gamma _2)(p_2(x_{i+1/2})-u(x_{i+1/2},t))+ (\gamma _3+\omega _3-\gamma _3)(p_3(x_{i+1/2})-u(x_{i+1/2},t)) \\&\quad =p_1(x_{i+1/2})-u(x_{i+1/2},t)+(\omega _1-\gamma _1)\left( \frac{1}{\gamma _1}(p_1(x_{i+1/2})-u(x_{i+1/2},t))\right. \\&\qquad \left. -\,\frac{\gamma _2}{\gamma _1}(p_2(x_{i+1/2})-u(x_{i+1/2},t))-\frac{\gamma _3}{\gamma _1}(p_3(x_{i+1/2})-u(x_{i+1/2},t))\right) \\&\qquad +\,(\omega _2-\gamma _2)(p_2(x_{i+1/2})-u(x_{i+1/2},t)) +(\omega _3-\gamma _3)(p_3(x_{i+1/2})-u(x_{i+1/2},t)) \end{aligned}$$
Since \(\omega _{l}=\gamma _l+O(h^4), l=1,2,3\) , \(p_1(x_{i+1/2})-u(x_{i+1/2},t)=O(h^5)\), \(p_2(x_{i+1/2})-u(x_{i+1/2},t)=O(h^2)\), \(p_3(x_{i+1/2})-u(x_{i+1/2},t)=O(h^2)\), we have:
$$\begin{aligned} u^-_{i+1/2}-u(x_{i+1/2},t)=O(h^5). \end{aligned}$$
Step 7. The semi-discretiztion scheme (2.3) is discretized in time by a third order TVD Runge–Kutta method [30]
$$\begin{aligned} \left\{ \begin{array}{lll} u_i^{(1)} &{} = &{} u_i^n + \Delta t L(u_i^n), \\ u_i^{(2)} &{} = &{} \frac{3}{4} u_i^n + \frac{1}{4} u_i^{(1)} + \frac{1}{4} \Delta t L(u_i^{(1)}), \\ u_i^{n+1} &{} = &{} \frac{1}{3} u_i^n + \frac{2}{3} u_i^{(2)} + \frac{2}{3} \Delta t L(u_i^{(2)}). \end{array} \right. \end{aligned}$$
(2.22)

2.2 WENO-ZQ Scheme in Two Dimensions

Now we consider two dimensional conservation laws
$$\begin{aligned} \left\{ \begin{array}{l} u_t+f(u)_x+g(u)_y=0, \\ u(x,y,0)=u_0(x,y). \\ \end{array} \right. \end{aligned}$$
(2.23)
For simplicity, the grid meshes are uniformly divided into some cells. And the cell sizes are \(x_{i+\frac{1}{2}}-x_{i-\frac{1}{2}}=\triangle x\), \(y_{k+\frac{1}{2}}-y_{k-\frac{1}{2}}=\triangle y\), (\(\triangle x\)=\(\triangle y\)=h), and cell centers \((x_i,y_k)=(\frac{1}{2}(x_{i-\frac{1}{2}}+x_{i+\frac{1}{2}}),(\frac{1}{2}(y_{k-\frac{1}{2}}+y_{k+\frac{1}{2}}))\). We denote the two dimensional cells by \(I_{i,k}=I_i\times I_k=[x_{i-\frac{1}{2}},x_{i+\frac{1}{2}}]\times [y_{k-\frac{1}{2}},y_{k+\frac{1}{2}}]\) and define \(\bar{u}_{i,k}(t)=\frac{1}{h^2} \int _{I_{i,k}} u(x,y,t)dxdy\). We integrate (2.23) over target cell \(I_{i,k}\) and obtain the semi-discrete finite volume scheme as
$$\begin{aligned} \frac{d \bar{u}_{i,k}(t)}{dt}= & {} L(u_{i,k})=-\frac{1}{h^2}\left( \int _{y_{k-1/2}}^{y_{k+1/2}}f(u(x_{i+1/2},y,t))dy-\int _{y_{k-1/2}}^{y_{k+1/2}}f(u(x_{i-1/2},y,t))dy \right. \nonumber \\&\left. +\int _{x_{i-1/2}}^{x_{i+1/2}}g(u(x,y_{k+1/2},t))dx-\int _{x_{i-1/ 2}}^{x_{i+1/2}}g(u(x,y_{k-1/2},t))dx\right) . \end{aligned}$$
(2.24)
We approximate (2.24) by the following conservative formulation
$$\begin{aligned} \frac{d \bar{u}_{i,k}(t)}{dt}=-\frac{1}{h}(\hat{f}_{i+1/2,k}-\hat{f}_{i-1/2,k})-\frac{1}{h}(\hat{g}_{i,k+1/2}-\hat{g}_{i,k-1/2}), \end{aligned}$$
(2.25)
where the numerical fluxes \(\hat{f}_{i+1/2,k}\) and \(\hat{g}_{i,k+1/2}\) are defined as
$$\begin{aligned} \hat{f}_{i+1/2,k}= & {} \sum _{\ell =1}^{3}\varpi _{\ell }\hat{f}\left( u_{i+1/2,{k}+\sigma _{\ell }}^-,u_{i+1/2,{k}+\sigma _{\ell } }^+\right) , \nonumber \\ \hat{g}_{i,k+1/2}= & {} \sum _{\ell =1}^{3}\varpi _{\ell }\hat{g}\left( u_{i+\sigma _{\ell }, k+1/2}^-,u_{i+\sigma _{\ell }, k+1/2}^+\right) , \end{aligned}$$
(2.26)
to approximate \(\frac{1}{h}\int _{y_{k-1/2}}^{y_{k+1/2}}f(u(x_{i+1/2},y,t))dy\) and \(\frac{1}{h}\int _{x_{i-1/2}}^{x_{i+1/2}}g(u(x,y_{k+1/2},t))dx,\) respectively. \(\varpi _{\ell }\) and \(\sigma _{\ell }\) are three-point Gaussian quadrature weights and nodes in the cell \([-\frac{1}{2}, \frac{1}{2}]\), respectively. Here \(u_{i+1/2,{k}+\sigma _{\ell }}^\pm \) and \(u_{i+\sigma _{\ell },{k+1/2}}^\pm \) are the fifth order approximation of \(u(x^\pm _{i+1/2},y_{k}+\sigma _{\ell } h)\) and \(u(x_{i}+\sigma _{\ell } h,y^\pm _{k+1/2})\), respectively, which will be reconstructed by WENO procedures. The numerical fluxes \(\hat{f}(a,b)\) and \(\hat{g}(a,b)\) are defined as the one dimensional monotone flux (2.4).
Now we describe the reconstruction procedure of point values \(u_{i\pm 1/2,{k}+\sigma _{\ell }}^\mp \) from cell averages \(\{\overline{u}_{i,k}\}\), which is based on the dimension by dimension fashion.
  • Along x direction, based on \(\{\overline{u}_{i, k}\}\), we perform the WENO reconstruction procedure which is described in the above for one dimensional case to reconstruct
    $$\begin{aligned} \overline{u}(x^\pm _{i\mp 1/2})_j=\frac{1}{h} \int _{y_{j-1/2}}^{y_{j+1/2}}u(x^\pm _{i\mp 1/2},y)dy, j=k-2,\ldots ,k+2, \end{aligned}$$
    where \(\overline{u}(x^\pm _{i\mp 1/2})_j\) are points value in x and cell average in y direction. In this WENO reconstruction procedure, we only compute the nonlinear weights once for each j, for we use the same linear weights and smoothness indicators at the reconstructed points \(x^\pm _{i\mp 1/2},\) but for the classical WENO reconstruction, we have to compute the nonlinear weights twice, for the linear weights are different at the points \(x^\pm _{i\mp 1/2}.\)
  • Along y direction, based on \(\{\overline{u}(x^\pm _{i\mp 1/2})_j\}\), we perform the WENO reconstruction procedure which is described in the above for one dimensional case to reconstruct the point values \(u_{i\pm 1/2,{k}+\sigma _{\ell }}^\mp .\) Again, we only compute the nonlinear weights once for all three Gauss points at y direction, and for the classical WENO reconstruction we have to compute the nonlinear weights at least three times, there is negative the linear weight at Gauss point \(\sigma _{2}=0\) for the classical WENO reconstruction, and we should apply the technique for handling negative linear weights in WENO reconstruction [28].

The reconstruction procedure of point values \(u_{i+\sigma _{\ell }, k\pm 1/2}^\mp \) from cell averages \(\{\overline{u}_{i,k}\}\) is similar to that for \(u_{i\pm 1/2,{k}+\sigma _{\ell }}^\mp \). In this procedure the role of x and y are reversed against the previous procedure and in particular the intermediate results should be point value in y direction but cell averages in x direction.

After doing above procedures, the semi-discretiztion scheme (2.25) is discretized in time by a third order TVD Runge–Kutta method (2.22).

Remark 2

We can easily extend such fifth order finite volume WENO-ZQ scheme to three dimensional case with a dimension by dimension fashion, which is similar to the two dimensional case. Again, as for two dimensional case, it is obvious that the new fifth order finite volume WENO-ZQ scheme specified in this paper is superior to the classical finite volume WENO-JS schemes in [29], for we can use the same linear weights at all Gaussian quadrature points, thus we can reduce the cost of reconstruction procedures.

Table 1

\(\mu _t+(\frac{\mu ^2}{2})_x=0\). Initial data \(\mu (x,0) = 0.5+\sin (\pi x)\). WENO-ZQ scheme and WENO-JS scheme

Grid cells

\( L^1\) error

Order

\(L^\infty \) error

Order

\( L^1\) error

Order

\(L^\infty \) error

Order

 

WENO-ZQ (1) scheme

WENO-JS scheme

10

5.38E−3

 

1.87E−2

 

5.91E−3

 

1.71E−2

 

20

9.15E−4

2.56

4.35E−3

2.11

9.87E−4

2.58

7.12E−3

1.26

40

4.25E−5

4.43

4.37E−4

3.32

8.72E−5

3.50

8.04E−4

3.15

80

1.78E−6

4.58

2.22E−5

4.29

4.11E−6

4.40

4.11E−5

4.29

160

6.03E−8

4.88

7.93E−7

4.81

1.64E−7

4.64

1.45E−6

4.83

 

WENO-ZQ (2) scheme

WENO-ZQ (3) scheme

10

3.07E−2

 

7.25E−2

 

3.28E−2

 

7.50E−2

 

20

3.05E−3

3.33

1.86E−2

1.96

3.61E−3

3.19

2.24E−2

1.74

40

6.88E−5

5.47

4.28E−4

5.44

8.15E−5

5.47

4.24E−4

5.72

80

1.85E−6

5.22

2.22E−5

4.27

1.89E−6

5.43

2.22E−5

4.25

160

6.03E−8

4.94

7.92E−7

4.81

6.03E−8

4.97

7.92E−7

4.81

\(T= 0.5/\pi \). \(L^1\) and \(L^\infty \) errors

3 Numerical Tests

In this section we present the results of the new fifth order finite volume WENO-ZQ schemes in comparison with the classical fifth order finite volume WENO-JS schemes narrated in [29] in one, two and three dimensions. The CFL number is set as 0.6, except for the accuracy tests where we set time step \(\Delta t=h^{5/3}\) to guarantee that spatial error dominates. For Euler equations, all of the reconstructions are performed in the local characteristic directions to avoid spurious oscillations. For the purpose of evaluating whether the random choice of the linear weights would pollute the optimal order accuracy of WENO-ZQ schemes or not, we set three different type of linear weights in the numerical accuracy cases as: (1) \(\gamma _1\)=0.98, \(\gamma _2\)=0.01 and \(\gamma _3\)=0.01; (2) \(\gamma _1\)=1.0/3.0, \(\gamma _2\)=1.0/3.0 and \(\gamma _3\)=1.0/3.0; (3) \(\gamma _1\)=0.01, \(\gamma _2\)=0.495 and \(\gamma _3\)=0.495. Following the practice in [11, 35, 36], we set the linear weights \(\gamma _1=0.98\) and \(\gamma _2=\gamma _3=0.01\) in the latter examples, unless specified otherwise.

Example 3.1

We solve the following nonlinear scalar Burgers equation:
$$\begin{aligned} \mu _t+\left( \frac{\mu ^2}{2}\right) _x=0,\qquad 0<x<2, \end{aligned}$$
(3.1)
with the initial condition \(\mu (x,0) = 0.5+\sin (\pi x)\) and periodic boundary condition. When \(t = 0.5/\pi \) the solution is still smooth, the numerical errors between the numerical solution and exact solution and orders by the WENO-ZQ scheme are shown in Table 1. For comparison, the numerical errors and orders by the classical WENO-JS scheme are shown in the same table. We can see that both WENO-ZQ and WENO-JS schemes achieve their designed order of accuracy and WENO-ZQ scheme produces less numerical errors. Figure 1 shows that WENO-ZQ scheme needs less CPU time than WENO-JS does to obtain the same quantities of \(L^1\) and \(L^\infty \) errors, so WENO-ZQ scheme is more efficient than WENO-JS scheme in this test case.
Fig. 1

\(\mu _t+(\frac{\mu ^2}{2})_x=0\). Initial data \(\mu (x,0) = 0.5+\sin (\pi x)\). Computing time and error. Number signs and a solid line denote the results of WENO-ZQ scheme with different linear weights (1), (2) and (3); squares and a solid line denote the results of WENO-JS scheme

Example 3.2

We solve the following two dimensional nonlinear scalar Burgers equation:
$$\begin{aligned} \mu _t+\left( \frac{\mu ^2}{2}\right) _x+\left( \frac{\mu ^2}{2}\right) _y=0,\qquad 0<x,y<4, \end{aligned}$$
(3.2)
with the initial condition \(\mu (x, y,0) = 0.5+\sin (\pi (x+y)/2)\) and periodic boundary conditions in two directions. When \(t = 0.5/\pi \) the solution is still smooth, the numerical errors between the numerical solution and exact solution and orders by the WENO-ZQ scheme in comparison to that of WENO-JS scheme are shown in Table 2. We can see that the WENO-ZQ scheme achieves close to its designed order of accuracy and generates less numerical error. And the Fig. 2 shows that WENO-ZQ scheme needs less CPU time to obtain the same quantities of \(L^1\) and \(L^\infty \) errors.
Table 2

\(\mu _t+(\frac{\mu ^2}{2})_x+(\frac{\mu ^2}{2})_y=0\). Initial data \(\mu (x, y,0) = 0.5+\sin (\pi (x+y)/2)\). WENO-ZQ scheme and WENO-JS scheme

Grid cells

\( L^1\) error

Order

\(L^\infty \) error

Order

\( L^1\) error

Order

\(L^\infty \) error

Order

 

WENO-ZQ (1) scheme

WENO-JS scheme

\(10\times 10\)

8.71E−3

 

2.83E−2

 

6.39E−3

 

1.77E−2

 

\(20\times 20\)

7.66E−4

3.51

3.22E−3

3.13

8.81E−4

2.86

5.72E−3

1.63

\(40\times 40\)

3.97E−5

4.27

3.62E−4

3.15

8.19E−5

3.43

6.73E−4

3.09

\(80\times 80\)

1.72E−6

4.53

2.11E−5

4.10

4.06E−6

4.33

3.91E−5

4.11

\(160\times 160\)

5.99E−8

4.85

7.70E−7

4.78

1.65E−7

4.62

1.42E−6

4.78

 

WENO-ZQ (2) scheme

WENO-ZQ (3) scheme

\(10\times 10\)

3.20E−2

 

8.79E−2

 

3.52E−2

 

9.23E−2

 

\(20\times 20\)

3.82E−3

3.07

1.53E−2

2.52

4.50E−3

2.97

1.71E−2

2.43

\(40\times 40\)

7.87E−5

5.60

3.55E−4

5.43

9.63E−5

5.55

4.15E−4

5.36

\(80\times 80\)

1.79E−6

5.46

2.11E−5

4.07

1.83E−6

5.72

2.11E−5

4.30

\(160\times 160\)

5.98E−8

4.90

7.70E−7

4.78

5.99E−8

4.93

7.70E−7

4.78

\(T=0.5/\pi \), \(L^1\) and \(L^\infty \) errors

Fig. 2

\(\mu _t+(\frac{\mu ^2}{2})_x+(\frac{\mu ^2}{2})_y=0\). Initial data \(\mu (x, y,0) = 0.5+\sin (\pi (x+y)/2)\). Computing time and error. Number signs and a solid line denote the results of WENO-ZQ scheme with different linear weights (1), (2) and (3); squares and a solid line denote the results of WENO-JS scheme

Example 3.3

We solve the following three dimensional nonlinear scalar Burgers equation:
$$\begin{aligned} \mu _t+\left( \frac{\mu ^2}{2}\right) _x+\left( \frac{\mu ^2}{2}\right) _y+ \left( \frac{\mu ^2}{2}\right) _z=0,\qquad 0<x,y,z<6, \end{aligned}$$
(3.3)
with the initial condition \(\mu (x, y,z,0) = 0.5+\sin (\pi (x+y+z)/3)\) and periodic boundary conditions in three directions. When \(t = 0.5/\pi \) the solution is still smooth, and the numerical errors between the numerical solution and exact solution and orders by the WENO-ZQ scheme in comparison to that of WENO-JS scheme are shown in Table 3. And the Fig. 3 shows that WENO-ZQ scheme needs less CPU time than WENO-JS scheme to get the same quantities of \(L^1\) and \(L^\infty \) errors. We can see that the WENO-ZQ scheme achieves close to its designed order of accuracy.
Table 3

\(\mu _t+(\frac{\mu ^2}{2})_x+(\frac{\mu ^2}{2})_y+(\frac{\mu ^2}{2})_z=0\). Initial data \(\mu (x, y,z,0) = 0.5+\sin (\pi (x+y+z)/3)\). WENO-ZQ scheme and WENO-JS scheme. \(T=0.5/\pi \). \(L^1\) and \(L^\infty \) errors

Grid cells

\( L^1\) error

Order

\(L^\infty \) error

Order

\( L^1\) error

Order

\(L^\infty \) error

Order

 

WENO-ZQ (1) scheme

WENO-JS scheme

\(10\times 10\times \) 10

3.93E−3

 

1.20E−2

 

3.88E−3

 

1.26E−2

 

\(20\times 20\times \) 20

5.41E−4

2.86

2.46E−3

2.30

7.28E−4

2.42

4.40E−3

1.48

\(40\times 40\times \) 40

3.53E−5

3.94

3.44E−4

2.84

7.54E−5

3.27

6.49E−4

2.76

\(80\times 80\times \) 80

1.65E−6

4.42

2.02E−5

4.09

3.90E−6

4.27

3.76E−5

4.11

\(160\times 160\times \)160

5.85E−8

4.82

7.63E−7

4.73

1.61E−7

4.59

1.40E−6

4.75

 

WENO-ZQ (2) scheme

WENO-ZQ (3) scheme

\(10\times 10\times \) 10

2.46E−2

 

7.09E−2

 

2.65E−2

 

7.27E−2

 

\(20\times 20\times \) 20

2.52E−3

3.29

1.53E−2

2.21

3.09E−3

3.10

1.90E−2

1.93

\(40\times 40\times \) 40

6.06E−5

5.38

3.37E−4

5.51

7.26E−5

5.41

3.33E−4

5.84

\(80\times 80\times \) 80

1.72E−6

5.13

2.01E−5

4.06

1.77E−6

5.36

2.01E−5

4.05

\(160\times 160\times \)160

5.85E−8

4.88

7.63E−7

4.72

5.86E−8

4.92

7.63E−7

4.72

Fig. 3

\(\mu _t+(\frac{\mu ^2}{2})_x+(\frac{\mu ^2}{2})_y+(\frac{\mu ^2}{2})_z=0\). Initial data \(\mu (x, y,z,0) = 0.5+\sin (\pi (x+y+z)/3)\). Computing time and error. Number signs and a solid line denote the results of WENO-ZQ scheme with different linear weights (1), (2) and (3); squares and a solid line denote the results of WENO-JS scheme

Example 3.4

$$\begin{aligned} \frac{\partial }{\partial t} \left( \begin{array}{c} \rho \\ \rho \mu \\ E \end{array} \right) + \frac{\partial }{\partial x} \left( \begin{array}{c} \rho \mu \\ \rho \mu ^{2}+p \\ \mu (E+p) \end{array} \right) =0. \end{aligned}$$
(3.4)
In which \(\rho \) is density, \(\mu \) is the velocity in \(x-\)direction , E is total energy and p is pressure. The initial conditions are: \(\rho (x,0)=1+0.2\sin (\pi x)\), \(\mu (x,0)=1\), \(p(x,0)=1\), \(\gamma =1.4\). The computing domain is \( x \in [0, 2]\). Periodic boundary condition is applied in this test. The final time is \(t=1\). The numerical errors between the numerical solution and exact solution and orders of the density by the WENO-ZQ scheme and WENO-JS scheme are shown in Table 4 and the numerical error against CPU time graphs are in Fig. 4. We can observe that the theoretical order is actually achieved and the WENO-ZQ scheme can get better results and is more efficient in this test case. For this example, we can see the WENO-ZQ scheme could get much less numerical error as in scalar examples.
Table 4

1D Euler equations: initial data \(\rho (x,0)=1+0.2\sin (\pi x)\), \(\mu (x,0)=1\) and \(p(x,0)=1\)

Grid cells

\( L^1\) error

Order

\(L^\infty \) error

Order

\( L^1\) error

Order

\(L^\infty \) error

Order

 

WENO-ZQ (1) scheme

WENO-JS scheme

10

5.91E−4

 

9.57E−4

 

3.03E−3

 

6.32E−3

 

20

1.00E−5

5.88

1.76E−5

5.76

9.44E−5

5.00

1.65E−4

5.25

30

1.23E−6

5.16

2.26E−6

5.06

1.06E−5

5.37

1.89E−5

5.35

40

2.83E−7

5.12

5.18E−7

5.12

2.20E−6

5.49

4.14E−6

5.27

50

9.10E−8

5.10

1.66E−7

5.09

7.03E−7

5.11

1.43E−6

4.76

 

WENO-ZQ (2) scheme

WENO-ZQ (3) scheme

10

1.35E−2

 

2.09E−2

 

2.03E−2

 

3.90E−2

 

20

3.29E−5

8.68

8.17E−5

8.00

4.74E−5

8.74

1.14E−4

8.41

30

1.47E−6

7.66

4.60E−6

7.09

1.82E−6

8.03

6.29E−6

7.16

40

2.94E−7

5.59

5.84E−7

7.17

3.09E−7

6.16

7.30E−7

7.48

50

9.17E−8

5.22

1.68E−7

5.57

9.29E−8

5.40

1.90E−7

6.03

. WENO-ZQ scheme and WENO-JS scheme. \(T=1\). \(L^1\) and \(L^\infty \) errors

Fig. 4

1D Euler equations. Computing time and error. Number signs and a solid line denote the results of WENO-ZQ scheme with different linear weights (1), (2) and (3); squares and a solid line denote the results of WENO-JS scheme

Example 3.5

Two dimensional vortex evolution problem [29] for two dimensional Euler equations
$$\begin{aligned} \frac{\partial }{\partial t} \left( \begin{array}{c} \rho \\ \rho \mu \\ \rho \nu \\ E \end{array} \right) + \frac{\partial }{\partial x} \left( \begin{array}{c} \rho \mu \\ \rho \mu ^{2}+p \\ \rho \mu \nu \\ \mu (E+p) \end{array} \right) + \frac{\partial }{\partial y} \left( \begin{array}{c} \rho \nu \\ \rho \nu \mu \\ \rho \nu ^{2}+p \\ \nu (E+p) \end{array} \right) =0. \end{aligned}$$
(3.5)
In which \(\rho \) is density; \(\mu \) and \(\nu \) are the velocities in the x and y-directions, respectively; E is total energy; and p is pressure. The mean flow is \(\rho =1.0\), \(p=1.0\), \(\mu =1.0\) and \(\nu =1.0\). We add an isentropic vortex (perturbations in \(\mu \), \(\nu \) and the temperature \(T=p/\rho \), and no perturbation in the entropy \(S=p/\rho ^{\gamma }\)) on the mean flow: \((\delta \mu ,\delta \nu )=\frac{5}{2\pi }e^{0.5(1-r^2)}(-\bar{y}, \bar{x})\), \(\delta T=-\frac{25(\gamma -1)}{8\gamma \pi ^2}e^{1-r^2}\) and \(\delta S=0\). Where \((\bar{x},\bar{y})=(x-5,y-5)\) and \(r^2=\bar{x}^2+\bar{y}^2\). The computational domain is taken as \((x,y)\in [0,10]\times [0,10]\), and periodic boundary conditions are used in both directions. It is obvious that the exact solution of this problem is just the passive convection of the vortex with the mean velocity. We compute the solution to \(t=2\) for the accuracy test with fifth order WENO schemes in Table 5 and the numerical error against CPU time graphs are in Fig. 5. We can see that both WENO-ZQ and WENO-JS schemes achieve their designed order of accuracy.
Table 5

2D Euler equations of smooth vortex evolution problem

Grid points

\( L^1\) error

Order

\(L^\infty \) error

Order

\( L^1\) error

Order

\(L^\infty \) error

Order

 

WENO-ZQ(1) scheme

WENO-JS scheme

\(30\times 30\)

3.58E−4

 

8.54E−3

 

5.27E−4

 

9.24E−3

 

\(40\times 40\)

1.07E−4

4.19

1.74E−3

5.53

1.73E−4

3.88

2.85E−3

4.08

\(50\times 50\)

3.92E−5

4.51

6.52E−4

4.40

6.55E−5

4.35

1.05E−3

4.45

\(60\times 60\)

1.71E−5

4.56

2.89E−4

4.45

2.83E−5

4.59

4.56E−4

4.62

\(70\times 70\)

8.41E−6

4.60

1.41E−4

4.63

1.37E−5

4.72

2.17E−4

4.79

 

WENO-ZQ(2) scheme

WENO-ZQ(3) scheme

\(30\times 30\)

1.21E−3

 

2.74E−2

 

1.45E−3

 

3.14E−2

 

\(40\times 40\)

2.32E−4

5.76

4.59E−3

6.20

3.16E−4

5.29

6.77E−3

5.34

\(50\times 50\)

5.75E−5

6.25

1.17E−3

6.10

6.79E−5

6.90

1.38E−3

7.11

\(60\times 60\)

2.02E−5

5.71

4.00E−4

5.91

2.25E−5

6.05

4.44E−4

6.24

\(70\times 70\)

9.01E−6

5.27

1.71E−4

5.52

9.73E−6

5.44

1.74E−4

6.06

WENO-ZQ scheme and WENO-JS scheme. \(T=2\). \(L^1\) and \(L^\infty \) errors

Fig. 5

2D Euler equations of smooth vortex evolution problem. Computing time and error. Number signs and a solid line denote the results of WENO-ZQ scheme with different linear weights (1), (2) and (3); squares and a solid line denote the results of WENO-JS scheme

Example 3.6

$$\begin{aligned} \frac{\partial }{\partial t} \left( \begin{array}{c} \rho \\ \rho \mu \\ \rho \nu \\ \rho \omega \\ E \end{array} \right) + \frac{\partial }{\partial x} \left( \begin{array}{c} \rho \mu \\ \rho \mu ^{2}+p \\ \rho \mu \nu \\ \rho \mu \omega \\ \mu (E+p) \end{array} \right) + \frac{\partial }{\partial y} \left( \begin{array}{c} \rho \nu \\ \rho \nu \mu \\ \rho \nu ^{2}+p \\ \rho \nu \omega \\ \nu (E+p) \end{array} \right) + \frac{\partial }{\partial z} \left( \begin{array}{c} \rho \omega \\ \rho \omega \mu \\ \rho \omega \nu \\ \rho \omega ^2+p \\ \omega (E+p) \end{array} \right) =0. \end{aligned}$$
(3.6)
In which \(\rho \) is density; \(\mu \), \(\nu \) and \(\omega \) are the velocities in the x y and z-directions, respectively; E is total energy; and p is pressure. The initial conditions are: \(\rho (x,y,z,0)=1+0.2\sin (\pi (x+y+z))\), \(\mu (x,y,z,0)=1/3\), \(\nu (x,y,z,0)=1/3\), \(\omega (x,y,z,0)=1/3\), \(p(x,y,0)=1\) and \(\gamma =1.4\). The computing domain is \((x,y,z)\in [0,2] \times [0, 2] \times [0, 2]\). Periodic boundary conditions are applied in three directions. We compute the solution up to \(t=1\). The numerical errors between the numerical solution and exact solution and orders of the density by the WENO-ZQ scheme and WENO-JS scheme are shown in Table 6 and the numerical error against CPU time graphs are in Fig. 6. WENO-ZQ scheme is better than WENO-JS scheme in this three dimensional test case.
Table 6

3D Euler equations: initial data \(\rho (x,y,z,0)=1+0.2\sin (\pi (x+y+z))\), \(\mu (x,y,z,0)=1/3\), \(\nu (x,y,z,0)=1/3\), \(\omega (x,y,z,0)=1/3\) and \(p(x,y,z,0)=1\)

Grid cells

\( L^1\) error

Order

\(L^\infty \) error

Order

\( L^1\) error

Order

\(L^\infty \) error

Order

 

WENO-ZQ (1) scheme

WENO-JS scheme

\(10\times 10\times \)10

3.56E−3

 

6.07E−3

 

1.34E−2

 

1.85E−2

 

\(20\times 20\times \)20

1.07E−4

5.05

1.76E−4

5.11

7.48E−4

4.17

1.13E−3

4.03

\(30\times 30\times \)30

1.44E−5

4.94

2.31E−5

5.00

1.03E−4

4.89

1.70E−4

4.67

\(40\times 40\times \)40

3.45E−6

4.98

5.46E−6

5.02

2.43E−5

5.03

4.29E−5

4.80

\(50\times 50\times \)50

1.13E−6

4.99

1.79E−6

4.99

7.98E−6

4.99

1.43E−5

4.91

 

WENO-ZQ (2) scheme

WENO-ZQ (3) scheme

\(10\times 10\times \)10

8.45E−3

 

1.77E−2

 

9.70E−3

 

2.06E−2

 

\(20\times 20\times \)20

1.38E−4

5.93

4.44E−4

5.32

1.92E−4

5.66

5.67E−4

5.18

\(30\times 30\times \)30

1.44E−5

5.58

3.91E−5

5.99

1.44E−5

6.38

4.71E−5

6.14

\(40\times 40\times \)40

3.46E−6

4.97

7.21E−6

5.88

3.46E−6

4.97

8.09E−6

6.12

\(50\times 50\times \)50

1.13E−6

5.00

2.19E−6

5.34

1.13E−6

5.00

2.38E−6

5.47

WENO-ZQ scheme and WENO-JS scheme. \(T=1\). \(L^1\) and \(L^\infty \) errors

Fig. 6

3D Euler equations. Computing time and error. Number signs and a solid line denote the results of WENO-ZQ scheme with different linear weights (1), (2) and (3); squares and a solid line denote the results of WENO-JS scheme

Remark 3

The finite volume WENO-ZQ schemes could obtain the fifth order accuracy in smooth regions with three different type of linear weights. Among which, we find the first type of linear weights could approach best numerical approximations. So it is a principle for us to choose as large linear weights as possible for the first term of (2.21) to get less truncation errors in smooth region simultaneously avoiding spurious oscillations near discontinuities. We find that the first type of linear weights \(\gamma _1=0.98\), \(\gamma _2=0.01\) and \(\gamma _3=0.01\) works well for all examples in this paper.

Example 3.7

We solve the 1D Euler equations with Riemann initial condition for the Lax problem:
$$\begin{aligned} (\rho ,\mu ,p,\gamma )^T= \left\{ \begin{array}{ll} (0.445,0.698,3.528,1.4)^T,&{} x \in [-0.5,0),\\ (0.5,0,0.571,1.4)^T,&{} x \in [0,0.5]. \end{array} \right. \end{aligned}$$
(3.7)
For \(t=0.16\), we present in Fig. 7 the exact solution and the computed density \(\rho \) obtained with the WENO-ZQ scheme comparing to the WENO-JS scheme. The results and zoomed in picture for different schemes are shown in Fig. 7. The exact solution is a solid line, the results of numerical solutions of WENO-ZQ and WENO-JS schemes are shown as plus signs and squares, respectively. The results of WENO-ZQ scheme are more closer to the exact solution and give sharp shock transitions nearby strong discontinuities.
Fig. 7

The Lax problem. T = 0.16. From left to right density; density zoomed in. Solid line the exact solution; plus signs the results of WENO-ZQ scheme; squares the results of WENO-JS scheme. Grid cells: 100

Example 3.8

A higher order scheme would show its advantage when the solution contains both shocks and complex smooth region structures. A typical example for this is the problem of shock interaction with entropy waves [29]. We solve the Euler equations (3.4) with a moving Mach = 3 shock interacting with sine waves in density: \((\rho ,\mu ,p,\gamma )^T=(3.857143, 2.629369, 10.333333,1.4)^T\) for \(x \in [-5, -4)\); \((\rho ,\mu ,p,\gamma )^T=(1 + 0.2\sin (5x), 0, 1,1.4)^T\) for \(x \in [-4,5]\). The computed density \(\rho \) is plotted at t=1.8 against the referenced “exact” solution which is a converged solution computed by the finite difference fifth order WENO scheme [18] with 2000 grid cells in Fig. 8. The results and zoomed in picture for different schemes are also shown in Fig. 8. The referenced “exact” solution is a solid line, the results of numerical solutions of WENO-ZQ and WENO-JS schemes are shown as plus signs and squares, respectively. The results of WENO-ZQ scheme are more closer to the referenced “exact” solution which contains shocks and complex smooth region structures, in comparison with the results of the WENO-JS scheme whose amplitudes of the entropy waves behind the shock are attenuated very much.

Fig. 8

The shock density wave interaction problem. T = 1.8. From left to right density; density zoomed in. Solid line the referenced “exact” solution; plus signs the results of WENO-ZQ scheme; squares the results of WENO-JS scheme. Grid cells 200

Fig. 9

The blast wave problem. T = 0.038. From left to right density; density zoomed in. Solid line the referenced “exact” solution; plus signs the results of WENO-ZQ scheme; squares the results of WENO-JS scheme. Grid cells 400

Example 3.9

We now consider the interaction of two blast waves. The initial conditions are:
$$\begin{aligned} (\rho ,\mu ,p,\gamma )^T= \left\{ \begin{array}{ll} (1,0,10^3,1.4)^T,&{} 0<x<0.1,\\ (1,0,10^{-2},1.4)^T,&{} 0.1<x<0.9,\\ (1,0,10^2,1.4)^T,&{} 0.9<x<1. \end{array} \right. \end{aligned}$$
(3.8)
The computed density \(\rho \) is plotted at t=0.038 against the reference “exact” solution which is a converged solution computed by the finite difference fifth order WENO scheme [18] with 2000 grid cells in Fig. 9. The results and zoomed in picture for different schemes are shown in Fig. 9. The reference “exact” solution is a solid line, the results of numerical solutions of WENO-ZQ and WENO-JS schemes are shown as plus signs and squares, respectively. The results of WENO-ZQ scheme are more closer to the reference “exact” solution and give a very sharp shock transitions adjacent to strong shocks. So we draw the conclusion that the WENO-ZQ scheme can get better results than WENO-JS scheme does in this test case.

Example 3.10

Shock reflection problem. The computational domain is a rectangle of length 4 and height 1. This domain is divided into a \(120\times 30\) rectangular grids. The boundary conditions are that of a reflection condition along the bottom boundary, supersonic outflow along the right boundary and Dirichlet conditions on the other two sides:
$$\begin{aligned} (\rho ,\mu ,\nu ,p)^T)= \left\{ \begin{array}{l} (1.0,2.9,0,1.0/1.4)^T|_{(0,y,t)^T}, \\ (1.69997,2.61934,-0.50632,1.52819)^T|_{(x,1,t)^T}. \\ \end{array}\right. \end{aligned}$$
Initially, we set the solution in the entire domain to be that at the left boundary. We show the density contours with 15 equal spaced contour lines from 1.10 to 2.58 in Fig. 10. The WENO-ZQ scheme gives very sharp shock transitions for this problem in comparison with the WENO-JS scheme.
Fig. 10

The shock reflection problem. 15 equally spaced contours from 1.10 to 2.58. Top the results of WENO-ZQ scheme; bottom the results of WENO-JS scheme. Grid cells\(120 \times 30\)

Fig. 11

The Riemann problem of 2D Euler equations. \(T=0.52\). 30 equally spaced density contours from 0.56 to 1.67. Left the results of WENO-ZQ scheme; right the results of WENO-JS scheme. Grid cells\(240\times 240\)

Fig. 12

Double Mach reflection problem. 30 equally spaced density contours from 1.5 to 22.7. Top the results of WENO-ZQ scheme; bottom the results of WENO-JS scheme. Grid cells\(1600\times 400\)

Example 3.11

A Riemann problem [26] of two dimensional Euler equations. Let’s consider (3.5) and give initial condition: \(\left\{ \begin{array}{ll} (\rho _1,p_1,\mu _1,\nu _1)^T=(0.5313,0.4,0,0)^T,&{}x>1,\ y>1, \\ (\rho _2,p_2,\mu _2,\nu _2)^T=(1,1,0,0.7276)^T,&{}x>1,\ y<1, \\ (\rho _3,p_3,\mu _3,\nu _3)^T=(1,1,0.7276,0)^T,&{}x<1,\ y>1, \\ (\rho _4,p_4,\mu _4,\nu _4)^T=(0.8,1,0,0)^T,&{}x<1,\ y<1,\\ \end{array}\right. \) in a computational domain of \( [0,2]\times [0,2]\). This Riemann problem is defined according to the combination of the four elementary planar waves. The initial pressure states satisfy the condition that \(p_1<p_2=p_3=p_4\). The solutions are symmetric to the leading diagonal. And the slip lines meet the sonic circle of the constant state in the third quadrant, continue as straight lines and result in a quarter of the sonic circle lies in the middle of the region. The shocks interact with each other like the pair of shocks in Configuration 4 which is defined in [26] in detail. Finally, the associated slip lines bend and appear in a fashion of spirals in the subsonic area. We compute the solution up to \(t=0.52\). We can see that the WENO-ZQ scheme and WENO-JS scheme give non-oscillatory shock transitions and show fruitful structures in the smooth region for this problem in Fig. 11, respectively. The comparisons with the classical WENO-JS scheme indicate that the finer details of each interaction remain are better captured by the WENO-ZQ scheme.

Fig. 13

Double Mach reflection problem. Zoomed in. 30 equally spaced density contours from 1.5 to 22.7. Left the results of WENO-ZQ scheme; right the results of WENO-JS scheme. Grid cells\(1600\times 400\)

Fig. 14

A Mach 3 wind tunnel with a step problem. 30 equally spaced density contours from 0.32 to 6.15. Top the results of WENO-ZQ scheme; bottom the results of WENO-JS scheme. Grid cells\(600\times 200 \)

Fig. 15

3D explosion problem. The density distribution on the plane \(z=0\) at \(t=0.2\). 30 equally spaced density contours from 0.14 to 0.98. Left: the results of WENO-ZQ scheme; right the results of WENO-JS scheme. Bottom the density as a function of radius for all cells on the plane \(z=0\) at \(t=0.2\) by WENO-ZQ scheme (plus signs) and WENO-JS scheme (squares) with the comparison of the 1D reference solution and zoomed in figure. Grid cells\(200\times 200 \times 200 \)

Example 3.12

Double Mach reflection problem. We solve the Euler equations (3.5) in a computational domain of \( [0,4]\times [0,1]\). A reflection wall lies at the bottom of the domain starting from \(x=\frac{1}{6}\), y = 0, making a \(60^{o}\) angle with the x-axis. The reflection boundary condition is used at the wall, which for the rest of the bottom boundary (the part from \(x=0\) to \(x=\frac{1}{6}\)), the exact post-shock condition is imposed. At the top boundary is the exact motion of the Mach 10 shock. The results shown are at \(t=0.2\). We present both the pictures of region \( [0,3]\times [0,1]\) and the blow-up region around the double Mach stems in Figs. 12 and 13, respectively. All pictures are the density contours with 30 equal spaced contour lines from 1.5 to 22.7. The WENO-ZQ scheme could gain better density resolutions than the same order WENO-JS scheme.

Example 3.13

A Mach 3 wind tunnel with a step problem. The setup of the problem is as follows: The wind tunnel is 1 length unit wide and 3 length units long. The step is 0.2 length units high and is located 0.6 length units from the a right going Mach 3 flow. Reflective boundary conditions are applied alone the walls of the tunnel and in flow and out flow boundary conditions are applied at the entrance and the exit. The results are shown at \(t=4\). We present the pictures of whole region \( [0,3]\times [0,1]\) in Fig. 14. We can clearly observe that the new finite volume WENO-ZQ scheme could offer better numerical results than the classical finite volume WENO-JS scheme, especially for the good resolution of the physical instability and roll-up of the contact line in the computational field on the same mesh level.

Example 3.14

3D explosion problem. In order to evaluate the new scheme’s ability of simulation in three dimensional problems, we perform the computation of an explosion problem in the domain of \((x,y,z) \in [-1,1]\times [-1,1]\times [-1,1]\). The setup represents a multi-dimensional extension of the classical Sod problem [31], together with the initial conditions:
$$\begin{aligned} (\rho ,\mu ,\nu ,\omega ,p)^T= \left\{ \begin{array}{ll} (1,0,0,0,1)^T,&{}r\le 0.5, \\ (0.125,0,0,0,0.1)^T,&{}r> 0.5,\\ \end{array}\right. \end{aligned}$$
(3.9)
where \(r=\sqrt{x^2+y^2+z^2}\) is the radial coordinate. The equation of state is assumed to be an ideal gas with adiabatic index \(\gamma =1.4\). It is an important test case for the reason that it harbors the propagation of waves which are not aligned with the uniformed meshes. And the reference solution can be obtained by solving an equivalent one dimensional PDE in the radial direction with geometric source terms in [33]. The results are shown at \(t=0.2\). We present the pictures of whole region and the density as a function of radius for all cells on the plane \(z=0\) at \(t=0.2\) by WENO-ZQ scheme and WENO-JS scheme with the comparison of the one dimensional reference solution in Fig. 15, respectively.

4 Concluding Remarks

In this paper we investigate using a new type of fifth order finite volume WENO-ZQ schemes in multi-dimensions on structured meshes. The main advantages of the new WENO-ZQ schemes are their easy implementation to higher dimensions and could keep high order of numerical accuracy in smooth region simultaneously escaping nonphysical oscillations in nonsmooth region. It is very difficult for us to directly use the finite volume WENO schemes in a similar dimension-by-dimension fashion which is successfully used in the finite difference WENO reconstruction procedures for simulating two and three dimensional problems mainly because of the sophisticated computation of the linear weights at different Gaussian quadrature points of line segments and surface elements of the boundaries of the target cell and its twenty-four neighboring cells in two dimensions and one hundred and twenty-four neighboring cells in three dimensions. To remedy such difficulty, we put forward a new way to artificially set positive linear weights other than the optimal ones on condition that their sum is one without loosing fifth order accuracy in the finite volume framework. The numerical tests show that the schemes can achieve uniform high order accuracy and get sharp, non-oscillatory shock transitions robustly.

References

  1. 1.
    Abgrall, R.: On essentially non-oscillatory schemes on unstructured meshes: analysis and implementation. J. Comput. Phys. 114, 45–58 (1993)CrossRefMATHMathSciNetGoogle Scholar
  2. 2.
    Balsara, D.S., Garain, S., Shu, C.-W.: An efficient class of WENO schemes with adaptive order. J. Comput. Phys. 326, 780–804 (2016)CrossRefMATHMathSciNetGoogle Scholar
  3. 3.
    Balsara, D.S., Rumpf, T., Dumbser, M., Munz, C.D.: Efficient, high accuracy ADER-WENO schemes for hydrodynamics and divergence-free magnetohydrodynamics. J. Comput. Phys. 228, 2480–2516 (2009)CrossRefMATHMathSciNetGoogle Scholar
  4. 4.
    Borges, R., Carmona, M., Costa, B., Don, W.S.: An improved weighted essentially non-oscillatory scheme for hyperbolic conservation laws. J. Comput. Phys. 227, 3191–3211 (2008)CrossRefMATHMathSciNetGoogle Scholar
  5. 5.
    Capdeville, G.: A central WENO scheme for solving hyperbolic conservation laws on non-uniform meshes. J. Comput. Phys. 227, 2977–3014 (2008)CrossRefMATHMathSciNetGoogle Scholar
  6. 6.
    Casper, J.: Finite-volume implementation of high-order essentially nonoscillatory schemes in two dimensions. AIAA J. 30, 2829–2835 (1992)CrossRefMATHGoogle Scholar
  7. 7.
    Casper, J., Atkins, H.-L.: A finite-volume high-order ENO scheme for two-dimensional hyperbolic systems. J. Comput. Phys. 106, 62–76 (1993)CrossRefMATHMathSciNetGoogle Scholar
  8. 8.
    Castro, M., Costa, B., Don, W.S.: High order weighted essentially non-oscillatory WENO-Z schemes for hyperbolic conservation laws. J. Comput. Phys. 230, 1766–1792 (2011)CrossRefMATHMathSciNetGoogle Scholar
  9. 9.
    Cravero, I., Semplice, M.: On the accuracy of WENO and CWENO reconstructions of third order on nonuniform meshes. J. Sci. Comput. 67, 1219–1246 (2016)CrossRefMATHMathSciNetGoogle Scholar
  10. 10.
    Don, W.S., Borges, R.: Accuracy of the weighted essentially non-oscillatory conservative finite difference schemes. J. Comput. Phys. 250, 347–372 (2013)CrossRefMATHMathSciNetGoogle Scholar
  11. 11.
    Dumbser, M., Käser, M.: Arbitrary high order non-oscillatory finite volume schemes on unstructured meshes for linear hyperbolic systems. J. Comput. Phys. 221, 693–723 (2007)CrossRefMATHMathSciNetGoogle Scholar
  12. 12.
    Friedrichs, O.: Weighted essentially non-oscillatory schemes for the interpolation of mean values on unstructured grids. J. Comput. Phys. 144, 194–212 (1998)CrossRefMathSciNetGoogle Scholar
  13. 13.
    Godunov, S.K.: A finite-difference method for the numerical computation of discontinuous solutions of the equations of fluid dynamics. Matthematicheskii sbornik 47, 271–290 (1959)MATHGoogle Scholar
  14. 14.
    Harten, A.: High resolution schemes for hyperbolic conservation laws. J. Comput. Phys. 49, 357–393 (1983)CrossRefMATHMathSciNetGoogle Scholar
  15. 15.
    Harten, A.: Preliminary results on the extension of ENO schemes to two-dimensional problems. In: Carasso, C., et al. (eds.) Proceedings, International Conference on Nonlinear Hyperbolic Problems, Saint-Etienne, 1986. Lecture Notes in Mathematics, pp. 23–40. Springer, Berlin (1987)Google Scholar
  16. 16.
    Harten, A., Engquist, B., Osher, S., Chakravarthy, S.: Uniformly high order accurate essentially non-oscillatory schemes III. J. Comput. Phys. 71, 231–323 (1987)CrossRefMATHMathSciNetGoogle Scholar
  17. 17.
    Hu, C.Q., Shu, C.-W.: Weighted essentially non-oscillatory schemes on triangular meshes. J. Comput. Phys. 150, 97–127 (1999)CrossRefMATHMathSciNetGoogle Scholar
  18. 18.
    Jiang, G.S., Shu, C.-W.: Efficient implementation of weighted ENO schemes. J. Comput. Phys. 126, 202–228 (1996)CrossRefMATHMathSciNetGoogle Scholar
  19. 19.
    Kolb, O.: On the full and global accuracy of a compact third order WENO scheme. SIAM J. Numer. Anal. 52(5), 2335–2355 (2014)CrossRefMATHMathSciNetGoogle Scholar
  20. 20.
    Levy, D., Puppo, G., Russo, G.: Central WENO schemes for hyperbolic systems of conservation laws, M2AN. Math. Model. Numer. Anal. 33, 547–571 (1999)CrossRefMATHMathSciNetGoogle Scholar
  21. 21.
    Levy, D., Puppo, G., Russo, G.: Compact central WENO schemes for multidimensional conservation laws. SIAM J. Sci. Comput. 22(2), 656–672 (2000)CrossRefMATHMathSciNetGoogle Scholar
  22. 22.
    Liu, X.D., Osher, S., Chan, T.: Weighted essentially non-oscillatory schemes. J. Comput. Phys. 115, 200–212 (1994)CrossRefMATHMathSciNetGoogle Scholar
  23. 23.
    Qiu, J., Shu, C.-W.: Hermite WENO schemes and their application as limiters for Runge–Kutta discontinuous Galerkin method: one-dimensional case. J. Comput. Phys. 193, 115–135 (2003)CrossRefMATHMathSciNetGoogle Scholar
  24. 24.
    Qiu, J., Shu, C.-W.: Runge–Kutta discontinuous Galerkin method using WENO limiters. SIAM J. Sci. Comput. 26, 907–929 (2005)CrossRefMATHMathSciNetGoogle Scholar
  25. 25.
    Qiu, J., Shu, C.-W.: Hermite WENO schemes and their application as limiters for Runge–Kutta discontiuous Galerkin method II: two dimensional case. Comput. Fluids 34, 642–663 (2005)CrossRefMATHMathSciNetGoogle Scholar
  26. 26.
    Schulz-Rinne, C.W., Collins, J.P., Glaz, H.M.: Numerical solution of the Riemann problem for two-dimensional gas dynamics. SIAM J. Sci. Comput. 14(6), 1394–1414 (1993)CrossRefMATHMathSciNetGoogle Scholar
  27. 27.
    Semplice, M., Coco, A., Russo, G.: Adaptive mesh refinement for hyperbolic systems based on third-order compact WENO reconstruction. J. Sci. Comput. 66, 692–724 (2016)CrossRefMATHMathSciNetGoogle Scholar
  28. 28.
    Shi, J., Hu, C.Q., Shu, C.-W.: A technique of treating negative weights in WENO schemes. J. Comput. Phys. 175, 108–127 (2002)CrossRefMATHGoogle Scholar
  29. 29.
    Shu, C.-W.: Essentially non-oscillatory and weighted essentially non-oscillatory schemes for hyperbolic conservation laws. In: Quarteroni, A. (ed.) Advanced Numerical Approximation of Nonlinear Hyperbolic Equations, Lecture Notes in Mathematics, CIME subseries. Springer, Berlin (1998)Google Scholar
  30. 30.
    Shu, C.-W., Osher, S.: Efficient implementation of essentially non-oscillatory shock capturing schemes. J. Comput. Phys. 77, 439–471 (1988)CrossRefMATHMathSciNetGoogle Scholar
  31. 31.
    Sod, G.A.: A survey of several finite difference methods for systems of non-linear hyperbolic conservation laws. J. Comput. Phys. 27, 1–31 (1978)CrossRefMATHMathSciNetGoogle Scholar
  32. 32.
    Titarev, V.A., Toro, E.F.: Finite-volume WENO schemes for three-dimensional conservation laws. J. Comput. Phys. 201, 238–260 (2004)CrossRefMATHMathSciNetGoogle Scholar
  33. 33.
    Toro, E.F.: Riemann Solvers and Numerical Methods for Fluid Dynamics, 2nd edn. Springer, Berlin (1999)CrossRefMATHGoogle Scholar
  34. 34.
    Zhang, Y.T., Shu, C.-W.: Third order WENO scheme on three dimensional tetrahedral meshes. Commun. Comput. Phys. 5, 836–848 (2009)MATHMathSciNetGoogle Scholar
  35. 35.
    Zhu, J., Zhong, X., Shu, C.-W., Qiu, J.: Runge–Kutta discontinuous Galerkin method using a new type of WENO limiters on unstructured meshes. J. Comput. Phys. 248, 200–220 (2013)CrossRefMATHMathSciNetGoogle Scholar
  36. 36.
    Zhu, J., Qiu, J.: A new fifth order finite difference WENO scheme for solving hyperbolic conservation laws. J. Comput. Phys. 318, 110–121 (2016)CrossRefMATHMathSciNetGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC 2017

Authors and Affiliations

  1. 1.College of ScienceNanjing University of Aeronautics and AstronauticsNanjingPeople’s Republic of China
  2. 2.School of Mathematical Sciences and Fujian Provincial Key Laboratory of Mathematical Modeling and High-Performance Scientific ComputingXiamen UniversityXiamenPeople’s Republic of China

Personalised recommendations