1 Introduction

Numerical simulation of compressible multi-component flows with immiscible interfaces has been an active research topic in the computational fluid dynamics because of their application to a wide range of field, such as inertial confinement fusion, underwater bubble dynamic and so on. The major difficulty of the simulations of multi-component flows is how to track the material interfaces clearly.

The numerical approaches can be split into two major groups with respect to the treatment of the material interface in the Eulerian framework. One is the sharp interface method (SIM) and the other is the diffuse interface method (DIM). Sharp interface methods [4, 13, 26,27,28, 33, 35, 36, 48, 49, 55] view the multi-material interfaces as genuine discontinuities. Thus the sharp interfaces are strictly maintained. However, none of these methods is able to dynamically create interfaces and to solve interfaces separating pure medium and mixtures as stated in [42].

In contrast, in the diffuse interface approach the interfaces are viewed as a numerically diffused zone, and an artificial mixture zone is created. A number of different models [1,2,3, 18, 41, 44,45,46] have been developed so far based on this idea, including 4-equation model, 5-equation model, 7-equation model and so on. However, these models are usually non-conservative, which leads both theoretical and computational challenging problems [2]. The special strategies are required to handle these non-conservative terms in order to keep the pressure and velocity non-oscillatory at the interfaces. The quasi-conservative approach developed by Abgrall in [1] is an effective means to deal with this problem. Based on Godunov method for solution evolution, Shyue extended the idea to the different equations of state (EOSs), such as stiffened gas equation [44], Van der Waals [46], Mie-Grüneisen [45]. Besides the traditional Godunov method, an alternative is the gas kinetic scheme (GKS) [50], which provides more physical information of the flow and is free from constructing Riemann solver. In the past decades, the GKS has been well developed to solve for multi-component flows [21,22,23, 25, 31, 34, 51]. A second-order gas-kinetic scheme for multicomponent flow was presented in [23, 51] based on the BGK equation for each component with its own equilibrium state. Chen and Jiang proposed a non-oscillatory kinetic (NOK) scheme for the ideal gas [6] and stiffened gas [5]. Ni and Sun [31] proposed a \(\gamma \)-DGBGK scheme for compressible multiconponent flows simulation. Recently, an improved GKS for multicomponent flows [22] is proposed to increase the computational efficiency. In these papers mentioned above, most of them are the second-order schemes at most. The works in [25, 31, 34] can achieve high order, but only are applied to the ideal gas or stiffened gas.

For the diffuse interface method, the numerical diffusion may lead to a very bad representation of the interfaces, especially when long time computations are needed. A way to circumvent the numerical diffusion is to adopt a high order method, such as spectral volume method [25], weighted essentially non-oscillatory (WENO) method [12, 17, 32, 39], discontinuous Galerkin (DG) method which we are interested in. DG method has been applied to solve a variety of different models [7, 14,15,16, 40]. There exist a few research works in the 5-equation model. Saleem, Ali and Qamar [40] adopted the second-order Runge-Kutta DG (RKDG) method for solving the reduced 5-equation model [18]. In their work, the Lax-Friedrichs (LF) flux and the local LF flux were used to compute the numerical flux and a WENO limiter was utilized to eliminate oscillations at discontinuities. However, one can observe that the velocity and pressure produce the oscillations at the interface from the results of the interface only problem since the limiter was applied to the conservative variables. Gryngarten and Menon [15] applied the local DG method [52] to the 5-equation model [3] with Peng-Robinson EOS, where the non-conservative equations were rewritten into conservative formula with source terms. A moment limiter [19] was applied to the conserved and primitive variables. The numerical flux used in their study is the HLLC approximate Riemann solver for the conservation of mass, momentum and energy. But the additional equations must be solved which increases the computations.

In this paper, a high order quasi-conservative DG method for compressible multi-component flows with Mie-Grüneisen EOS based on the 5-equation model [3] is developed. The method can obtain the high order in smooth regions, keep oscillation-free at discontinuities, including the material interface, which is different from the work in [40], and guarantee the volume fraction in [0,1]. In addition, we do not need the extra equations to solve and reduce the computations compared to the work in [15]. Following the idea of the quasi-conservative method introduced by Abgrall [1], the quasi-conservative DG method with NOK flux has three steps. Firstly, we adopt DG method to discretize the conservative equations in space. In order to treat Mie-Grüneisen EOS, the NOK flux [5, 25] is utilized to compute the numerical flux in our work instead of the traditional numerical flux. Secondly, according to the discretizations of the conservative equations, the necessary condition that avoids the unphysical oscillation near the material interfaces is derived, which is also the discretization method for the volume fraction equation. At last, the new multi-resolution WENO limiter [56] is employed to prevent the oscillations at discontinuities. In order to keep the pressure and velocity oscillation-free at the interfaces, we applied the limiter to the primitive variables as in [15] and the maximum-principle-satisfying limiter developed by Zhang and Shu [53, 54] is applied to ensure that the volume fraction does not go out of the range. Thus, a high order quasi-conservative discontinuous Galerkin method for multi-component flows with Mie-Grüneisen EOS using the NOK flux is developed.

The organization of the paper is as follows. The governing equations and EOSs are described in Sect. 2. In Section 3, the DG method for multi-component flows, identification of troubled cells, and limiters are described in detail. One- and two-dimensional numerical examples are presented to demonstrate the accuracy and the oscillation-free of the method in Sect. 4. In Sect. 5, the conclusions are given.

2 Govorning Equation

In one dimension, the 5-equation model for an immiscible two-material compressible flow [3] is considered, which is in the form of:

$$\begin{aligned} {\left\{ \begin{array}{ll} W_t+F(W)_x=0,\\ \frac{\partial Y}{\partial t}+v\frac{\partial Y}{\partial x}=0, \end{array}\right. } \end{aligned}$$
(2.1)

where \(W=(\rho _1Y_1, \rho _2Y_2, \rho v, E)^T\) and \(F(W)=(\rho _1Y_1v, \rho _2Y_2v, \rho v^2+P, v(E+P))^T\); \(\rho _1\) and \(\rho _2\) are the partial density of the fluids 1 and 2, respectively; P is the pressure, v is the velocity and \(E=\rho e+\frac{1}{2}\rho v^2\) is the total energy with \(\rho e\) being the internal energy; \(Y_1=Y\) is the volume fraction of fluid 1, lies in the interval [0, 1], and \(Y_1+Y_2=1\). The total density, momentum and energy of the mixture are defined as

$$\begin{aligned} \rho&=\rho _1Y_1+\rho _2Y_2,\quad \rho v=Y_1\rho _1v_1+Y_2\rho _2v_2, \end{aligned}$$
(2.2)
$$\begin{aligned} E&=Y_1\rho _1e_1+\frac{1}{2}\rho _1Y_1(v_1)^2+Y_2\rho _2e_2+\frac{1}{2}\rho _2Y_2(v_2)^2. \end{aligned}$$
(2.3)

In order to close the Eq. (2.1), a mixture EOS is needed. In this work, each of the fluids is modeled by Mie-Grüneisen EOS, i.e.

$$\begin{aligned} P(\rho ,e)=\Gamma (\rho )[\rho e-\rho e_{ref}(\rho )]+P_{ref}(\rho ), \end{aligned}$$

where \(\Gamma \) is the Grüneisen coefficient, \(P_{ref}(\rho ) \) and \(e_{ref}(\rho )\) are the reference pressure and internal energy, respectively. This is a general EOS since it can produce the different types of EOSs:

(1) Ideal gas EOS

$$\begin{aligned} {\left\{ \begin{array}{ll} \Gamma (\rho )=\gamma -1,\\ P_{ref}(\rho )=0,\\ e_{ref}(\rho )=0; \end{array}\right. } \end{aligned}$$
(2.4)

(2) Stiffened gas EOS

$$\begin{aligned} {\left\{ \begin{array}{ll} \Gamma (\rho )=\gamma -1,\\ P_{ref}(\rho )=-\gamma B,\\ e_{ref}(\rho )=0; \end{array}\right. } \end{aligned}$$
(2.5)

(3) Jones-Wilkins-Lee EOS (JWL EOS)

$$\begin{aligned} {\left\{ \begin{array}{ll} \Gamma (\rho )=\Gamma _0,\\ e_{ref}(\rho )=\frac{\mathcal {A}}{\mathcal {R}_1\rho _0} \exp (-\frac{\mathcal {R}_1\rho _0}{\rho })+\frac{\mathcal {B}}{\mathcal {R}_2\rho _0}\exp (-\frac{\mathcal {R}_2\rho _0}{\rho })-e_0,\\ P_{ref}(\rho )=\mathcal {A}\exp (-\frac{\mathcal {R}_1\rho _0}{\rho }) +\mathcal {B}\exp (-\frac{\mathcal {R}_2\rho _0}{\rho }); \end{array}\right. } \end{aligned}$$
(2.6)

where \(\mathcal {A}, \mathcal {R}_1, \rho _0, \mathcal {B}, \mathcal {R}_2 \) and \(e_0\) are the material-dependent parameters.

(4) Cochran-Chan EOS (CC EOS)

$$\begin{aligned} {\left\{ \begin{array}{ll} \Gamma (\rho )=\Gamma _0,\\ e_{ref}(\rho )=-\frac{\mathcal {A}}{\rho _0(1-\epsilon _1)} [(\frac{\rho _0}{\rho })^{1-\epsilon _1}-1]+\frac{\mathcal {B}}{\rho _0(1-\epsilon _2)}[(\frac{\rho _0}{\rho })^{1-\epsilon _2}-1]-e_0,\\ P_{ref}(\rho )=\mathcal {A}(\frac{\rho _0}{\rho })^{-\epsilon _1} -\mathcal {B}(\frac{\rho _0}{\rho })^{-\epsilon _2}; \end{array}\right. } \end{aligned}$$
(2.7)

where \(\mathcal {A}, \epsilon _1, \rho _0, \mathcal {B}, \epsilon _2 \) and \(e_0\) are the material-dependent parameters.

(5) Shock-Wave EOS (Shock EOS)

$$\begin{aligned} {\left\{ \begin{array}{ll} \Gamma (\rho )=\Gamma _0(\frac{V}{V_0})^{\alpha },\; V= \frac{1}{\rho },\; V_0=\frac{1}{V_0},\\ P_{ref}(\rho )=P_0+\frac{c_0^2(V_0-V)}{[V_0-s(V_0-V)]^2},\\ e_{ref}(\rho )=e_0+\frac{1}{2}[P_{ref}(\rho )+P_0](V_0-V); \end{array}\right. } \end{aligned}$$
(2.8)

where \(s, c_0, \rho _0, \alpha , P_0 \) and \(e_0\) are the material-dependent parameters.

A wide range of real materials can be modeled by these EOSs. A typical set of numerical values for some sample materials is listed in Table 1. Mie-Grüneisen EOS can be also rewritten as

$$\begin{aligned} P(\rho ,\rho e)=(\gamma (\rho )-1)\rho e-\gamma (\rho )\pi (\rho ), \end{aligned}$$

where \(\gamma (\rho )=\Gamma (\rho )+1, \pi (\rho )=\frac{\Gamma (\rho )\rho e_{ref}(\rho )-P_{ref}(\rho )}{\Gamma (\rho )+1}.\)

Table 1 Material-dependent quantities used in this paper

To close system (2.1) for the mixing cells, the isobaric closure assumption [3] is supplemented here, which assumes that there is no pressure jump across a material interface, i.e.

$$\begin{aligned} P_1=P_2=P. \end{aligned}$$

Thus, according to (2.2) and (2.3), the internal energy of the mixture is given by

$$\begin{aligned} \rho e=\sum \limits _kY_k\rho _ke_k=\sum \limits _kY_k \frac{P_k+\gamma _k(\rho _k)\pi _k(\rho _k)}{\gamma _k(\rho _k)-1}. \end{aligned}$$
(2.9)

Using \(P_1=P_2=P\), we can obtain

$$\begin{aligned} \frac{P+\gamma \pi }{\gamma -1}=\rho e=\sum \limits _kY_k\frac{P+\gamma _k (\rho _k)\pi _k(\rho _k)}{\gamma _k(\rho _k)-1}. \end{aligned}$$

Therefore, we have the two following equations:

$$\begin{aligned} \frac{1}{\gamma -1}=\sum \limits _k\frac{Y_k}{\gamma _k(\rho _k)-1},\; \frac{\gamma \pi }{\gamma -1}=\sum \limits _k\frac{Y_k\gamma _k(\rho _k) \pi _k(\rho _k)}{\gamma _k(\rho _k)-1}. \end{aligned}$$
(2.10)

Finally, the mixing sound speed [3] can be written as follows:

$$\begin{aligned} c^2=(\gamma -1)\sum \limits _{k}\frac{z_kc_k^2}{\gamma _k-1}, \end{aligned}$$

where \(c_k\) is the sound speed of the kth material and \(z_k\) is mass fraction of fluid k defined as \(z_k=\frac{\rho _kY_k}{\sum \limits _{l}\rho _lY_l}\).

3 The Numerical Scheme

In this section, we describe a quasi-conservative RKDG method for the numerical solution of compressible multi-components in the form of (2.1) on a uniform mesh, which contains three steps.

Step 1. Discretize the conservative equations in (2.1) using RKDG method [8,9,10,11] with NOK flux which is suitable for Mie-Grüneisen EOS.

Step 2. Following the idea of Abgrall’s quasi-conservative method, define a numerical scheme for the equation of volume fraction which can prevent the oscillation of pressure and velocity near the material interfaces.

Step 3. Add the limiters, which include the limiters for oscillation-free near the discontinuities and the maximum-principle-satisfying limiters for the volume fraction.

3.1 DG Method for the Conservative Equations

For simplicity, we take one dimension for example. For two dimensions, we can implement it similarly. Assume the domain \(\Omega \) is divided into N nonoverlapping cells \(\{I_j=(x_{j-\frac{1}{2}},x_{j+\frac{1}{2}}),j=1,\ldots ,N\}\), and \(\Delta x=x_{j+\frac{1}{2}}-x_{j-\frac{1}{2}}\). The DG finite element space is defined as

$$\begin{aligned} V_h^k=\{p(x,t):p|_{I_j}\in P^k(I_j)\}, \end{aligned}$$

where \(P^k(I_j)\) is the space of polynomials of degree \(\le k\) defined on \(I_j\). Notice that \(P^k(I_j)\) can be expressed as

$$\begin{aligned} P^k(I_j) = \text {span}\{\varphi _1(x),\ldots ,\varphi _L(x)\}, \end{aligned}$$

where \(L=k+1\) for one dimensional case, and \(\{\varphi _1(x),\; \cdots ,\; \varphi _L(x)\}\) is a basis of \(P^k(I_j)\). Here the local orthogonal basis over \(I_j\) is adopted. The first three basis functions in one dimension we employ on the cell \(I_j\) are

$$\begin{aligned} \varphi _1(x)=1,\; \varphi _2(x)=\frac{x-x_j}{\Delta x}, \; \varphi _3(x)=\left( \frac{x-x_j}{\Delta x}\right) ^2-\frac{1}{12}, \; \forall x\in I_j. \end{aligned}$$
(3.1)

The semi-discrete DG approximation for the conservative equations in (2.1) is to find the numerical solution \(u_h(\cdot ,t)\in V_h^k\), \(t \in (0, T]\) such that

$$\begin{aligned} \int _{I_j} \frac{\partial W_h}{\partial t} \psi dx+(F\psi )|_{I_j}-\int _{I_j} F\psi _xdx=0, \qquad \forall \psi \in P^k(I_j), \end{aligned}$$
(3.2)

Expressing \(W_h\) as

$$\begin{aligned} W_h(x,t)=\sum _{l=1}^L W_j^{(l)}(t)\varphi _l(x),\quad \forall x\in I_j, \end{aligned}$$
(3.3)

applying the Gauss quadrature rule to the third terms in (3.2) and replacing the flux F by the numerical flux \(\hat{F}\), we obtain

$$\begin{aligned} {\left\{ \begin{array}{ll} \int _{I_j} (\sum \limits _{l=1}^{L}\frac{dW^{(l)}_j(t)}{dt} \varphi _l(x)) \psi dx+\hat{F}_{j+\frac{1}{2}}\psi _{j+ \frac{1}{2}}^--\hat{F}_{j-\frac{1}{2}}\psi _{j-\frac{1}{2}}^+\\ -\sum \limits _{G}F(W_h(x_{G}))w_G\psi _x(x_G)|I_j|=0, \quad \forall \psi \in V_h^k,\\ \int _{I_j} (W_h(x,0)-W(x,0))\psi dx=0,\quad \forall \psi \in V_h^k, \end{array}\right. } \end{aligned}$$
(3.4)

where \(|I_j|\) is the volume of the element \(I_j\), and \(x_G\) and \(w_G\) represent the Gaussian points and the weights on \(I_j\), respectively. The summation \(\sum \limits _G\) is taken over the Gauss points on \(I_j\). The numerical flux has the form \(\hat{F}_{j+\frac{1}{2}}=\hat{F}(u_{j+\frac{1}{2}}^{-},u_{j+\frac{1}{2}}^{+})\), and \(u_{j+\frac{1}{2}}^{-}=u(x_{j+\frac{1}{2}}^-)\) and \(u_{j+\frac{1}{2}}^{+}=u(x_{j+\frac{1}{2}}^+)\) are defined as the values from the left and right limit of \(x_{j+\frac{1}{2}}\), respectively.

In this work, the NOK flux [5, 25] which can deal with the general EOS, is employed. It consists of two parts

$$\begin{aligned} \hat{F}_{j+\frac{1}{2}}=\eta F^K_{j+\frac{1}{2}}+(1-\eta )F^E_{j+\frac{1}{2}}, \end{aligned}$$

where \(\eta \in [0,1].\) \(\eta \) is the relaxation parameter to determine the speed that a system evolves into an equilibrium state and should be a function of local flow variables, such as the flow jump around the cell interface [24], which is

$$\begin{aligned} \eta =1-\exp [-C\frac{|P^+-P^-|}{P^++P^-}], \end{aligned}$$

where C is a problem-dependent positive constant which ranges from \(10^3\) to \(10^5\). \(\eta \) should be set to 1 for the challenging problems, such as very strong shocks. The non-equilibrium part is

$$\begin{aligned} F^K_{j+\frac{1}{2}}=F^+_{j+\frac{1}{2}}+F^-_{j+\frac{1}{2}}, \end{aligned}$$

where

$$\begin{aligned} F^{\pm }_{j+\frac{1}{2}}= & {} <u^1>_{{j+\frac{1}{2}}, L/R}\begin{pmatrix}\rho _1Y_1 \\ \rho _2Y_2 \\ \rho v \\ E \end{pmatrix}_{j+\frac{1}{2}}^{\mp }\nonumber \\&+ \begin{pmatrix} 0 \\ 0 \\ P_{j+\frac{1}{2}}^{\mp }<u^0>_{j+\frac{1}{2},L/R} \\ \frac{1}{2}P_{j+\frac{1}{2}}^{\mp }<u^1>_ {j+\frac{1}{2},L/R}+\frac{1}{2}P_{j+\frac{1}{2}}^{\mp }v_{j+\frac{1}{2}}^{\mp }<u^0>_ {j+\frac{1}{2},L/R}\end{pmatrix},\nonumber \\<u^0>_{j+\frac{1}{2},L/R}= & {} \frac{1}{2} \hbox {erfc} (\mp \sqrt{\lambda _{j+\frac{1}{2}}}v_{j+\frac{1}{2}}^{\mp }),\nonumber \\<u^1>_{j+\frac{1}{2},L/R}= & {} v_{j+\frac{1}{2}}^{\mp } <u^0>_{j+\frac{1}{2},L/R}\pm \frac{1}{2} \frac{\hbox {e}^{-\lambda _{j+\frac{1}{2}} (v_{j+\frac{1}{2}}^{\mp })^2}}{\sqrt{\pi \lambda _{j+\frac{1}{2}}}},\nonumber \\ \lambda _{j+\frac{1}{2}}= & {} \min \{\frac{1}{(c^-_{j+\frac{1}{2}})^2}, \frac{1}{(c^+_{j+\frac{1}{2}})^2} \}, \end{aligned}$$
(3.5)

c is the speed of sound.

In order to avoid oscillations of the pressure and velocity near a contact discontinuity, the equilibrium part should satisfy the consistent condition. The primitive variables are computed by

$$\begin{aligned} \begin{pmatrix} {\bar{\rho }}_1\\ {\bar{\rho }}_2\\ {\bar{v}}\\ {\bar{P}}\\ {\bar{Y}}_1 \end{pmatrix}_{j+\frac{1}{2}}= \begin{pmatrix} (\rho _1)_{j+\frac{1}{2}}^-<u^0>_{j+\frac{1}{2},L}+ (\rho _1)_{j+\frac{1}{2}}^+<u^0>_{j+\frac{1}{2},R}\\ (\rho _2)_{j+\frac{1}{2}}^-<u^0>_{j+\frac{1}{2},L}+ (\rho _2)_{j+\frac{1}{2}}^+<u^0>_{j+\frac{1}{2},R}\\<u^1>_{j+\frac{1}{2},L}+<u^1>_{j+\frac{1}{2},R}\\ P_{j+\frac{1}{2}}^-<u^0>_{j+\frac{1}{2},L} +P_{j+\frac{1}{2}}^+<u^0>_{j+\frac{1}{2},R}\\ (Y_1)_{j+\frac{1}{2}}^-<u^0>_{j+\frac{1}{2},L} +(Y_1)_{j+\frac{1}{2}}^+<u^0>_{j+\frac{1}{2},R} \end{pmatrix}. \end{aligned}$$
(3.6)

Then we take

$$\begin{aligned} F^E_{j+\frac{1}{2}}=\begin{pmatrix} {\bar{\rho }}_1 {\bar{Y}}_1{\bar{v}}\\ {\bar{\rho }}_2 {\bar{Y}}_2{\bar{v}}\\ {\bar{\rho }} {\bar{v}}^2+{\bar{P}}\\ {\bar{v}}({\bar{E}}+{\bar{P}}) \end{pmatrix}_{j+\frac{1}{2}}, \end{aligned}$$
(3.7)

and \({\bar{E}}\) is determined by EOS.

3.2 DG Method for Volume Fraction Equations

Following the procedure of Abgrall [1] to avoid the oscillations of the pressure and velocity, we consider the interface only problem, and assume the velocity v and the pressure P are constants, i.e. \(v=v_0,\;P=P_0\). Thus, \(<u^0>_L+<u^0>_R=1\) and \(<u^1>_L+<u^1>_R=v_0\) in the NOK flux. Firstly, we introduce

$$\begin{aligned} {\tilde{Z}}_{j+\frac{1}{2}}= & {} Z_{j+\frac{1}{2}}^-<u^1>_{j+\frac{1}{2},L}+Z_{j+\frac{1}{2}}^+<u^1>_{j+\frac{1}{2},R},\\ a_l= & {} \int _{I_j}(\varphi _l(x))^2dx,\; l=1,\ldots ,L \end{aligned}$$

for notation. Then from the current spatial discretization, the semi-discretized scheme of the continuity equation can be written in the form as following:

$$\begin{aligned} \frac{d(\rho _1Y_1)_j^{(l)}}{dt}=-&\frac{1}{a_l} [\eta (\widetilde{(\rho _1Y_1)}_{j+\frac{1}{2}} \varphi _l(x_{j+\frac{1}{2}}^-)-\widetilde{(\rho _1Y_1)}_{j- \frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))+\nonumber \\&(1-\eta )v_0(\overline{(\rho _1Y_1)}_{j+\frac{1}{2}} \varphi _l(x_{j+\frac{1}{2}}^-)-\overline{(\rho _1Y_1)}_{j- \frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))-\nonumber \\&v_0\int _{I_j}(\rho _1Y_1)(\varphi _l(x))_x dx], \; l=1,\ldots , L. \end{aligned}$$
(3.8)
$$\begin{aligned} \frac{d(\rho _2Y_2)_j^{(l)}}{dt}=-&\frac{1}{a_l} [\eta (\widetilde{(\rho _2Y_2)}_{j+\frac{1}{2}} \varphi _l(x_{j+\frac{1}{2}}^-)-\widetilde{(\rho _2Y_2)}_{j- \frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))+\nonumber \\&(1-\eta )v_0(\overline{(\rho _2Y_2)}_{j+\frac{1}{2}} \varphi _l(x_{j+\frac{1}{2}}^-)-\overline{(\rho _2Y_2)}_{j- \frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))-\nonumber \\&v_0\int _{I_j}(\rho _2Y_2)(\varphi _l(x))_x dx], \; l=1,\ldots , L. \end{aligned}$$
(3.9)

Since \(\rho =\rho _1Y_1+\rho _2Y_2\), we can get

$$\begin{aligned} \frac{d\rho _j^{(l)}}{dt}=-&\frac{1}{a_l} [\eta ({\tilde{\rho }}_{j+\frac{1}{2}} \varphi _l(x_{j+\frac{1}{2}}^-)-{\tilde{\rho }}_{j- \frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))+(1-\eta ) v_0(\bar{\rho }_{j+\frac{1}{2}}\varphi _l(x_{j+\frac{1}{2}}^-)-\nonumber \\&\bar{\rho }_{j-\frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))- v_0\int _{I_j}\rho (\varphi _l(x))_x dx], \; l=1,\ldots , L. \end{aligned}$$
(3.10)

Similarly, the discretization for the momentum equation can be written as

$$\begin{aligned} \frac{d(\rho v)_j^{(l)}}{dt}=-&\frac{1}{a_l}[\eta v_0 ({\tilde{\rho }}_{j+\frac{1}{2}}\varphi _l(x_{j+ \frac{1}{2}}^-)-{\tilde{\rho }}_{j-\frac{1}{2}} \varphi _l(x_{j-\frac{1}{2}}^+))+(1-\eta )v_0^2 (\bar{\rho }_{j+\frac{1}{2}}\varphi _l(x_{j+\frac{1}{2}}^-)-\nonumber \\&\bar{\rho }_{j-\frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))- v_0^2\int _{I_j}\rho (\varphi _l(x))_x dx], \; l=1,\ldots , L. \end{aligned}$$
(3.11)

Based on the Eqs. (3.10) and (3.11), we can derive \(\frac{dv_j^{(l)}}{dt}=0\). The discretization for energy is

$$\begin{aligned} \frac{dE_j^{(l)}}{dt}=-&\frac{1}{a_l} [\eta ({\tilde{E}}_{j+\frac{1}{2}}\varphi _l (x_{j+\frac{1}{2}}^-)-{\tilde{E}}_{j-\frac{1}{2}} \varphi _l(x_{j-\frac{1}{2}}^+))+(1-\eta )v_0(\bar{E}_{j+\frac{1}{2}}\varphi _l(x_{j+\frac{1}{2}}^-)- \nonumber \\&\bar{E}_{j-\frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))- v_0\int _{I_j}E(\varphi _l(x))_x dx], \; l=1,\ldots , L. \end{aligned}$$
(3.12)

Inserting the equation of state to (3.12), we can observe that the pressure keeps constant at the next time if the following condition is satisfied,

$$\begin{aligned} \frac{d\kappa _j^{(l)}}{dt}=-&\frac{1}{a_l}[\eta ({\tilde{\kappa }}_{j +\frac{1}{2}}\varphi _l(x_{j+\frac{1}{2}}^-)-{\tilde{\kappa }}_{j- \frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))+(1-\eta )v_0 (\bar{\kappa }_{j+\frac{1}{2}}\varphi _l(x_{j+\frac{1}{2}}^-)-\nonumber \\&\bar{\kappa }_{j-\frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))- v_0\int _{I_j}\kappa (\varphi _l(x))_x dx], \; l=1,\ldots , L, \end{aligned}$$
(3.13)
$$\begin{aligned} \frac{d\chi _j^{(l)}}{dt}=-&\frac{1}{a_l}[\eta ({\tilde{\chi }}_{j+ \frac{1}{2}}\varphi _l(x_{j+\frac{1}{2}}^-)-{\tilde{\chi }}_{j- \frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))+(1-\eta )v_0(\bar{\chi }_{j+ \frac{1}{2}}\varphi _l(x_{j+\frac{1}{2}}^-)-\nonumber \\&\bar{\chi }_{j- \frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))- v_0\int _{I_j}\chi (\varphi _l(x))_x dx], \; l=1,\ldots , L, \end{aligned}$$
(3.14)

where \(\kappa =\frac{1}{\gamma -1}\) and \(\chi =\frac{\gamma \pi }{\gamma -1}\). Following the work in [5, 25, 45], if the condition is replaced by

$$\begin{aligned} \frac{dY_j^{(l)}}{dt}=-&\frac{1}{a_l}[\eta ({\tilde{Y}}_{j+ \frac{1}{2}}\varphi _l(x_{j+\frac{1}{2}}^-)-{\tilde{Y}}_{j- \frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))+(1-\eta )v_0 (\bar{Y}_{j+\frac{1}{2}}\varphi _l(x_{j+\frac{1}{2}}^-)-\nonumber \\&\bar{Y}_{j-\frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))- v_0\int _{I_j}Y(\varphi _l(x))_x dx], \; l=1,\ldots , L, \end{aligned}$$
(3.15)

the conditions (3.13)–(3.14) will be satisfied. It is easy to observe that the conditions (3.15) can be viewed as the discretization of the equation

$$\begin{aligned} Y_t+(vY)_x=0. \end{aligned}$$

However, the equation is different from the advection equation in (2.1). If discretizing the species equation as (3.15), we will get the wrong solutions. Noting that the species equation can be rewritten as

$$\begin{aligned} Y_t+vY_x=Y_t+(vY)_x-Yv_x=0, \end{aligned}$$

and discretized as follows,

$$\begin{aligned} \frac{dY_j^{(l)}}{dt}=-&\frac{1}{a_l}[\eta ({\tilde{Y}}_{j +\frac{1}{2}}\varphi _l(x_{j+\frac{1}{2}}^-)-{\tilde{Y}}_{j -\frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))+(1-\eta )v_0 (\bar{Y}_{j+\frac{1}{2}}\varphi _l(x_{j+\frac{1}{2}}^-)-\nonumber \\&\bar{Y}_{j-\frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+))-v_0 \int _{I_j}Y(\varphi _l(x))_x dx-Y(x_j)(\hat{v}_{j+\frac{1}{2}} \varphi _l(x_{j+\frac{1}{2}}^-)-\nonumber \\&\hat{v}_{j-\frac{1}{2}}\varphi _l(x_{j-\frac{1}{2}}^+) -\int _{I_j}v(\varphi _l(x))_xdx)], \; l=1,\ldots , L, \end{aligned}$$
(3.16)

where \(\hat{v}_{j+\frac{1}{2}}=<u^1>_{j+\frac{1}{2},L}+<u^1>_{j+\frac{1}{2},R}\). Then (3.16) is degenerated to (3.15) near the contact discontinuities. Thus, the velocity and the pressure are oscillation-free.

Finally the semi-discrete schemes (3.4) and (3.16) are discretized in time. Here, we use an explicit, the third order TVD Runge-Kutta scheme [43]. Casting (3.4) and (3.16) in the form

$$\begin{aligned} \frac{\partial u_h}{\partial t} =L_h(u_h,t), \end{aligned}$$

the scheme reads as

$$\begin{aligned}&u_h^*=u_h^n+\Delta t_n L_h(u_h^n,t_n), \nonumber \\&u_h^{**}=\frac{3}{4}u_h^n+\frac{1}{4}(u_h^*+\Delta t_n L_h(u_h^*,t_n+\Delta t_n)), \nonumber \\&u_h^{n+1}=\frac{1}{3}u_h^n+\frac{2}{3}(u_h^{**}+ \Delta t_n L_h(u_h^{**},t_n+\frac{1}{2}\Delta t_n )). \end{aligned}$$
(3.17)

3.3 The Limiting Procedure

In this subsection, two kinds of limiters are described briefly. One is the limiter to keep oscillation-free at discontinuities and the other one is the maximum-pricinple-satisfying limiter for the volume fraction, since it should satisfy \(Y\in [0,1].\)

3.3.1 The Limiter to Control Oscillations

As is well known, nonlinear limiters must be applied to control the spurious oscillations in the numerical solution for strong shocks, which has two steps following the work of Qiu and Shu [38].

Step 1. We identify the “troubled cells” using the minmod-type TVB limiter as in [29, 37, 38]. All the primitive variables are taken as the indicator variables.

Step 2. We add the nonlinear limiters in the troubled cells. In this paper, the new type of multi-resolution WENO limiters developed in [56, 57] is adopted. In order to keep the pressure non-oscillatory, we limit the primitive variables component-wisely here.

Next, we describe the method to detect “troubled cells” and the new multi-resolution WENO limiter briefly.

For simplicity, we assume \(u(x)\in V_h^k\) is the primitive variable such as \(\rho _1, \rho _2,v,P,Y\) on \(I_j\). Denote

$$\begin{aligned} u^{-}_{j+\frac{1}{2}}=u_j^{(1)}+\tilde{u}_j,\; u^{+}_{j-\frac{1}{2}}=u_j^{(1)}-\tilde{\tilde{u}}_j, \; \bar{u}_j=\frac{1}{\Delta x}\int _{I_j}udx. \end{aligned}$$

From (3.3) we can see that

$$\begin{aligned} \tilde{u}_j=\sum \limits _{l=2}^Lu_j^{(l)}(t)\varphi _l(x_{j+\frac{1}{2}}),\; \tilde{\tilde{u}}_j=-\sum \limits _{l=2}^Lu_j^{(l)}(t)\varphi _l(x_{j-\frac{1}{2}}). \end{aligned}$$

These values are modified by the standard minmod limiter

$$\begin{aligned} \tilde{u}_j^{mod}=\tilde{m}(\tilde{u}_j,\Delta _+\bar{u}_j,\Delta _-\bar{u}_j),\; \tilde{\tilde{u}}_j^{mod}=\tilde{m}(\tilde{\tilde{u}}_j,\Delta _+\bar{u}_j,\Delta _-\bar{u}_j), \end{aligned}$$

where \(\Delta _+\bar{u}_j=\bar{u}_{j+1}-\bar{u}_j\), \(\Delta _-\bar{u}_j=\bar{u}_{j}-\bar{u}_{j-1}\), and \({\tilde{m}}\) is defined as

$$\begin{aligned} \widetilde{m}(a_1,a_2,a_3)= \left\{ \begin{array}{ll} a_1,&{}\; \hbox {if}\quad |a_1|\le M\Delta x^2, \\ m(a_1,a_2,a_3),&{}\; \hbox {otherwise}, \end{array} \right. \end{aligned}$$
(3.18)
$$\begin{aligned} m(a_1,a_2,a_3)= \left\{ \begin{array}{ll} \hbox {sign}(a_1) \min (|a_1|,|a_2|,|a_3|),&{}\; \hbox {if}\;\; \hbox {sign}(a_1)=\hbox {sign}(a_2)=\hbox {sign}(a_3),\\ 0,&{}\; \hbox {otherwise}, \end{array}\right. \nonumber \\ \end{aligned}$$
(3.19)

and \(M> 0\) is a constant. The choice of M depends on the solution of the problem; see, e.g., [10] for detailed discussion. We use \(M=1\) in our computation. Finally, \(I_j\) is marked as a troubled cell for further reconstructions if one of the minmod functions does not return the first argument.

In order to keep the velocity and pressure non-oscillatory, we limit the primitive variables component-wisely here. Then the limited primitive variables are used to compute the numerical fluxes and evolve the equation to obtain the new solutions at the next time in the conservative form. Assume \(I_j\) is a troubled cell. The procedure of the limiting for the scalar case [56] is given in the following.

Step 1. Define a series of polynomials of different degrees on the troubled cell \(I_j\).

Step 1.1. For a second-order spatial approximation, a zeroth degree polynomial \(q_1(x)\) and a linear polynomial \(q_2(x)\) are constructed, which satisfy

$$\begin{aligned} \int _{I_j}q_1(x)\varphi _1(x)dx=\int _{I_j}u(x)\varphi _1(x)dx, \end{aligned}$$

and

$$\begin{aligned} \int _{I_j}q_2(x)\varphi _l(x)dx=\int _{I_j}u(x)\varphi _l(x)dx,\; l=1,2. \end{aligned}$$

Step 1.2. For a third-order spatial approximation, a quadratic polynomial \(q_3(x)\) is constructed which satisfies

$$\begin{aligned} \int _{I_j}q_3(x)\varphi _l(x)dx=\int _{I_j}u(x)\varphi _l(x)dx,\; l=1, 2, 3. \end{aligned}$$

Step 2. Get equivalent expressions for these constructed polynomials of different degrees. Here, \(\gamma _{l,l_2}, \; l=l_2-1, l_2;\; l_2=1,2\) are the linear weights. There is no requirement on the values of these linear weights for accuracy besides \(\gamma _{{l_2-1},l_2}+\gamma _{{l_2},l_2}=1,\; l_2=1,2\). The choice of these linear weights is solely based on the balance between accuracy and ability to achieve essentially nonoscillation property. In this paper, we set the linear weights as follows: \(\gamma _{0,1}=0.05, \gamma _{1,1}=0.95\) for the second-order approximation; \(\gamma _{1,2}=0.05, \gamma _{2,2}=0.95\) for the third-order approximation.

Step 2.1. For the second-order approximation, we obtain a polynomial \(p_{1,1}(x)\) by

$$\begin{aligned} p_{1,1}(x)=\frac{1}{\gamma _{1,1}}q_2(x)- \frac{\gamma _{0,1}}{\gamma _{1,1}}p_{0,1}(x), \end{aligned}$$

where \(p_{0,1}(x)=q_1(x).\)

Step 2.2. For the third-order approximation, we define \(p_{1,2}(x)=\omega _{1,1}p_{1,1}(x)+\omega _{0,1}p_{0,1}(x),\) and obtain a polynomial \(p_{2,2}(x)\) through

$$\begin{aligned} p_{2,2}(x)=\frac{1}{\gamma _{2,2}}q_3(x)- \frac{\gamma _{1,2}}{\gamma _{2,2}}p_{1,2}(x). \end{aligned}$$

In these expressions, \(\omega _{l,l_2}\) for \(l=l_2-1,l_2; l_2=1,\ldots , k\) are the linear weights and nonlinear weights, respectively.

Step 3. Compute the smoothness indicators \(\beta _{l,l_2}\) by

$$\begin{aligned} \beta _{l,l_2}=\sum \limits _{s=1}^l\int _{I_j}\Delta x^{2s-1}(\frac{d^s}{dx^s}p_{l,l_2}(x))^2dx,\; l=l_2-1,l_2; l_2=1,2. \end{aligned}$$
(3.20)

However, \(\beta _{0,1}\) can not be computed by (3.20), which is defined below. We first define the linear polynomial \(q_{j-1}(x)\) on \(I_{j-1}\) by

$$\begin{aligned} \int _{I_{j-1}}q_{j-1}(x)\varphi _l(x)dx=\int _{I_{j-1}}u(x)\varphi _l(x)dx,\; l=1,2. \end{aligned}$$

and similarly, the linear polynomial \(q_{j+1}(x)\) on \(I_{j+1}\) by

$$\begin{aligned} \int _{I_{j+1}}q_{j+1}(x)\varphi _l(x)dx=\int _{I_{j+1}}u(x)\varphi _l(x)dx,\; l=1,2. \end{aligned}$$

Then, the smoothness indicators are computed by

$$\begin{aligned} \zeta _{j-1}=\int _{I_{j}}\Delta x(\frac{d}{dx}q_{j-1}(x))^2dx,\; \zeta _{j+1}=\int _{I_{j}}\Delta x(\frac{d}{dx}q_{j+1}(x))^2dx. \end{aligned}$$

Thus, \(\beta _{0,1}\) is defined as \(\beta _{0,1}=\min (\zeta _{j-1},\zeta _{j+1}).\)

Step 4. Compute the nonlinear weights

$$\begin{aligned} \omega _{l_1,l_2}=\frac{{\bar{\omega }}_{l_1,l_2}}{\sum \limits _{s=1}^{l_2} {\bar{\omega }}_{s,l_2}},\; {\bar{\omega }}_{l_1,l_2}=\gamma _{l_1,l_2}(1+\frac{\tau _{l_2}}{\upsilon +\beta _{l_1,l_2}}),\; l_1=l_2-1,l_2; l_2=1,2, \end{aligned}$$

where \(\tau _{l_2}=(\beta _{l_2,l_2}-\beta _{l_2-1,l_2})^2,\; l_2=1,2,\) and \(\upsilon \) is set to be \(10^{-10}\) in all the computations.

Step 5. Finally the new constructed polynomial \(u^{new}(x)\) on the cell \(I_j\) is given by

$$\begin{aligned} u^{new}(x)=\sum \limits _{l=l_2-1}^{l_2}\omega _{l,l_2}p_{l,l_2}(x),\; l_2=1,2, \end{aligned}$$

for the second-order, third-order, respectively.

3.3.2 The Maximum-Pricinple-Satisfying Limiter

After limiting described above, the volume fraction Y may still have a non-valid value, such as \(Y<0\) or \(Y>1\) in some cells. Therefore, a genuinely high order accurate maximum-principle-satisfying scheme [53, 54] is employed in this paper. The procedure is described briefly in the following.

Table 2 Example 1: Solution error with periodic boundary conditions and \(T=1\)
Fig. 1
figure 1

Interface only problem. \(N=100\). Solid line: the exact solution; square symbols and solid line: \(P^1\) elements; delta symbols and solid line: \(P^2\) elements

Fig. 2
figure 2

\(N=5000\). Solid line: the exact solution; square symbols and solid line: \(P^1\) elements; delta symbols and solid line: \(P^2\) elements

Fig. 3
figure 3

\(N=200\). Solid line: the reference solution; square symbols and solid line: \(P^1\) elements; delta symbols and solid line: \(P^2\) elements

Fig. 4
figure 4

\(N=200\). Solid line: the reference solution; square symbols and solid line: \(P^1\) elements; delta symbols and solid line: \(P^2\) elements

Assume the volume fraction Y(x) is the polynomial defined on \(I_j\) and \(\bar{Y}\) is the cell average on \(I_j\). Then we modify Y(x) such that \(Y(x)\in [\epsilon ,1-\epsilon ]\) for all \(x\in S\) where S is the set of the Legendre Gauss-Lobatto quadrature points for \(I_j\). For all j, assume \(\bar{Y}\in [\epsilon ,1-\epsilon ]\), we use the modified polynomial \({\tilde{Y}}(x)\) instead of Y(x), i.e.,

$$\begin{aligned} {\tilde{Y}}(x)=\theta (Y(x)-\bar{Y})+\bar{Y},\; \theta =\min \Big \{\Big |\frac{1-\epsilon -\bar{Y}}{Y_{max}-\bar{Y}}\Big |, \Big |\frac{\epsilon -\bar{Y}}{Y_{min}-\bar{Y}}\Big |,1 \Big \}, \end{aligned}$$
(3.21)

where \(Y_{max}=\max \limits _{x\in S}Y(x),\; Y_{min}=\min \limits _{x\in S}Y(x).\) It is clear that the volume fraction \({\tilde{Y}}(x)\) should be in \([\epsilon ,1-\epsilon ]\) after this limiting. The parameter \(\epsilon \) is set to be \(10^{-8}\) in this work.

For two-component flows, it is easy to see that the volume fraction of the fluid 2 also stays in \([\epsilon , 1-\epsilon ]\) due to \(Y_2=1-Y_1\) if the volume fraction \(Y_1=Y(x)\) of the fluid 1 is limiting using the method described above. However, for more than two fluids, it is a little different. We take three-component flows for example. Assume \(Y_1(x)\), \(Y_2(x)\) and \(Y_3(x)\) are the volume fraction of the fluid 1, 2 and 3, respectively. The limiting procedure is given as follows.

Step 1. Let \(Y_{12}(x)=Y_1(x)+Y_2(x)\) and use the new volume fraction \(Y_{12}(x)\) to define the parameter \(\theta _1\)

$$\begin{aligned} \theta _1=\min \Big \{\Big |\frac{1-\epsilon -\bar{Y}_{12}}{Y_{12,max}-\bar{Y}_{12}}\Big |, \Big |\frac{\epsilon -\bar{Y}_{12}}{Y_{12,min}-\bar{Y}_{12}}\Big |,1 \Big \}. \end{aligned}$$

Step 2. Similarly, define the parameters \(\theta _i\)

$$\begin{aligned} \theta _i=\min \Big \{\Big |\frac{1-\epsilon -\bar{Y}_{i-1}}{Y_{i-1,max}-\bar{Y}_{i-1}}\Big |, \Big |\frac{\epsilon -\bar{Y}_{i-1}}{Y_{i-1,min}-\bar{Y}_{i-1}}\Big |,1 \Big \},\; i=2,3. \end{aligned}$$

Step 3. Finally, use the modified polynomials \({\tilde{Y}}_1(x)\) and \({\tilde{Y}}_2(x)\) instead of \( Y_1(x)\) and \(Y_2(x)\), i.e.

$$\begin{aligned} {\tilde{Y}}_i(x)=\theta (Y_i(x)-\bar{Y}_i)+\bar{Y}_i,\; \theta =\min \Big \{\theta _1, \theta _2, \theta _3, 1 \Big \}, i=1,2. \end{aligned}$$
(3.22)
Table 3 Example 5: Solution error with periodic boundary conditions and \(T=1\)

From the procedure described above, we need to compute a common coefficient \(\theta \), then \(\theta \) is applied to modify the volume fraction polynomials. Moreover, the procedure can be extended to more than three fluids easily.

4 Numerical Examples

In this section we present numerical results obtained with the quasi-conservative DG method described in the previous sections for a selection of one- and two-dimensional examples. Recall that the method has been described in one dimension. Its implementation in two dimensions is similar. The CFL number in time step selection is set to be 0.3 for \(P^1\) elements, 0.15 for \(P^2\) elements. For the examples with Mie-Grüneisen EOS, the material-dependent parameters are given in Table 1.

Fig. 5
figure 5

The density contours. From top to bottom: \(T=\) 0.2, 0.4, 0.8, 1.2 ms. Left: \(P^1\) elements; Right: \(P^2\) elements

Fig. 6
figure 6

The pressure contours. From top to bottom: \(T=\) 0.2, 0.4, 0.8, 1.2 ms. Left: \(P^1\) elements; Right: \(P^2\) elements

Fig. 7
figure 7

Cross-sectional plots of the results in Fig. 5 along \(x=0.\) From top to bottom: \(T=\) 0.2, 0.4, 0.8, 1.2 ms. Left: \(P^1\) elements; Right: \(P^2\) elements

4.1 One-dimensional Examples

Example 1

To assess the accuracy of the new method, we first consider a one-dimensional convection of change in volume fraction with the equation of state (2.5), which is also studied in [15]. And the parameters are set to be \(\gamma _1=1.4,\; \gamma _2=1.9,\; B_1=1,\; B_2=0.\) The initial condition is given by

$$\begin{aligned} \rho (x,0)=1,\; v(x,0)=1,\; P(x,0)=1,Y(x,0)=0.5+0.499\sin (\pi x) \end{aligned}$$

with a periodic boundary condition. The computational domain is on (0,2). We compute the solution up to \(T = 1\). The error of the volume fraction is listed in Table 2, which shows the convergence of the second order for \(P^1\) elements, the third order for \(P^2\) elements for the quasi-conservative DG method.

Fig. 8
figure 8

Cross-sectional plots of the results in Fig. 7 along \(x=0.\) From top to bottom: \(T=\) 0.2, 0.4, 0.8, 1.2 ms. Left: \(P^1\) elements; Right: \(P^2\) elements

Fig. 9
figure 9

\(N=400\times 400\), density contours. Top: \(T=\) 50 \(\mu \)s; Bottom: \(T=\) 100 \(\mu \)s. Left: \(P^1\) elements; Right: \(P^2\) elements

Fig. 10
figure 10

\(N=400\times 400\), pressure contours. Top: \(T=\) 50 \(\mu \)s; Bottom: \(T=\) 100 \(\mu \)s. Left: \(P^1\) elements; Right: \(P^2\) elements

Fig. 11
figure 11

Schlieren-type images for the density using \(N=200\times 200\). Top: \(T=\) 50 \(\mu \)s; Bottom: \(T=\) 100 \(\mu \)s. Left: \(P^1\) elements; Right: \(P^2\) elements

Fig. 12
figure 12

Schlieren-type images for the pressure using \(N=200\times 200\). Top: \(T=\) 50 \(\mu \)s; Bottom: \(T=\) 100 \(\mu \)s. Left: \(P^1\) elements; Right: \(P^2\) elements

Example 2

To verify the non-oscillation property for the pressure and velocity fields, in this example we consider the interface only problem with the initial condition given by

$$\begin{aligned} (\rho ,v,P,\gamma ,B)= {\left\{ \begin{array}{ll} (1,1,1,1.4,1), \;&{}x\leqslant 0,\\ (0.125,1,1,1.9,0), \;&{}x>0. \end{array}\right. } \end{aligned}$$

The stiffened gas EOS (2.5) is used and the numerical results with 100 points at \(T=2\) are plotted in Fig. 1.

From the figure, one can observe that the new DG method can preserve the oscillation-free property of the pressure and velocity at the material interface. Moreover, from the close-up of the density at the interface in Fig. 1, it is clear that the high order method have better resolution than lower order method.

Example 3

In this example the gas-liquid shock tube test with a strong shock wave is considered. This is a very challenging test case with a strong shock wave since the shock and the material interface are close and the pressure ratio is excessively high. Again, the stiffened gas EOS (2.5) is employed. The initial condition is

$$\begin{aligned} (\rho ,v,P,\gamma ,B)= {\left\{ \begin{array}{ll} (10^3,0,10^9,4.4,6\times 10^8), \; &{} x\leqslant 0.5,\\ (50,0,10^5,1.4,0), \; &{}x>0.5, \end{array}\right. } \end{aligned}$$

and the computational domain is (-0.2,1). The final time is \(T=0.0002\).

Figure 2 is computed with 5000 points. From the close-up density profile near the shock and material interface, we can observe that the solutions with \(P^2\) elements have better resolution than ones with \(P^1\) elements.

Example 4

In order to show that the quasi-conservative DG method works with Mie-Grüneisen EOS, we test a two-component impact problem, which is also studied in [41, 45]. In this problem, to model the material properties of the copper and solid explosive, the same CC EOSs (2.7) are used, but with a different set of material-dependent quantities for each of them. At the beginning, the copper has an initial velocity of 1500 m/s, while the explosive is at rest. The computational domain is (0, 1) and the initial condition is given by

$$\begin{aligned} (\rho ,v,P)= {\left\{ \begin{array}{ll} (8900,1500,10^{5}), \;&{}x\leqslant 0.5,\\ (1840,0,10^5), \;&{}x>0.5. \end{array}\right. } \end{aligned}$$

The boundary conditions are constant states on both the left and right sides of the domain. The integration is stopped at \(T=85 \;\mu s\).

The exact solution for this problem consists of a rightward-moving shock, a leftward-moving shock and a material interface in between. The results with 200 uniform points are demonstrated in Fig. 3, where the solid line is the fine grid solution computed by \(\Delta x=\frac{1}{2000}\) with \(P^1\) elements. From that one can observe these nonlinear structures are all resolved well.

It is noticed that the results for u and P don’t look flat on the smooth region. This is because the linear weights are small and can not control the oscillations. If the linear weights are taken as \(\gamma _{l_2-1,l_2}=0.1,\;\gamma _{l_2,l_2}=0.9,\; l_2=1,2\), then the small oscillations are eliminated. The results with these linear weights are shown Fig. 4.

4.2 Two-Dimensional Examples

Example 5

In order to test the accuracy in two-dimensional case, similar to Example 1, we first consider a two-dimensional convection of change in volume fraction with the equation of state (2.5) and the parameters are \(\gamma _1=1.4, \gamma _2=1.9, B_1=1, B_2=0. \) The initial condition is given by

$$\begin{aligned} \rho (x,y,0)&=1,\; \mu (x,y,0)=1,\nu (x,y,0)=1,\; P(x,0)=1,\\ Y(x,y,0)&=0.5+0.499\sin (\pi (x+y)) \end{aligned}$$

with a periodic boundary condition, where \(\mu \) and \(\nu \) are the velocities in the x-direction and y-direction, respectively. The computational domain is taken as \((x,y)\in (0,2)\times (0,2)\). We compute the solution up to \(T = 1\).

The error of the volume fraction is listed in Table 3, which shows the convergence of the second order for \(P^1\) elements, the third order for \(P^2\) elements for the quasi-conservative DG method in two dimensions.

Fig. 13
figure 13

The cross-sectional plots of the results shown in Fig. 11 along \(y=0.4\). Top: \(T=\) 50 \(\mu \)s; Bottom: \(T=\) 100 \(\mu \)s. Left: \(P^1\) elements; Right: \(P^2\) elements

Fig. 14
figure 14

The cross-sectional plots of the results shown in Fig. 12 along \(y=0.4\). Top: \(T=\) 50 \(\mu \)s; Bottom: \(T=\) 100 \(\mu \)s. Left: \(P^1\) elements; Right: \(P^2\) elements

Example 6

To show the performance of our method with high pressure ratio in two dimensions, we consider the simulation of a model underwater explosion problem [20, 47]. In this test, the computation domain is taken as \((x,y)\in (-2,2)\times (-1.5,1)\). Initially, the horizontal air-water interface is located at the \(y=0\) and the center of a circular gas bubble with the radius 0.12 in the water is located at \((0,-0.3)\). Above the air-water interface, the fluid is a perfect gas at the standard atmospheric condition modeled by the ideal gas EOS (2.4) and below the air-water interface in region outside the gas bubble the fluid is water, which is modeled by the stiffened gas EOS (2.5). Thus the initial condition is

$$\begin{aligned} (\rho ,\mu ,\nu ,P,\gamma ,B)= {\left\{ \begin{array}{ll} (1.225,0,0,101325,1.4,0), \; &{} y > 0,\\ (1250,0,0,10^9,1.4,0), \; &{}x^2+(y+0.3)^2\leqslant 0.12^2,\\ (1000,0,0,101325,4.4,6\times 10^8), \; &{}else. \end{array}\right. } \end{aligned}$$

And the reflecting boundary conditions are employed on the bottom of the domain, while non-reflecting boundary conditions are used on the remaining sides [20].

From the initial condition, it is obvious that both the gas and water are in a stationary position at the beginning, but due to the pressure difference between the fluids, breaking of the bubble results in a circularly outward-going shock wave in water, an inward-going rarefaction wave in gas, and an interface lying in between that separates the gas and the water. Soon after, this shock wave is diffracted through the nearby air-water surface, causing the subsequent deform of the interface topology from a circle to oval-like shape.

The contours of the density and pressure are plotted in Figs. 5 and Figs. 6 at four different times \(T=0.2, 0.4, 0.8\) and 1.2 ms obtained by our method with a uniform \(640\times 400\) mesh. From the density and pressure plots, one can clearly see that the improvement on the use of the high order method to the sharpness near the interfaces. The cross-sections of the density and pressure for the same run along line \(x=0\) are shown in 7 and 8, which give some information about the differences between \(P^1\) and \(P^2\) elements at the selected times.

Example 7

To show our method works with complex Mie-Grüneisen EOS in two dimensions, we are concerned with interaction of a shock in molybdenum with a block of encapsulated mid-ocean ridge basalt (MORB) liquid [20, 30, 45]. The computational domain is set to be an unit square. A Mach 1.163 rightward-moving shock is located at \(x=0.3\) and to impact MORB contained in a rectangle of \([0.4,0.7]\times [0,0.5]\). Both materials are modeled by shock wave EOS (2.8). Reflecting boundary conditions are imposed on bottom and non-reflecting boundary conditions are used on the other three sides. For this problem, inside the region of the MORB liquid, we have the state variables

$$\begin{aligned} (\rho ,\mu ,\nu ,P)=(2260,0,0,0), \end{aligned}$$

and outside the MORB, the state variables in the preshock region are given by

$$\begin{aligned} (\rho ,\mu ,\nu ,P)=(9961,0,0,0), \end{aligned}$$

and the state variables in the postshock region are

$$\begin{aligned} (\rho ,\mu ,\nu ,P)=(11042,543,0,3\times 10^{10}). \end{aligned}$$

The contours of the density and pressure at two different selected times \(T=50\) and \(T=100 \;\mu s\) with a uniform \(400\times 400\) mesh are illustrated in Figs. 9 and 10. In the density plot, we can see the incident shock in molybdenum and transmitted shock in MORB with the former moving faster than the latter at \(T=50\; \mu s\). And the transmitted shock has not passed the MORB block completely at \(T=100\; \mu s\). In addition, the structure of diffraction of the shock by MORB is well captured in the pressure graphs. From the displayed figures, one is easy to observe that the improved resolution of the numerical solution near the interface when \(P^2\) elements is adopted in the test.

Example 8

Finally, we consider the three-component impact problem in two dimensions [45]. The computation domain is taken as \((x,y)\in (0,1)\times (0,1)\). Initially, a leftward going copper plate traveling vertically in a shock tube with speed 1500 m/s from right to left in region \(x\geqslant 0.6\), while in region \(x<0.6\), we have a solid inert explosive on the top and a liquid water on the bottom separated by the interface at \(y=0.5\). The solid inert explosive and liquid water are at rest and all three fluid components are in the usual atmospheric condition initially throughout the domain. The copper and explosive are modeled by the CC EOS (2.7) while the water is modeled by JWL EOS (2.6).

The numerical results are shown in Figs. 11, 12, 13 and 14. Clearly, we observe that the shock speed in explosive is larger than the one in water from the figures since the acoustic impedance of explosive is greater than the one for the water.

5 Conclusions

We have presented a high order quasi-conservative DG method for compressible multi-component flows with Mie-Grüneisen equation of state based on the 5-equation model in the previous sections. In this paper the NOK flux is used to compute the numerical flux, which is free from constructing Riemann solver. Then, a DG scheme is defined for the volume fraction equations according to the procedure of the quasi-conservative method, which can keep the velocity and pressure oscillation-free at the interface. In addition, a maximum-pricinple-satisfying limiter is employed to ensure that the volume fraction does not go out of the range. Numerical results in one and two dimensions shown in the paper demonstrate the ability of the method to capture shocks and material interfaces and be high order in smooth regions. In the future, we plan to further extend the method to the unstructured mesh. In order to reduce the numerical diffusion further, we will extend the quasi-Lagrangian moving DG method [29] to the 5-equation model of multi-component flows.