1 Introduction

Development of numerical methods for the solution of hyperbolic systems of conservation laws has been a very active field of research in the last decades. Several very effective schemes are nowadays treated in textbooks which became a classic on the topic [23, 34, 47]. Because of the hyperbolic nature, all such systems develop waves that propagate at finite speeds. If one wants to accurately compute all the waves in a hyperbolic system, then one has to resolve all the space and time scales that characterize it. Most schemes devoted to the numerical solution of such systems are obtained by explicit time discretization, and the time step has to satisfy a stability condition, known as CFL condition, which states that the time step should be limited by the space step divided by the fastest wave speed (times a constant of order 1). Usually such a restriction is not a problem: because of the hyperbolic nature of the system, if the order of accuracy is the same in space and time, accuracy restriction and stability restrictions are almost the same, and the system is not stiff. There are, however, cases in which some of the waves are not particularly relevant and one is not interested in resolving them. Let us consider, as a prototype model, the classical Euler equations of compressible gas dynamics. In the low Mach number regimes, it may happen that the acoustic waves carry a negligible amount of energy, and one is mainly interested in accurately capturing the motion of the fluid. In such a case the system becomes stiff: classical CFL condition on the time step is determined by the acoustic waves which have a negligible influence on the solution, but which deeply affect the efficiency of the method itself.

Another difficulty arising with standard Godunov-type schemes for low-Mach flows is that the amount of numerical viscosity on the slow waves introduced by upwind-type discretization of the system would heavily degrade the accuracy. An account of the latter effect is analyzed in [22], where the relevance of centering pressure gradients in the limit of small Mach number is emphasized.

In order to overcome the drawback of the stiffness, one has to resort to implicit strategies for time discretization, which avoid the acoustic CFL restriction and allow the use of a much larger time step. Naive implementation of implicit schemes for the solution of the Euler equations presents however two kinds of problems. First, classical upwind discretization (say Godunov methods based on exact or approximate Riemann solvers) are highly nonlinear and very difficult to solve implicitly. Second, the implicit version of classical schemes may introduce an excessive numerical dissipation on the slow wave, resulting in loss of accuracy. Investigation of the effect on fully implicit schemes (and preconditioning techniques adopted to cure the large numerical diffusion) are discussed for example in [49] and in [35], both inspired by an early work by Turkel [48]. In both cases, a modification to the absolute value of the Roe matrix is proposed as a suitable preconditioner that avoids excessive numerical diffusion of upwind-type discretization at very low Mach.

Several techniques have been devised to treat problems in the low Mach number regimes, that alleviate both drawbacks (see for example [32]). However, some of such techniques have been explicitly designed to treat low Mach number regimes, and are based on low Mach number asymptotics ([30, 31]). There are cases in which the Mach number can change of several orders of magnitude. The biggest challenges come from gas dynamics problems in astrophysics, where the range of scales of virtually all parameters vary over several orders of magnitude. An adaptive low Mach number scheme, based on a non conservative formulation, has been developed with the purpose of tackling complex gas dynamics problems in astrophysics (see [39] and references therein). When the Mach number is very low the flow does not develop shock discontinuities, and the conservation form of the schemes is not mandatory. When the Mach number is not small, then shock discontinuities may form. In such cases it is necessary to resort to conservative schemes (see for example [35] for other astrophysical applications).

Several other physical systems are affected by drastic changes of the sound speed. Such large variation may be due to geometrical effects, as for example in the case of the nozzle flow [3], or to heterogeneity of the media. Air–water systems, for example, are characterized by density ratio of three orders of magnitude, while the ratio of sound speeds is about five. Waves in heterogeneous solid materials may travel at very different speeds, depending on the local stiffness of the medium. The motivation for the construction of effective all Mach number solver is twofold: on one hand it is relevant to be able to accurate simulate waves in heterogeneous materials without small time step restriction suffered by explicit schemes, on the other hand such simulations can be adopted as a tool to validate homogenized models, which at a more macroscopic scale can be described as a homogeneous medium with different mechanical properties. For example, in air–water flows, for a range of values of the void fraction, the measured sound speed is lower than both water and air sound speed [19].

Motivated by the above arguments, several researchers have devoted a lot of effort to the development of all Mach number solvers for gas dynamics. An attempt in this direction is presented in [33], where the authors adopt a pressure stabilization technique to be able to go beyond the classical CFL restriction. The technique works well for moderate Mach number, but is not specifically designed to deal with very small Mach numbers.

In an impressive sequence of papers and conference proceedings, [13,14,15,16,17], F. Coquel and collaborators proposed a semi-implicit strategy, coupled with a multi resolution approach, for the numerical solution of hyperbolic systems of conservation laws with well separated wave propagation speeds. In particular, they considered application to fluid mixtures, in which the propagation speed of acoustic waves, often carrying a negligible amount of energy, is much larger than the speed of the material wave traveling at the fluid velocity. The basic framework is set in [17]. The method is first explained in the context of linear hyperbolic systems. The eigenvalues are sorted and it is assumed that there is a clear separation between slow and fast waves. The Jacobian matrix is split into a slow and fast component, using the characteristic decomposition. The flux at cell boundaries is consequently split into a slow and fast term. The fast term is treated implicitly, while the slow one is treated explicitly. The approach is then generalized to the quasilinear case, making use of Roe-type approximation of flux difference. This allows to construct a simple semi-implicit formulation by leaving the Roe matrix of the fast waves at the previous time step, while only the field is computed at the new time step, leading to a linearly implicit scheme. The effectiveness of the approach is further improved by adopting spatial multi resolution: given a multi scale expansion of the numerical solution, the finest scale is maintained locally only where needed, while coarser scales are adaptively adopted in smoother regions, with a great savings in computational time. Different schemes, still adopting implicit–explicit time differentiation to filter out fast waves, are considered in [13], where a sort of arbitrary Lagrangian–Eulerian scheme is constructed: a fractional time step strategy is composed by an implicit Lagrangian step, which filters out acoustic waves, and an explicit Eulerian step, which takes into account the contribution of slow waves. The main application is still on a model for the evolution of gas–oil mixture. In order to simplify the treatment of a general equation of state, a relaxation method is adopted (which of course satisfies the Chen–Levermore–Liu sub-charactertistic condition [12]). The problem of developing an adaptive (local) time step strategy is considered in the proceedings [15], and fully exploited in [16]. In [14], the authors further refine the technique, thus producing a positivity preserving, entropic semi-implicit scheme for Euler-like equations. The approach developed by Coquel and collaborators is certainly valuable, although it may be quite involved to be efficiently implemented for more complex, multidimensional situations.

A different approach has been adopted by Munz and collaborators, starting from the low Mach number asymptotic of Kleinerman and Majda [30, 31]. In [36], the authors develop a very effective semi-implicit method which can be viewed as a generalization of a compressible solver to weakly compressible flows. The method is based on the asymptotic behavior of the Euler equation for low Mach number. Two pressures are defined, a thermodynamic one, which is essentially constant in space, and a dynamic one, which accounts for fluid motion. The method is based on a discretization of the system written in primitive variables. The approach, designed for low Mach flow, cannot be directly used when compressive effects are more pronounced. In a subsequent paper [42], Park and Munz extend the method, still using the pressure as basic unknown in place of the energy, but now they adopt a conservative formulation, thus being able to capture shocks when the Mach number is not so small. Several space discretizations as well as time discretization strategies are discussed, which guarantee second order accuracy in space and time. In addition, the paper contains a nice overview of other works on low Mach number flow.

In [25] and in [21] the authors explore the construction of an all Mach-number finite volume scheme for the isentropic Euler and Navier–Stokes equations. In both cases, the approach consists in a sort of hyperbolic splitting, obtained by adding and subtracting a gradient-type term to the momentum equation. Such a term is an approximation of the pressure gradient, and is treated implicitly, while the (relatively small) difference with the physical pressure gradient is treated explicitly. The authors show the asymptotic preserving (AP) property of the schemes: when the Mach number approaches zero the schemes become a consistent and stable discretization of the incompressible Euler and Navier–Stokes equations. In a more recent paper, Cordier et al. [18] extend the technique to the full Euler and Navier–Stokes equations. In paper [20] a different approach has been adopted for the construction of asymptotic preserving schemes for gas dynamics. The authors perform a gauge decomposition of the momentum density into a solenoidal and an irrotational field. They show that this corresponds to a sort of micro–macro decomposition, in which the macroscopic variable describes the slow material wave, while the fast variable accounts for the fast acoustic waves. They apply their technique to isentropic and full Euler and Navier–Stokes, as well as to the isentropic Navier–Stokes–Poisson system.

A slightly different approach is adopted in [38], where the authors propose methods based on the flux splitting: the flux is split into two terms, one of which is treated explicitly and the other implicitly.

In a recent paper in preparation, [3] semi-implicit schemes are constructed. 1D compressible Euler equations, in which acoustic waves are treated implicitly by central discretization, while the material waves are treated by upwind scheme.

In the present paper we adopt a different strategy. We still treat acoustic waves implicitly and material waves explicitly, however space discretization is obtained by central scheme on staggered grids, thus avoiding the difficulty related to the choice of the exact or approximate Riemann solver to be used when computing the numerical flux corresponding to the explicit terms. This results in a very simple scheme that can be adopted for Euler equations in one and two space dimensions. Staggered discretization in space naturally provides second order accuracy, and allows a compact stencil in the discretization of the equation for pressure (or energy, according to which variable is chosen as primary unknown). Second order extension in time can be achieved by using globally stiffly accurate IMEX Runge–Kutta [7, 8, 11].

The plan of the paper is the following. After the introduction, we define the low Mach number scaling adopted in the paper, and its implications in the isotropic gas dynamics. The next sections are devoted to the construction of the schemes for isentropic gas dynamics in one and two space dimensions: Sect. 3 deals with first order scheme, while Sect. 4 deals with the extension to second order in time, obtained using globally stiffly accurate IMEX schemes. In Sect. 5 several numerical tests are presented, and compared with the results in the literature. In Sect. 6 we describe how to extend the schemes to full Euler equations, and in the next section we present numerical tests on a wide range of problems. In the last section we draw conclusions.

2 Low Mach Number Scaling

We consider the compressible Euler equation for an ideal gas:

$$\begin{aligned} \left\{ \begin{array}{ll} \rho _t + \nabla \cdot (\rho {\mathbf {u}} ) = 0\\ (\rho {\mathbf {u}} )_t + \nabla \cdot (\rho {\mathbf {u}} \otimes {\mathbf {u}} ) + {\nabla p}= 0\\ E_t + \nabla \cdot [(E + p){\mathbf {u}} ] = 0, \end{array}\right. \end{aligned}$$
(2.1)

where \(\rho \) is the mass density, \(\mathbf u \) the velocity of the fluid, E the total energy density per unit volume and p the pressure. System (2.1) is closed by the equation of state (EOS), \(e = e(\rho , p)\) with e the internal energy density per unit mass, related to total energy density by

$$\begin{aligned} E = \frac{1}{2}\rho u^2 + \rho e. \end{aligned}$$

For polytropic gas we have:

$$\begin{aligned} e = \frac{1}{\gamma -1}\frac{p}{\rho }, \end{aligned}$$

with \(\gamma = c_p/c_v > 1\) being the ratio of specific heats of the gas.

In order to describe the low Mach number limit, we rewrite the equation in non-dimensional form. Let us denote by: \(\rho _0, u_0, p_0,x_0, t_0\), typical reference dimensional quantities, with \(u_0 = x_0/t_0\). Non dimensional variables are denoted by a hat:

$$\begin{aligned} \hat{\rho } = \rho /\rho _0, \quad \hat{u} = u/u_0, \quad \hat{p} = p/p_0, \quad \hat{E} = E/p_0, \quad \hat{x} = x/x_0, \quad \hat{t} = t/t_0. \end{aligned}$$

Inserting these expressions into the equations (2.1) (and omitting the hat) one obtains the rescaled (non-dimensionalised) compressible Euler equations:

$$\begin{aligned} \left\{ \begin{array}{ll} \rho _t + \nabla \cdot (\rho {\mathbf {u}} ) = 0\\ (\rho {\mathbf {u}} )_t + \nabla \cdot (\rho {\mathbf {u}} \otimes {\mathbf {u}} ) + \frac{1}{{\varepsilon ^2}} {\nabla p}= 0\\ E_t + \nabla \cdot [(E + p){\mathbf {u}} ] = 0, \end{array}\right. \end{aligned}$$
(2.2)

with the equation of state (for a polytropic gas)

$$\begin{aligned} E = \frac{p}{\gamma -1} + \frac{\varepsilon ^2}{2}\rho |\mathbf u |^2 \end{aligned}$$

where the square of reference Mach number is \(\varepsilon ^2 = \rho _0 u_0^2/p_0\). Strictly speaking, the reference Mach number is \(M = \displaystyle \frac{u_0}{c_{s_0}} = u_0\sqrt{\frac{\rho _0}{\gamma p_0}} = \frac{\varepsilon }{\sqrt{\gamma }}\). This parameter \(\varepsilon \) represents a global Mach number characterizing the non dimensionalization (not the local Mach number). System (2.2) is hyperbolic and the eigenvalues in direction \(\mathbf n \) are: \(\lambda _1 = \mathbf u \cdot \mathbf n - c_s/\varepsilon \), \(\lambda _2 = \mathbf u \cdot \mathbf n \), \(\lambda _3 = \mathbf u \cdot \mathbf n + c_s/\varepsilon \) with \(\displaystyle c_s = \sqrt{\frac{\gamma p}{\rho }}\).

Throughout the paper, we denote by acoustic waves the perturbations traveling with speeds \(\lambda _1\) and \(\lambda _3\), and material waves the perturbations carried by the fluid, thus moving at speed \(\lambda _2\).

The aim of this work is to construct and analyze new numerical schemes for unsteady compressible flows when the Mach number \(\varepsilon \) spans several orders of magnitude.

Compressible flow equations converge to incompressible equations when the Mach number vanishes. This convergence has been rigorously studied mathematically by Klainerman and Majda [30, 31]. When the Mach number is of order one, modern shock capturing methods are able to compute the formation and evolution of shocks and other complex structures with high resolution at a reasonable cost.

On the other hand, when we are near the incompressible regime, and Mach number is very small, flows are slow compared with the speed of sound and in such a situation, acoustic waves become very fast compared to material waves. In several cases, acoustic waves possess very small energy and they are unimportant near the incompressible regime, then one is not interested in resolving them.

From a numerical point of view, when the Mach number is very small, standard explicit shock-capturing methods require a CFL time restriction dictated by the sound speed \(c_s/\varepsilon \) to integrate the system. This leads to the stiffness in time, [18, 21, 25], where the time discretization is constrained by a stability condition given by

$$\begin{aligned} \Delta t < \Delta x/\lambda _{ \max } \approx \mathcal {O}(\varepsilon \Delta x) \end{aligned}$$

for small \(\varepsilon \) where \(\Delta t\) is the time-step, \(\Delta x\) the space step and

$$\begin{aligned} \lambda _{\max } = \max _{\Omega } (|\mathbf u |+c_s/\varepsilon ). \end{aligned}$$

This restriction results in an increasingly large computational time for smaller and smaller \(\varepsilon \). The second drawback is due to the excessive numerical viscosity of standard upwind schemes, that scales as \(\varepsilon ^{-1}\), leading to highly inaccurate solutions. Thus, it is also crucial how the space derivatives are discretized in order to get stability and consistency for the scheme in the incompressible limit (asymptotic preserving property, denoted as AP).

Our goal in this paper is to develop a numerical scheme that works in all regimes of Mach number for the solution of system (2.2), including the incompressible limit.

The idea is to design a second order numerical scheme for compressible Euler, whose stability and accuracy are independent of \(\varepsilon \), and which is able to capture shocks and discontinuities in the compressible regime, for large \(\varepsilon \) and, at the same time, it is a good incompressible solver in the limit regime of vanishing \(\varepsilon \). This means that the scheme has to be asymptotic preserving [28, 29], i.e., it is a consistent discretization of the compressible Euler equations and in the limit as \(\varepsilon \rightarrow 0\), with \(\Delta x\) and \(\Delta t\) fixed, provides a consistent discretization of the incompressible Euler equations.

A key feature of the scheme is the implicit treatment of acoustic waves, while material waves are treated explicitly. Implicit–explicit Euler provides a first order scheme for the Euler equations which filters out the acoustic waves.

For the space discretization, we adopt central schemes on staggered grid similar to the one used by Nessyahu and Tadmor [37] in one space dimension and by Jiang and Tadmor in two space dimensions [27], which provided explicit, second order accurate in space and time, shock capturing schemes.

The generalization of NT and JT schemes to higher order in time was given by the Central Runge–Kutta methods [40] for explicit time discretization. Here we adopt this approach, coupled with semi-implicit IMEX R–K [6], in order to obtain high order accuracy in time, while keeping an implicit treatment of acoustic waves.

The choice of central schemes appears natural because it simplifies flux computation, avoids the introduction of excessive numerical diffusion of upwind discretization, and provides the natural central discretization for the implicit terms.

2.1 Isentropic Euler Equations

For sake of clarity, we start considering the isentropic gas dynamics case and successively we extend the results to the case of the full Euler system.

The isentropic Euler equations in d-dimensions, \(x \in \Omega \subset {\mathbb {R}}^d\), \(t \ge 0\), are given by:

$$\begin{aligned} \left\{ \begin{array}{llr} \rho _t + \nabla \cdot (\rho \mathbf u ) = 0 \\ (\rho \mathbf u )_t + \nabla \cdot (\rho \mathbf u \otimes \mathbf u ) + \nabla {p(\rho )}/{\varepsilon ^2} = 0, \end{array} \right. \end{aligned}$$
(2.3)

where \(\rho \) is the fluid density, \({\mathbf{u}}\) is its velocity, and p the pressure. Here we consider a polytropic gas, for which the equation of state take the form: \(p(\rho ) = C \rho ^{\gamma }\) where C(s) depends on the entropy (which is assumed to be constant) and \(\gamma \) is the polytropic constant. Here \(\varepsilon \) is the dimensionless reference Mach number. As boundary conditions we set \(\mathbf u \cdot n = 0\) on \(\partial \Omega \), or assume \(\Omega \) is \({\mathbb {T}}^d\), i.e. periodic boundary conditions.

Now we recall the classical formal derivation of the incompressible Euler equations from the isentropic compressible Euler system (2.3). We consider an asymptotic expansion ansatz for the following variables:

$$\begin{aligned} \begin{array}{l} \rho (x,t) = \rho _0(x,t) + \varepsilon ^2\rho _2(x,t) + \cdots ,\\ p(x,t) = p_0(x,t) + \varepsilon ^2p_2(x,t) + \cdots ,\\ \mathbf u (x,t) = \mathbf u _0(x,t) + \varepsilon ^2\mathbf u _2(x,t) + \cdots , \end{array} \end{aligned}$$
(2.4)

we skip the \(\mathcal {O}(\varepsilon )\) term because it does not appear in the system equations (2.3). Inserting (2.4) in (2.3), to \(\mathcal {O}(\varepsilon ^{-2})\) one gets, in the momentum conservation equation (2.3):

$$\begin{aligned} \nabla p_0 = 0. \end{aligned}$$

Therefore, \(p_0(x,t) = p_0(t)\), and by \(p=p(\rho )\), we have \(\rho _0 = \rho _0(t)\), i.e., to lower order in \(\varepsilon \), density and pressure are constant in space.

Next, by taking the \(\mathcal {O}(\varepsilon ^0)\) terms, we have

$$\begin{aligned}&\partial _t \rho _0 + \nabla \cdot (\rho _0 \mathbf u _0) = 0 \nonumber \\&\partial _t (\rho _0 \mathbf u _0) + \nabla \cdot (\rho _0 \mathbf u _0 \otimes \mathbf u _0) + \nabla p_2 = 0. \end{aligned}$$
(2.5)

where \(p_2 = \lim _{\varepsilon \rightarrow 0} \varepsilon ^{-2} (p(\rho ) - p_0)\). Now, the incompressibility is forced by using the boundary conditions to solve system (2.3) on the domain \(\Omega \) with \(\mathbf u \cdot \mathbf{n} = 0\) on \(S = \partial \Omega \) or periodic boundary conditions. Because \(\rho _0 = \rho _0(t)\) for (2.5) one has:

$$\begin{aligned} \nabla \cdot { \mathbf{u }}_0 = -\frac{1}{\rho _0}\frac{d \rho _0}{dt}.\end{aligned}$$

Integrating in \(\Omega \) one has:

$$\begin{aligned} - |\Omega |\frac{1}{\rho _0}\frac{d \rho _0}{\ dt} = \int _{\Omega } \nabla \cdot { \mathbf{u }}_0 \ d\Omega = \int _{\partial \Omega } { \mathbf{u }}_0 \cdot \mathbf{n}\ dS = 0, \end{aligned}$$
(2.6)

because of the boundary conditions, therefore \(\rho _0 =\) Const. (see [18, 25] for more details).

This means that the density satisfies the expansion:

$$\begin{aligned} \rho (x,t) = \rho _0 + \varepsilon ^2\rho _2(x,t) + \cdots , \end{aligned}$$

where \(\rho _0\) is a constant of order 1, and then one obtaines \(\nabla \cdot {\mathbf {u}}_0 = 0\).

We assume that the initial condition for the problem is well-prepared which means that the initial condition for (2.4) is compatible with the equations at the various order in \(\varepsilon \). Well-prepared initial conditions are clearly explained in [9] or in the classical book by Hairer and Wanner ( [26], Chap.VI) In our case well prepared initial conditions are obtained by imposing

$$\begin{aligned} \begin{array}{l} \rho (x,0) = \rho _0 + \varepsilon ^2\rho _2(x) \\ \mathbf u (x,0) =\mathbf u _0(x) \\ \end{array} \end{aligned}$$
(2.7)

with \(\rho _0\) constant and \(\nabla \cdot \mathbf u _0 = 0\). Compatibility with the equations at order zero in \(\varepsilon \) is given by:

$$\begin{aligned}&\rho _0 = \text {Const.}, \nonumber \\&\nabla \cdot \mathbf u _0 = 0, \nonumber \\&\partial _t \mathbf u _0 + \left( \mathbf u _0 \cdot \nabla \right) \mathbf u _0 + \frac{\nabla p_2}{\rho _0} = 0. \end{aligned}$$
(2.8)

We note that, in the low-Mach number model, \(p_2\) is the Lagrange multiplier needed to impose the divergence-free constraint: \(\nabla \cdot \mathbf u = 0\).

Then, taking the divergence of the last equation in (2.8) and using the incompressibility, one obtainsFootnote 1

$$\begin{aligned} -\nabla ^2 p_2 = \nabla \cdot (\rho _0 \mathbf u _0 \cdot \nabla \mathbf u _0) = \nabla ^2:(\rho _0 \mathbf u _0 \otimes \mathbf u _0). \end{aligned}$$
(2.9)

Well-prepared initial conditions are required if we want that the solution to the \(\varepsilon \)-dependent problem smoothly converges to the solution of the limit incompressible problem. For arbitrary initial condition, an initial layer will appear, and there will be no strong convergence to the solution. In practice this corresponds to introducing faster and faster acoustic waves in the initial data as \(\varepsilon \) approaches zero.

Next we propose a numerical scheme that is applicable for all ranges of the Mach number.

3 Numerical Schemes

In this section we design a numerical scheme for compressible Euler that is able to capture the incompressible Euler limit as \(\varepsilon \rightarrow 0\), i.e. an asymptotic preserving (AP) scheme. Furthermore such a scheme is conservative and shock capturing for all \(\varepsilon \) and has to satisfy a CFL condition which is independent of \(\varepsilon \).

The features of our scheme are the following: for the spatial discretization, we use a second-order, non-oscillatory central scheme on a staggered grid in order to simplify the computation of the numerical flux, similar to the ones adopted in [27, 37, 40]. For time integration we start by describing a first order implicit–explicit Euler scheme, while a semi-implicit approach based on IMEX Runge-Kutta methods ( [4,5,6,7]) will be presented in Sect. 4 for higher order generalization.

3.1 Isentropic Gas Dynamics: First Order Method

1D Model. For simplicity, we consider the domain \(\Omega =[0,1]\), with periodic boundary conditions. Here \(\rho \), u and m denote the density, velocity and momentum in one dimension. Then (2.3) becomes

$$\begin{aligned} \begin{array}{l} \displaystyle \rho _t + m_x = 0,\\ \displaystyle m_t + \left( \frac{m^2}{\rho }+\frac{p}{\varepsilon ^2}\right) _x = 0. \end{array} \end{aligned}$$
(3.1)

The system is closed by \(p = \rho ^\gamma \). We discretize space in a way similar to the NT central scheme [37], i.e., we make use of a staggered grid with a uniform spatial mesh \(\Delta x=1/N\), where N is an positive integer and at even time we have N cells of size \(\Delta x\), with cell j centered at \(x_j = (j-1/2) \Delta x\), \(j=1,\ldots ,N\). We discretize time by the first order implicit–explicit Euler given by Eq. (5.1): stiff terms will be evaluated at time \(t^{n+1}\), while non-stiff terms will be evaluated at time \(t^n\).

Fig. 1
figure 1

Staggered grid form \(t^n\) to \(t^{n+1}\)

Integrating the equation on a staggered grid, from time \(t^n = n\Delta t\) to \(t^{n+1}\), \(n = 0,1. \ldots \), (see Fig. 1) we obtain the first order semi-implicit scheme:

$$\begin{aligned} \begin{array}{l} \displaystyle \bar{\rho }_{j+1/2}^{n+1} = \bar{\rho }_{j+1/2}^n - \frac{\Delta t}{\Delta x}\left( m^{n+1}_{j+1}-m^{n+1}_j\right) \\ \displaystyle \bar{m}_{j+1/2}^{n+1} = \bar{m}_{j+1/2}^n - \frac{\Delta t}{\Delta x} \left( f^n_{j+1}-f_j^n\right) - \frac{\Delta t}{\varepsilon ^2\Delta x}\left( p^{n+1}_{j+1}-p^{n+1}_j\right) \end{array} \end{aligned}$$
(3.2)

where \(f_j^n = (\bar{m}^n_j)^2/\bar{\rho }_j^n\). We note that second order in space is obtained by the standard reconstruction adopted in Nessyahu–Tadmor scheme (see [37] for details), e.g.

$$\begin{aligned} \displaystyle \bar{\rho }_{j+1/2}= \frac{\bar{\rho }_{j+1}+\bar{\rho }_j}{2}+\frac{1}{8} (\hat{D}_x\rho _j-\hat{D}_x\rho _{j+1}), \end{aligned}$$

with \( \hat{D}_x \rho _j/\Delta x\) a first order approximation of the first derivative on cell j, for example,

$$\begin{aligned} \displaystyle \hat{D}_x \rho _j = \text{ MM }\left( {\rho _{j}-\rho _{j-1}},\rho _{j+1}-\rho _{j}\right) \end{aligned}$$

or

$$\begin{aligned} \displaystyle \hat{D}_x \rho _j =\text{ MM }\left( \theta ({\rho _j-\rho _{j-1}}),\frac{\rho _{j+1}-\rho _{j-1}}{2},\theta ({\rho _{j+1}-\rho _j})\right) \end{aligned}$$
(3.3)

where MM denotes the classical minimod function and \(\theta \in [1,2]\).

The flux term appearing in the first equation of (3.2), computed at cell center, is defined as:

$$\begin{aligned} \displaystyle m_j^{n+1} = m^*_j - \frac{\Delta t}{\varepsilon ^2\Delta x} D_x p^{n+1}_j \end{aligned}$$
(3.4)

where \(\displaystyle m^*_j = m_j^n - \frac{\Delta t}{\Delta x} \hat{D}_x f^n_j\), and \(D_x\) denotes central difference on the cell: \(\displaystyle D_x p^{n+1}_j = (p^{n+1}_{j+\frac{1}{2}}-p^{n+1}_{j-\frac{1}{2}})\). Using such equation, and substituting it into the density equation for \(\bar{\rho }_{j+1/2}^{n+1}\) one gets an equation of the form:

$$\begin{aligned} \bar{\rho }_{j+1/2}^{n+1} - \frac{\Delta t^2}{\varepsilon ^2\Delta x^2} D^2_x p^{n+1}_{j+1/2} = \rho ^{*}_{j+1/2} \end{aligned}$$
(3.5)

where \(\displaystyle D^2_x h_j = h_{j+1} - 2h_j + h_{j-1}\), \(\displaystyle \forall h_j\), is the usual three point discrete Laplacian and

$$\begin{aligned} \displaystyle \rho ^*_{j+1/2}= \bar{\rho }_{j+1/2}^{n} - \frac{\Delta t}{\Delta x} \left( m^{*}_{j+1} -m^{*}_{j}\right) \end{aligned}$$

denotes quantities that can be computed explicitly (in a conservative way). When we use the (second order) approximation \(p^{n+1}_{j + 1/2} = p(\bar{\rho }^{n+1}_{j+1/2})\), (3.5) becomes a non linear equation for the new density on the staggered mesh.

One possible way to simplify the solution of the system is to use p as unknown and considering \(\rho = \rho (p)\), then we get

$$\begin{aligned} \displaystyle \left( p^{n+1}_{j+1/2} \right) ^{1/\gamma } = \rho ^{*}_{j+1/2} - \frac{\Delta t^2}{\varepsilon ^2 \Delta x^2} D^2_x p^{n+1}_{j+1/2}. \end{aligned}$$
(3.6)

In this case the nonlinearity is in the diagonal of the system, and the linear equation for each time step for the unknown \(p^{n+1}_{j+1/2}\) can be solved by few iterations of Newton’s method.

On the other hand, if we approximate the Laplace operator \((p^{n+1})_{xx}\) in (3.5) by

$$\begin{aligned} (p( \rho ^{n+1} ))_{xx} \approx \left( p'(\rho ^{n}) \rho ^{n+1}_x\right) _x, \end{aligned}$$

this results in a semi-implicit approach which requires the solution of a linear system in (3.5).

Remark

We observe that the use of a staggered grid allows a compact discrete Laplacian in the implicit equation (3.5) for the new density ((3.6) for the pressure). This property is important, and it is one of the main reasons why many solvers for incompressible Euler and Navier–Stokes equations in primitive variables are discretized on a staggered grid (see for example [43], Sect. 6.3).

2D Model. Now, we consider the domain \(\Omega =[0,1] \times [0,1]\) with periodic boundary conditions. The Euler equations for isentropic gas dynamics are given by

$$\begin{aligned} \begin{array}{l} \displaystyle \rho _t + \nabla \cdot \mathbf m = 0,\\ \displaystyle \frac{\partial {{\mathop {m}\limits ^{1}}}}{\partial t} + \nabla \cdot \left( \frac{{{\mathop {m}\limits ^{1}}} \mathbf m }{\rho }\right) + \frac{\partial _x p}{\varepsilon ^2} = 0,\\ \displaystyle \frac{\partial {{\mathop {m}\limits ^{2}}}}{\partial t} + \nabla \cdot \left( \frac{{{\mathop {m}\limits ^{2}}} \mathbf m }{\rho }\right) + \frac{\partial _y p}{\varepsilon ^2} = 0, \end{array} \end{aligned}$$
(3.7)

where \(\mathbf m = ({{\mathop {m}\limits ^{1}}},{{\mathop {m}\limits ^{2}}})^T\). The system is closed by \(p =C \rho ^\gamma \). We choose \(C = 1\).

First of all we discretize (3.7) in time by an explicit–implicit Euler scheme:

$$\begin{aligned} \begin{array}{l} \displaystyle \rho ^{n+1} = \rho ^{n} - \Delta t \nabla \cdot \mathbf m ^{n+1},\\ \displaystyle {{\mathop {m}\limits ^{1}}}^{n+1} =\ {{\mathop {m}\limits ^{1}}}^{n} -\Delta t\nabla \cdot \left( \frac{{{\mathop {m}\limits ^{1}}}^n \mathbf m ^n}{\rho ^n}\right) - \Delta t\frac{\partial _x p^{n+1}}{\varepsilon ^2}, \\ \displaystyle {{\mathop {m}\limits ^{2}}}^{n+1} = {{\mathop {m}\limits ^{2}}}^{n} - \Delta t\nabla \cdot \left( \frac{{{\mathop {m}\limits ^{2}}}^n \mathbf m ^n}{\rho ^n}\right) - \Delta t\frac{\partial _y p^{n+1}}{\varepsilon ^2}. \end{array} \end{aligned}$$
(3.8)

Let

$$\begin{aligned} {{\mathop {m}\limits ^{k}}}^* =\ {{\mathop {m}\limits ^{k}}}^{n} -\Delta t\nabla \cdot \left( \frac{{{\mathop {m}\limits ^{k}}}^n \mathbf m ^n}{\rho ^n}\right) , \quad k = 1,2, \end{aligned}$$
(3.9)

be the explicit part of the second and third equation in (3.8). Then (3.8) becomes

$$\begin{aligned} \begin{array}{l} \displaystyle \rho ^{n+1} = \rho ^{n} - \Delta t \nabla \cdot \mathbf m ^{n+1},\\ \displaystyle {{\mathop {m}\limits ^{1}}}^{n+1} = {{\mathop {m}\limits ^{1}}}^{*} - \Delta t\frac{\partial _x p^{n+1}}{\varepsilon ^2}, \\ \displaystyle {{\mathop {m}\limits ^{2}}}^{n+1} =\ {{\mathop {m}\limits ^{2}}}^{*} - \Delta t\frac{\partial _y p^{n+1}}{\varepsilon ^2}. \end{array} \end{aligned}$$
(3.10)

Inserting the expression \(\mathbf m ^{n+1}\) into the first equation for \(\rho \) in (3.8), we obtain

$$\begin{aligned} \rho ^{n+1} = \rho ^* + \frac{\Delta t^2}{\varepsilon ^2}\nabla ^2 p^{n+1}, \end{aligned}$$
(3.11)

where

$$\begin{aligned} \rho ^* = \rho ^n - \Delta t \nabla \cdot \mathbf m ^{*}. \end{aligned}$$
(3.12)
Fig. 2
figure 2

Control volume: \(C_{i+1/2,j+1/2}\)

Now we discretize space in a way similar to the JT central scheme [27], i.e. we make use of a staggered grid with a uniform spatial mesh with \(\Delta x=1/N\), \(\Delta y = 1/N\), with N a positive integer, the grid points defined as \(x_i = i \Delta x\), \(i=0,1,\ldots ,N\), and \(y_j = j\Delta y\), \(j=0,1,\ldots ,N\). In the JT central scheme based on a staggered grid, system (3.7) is integrated on the staggered control volume: \(C_{i+\frac{1}{2},j+\frac{1}{2}} \times [t^n, t^{n+1})\) with \(C_{i+\frac{1}{2},j+\frac{1}{2}} := I_{i + \frac{1}{2}} \times J_{j + \frac{1}{2}}\) centered around \((x_{i+\frac{1}{2}}, y_{j+\frac{1}{2}})\), with \(I_{i + \frac{1}{2}} = [x_i, x_{i+1}]\) and \(J_{j + \frac{1}{2}} = [y_j, y_{j+1}]\) (see Fig. 2).

We assume we know cell averages \(\bar{\rho }^n_{ij}\), \(\bar{\mathbf{m }}^n_{ij}\) on the initial grid at even n, and we want to compute the field variables \(\bar{\rho }_{i+1/2,j+1/2}^{n+1}\), \(\bar{\mathbf{m }}_{i+1/2,j+1/2}^{n+1}\) on the staggered grid.

Let us define the following operators:

  • discrete divergence \(\mathcal {D}\):

    $$\begin{aligned}&\mathcal {D} \mathbf m _{i+1/2, j+1/2} \nonumber \\&\quad = \frac{{{\mathop {m}\limits ^{1}}}_{i+1,j} - {{\mathop {m}\limits ^{1}}}_{i,j}}{2\Delta x} + \frac{{{\mathop {m}\limits ^{1}}}_{i+1,j+1} - {{\mathop {m}\limits ^{1}}}_{i,j+1}}{2\Delta x} + \frac{{{\mathop {m}\limits ^{2}}}_{i,j+1} - {{\mathop {m}\limits ^{2}}}_{i,j}}{2\Delta y} + \frac{{{\mathop {m}\limits ^{2}}}_{i+1,j+1} - {{\mathop {m}\limits ^{2}}}_{i+1,j}}{2\Delta y}, \end{aligned}$$
  • discrete Lapacian \(\mathcal {L}\):

    $$\begin{aligned} \mathcal {L}p_{ij} =\left( p_{i+1,j} - 2p_{i,j} + p_{i-1,j}\right) /\Delta x^2 + \left( p_{i,j+1} - 2p_{i,j} + p_{i,j-1}\right) /\Delta y^2. \end{aligned}$$

The scheme works as follows.

  1. 1.

    Compute \(\mathbf m ^{*}\) on the staggered grid discretizing Eq. (3.9):

    $$\begin{aligned} {{\mathop {m}\limits ^{k}}}^{*}_{i+1/2,j+1/2} = {{\mathop {\bar{m}}\limits ^{k}}}^{n}_{i+1/2, j+1/2} - \Delta t \mathcal {D}\left( \frac{ {{\mathop {\bar{m}}\limits ^{k}}}^{n} \bar{\mathbf{m }}^{n}}{\bar{\rho }^n}\right) _{i+1/2,j+1/2}, \quad k=1,2. \end{aligned}$$
    (3.13)
  2. 2.

    Evaluate \(\bar{\rho }_{i+{1}/{2},j+{1}/{2}}^{n+1}\) on the staggered grid discretizing the first equation in (3.7)

    $$\begin{aligned} \bar{\rho }_{i+{1}/{2},j+{1}/{2}}^{n+1} = \bar{\rho }^{n}_{i+\frac{1}{2},j+\frac{1}{2}} - \Delta t \mathcal {D}\left( \bar{\mathbf{m }}^{n+1}_{i+1/2,j+1/2}\right) , \end{aligned}$$
    (3.14)

    compute \(\rho ^{*}\) (3.12) by:

    $$\begin{aligned} {\rho }^{*}_{i+1/2,j+1/2} = \bar{\rho }^{n}_{i+1/2, j+1/2} - \Delta t \mathcal {D}\left( \bar{\mathbf{m }}^{*}_{i+1/2,j+1/2}\right) . \end{aligned}$$
    (3.15)

    where the staggered cell average density is computed as [27],

    $$\begin{aligned} \begin{array}{rclll} \bar{\rho }_{i+{1}/{2},j+{1}/{2}}&{} = &{} \frac{1}{4}\left( \bar{\rho }_{i,j}+\bar{\rho }_{i+1,j}+\bar{\rho }_{i,j+1}+\bar{\rho }_{i+1,j+1}\right) \\ &{}&{}+\,\frac{1}{16}\left( \rho '_{i,j}-\rho '_{i+1,j}+\rho '_{i,j+1}-\rho '_{i+1,j+1}\right) \Delta x\\ &{}&{}+\,\frac{1}{16}\left( \rho ^\backprime _{i,j}-\rho ^\backprime _{i,j+1}+\rho ^\backprime _{i+1,j}-\rho ^\backprime _{i+1,j+1}\right) \Delta y\end{array} \end{aligned}$$

    whith \(\rho '_{i,j}\) and \(\rho ^\backprime _{i,j}\) a first order approximation of the first derivatives on cell (ij) (in this paper we use minmod in most cases).

  3. 3.

    Solve the main linear elliptic equation (3.11):

    $$\begin{aligned} \bar{\rho }_{i+{1}/{2},j+{1}/{2}}^{n+1} = \bar{\rho }^{*}_{i+1/2,j+1/2} + \frac{\Delta t^2}{\varepsilon ^2}\mathcal {L} p^{n+1}_{i+1/2, j+1/2}. \end{aligned}$$
    (3.16)
  4. 4.

    Compute \(\bar{\mathbf{m }}^{n+1}\):

    $$\begin{aligned} {{\mathop {\bar{m}}\limits ^{k}}}^{n+1}_{i+1/2,j+1/2} = {{\mathop {\bar{m}}\limits ^{k}}}^{*}_{i+1/2, j+1/2} - \frac{\Delta t}{\varepsilon ^2}{D_k} p^{n+1}_{i+1/2,j+1/2}, \quad k=1,2. \end{aligned}$$

    where \(D_k\) is the classical central difference approximation of the space derivativeFootnote 2 in the k-th direction

    $$\begin{aligned} \displaystyle D_1 h_{ij} = \frac{h_{i+1,j}-h_{i-1,j}}{2\Delta x}, \quad D_2 h_{ij} = \frac{h_{i,j+1}-h_{i,j-1}}{2\Delta y}. \end{aligned}$$

Note that when we use the relation \(p^{n+1}_{i+1/2,j+1/2}=p(\bar{\rho }^{n+1}_{i+1/2,j+1/2})\), (3.16) becomes a non linear equation for the new density in the staggered mesh, but if one takes p as unknown and considers \(\rho = \rho (p)\) then one solves a non linear system by a Newton’s method where the nonlinearity is in the diagonal of the system as in the 1D case. However, linearizing the operator \(\nabla ^2 p^{n+1}\) as \(\nabla \cdot (p'(\rho ^n) \nabla \rho ^{n+1})\) implies again to solve a linear system in (3.16) for the new density on the staggered mesh.

Remark

Notice that for even n the discrete operators of quantities at time \(t^n\) act on discrete field values with integer indices, while at time \(t^{n+1}\), they act on field values with half-odd integers, thus maintaining the operator compact. A similar procedure is adopted when going from n odd to \(n+1\), thus obtaining discrete field variables again on the original mesh.

3.2 Asymptotic Preserving (AP) Property

In order to show the AP property of our scheme we should demonstrate that such a scheme in the low Mach number limit, i.e. as \(\varepsilon \rightarrow 0\), provides a consistent discretization of the incompressible Euler equation (2.8) with spatial and temporal steps fixed.

For this analysis, by (2.7), we consider the following well-prepared initial conditions:

$$\begin{aligned} \begin{array}{l} \rho ^n_{ij} = \rho ^n_{0,ij} + \varepsilon ^2\rho ^n_{2,ij} + \cdots ,\\ m^n_{ij} = (\rho u)^n_{ij} = (\rho u)^n_{0,ij} + \varepsilon ^2(\rho u)^n_{2,ij} + \cdots , \end{array} \end{aligned}$$
(3.17)

and assume periodic boundary condition. This assumption is natural, since we are interested in capturing the incompressible limit. Note that if the initial condition is not well-prepared, then an initial layer, containing acoustic waves, will appear. In practice, for very small values of \(\varepsilon \), the numerical method will filter out the acoustic waves, and will therefore project the system into the incompressible manifold in a short time, resulting in a possible degradation of the accuracy of the method. The analysis of such a accuracy degradation is beyond the scope of the present paper.

By substituting this ansatz (3.17) into the scheme (3.13)–(3.15)–(3.16), to the lowest order in \(\varepsilon \) we get

$$\begin{aligned} \mathcal {L}p^{n+1}_{0,i+1/2,j+1/2} = 0. \end{aligned}$$

This implies that \(p_0^{n+1}\) is constant in space since its discrete Laplacian with periodic boundary condition is zero. Then by the fact that \(p(\rho ) = \rho ^{\gamma }\), one gets space independence for the leading order density, i.e., \(\rho _{0,ij}^{n+1} = \rho ^{n+1}_{0}\) for all ij, then it is constant in space. The \(\mathcal {O}(1)\) equation for the density, from (3.14), is given by:

$$\begin{aligned} \bar{\rho }^{n+1}_{0, i+1/2, j+1/2} = \bar{\rho }^{n}_{0,i+1/2, j+1/2} - \Delta t \mathcal {D}\left( \bar{\mathbf{m }}^{n+1}_{0,i+1/2,j+1/2}\right) . \end{aligned}$$
(3.18)

By summing over i and j, and using periodic boundary conditions, we get

$$\begin{aligned} \bar{\rho }^{n+1}_{0} = \bar{\rho }^n_{0}. \end{aligned}$$
(3.19)

Therefore \(\bar{\rho }^n_{0}\) is constant also in time.

Now, using this result in Eq (3.18), the density terms cancel out and we get

$$\begin{aligned} \mathcal {D}\left( \bar{\mathbf{m }}^{n+1}_{0, i+1/2,j+1/2}\right) = 0, \end{aligned}$$

with \(\bar{\mathbf{m }} = \rho {\mathbf{u }}\). Then, we obtain the discrete incompressibility condition for the velocity vector, i.e.,

$$\begin{aligned} \mathcal {D}{} \mathbf u ^{n+1}_{0, i+1/2,j+1/2} = 0. \end{aligned}$$
(3.20)

Now we derive an equation for the pressure term \(p_{2,ij}\). Then, considering the \(\mathcal {O}(1)\) terms in the linear elliptic equation (3.16):

$$\begin{aligned} \bar{\rho }^{n+1}_{0,i+1/2,j+1/2} = \rho ^{*}_{{0},i+1/2,j+1/2} + \Delta t^2 \mathcal {L}p^{n+1}_{2,i+1/2,j+1/2} \end{aligned}$$
(3.21)

By inserting (3.13) in (3.15), after some algebraic manipulations, we get

$$\begin{aligned} -\mathcal {L} p^{n+1}_{{2},i+1/2,j+1/2} = \mathcal {D}\left( \mathcal {D}(\rho _{0} \mathbf u _{0} \otimes \mathbf u _{0})_{i+1/2,j+1/2}\right) _{i+1/2,j+1/2}. \end{aligned}$$
(3.22)

Note that (3.22) is the discretization of the Eq. (2.9).

Finally, by knowing that \(\bar{\rho }^n_{0}\) is independent of the time, the \(\mathcal {O}(1)\) term of the momentum equation becomes:

$$\begin{aligned}&\displaystyle {\bar{\rho }_{0}} \left( \frac{\bar{\mathbf{u }}^{n+1}_{0,i+\frac{1}{2},j+\frac{1}{2}} - \bar{\mathbf{u }}^{n}_{0,i+\frac{1}{2},j+\frac{1}{2}}}{\Delta t}\right) \nonumber \\&\quad = - \mathcal {D}\left( \bar{\rho }_{0} \mathbf u _{0} \otimes \mathbf u _{0}\right) _{i+1/2,j+1/2} - \mathcal {G} p^{n+1}_{2,i+1/2,j+1/2}. \end{aligned}$$
(3.23)

where \(\mathcal {G} = (D_x, D_y)\) denotes the discrete central gradient. Thus, (3.19)–(3.20) and (3.23) represent a discretization of the incompressible Euler equation (2.8). Therefore, the two-dimensional scheme is AP.

4 Extension to Second Order

In this section we present a second order scheme for the isentropic Euler equations.

The approach will be a combination of central Runge–Kutta methods for conservation laws (CRK, [40]) and semi-implicit IMEX schemes developed in [6]. In some recent papers [4,5,6,7] a very effective semi-implicit technique has been introduced for the numerical solution of systems of quasilinear hyperbolic equations. The method is based on implicit–explicit Runge–Kutta methods (IMEX R–K) and the proposed schemes are stable, linearly implicit, and can be designed up to any order of accuracy.

IMEX RK schemes can be represented by a double Butcher tableau given by:

$$\begin{aligned} \begin{array}{c|c} \tilde{c} &{} \tilde{A}\\ \hline \\ &{} \ \ \tilde{b}^T \end{array},\quad \begin{array}{c|c} {c} &{} {A}\\ \hline \\ &{} \ \ {b^T} \end{array}. \end{aligned}$$

where the \(s \times s\) low triangular matrices \(\tilde{A} = (\tilde{a}_{ij})\) (\(\tilde{a}_{ij} = 0\) for all \(j\ge i\)), and \(A= ({a}_{ij})\) (\(a_{ij} = 0\) for all \(j > i\)) are the matrices of the explicit and implicit parts of the scheme, respectively, while the vectors \(\tilde{b} = (\tilde{b}_1, \ldots , \tilde{b}_s)\), \(b = ({b}_1, \ldots , {b}_s) \), \(\tilde{c} = (\tilde{c}_1, \ldots , \tilde{c}_s)\), and \(c = ({c}_1, \ldots , {c}_s)\), are s-dimensional vectors or real coefficients, which \(\tilde{c}\) and c given by the usual relations

$$\begin{aligned} \tilde{c}_i = \sum _{i = 1}^{i-1} \tilde{a}_{ij}, \quad {c}_i = \sum _{i = 1}^{i} {a}_{ij}, \quad i = 1, \ldots , s. \end{aligned}$$

Before applying the technique developed in [6], we write system (3.7) in the form of an autonomous system

$$\begin{aligned} \frac{d \mathbf U }{d t} = \mathcal {H}(\mathbf U ,\mathbf U ). \end{aligned}$$
(4.1)

where \(\mathcal {H}: {\mathbb {R}}^m \times {\mathbb {R}}^m \rightarrow {\mathbb {R}}^m\) is a sufficiently regular mapping.

We assume that the dependence on the first argument of \(\mathcal {H}\) is non-stiff, while the second argument is stiff [6]. We further emphasize such dependence by using an asterisk to denote explicit variables: \( \mathcal {H} = \mathcal {H}(\mathbf U ^*,\mathbf U ).\)

Furthermore, in order to reduce the computational cost and to guarantee the explicit computation of the terms which are supposed to be explicit, for the implicit part we adopt diagonally implicit Runge–Kutta schemes (DIRK) [26].

In one space dimension, one has \(\mathbf U = (\rho , m)^T\), and \(\mathcal {H}(\mathbf U ^*, \mathbf U )\) is:

$$\begin{aligned} \mathcal {H}(\mathbf U ^*,\mathbf U ) = \left( \begin{array}{c} \displaystyle - {m}_x \\ \displaystyle - \left( \frac{m^2}{\rho }\right) ^*_x - \frac{p(\rho )_x}{\varepsilon ^2} \\ \end{array} \right) . \end{aligned}$$
(4.2)

while in 2D one has \(\mathbf U = (\rho , \mathbf m )^T\), wtih \(\mathbf m = ({{\mathop {m}\limits ^{1}}},{{\mathop {m}\limits ^{2}}})\) and in this case the function \(\mathcal {H}(\mathbf U ^*, \mathbf U )\) is:

$$\begin{aligned} \mathcal {H}(\mathbf U ^*,\mathbf U ) = \left( \begin{array}{c} \displaystyle - \nabla \cdot \mathbf m \\ \displaystyle - \nabla \cdot \left( \frac{{{\mathop {m}\limits ^{1}}} \mathbf m }{\rho }\right) ^*- \frac{\partial _x p(\rho )}{\varepsilon ^2} \\ \displaystyle - \nabla \cdot \left( \frac{{{\mathop {m}\limits ^{2}}} \mathbf m }{\rho }\right) ^* - \frac{\partial _y p(\rho )}{\varepsilon ^2} \end{array}\right) . \end{aligned}$$
(4.3)

We limit the description of the second order extension to the one dimensional case. The same discretization in time can be applied to the 2D case in a similar way.

Explicit CRK schemes on a staggered grid for a system of conservation laws

$$\begin{aligned} \displaystyle u_t + f(u)_x = 0 \end{aligned}$$

can be described as follows [40].

  • Predictor. Given cell averages at time \(t^n\): \(\{\bar{u}^n_{j}\}\), one computes the stage values as

    $$\begin{aligned} {u}^{(k)}_j = u^n_j - \frac{\Delta t}{\Delta x} \sum _{\ell = 1}^{k-1}a_{k \ell } D_x f\left( {u}^{(\ell )}_j\right) , \quad k = 1, \ldots , s, \end{aligned}$$

    where\(D_x / \Delta x\) denotes a consistent discrete derivative in space, and \({a_{k \ell }}\) are the RK coefficients.

  • Corrector. The numerical solution \(\bar{u}_{j+1/2}\) is then recovered as

    $$\begin{aligned} \bar{u}^{n+1}_{j+1/2} = \bar{u}^n_{j+1/2} - \frac{\Delta t}{\Delta x} \sum _{k = 1}^{s}b_{k} \left( f\left( {u}^{(k)}_{j+1}\right) - f\left( {u}^{(k)}_{j}\right) \right) . \end{aligned}$$

where \(\bar{u}^{n}_{j+1/2}\) is obtained integrating the reconstruction of \(u^n(x)\) in the staggered cell \(I_{j+1/2}\). One might think that the approach to problems containing very stiff terms could be generalized by computing the stage values using IMEX schemes, with an L-stable implicit part. However, such naive generalization does not work in practice since it gives a CFL type stability restriction comparable with the one of explicit CRK schemes. We show this by applying the simplest first order scheme with implicit Euler predictor to the linear convection equation \(\displaystyle u_t + u_x = 0\).

In this case the scheme (which is first order in space and time) becomes:

  • Predictor: \(\displaystyle u^{n+1}_j = \bar{u}^n_j - \frac{\Delta t}{2\Delta x}(u^{n+1}_{j+1} - u^{n+1}_{j-1})\)

  • Corrector: \(\displaystyle {{\bar{u}}}^{n+1}_{j+1/2} = \frac{\bar{u}^n_j + \bar{u}^n_{j+1}}{2} - \frac{\Delta t}{\Delta x}(u^{n+1}_{j+1} - u^{n+1}_{j})\)

Looking for solutions of the form: \(\bar{u}^n_{j} = \rho ^n e^{ijkh}\), where k denotes the Fourier node and \(h = \Delta x\), one obtains the following expression for the amplification factor:

$$\begin{aligned} \displaystyle \rho = \cos (\xi /2) - \frac{2 i c \sin (\xi /2)}{1 + i c \sin \xi }, \end{aligned}$$

where \(\xi = k h\), \(c = \Delta t/\Delta x\). Then we get

$$\begin{aligned} \displaystyle |\rho |^2 = \frac{\cos ^2(\xi /2) + 4 c^2 \sin ^6(\xi /2)}{1 + c^2 \sin ^2 \xi } = \frac{\mathcal {N}}{\mathcal {D}}. \end{aligned}$$

Let \(\mathcal {F} \equiv \mathcal {D} - \mathcal {N} = \sin ^2(\xi /2)\left( 1 - 4c^2(\sin ^4(\xi /2) - \cos ^2(\xi /2))\right) \). Then \(|\rho | \le 1\) iff \(\mathcal {F} \ge 0\). This condition is guaranteed \(\forall \xi \in {\mathbb {R}}\) iff \(c \le 1/2\).

Stability analysis can be performed for other L-stable schemes, with similar outcomes. In view of the above results we adopt this approach for the computation of the first \(s-1\) stages, at the unstaggered cell centers, however, the last stage s has to be implicit at the level of the numerical solution. This can be achieved by imposing that the numerical solution is automatically obtained as the last stage of the scheme directly computed at time \(t^{n+1}\) on the staggered cell. In the simple example above, this means

$$\begin{aligned} \displaystyle {{\bar{u}}}^{n+1}_{j+1/2} = \frac{\bar{u}^n_j + \bar{u}^n_{j+1}}{2} - \frac{\Delta t}{\Delta x}\left( \bar{u}^{n+1}_{j+1} - \bar{u}^{n+1}_{j}\right) = \frac{\bar{u}^n_j + \bar{u}^n_{j+1}}{2} - \frac{\Delta t}{2\Delta x}\left( {u}^{n+1}_{j+3/2} - {u}^{n+1}_{j-1/2}\right) , \end{aligned}$$

which is unconditionally stable, i.e., the amplification factor is given by

$$\begin{aligned} \displaystyle |\rho |^2 = {\cos (\xi /2)}{(1 + c^2 \sin ^2 \xi )}^{-1}\le 1, \, \forall \xi . \end{aligned}$$

Implicit schemes in which the numerical solution coincides with the last stage are called stiffly accurate (SA) (see [26]). IMEX R–K schemes with the same property are called globally stiffly accurate (GSA): an IMEX R–K scheme is GSA if it is SA, i.e. \(b^T = e_s^T A\), and \(\tilde{b}^T =e_s^T\tilde{A}\), with \(e_s = (0,\ldots ,0,1)^T\), and \(c_s = \tilde{c}_s = 1\). See [7, 8, 11] for more details on GSA schemes.

In view of the above consideration, we shall obtain high order accuracy in time by adopting GSA IMEX R–K schemes where the first \(s-1\) stages are obtained at unstaggered cell center by a predictor (not necessarily conservative), while the numerical solution is obtained by a conservative corrector on the staggered cell.

We now apply the Semi-IMplicit/EXplicit R–K schemes (S-IMEX-RK) developed in [6] to system (4.1) with (4.2). The algorithm for the schemes on staggered cells, (S-IMEX-RK-STAG) can be conveniently written as a two-step scheme, as follows:

  1. 1.

    Prediction step. Compute the internal stages:

    for \(k = 1, \ldots , s-1\)

    $$\begin{aligned} \mathbf U ^{*(k)}_{j}= & {} \mathbf U ^{n}_{j}- \frac{\Delta t}{\Delta x} \sum _{\ell =1}^{k-1} \tilde{a}_{k,\ell } K^{(\ell )}_j, \end{aligned}$$
    (4.4a)
    $$\begin{aligned} \mathbf{U }^{(k)}_{j}= & {} \mathbf U ^{n}_{j}- \Delta t \sum _{\ell =1}^k a_{k+1,\ell } K^{(\ell )}_j, \end{aligned}$$
    (4.4b)

    with the S-IMEX R–K fluxes:

    $$\begin{aligned} K^{(\ell )}_j = \left( \begin{array}{c} \displaystyle \hat{D}_x {m}^{(\ell )}_{j} \\ \displaystyle \hat{D}_x \left( \frac{m_j^2}{\rho _j} \right) ^{*(\ell )} + \frac{1}{\varepsilon ^2} D_x p\left( \rho ^{(\ell )}_{j}\right) \end{array}\right) \end{aligned}$$
    (4.5)
  2. 2.

    Correction step. Update the cell averages on the staggered grid:

    $$\begin{aligned} \bar{\mathbf{U }}^{n+1}_{i+1/2} = \bar{\mathbf{U }}^{n}_{i+1/2}- \frac{\Delta t}{\Delta x} \sum _{{\ell }=1}^{s} {a}_{s,\ell } \Delta F^{(\ell )}_{j+1/2}, \end{aligned}$$
    (4.6)

    where

    $$\begin{aligned} \Delta F^{(\ell )}_{j+\frac{1}{2}} \equiv F\left( U^{* (\ell )}_{j+1}, U^{(\ell )}_{j+1}\right) - F\left( U^{* (\ell )}_{j}, U^{(\ell )}_{j}\right) , \quad \ell = 1, \ldots , s \end{aligned}$$

    Here

    $$\begin{aligned} \displaystyle F(U^{*}, U) = \left( m, \left( \frac{m^2}{\rho }\right) ^{*} + \frac{p(\rho )}{\varepsilon ^2}\right) ^T . \end{aligned}$$

Remark

  1. 1.

    Throughout the paper we limit to second order accuracy in space and time. In this case one can use \(\mathbf U ^{n}_{i} = \bar{\mathbf{U }}^{n}_{i}\) in (4.4). The techniques described above can be adopted to construct high order schemes. This requires: i) high order GSA IMEX ([6, 8, 11]), ii) point-wise reconstruction of \(\mathbf U ^{n}_{i}\) from \(\bar{\mathbf{U }}^{n}_{i}\), iii) high order reconstruction (such as WENO [41]) for the terms which are treated explicitly, iv) a high order approximation of the operator appearing in the implicit terms. This research is being currently carried out in [10].

  2. 2.

    Explicit CRK schemes on non-staggered grid have been proposed [44], which exploit the flexibility of using non-conservative variables in the predictor. Such approach could be adopted for the construction of high order semi-implicit schemes, for which only the last stage has to be computed using conservative variables.

5 Numerical Results for Isentropic Gas Dynamics

In this section we present the performances of the proposed first and second S-IMEX-RK-STAG scheme. We illustrate several numerical tests in one and two space dimensions showing how the schemes are accurate for a wide range of Mach numbers. The parameter \(\varepsilon \) ranges from compressible to incompressible flows. For all the numerical tests we give well prepared initial values and adopt periodic boundary conditions. Finally, several convergence tests permit to observe the correct second order accuracy of our scheme both in compressible and incompressible regimes.

In all our tests, we used a second order reconstruction (3.3) with \(\theta = 1.5\), and we consider the following GSA IMEX R–K schemes [2].

  • First order GSA Euler IMEX scheme:

    $$\begin{aligned} \begin{array}{c|cc} 0 &{} 0 &{} 0 \\ 1 &{} 1 &{} 0\\ \hline &{} 1 &{} 0 \end{array} \qquad \begin{array}{c|cc} 0 &{} 0 &{} 0\\ 1 &{} 0 &{} 1 \\ \hline &{} 0 &{} 1 \end{array} \end{aligned}$$
    (5.1)
  • Second order GSA IMEX R–K scheme:

    $$\begin{aligned} \begin{array}{c|ccc} 0 &{} 0 &{} 0 &{} 0 \\ c &{} c &{} 0 &{} 0 \\ 1 &{} 1-1/(2c) &{} 1/(2c) &{} 0\\ \hline &{} 1-1/(2c) &{} 1/(2c) &{} 0 \end{array} \qquad \begin{array}{c|ccc} 0 &{} 0 &{} 0 &{} 0\\ c &{} 0 &{} c &{} 0 \\ 1 &{} 0 &{} 1-\beta &{} \beta \\ \hline &{} 0 &{} 1-\beta &{} \beta , \end{array} \end{aligned}$$
    (5.2)

    where \(\beta = (c-1/2)/(c-1)\). In this family of schemes, the choice of \(c>1\) guarantees that \(\beta >0\) and the weights of the explicit part are non negative. Furthermore, the scheme has an L-stable implicit part and an I-stable explicit part, [26]. Note that the choice \(c = 2.25\) guarantees a small constant of the error in the implicit scheme, so this is the value that we adopt in our scheme. Finally, note that choosing \(c = 1-1/\sqrt{2}\) we get the classical DIRK(2,2,2) IMEX scheme, [2].

Fig. 3
figure 3

Numerical results for the Riemann problem of Example 1, for density (left) and momentum (right) at final time \(T=0.05\), \(\Delta x=1/200\) and \(\Delta t\) is computed by (5.4) with \(\mathrm{CFL}_{Imp} = 0.5\). The solid line is the reference solution. The corresponding values of the classical CFL numbers are: 0.3838, 0.5839, 2.9317, for \(\varepsilon = 0.8\), 0.3 and 0.05, respectively

5.1 Example 1: Riemann Problem

We consider the following initial data, [21]

$$\begin{aligned} \left\{ \begin{array}{ll} \rho (x,0) = 1.0, \quad \quad m(x,0)=1-\frac{\varepsilon ^2}{2},\quad &{} x \in [0, 0.2] \bigcup [0.8,1], \\ \rho (x,0) = 1 + \varepsilon ^2, \quad \quad m(x,0)=1,\quad &{} x \in (0.2, 0.3], \\ \rho (x,0) = 1, \quad \quad m(x,0)=1+\frac{\varepsilon ^2}{2},\quad &{} x \in (0.3, 0.7], \\ \rho (x,0) = 1 - \varepsilon ^2, \quad \quad m(x,0)=1,\quad &{} x \in (0.7, 0.8]. \end{array} \right. \end{aligned}$$
(5.3)

This example consists of several Riemann problems. Pressure is given by \(p(\rho ) = \rho ^2\), final time \(T = 0.05\) and periodic boundary conditions. In Fig. 3 we report the solutions for the density on the left and for the momentum on the right. In this example we choose \(\varepsilon = 0.8, \ 0.3, \ 0.05\). We note that for large \(\varepsilon \), shocks ands contact discontinuities appear. We performed also a calculation with \(\varepsilon = 10^{-4}\) and the numerical solution quickly relaxes to the trivial solution \(\rho =1, \, m = 1,\) so we omitted to report the figure. In this test we choose the time step \(\Delta t\) as follows:

$$\begin{aligned} \Delta t = \mathrm{CFL}_{\mathrm{Imp}} \frac{\Delta x}{\max |\mathbf u _j| + \tilde{c}_j} \end{aligned}$$
(5.4)

where \(\tilde{c}_j = \sqrt{\gamma p_j/\rho _j} \cdot \min (1,1/\varepsilon ), \, \forall \varepsilon \) and it is reported in the Fig. 3. Note that for \(\varepsilon >1\) this is equivalent to the classical CFL condition, but for smaller values of \(\epsilon \) the condition is less restrictive.

For each test we monitor the classical Courant number

$$\begin{aligned} \mathrm{CFL}= \displaystyle \frac{\lambda _{\max } \Delta t}{\Delta x} \end{aligned}$$

where \(\lambda _{\max } =\max _j(|\mathbf u _j| + c_j/\varepsilon )\), \(c_j = \sqrt{\gamma p_j/\rho _j}\).

Standard explicit schemes on staggered grid require a classical Courant number \(\mathrm{CFL}\le 1/2\), while for our semi-implicit scheme CFL can be quite larger than 1 for small Mach numbers. Because only the material wave is treated explicitly, we expect the stability restriction for our semi-implicit schemes is given by \( \mathrm{CFL}_u \le 1/2\) where

$$\begin{aligned} {\mathrm{CFL}}_u = \displaystyle \frac{\max |\mathbf u _j| \Delta t}{\Delta x}. \end{aligned}$$

This is in practice the condition that we adopt for small values of \(\epsilon \). We prefer to use condition (5.4) in order to avoid excessively large values of the time step when the velocity of the gas is too small. A formal stability analysis of the scheme is under way.

Finally, a reference solution is computed with \(\Delta x = 1/500\), and \(\Delta t = 1/20{,}000\).

We observe that for moderate values of \(\varepsilon \) the numerical solutions are close to the reference one, while for small values of \(\varepsilon \) the acoustic waves are dumped out, still the numerical solution maintains stability.

Table 1 Convergence table of Example 2

5.2 Example 2: Convergence Test

Here we verify the temporal and spatial order of accuracy of the scheme in compressible and incompressible regimes in one dimension. In order to do that, we consider Equation (3.1), take as computational domain \(\Omega =[-2.5,2.5]\) with initial conditions

$$\begin{aligned} u_0(x)=\sin \left( \frac{2\pi x}{L}\right) , \quad \rho _0(x) = \left( 1+\varepsilon \frac{(\gamma -1)u_0(x)}{2\sqrt{\gamma }}\right) ^\frac{2}{\gamma -1}, \quad p_0=\rho _0^\gamma \end{aligned}$$

where \(\gamma = 2,\, L=5\) and final time \(T = 0.3\), \(\Delta t\) is given by (5.4) with \(\mathrm{CFL}_{Imp} = 0.45\). Density errors for different values of the Mach number are listed in Table 1. Since we used a staggered grid, we compute the experimental order of convergence (EOC) by the formula

$$\begin{aligned} EOC := \log _2\left( \frac{e_N}{e_{2N}}\right) \end{aligned}$$
(5.5)

where

$$\begin{aligned} e_N=\frac{\left\| U_N-\overline{U}_N\right\| _{L^1}}{\left\| \overline{U}_N\right\| _{L^1}}, \end{aligned}$$

\(U_N\) denotes the numerical solution with N cells, and solution at 2N cells with

$$\begin{aligned} \overline{U}_{N}(i)=\frac{U_{2N}(2i-1) + U_{2N}(2i)}{2}. \end{aligned}$$

The results show second-order convergence for all tested values of \(\varepsilon = 0.8,\ 0.3,\ 0.05\). We observe that, because of the underresolved acoustic waves, for small values of \(\varepsilon \) convergence is reached for large values of N in space. We get similar results for the other variables, velocity and pressure, but we omit to show them.

5.3 Example 3: Two Colliding Acoustic Waves

Consider the evolution of two colliding acoustic waves, with the following well prepared initial data (see Figs. 4, 5), i.e. when \(\varepsilon \) goes to 0, the density and momentum are consistent with the incompressible limit:

$$\begin{aligned} p(\rho _\varepsilon )= & {} \rho _\varepsilon ^\gamma , \quad \text{ for }\quad x\in [-1,1],\quad \text{ with }\;\;\gamma =1.4, \nonumber \\ \rho _\varepsilon (x,0)= & {} 0.955+\frac{\varepsilon }{2}(1-\cos (2\pi x)), \quad u_\varepsilon (x,0) =-\text{ sign }(x)\sqrt{\gamma }(1-\cos (2\pi x)).\nonumber \\ \end{aligned}$$
(5.6)

These acoustic pulses, one right-running and one left-runnig, collide, superpose and reflect each other, with no shock formation. Now, as done in [18], we choose as spatial step \(\Delta x=1/50\) and time is computed by (5.4) with \(\mathrm{CFL}_{Imp}= 0.5\). We use \(\varepsilon = 0.1\) and periodic boundary conditions. In Figs. (4) and (5), we display numerical results of density and momentum for different final times T. The solid line is the reference solution computed with \(\Delta x = 1/500\) and \(\Delta t =1/10{,}000\).

Fig. 4
figure 4

Example 3. The density computed by the first order (dashed line), and second order scheme (dot-dashed line) at different times: \(T = 0.0\) (initial density), \(T=0.01\), \(T=0.02\), \(T=0.04\), \(T=0.06\), \(T=0.08\) with \(\Delta x = 1/50\), \(\varepsilon =0.1\)

Fig. 5
figure 5

Example 3. The momentum computed by the first order (dashed line), and second order scheme (dot-dashed line) at different times: \(T = 0.0\) (initial momentum), \(T=0.01\); \(T=0.02\); \(T=0.04\); \(T=0.06\); \(T=0.08\) with \(\Delta x = 1/50\), \(\varepsilon =0.1\)

5.4 Example 4: 2D Isentropic Problem

In this section we focus on a two dimensional case with \(p(\rho ) = \rho ^2 \). The computational domain is \(\Omega = [0,1] \times [0,1]\), discretized by a uniform grid. We consider the same numerical test used in [21] with initial conditions:

$$\begin{aligned} \left\{ \begin{array}{ll} \rho (x,y,0) = 1 + \varepsilon ^2\sin ^2(2\pi (x+y)),\\ \rho (x,y,0)u(x,y,0) = \sin (2\pi (x-y)) + \varepsilon ^2\sin (2\pi (x+y)),\\ \rho (x,y,0)v(x,y,0) = \sin (2\pi (x-y))+ \varepsilon ^2\cos (2\pi (x+y)). \end{array} \right. \end{aligned}$$

In this test, the CFL condition in two dimensions is similar to (5.4). Note that at the leading order, i.e. \(\varepsilon = 0\), the velocity field is divergence free and the density field is constant. In Figs. 6 and 7, we display the performance of the scheme in the incompressible regime with under-resolved meshes for \(\varepsilon = 0.05\) and 0.001. We use \(\Delta x = \Delta y = 1/40\), and \(\Delta t\) computed by (5.4) with \(\mathrm{CFL}_{Imp} = 0.5\) at final time \(T= 1\).

In Fig. 6 we plot the deviation from the mean of the initial density \(\rho _0\) (left panels) and of the final density \(\rho \) (right panels), respectively for \(\varepsilon = 0.05\) and \(\varepsilon = 10^{-3}\). In Fig. 7 we report the value of \(\nabla \cdot \mathbf{u} \approx D_x u + D_y v\) at final time \(T = 1\).

Fig. 6
figure 6

Deviation from the mean of the initial density (left panels) and of the final density at time \(T=1\) (right panels), for \(\varepsilon =0.05\) (top panels), and \(\varepsilon =10^{-3}\) (bottom panels) with \(\Delta x= \Delta y = 1/40\)

Fig. 7
figure 7

Numerical results at time \(T=1\) a): for \(\varepsilon =0.05\) (left), and \(\varepsilon =10^{-3}\) (right) with \(\Delta x=\Delta y = 1/40\)

6 Extension to the Full Euler System

In this section we consider the rescaled (non-dimensional) compressible Euler equations for an ideal gas (2.2) with the (suitably scaled) equation of state (EOS):

$$\begin{aligned} p = (\gamma - 1)\left( E - \varepsilon ^2\frac{\rho |\mathbf u |^2}{2}\right) . \end{aligned}$$
(6.1)

6.1 Reformulation of the Main Problem

In order to solve numerically system (2.2), we rewrite such system in an equivalent way. We substitute the pressure (6.1) in the equation for the momentum and for the energy E and we get

$$\begin{aligned} \left\{ \begin{array}{llr} \displaystyle \rho _t + \nabla \cdot \mathbf m &{}= 0\\ \displaystyle {\mathbf{m}}_t + \nabla \cdot \left( \frac{{\mathbf{m}} \otimes \mathbf{m}}{\rho }\right) - \frac{\gamma -1}{2} \nabla \left( \frac{|\mathbf{m}|^2}{\rho }\right) + \frac{\gamma -1}{\varepsilon ^2} \nabla E &{}= 0 \\ \displaystyle E_t - \nabla \cdot \left( \frac{\gamma -1}{2} \varepsilon ^2\frac{|\mathbf{m}|^2\mathbf m }{\rho ^2} \right) + \nabla \cdot (\gamma E{\mathbf{u}}) &{}= 0. \end{array} \right. \end{aligned}$$
(6.2)

Note that, the formal derivation of the incompressible Euler equations from system (6.2) is similar to the one shown in the isentropic case. We briefly summarize it here. Let us consider the following asymptotic ansatz:

$$\begin{aligned} \begin{array}{l} p(\mathbf x ,t) = p_0(\mathbf x ,t) + \varepsilon ^2 p_2(\mathbf x ,t)+\cdots \\ u(\mathbf x ,t) = u_0(\mathbf x ,t) + \varepsilon ^2 u_2(\mathbf x ,t)+ \cdots ,\\ E(\mathbf x ,t) = E_0(\mathbf x ,t) + \varepsilon ^2 E_2(\mathbf x ,t)+ \cdots . \end{array} \end{aligned}$$
(6.3)

Inserting the expressions into system (6.2), we get to \(\mathcal {O}(\varepsilon ^{-2})\), \( \nabla E_0 = 0\) and this implies \(E_0(x,t) = E_0(t)\), i.e. to the leading order, the energy term (and hence by (6.1), the pressure \(p_0 = (\gamma - 1) E_0\)) is constant in space. Furthermore, from the energy equation we get to \(\mathcal {O}(1)\):

$$\begin{aligned} \nabla \cdot \mathbf u _0 = \frac{1}{ \gamma p_0}\frac{d p_0}{dt}. \end{aligned}$$

Integrating this equation on a bounded domain \(\Omega \) and using, for example, periodic boundary conditions we have: \(\nabla \cdot \mathbf {u}_0 = \) 0, i.e. \(p_0\) is a constant of order 1.

Furthermore, from the momentum equation we obtain, to the \(\mathcal {O}(1)\):

$$\begin{aligned} \partial _t (\rho _0 \mathbf u _0) + \nabla \cdot (\rho _0 \mathbf u _0 \otimes \mathbf u _0) - \frac{(\gamma - 1)}{2} \nabla \cdot \left( \rho _0 \mathbf u ^2_0 \right) + \frac{(\gamma -1)}{2} \nabla E_2 = 0, \end{aligned}$$
(6.4)

and by (6.1), at \(\mathcal {O}(1)\) for the pressure one has:

$$\begin{aligned} E_2 =\frac{p_2}{ (\gamma -1 )} +\frac{(\gamma -1)}{2}(\rho _2 \mathbf u _0^2). \end{aligned}$$
(6.5)

Thus, for low Mach number (i.e., \(\varepsilon \ll 1\)), under suitable well- prepared initial conditions:

$$\begin{aligned}&\rho (\mathbf x ,t = 0) = \rho _{0}(x) + \varepsilon ^2 \rho _2(\mathbf x ), \nonumber \\&\quad p(\mathbf x ,t = 0) = p_{0} + \varepsilon ^2 p_2(\mathbf x ), \nonumber \\&\quad u(\mathbf x ,t = 0) = \hat{\mathbf{u }}_0(x) + \mathcal {O}(\varepsilon ^2), \end{aligned}$$
(6.6)

the solution \((\rho , \mathbf m , p)\) of (6.2), is close to the solution of the incompressible Euler system:

$$\begin{aligned} \left\{ \begin{array}{llr} \displaystyle \rho _t +\mathbf u \cdot \nabla \rho = 0,\\ \displaystyle \rho (t= 0, x) = \rho _0(x),\\ \partial _t (\rho \mathbf u ) + \nabla \cdot (\rho \mathbf u \otimes \mathbf u ) + \nabla p_2 &{} = 0, \\ \displaystyle \nabla \cdot \mathbf u = 0, \\ \displaystyle \mathbf{u}(t=0, x) = \hat{\mathbf{u}}(x), \\ \displaystyle p = p_{0}, \end{array} \right. \end{aligned}$$
(6.7)

where \(\hat{\mathbf{u }}(x)\) is of order 1 with \(\nabla \cdot \hat{\mathbf{u }} = 0\), \(\rho ^{*}(x)\) is a strictly positive function such that \(\rho ^{*} = \mathcal {O}(1)\), and \(p_{0}\) is the space independent thermodynamic pressure, related to internal energy \(e_0\) and density \(\rho _0\) by: \(p_0 = (\gamma -1) \rho _0 e_0\).

Note that \(p_2 = \lim _{\varepsilon \rightarrow 0} \frac{1}{\varepsilon ^2} (p - p^{*})\) is implicitly defined by the constraint \(\nabla \cdot \mathbf u = 0\) and explicitly given by the equation \(- \Delta p_{2} = \rho _0 \nabla ^2: (\mathbf{u} \otimes \mathbf{u})\).

6.2 The Semi-implicit R–K (SI R–K) Time Integrator for the Euler Equation

The scheme proposed here for the full Euler system follows the isentropic case strategy. We start applying to system (6.2) an explicit–implicit Euler scheme:

$$\begin{aligned} \left\{ \begin{array}{llr} \displaystyle \frac{\rho ^{n+1} - \rho ^{n}}{\Delta t} + \nabla \cdot {\mathbf{m}}^{n+1} = 0, \\ \displaystyle \frac{\mathbf{m}^{n+1}-\mathbf{m}^{n}}{\Delta t} + \nabla \cdot \left( \frac{\mathbf{m}^n \otimes \mathbf{m}^n}{\rho ^n}\right) - \frac{\gamma -1}{2} \nabla \left( \frac{(|\mathbf{m}|^2)^n}{\rho ^n} \right) + \frac{\gamma -1}{\varepsilon ^2} \nabla E^{n+1} &{} = 0, \\ \displaystyle \frac{E^{n+1} - E^{n}}{\Delta t} - \nabla \cdot \left( \frac{\gamma -1}{2} \varepsilon ^2 \frac{(|\mathbf{m}|^2\mathbf{m} )^n}{\rho ^n} \right) + \gamma \nabla \cdot \left( E^{n}\frac{\mathbf{m}^{n+1}}{\rho ^n}\right) = 0. \end{array} \right. \qquad \end{aligned}$$
(6.8)

with

$$\begin{aligned} p^{n+1} = (\gamma -1) \left( E^{n+1} - \varepsilon ^2\frac{(\rho \mathbf u ^2)^n}{2} \right) . \end{aligned}$$
(6.9)

Then, the scheme works as follows. Let

$$\begin{aligned} \begin{array}{l} \displaystyle \rho ^{n+1} = \rho ^{n} - \Delta t \nabla \cdot \mathbf m ^{n+1},\\ \displaystyle {{\mathop {m}\limits ^{1}}}^{n+1} = {{\mathop {m}\limits ^{1}}}^{*} -\frac{(\gamma - 1)}{\varepsilon ^2} \Delta t\partial _x E^{n+1}, \\ \displaystyle {{\mathop {m}\limits ^{2}}}^{n+1} = {{\mathop {m}\limits ^{2}}}^{*} - \frac{(\gamma - 1)}{\varepsilon ^2}\Delta t\partial _y E^{n+1},\\ \displaystyle {E}^{n+1} = E^{*} - \gamma \Delta t \partial _k \left( E^n\frac{{{\mathop {m}\limits ^{k}}}^{n+1}}{\rho ^n}\right) , \end{array} \end{aligned}$$
(6.10)

with

$$\begin{aligned} {{\mathop {m}\limits ^{k}}}^* = {{\mathop {m}\limits ^{k}}}^{n} -\Delta t\nabla \cdot \left( \frac{{{\mathop {m}\limits ^{k}}}^n \mathbf m ^n}{\rho ^n}\right) +\frac{\gamma -1 }{2}\Delta t \partial _k \left( \frac{(|\mathbf{m}|^2)^n}{\rho ^n}\right) , \quad k = 1,2, \end{aligned}$$
(6.11)

and

$$\begin{aligned} {E}^* = {E}^{n} -\frac{\gamma - 1}{2}\varepsilon ^2\Delta t\partial _k \left( \frac{|{\mathbf{m}}^2|^n{{\mathop {m}\limits ^{k}}}^n}{\rho ^n}\right) , \quad k = 1,2, \end{aligned}$$
(6.12)

Now, inserting the expression \({{\mathop {m}\limits ^{k}}}^{n+1}\) into the equation for E we obtain

$$\begin{aligned} E^{n+1} = E^{**} + \frac{\Delta t^2 \gamma (\gamma - 1)}{\varepsilon ^2}\nabla \cdot \left( \frac{E^n}{\rho ^n} \nabla \cdot E^{n+1}\right) , \end{aligned}$$
(6.13)

where

$$\begin{aligned} E^{**} = E^* - \Delta t \gamma \partial _k \left( \frac{E^n}{\rho ^n} {{\mathop {m}\limits ^{k}}}^*\right) . \end{aligned}$$
(6.14)

Then discretizing in space by central scheme based on a staggered grid with uniform spatial mesh, we obtain in this case a linear elliptic equation:

$$\begin{aligned} E^{n+1}_{i+1/2, j+1/2} = E^{**}_{i+1/2, j+1/2} + \frac{\Delta t^2}{\varepsilon ^2}\gamma (\gamma -1){L} E^{n+1}_{i+1/2, j+1/2}, \end{aligned}$$
(6.15)

Here the operator L is defined as: \({L}E_{ij} =L_x E_{ij} + L_y E_{ij}\) where:

$$\begin{aligned} L_x E^{n+1}_{ij}= \frac{1}{\Delta x}\left( \left( \frac{E}{\rho }\right) ^n_{i+1/2,j} \left( \frac{E^{n+1}_{i+1,j} - E^{n+1}_{i,j}}{\Delta x}\right) - \left( \frac{E}{\rho }\right) ^n_{i-1/2,j}\left( \frac{E^{n+1}_{i,j} - E^{n+1}_{i-1,j}}{\Delta x}\right) \right) , \end{aligned}$$

where for any function k defined on the grid:

$$\begin{aligned} \displaystyle k_{i+1/2,j} = \frac{k_{i+1,j} + k_{i,j}}{2}, \end{aligned}$$

and similarly for \(L_y\). Then, solving the linear system, we obtain the new energy E to step \(n+1\). This is used to update the momentum \( \mathbf m ^{n+1}\), and, finally, to compute the new density.

AP property. Following the analysis in Sect. 3.2, it is possible to show that scheme (6.8) is asymptotic preserving (AP) in the limit \(\varepsilon \rightarrow 0\). We start by making the following asymptotic ansatz

$$\begin{aligned} p^{n}_{ij}= & {} p^n_{0} + \varepsilon ^2 p^n_{2,ij} + \cdots , \nonumber \\ \rho ^{n}_{ij}= & {} {\rho }^n_{0,ij} + \varepsilon ^2 \rho ^n_{2,ij} + \cdots , \nonumber \\ E^{n}_{ij}= & {} E^n_{0} + \varepsilon ^2 E^n_{2,ij} + \cdots . \end{aligned}$$
(6.16)

with the leading order energy term: \(E^n_0 =p^n_0/(\gamma - 1)\) and from (6.5) and (6.9) we get to \(\mathcal {O}(1)\):

$$\begin{aligned} E^{n}_{2,ij} = \frac{p^n_{2,ij}}{(\gamma -1)} + \frac{\rho ^{n-1}_{0,ij}|\mathbf u ^{n-1}_{0,ij}|^2}{2}. \end{aligned}$$
(6.17)

Furthermore, in agreement with (6.6), we consider the following well-prepared initial conditions

$$\begin{aligned} \rho ^0= & {} {\rho }^0_{0,ij} + \varepsilon ^2 \rho ^{0}_{2,ij}, \nonumber \\ p^0= & {} p_{0} + \varepsilon ^2 p^0_{2,ij}, \nonumber \\ u^0= & {} {u}^0_{0,ij} + \mathcal {O}(\varepsilon ^2), \end{aligned}$$
(6.18)

with \(p_{0}\) a positive constant.

Assuming well-prepared initial conditions, and following the same procedure adopted in Sect. 3.2, one can prove AP property of scheme (6.8). The reader can find a detailed asymptotic preserving analysis in [46].

High order extension. A natural extension of the first order scheme (6.8) to a second order one is obtained in a similar way to the one illustrated in Sect. 4. In particular we obtain a second order globally stiffly accurate S-IMEX-RK-STAG. Here the function \(\mathcal {H}(\mathbf U ^{*},\mathbf U )\) is defined, by system (6.2), as follows:

$$\begin{aligned} \mathcal {H}({\mathbf{U}}^{*},{\mathbf{U}}) = \left( \begin{array}{c} \displaystyle - \nabla \cdot \mathbf{m} \\ \displaystyle - \nabla \cdot \left( \frac{\mathbf{m}^* \otimes {\mathbf{m}}^*}{\rho ^*}\right) + \frac{\gamma -1}{2} \nabla \left( \frac{|{\mathbf{m}}^*|^2}{\rho ^*}\right) - \frac{\gamma -1}{\varepsilon ^2} \nabla E \\ \displaystyle \nabla \cdot \left( \frac{\gamma -1}{2} \varepsilon ^2\frac{|\mathbf{m}^{*}|^2\mathbf{m}^{*}}{\rho ^{*}} \right) - \gamma \nabla \cdot \left( \frac{E^{*}}{\rho ^{*}}{} \mathbf{m}\right) \end{array} \right) , \end{aligned}$$
(6.19)

where, as before, the quantities with an asterisk are treated explicitly, while the quantities without the asterisk are treated implicitly.

7 Numerical Results for the Full Euler System

In this last part of the paper we present several numerical test cases applied to the full Euler system in one and two dimensions. Here we consider the same S-IMEX-RK-STAG schemes, the same CFL condition and time step given in Sect. 5.

7.1 Example 1: 1D Sod Shock Tube Problem

First, we test the method in a compressible regime, i.e., when the Mach number is \(\mathcal {O}(1)\). We consider the classical Sod shock tube problem with the initial conditions

$$\begin{aligned} (\rho , u, p)(x,0)=\Biggl \{ \begin{array}{c} (1.0, \, 0.0, \, 1.0) \quad \text {if} \quad x < 0.5, \\ (0.125, \, 0.0, \, 0.1) \quad \text {otherwise}. \end{array} \end{aligned}$$
(7.1)

The domain is [0, 1] and the discontinuity is initially at \(x = 0.5\). We use \(N = 200\) cells. The numerical results are obtained by the second order scheme at T = 0.18 and are shown in Fig. 8. The reference solution is computed with \(N = 1000\) grid points.

Fig. 8
figure 8

Sod shock tube, Density and velocity solution (red lines), \(\mathrm{CFL}_{Imp} = 0.5\), \(N = 200\) grid points at time \(T = 0.18\) with \(\varepsilon = 1\). Black line is the reference solution

The results are comparable to those obtained by Nessyahu–Tadmor central scheme, [37].

Note that, since in this numerical test we set \(\varepsilon = 1\), \(\mathrm{CFL}_{Imp} = 0.5\) is the classical Courant number CFL.

7.2 Example 2: Convergence Test

We compute the experimental order of convergence (EOC) of the scheme presented in the previous section. The initial conditions for density and velocity, the final time and the boundary conditions are given in Sect. 5.2. The initial entropy is assumed to be constant, so that the pressure is the same as in the isentropic case of Sect. 5.2. Here we use the value \(\gamma = 1.4\).

Below we report the convergence table for the density, momentum and energy for different values of the Mach number 0.8, 0.3 and \(10^{-4}\), (Table 2). Note that for \(\varepsilon = 10^{-4}\) we choose as final time \(T= 0.01\).

Table 2 Example 2. Convergence table for smooth initial data

We observe second order convergence in all cases. However, because acoustic waves are poorly revolved in time, we need to use a very fine mesh in order to observe expected order of convergence.

7.3 Example 2: Two Colliding Acoustic Pulses

We consider again two colliding acoustic pulses in a weakly compressible regime. This test has been taken from [32, 38]. The initial conditions are given by

$$\begin{aligned}&\displaystyle \rho _\varepsilon (x,0) =\rho _0+\frac{1}{2}\varepsilon \rho _1\left( 1-\cos \left( \frac{2\pi x}{L}\right) \right) , \quad \rho _0 = 0.955, \quad \rho _1 = 2.0, \nonumber \\&\quad \displaystyle u_\varepsilon (x,0) =\frac{1}{2} u_0\text{ sign }(x)\left( 1-\cos \left( \frac{2\pi x}{L}\right) \right) , \quad u_0 = 2\sqrt{\gamma }, \nonumber \\&\quad \displaystyle \rho _\varepsilon (x,0) = p_0 + \frac{1}{2}\varepsilon p_1\left( 1-\cos \left( \frac{2\pi x}{L}\right) \right) , \quad p_0 = 1.0, \quad p_1 = 2\gamma . \end{aligned}$$
(7.2)

The domain is \(-L \le x \le L = 2/\varepsilon \) and the boundary conditions are periodic. In Fig. 9 we show the plots of the pressure obtained using first order (6.8) and second order globally stiffly accurate S-IMEX-RK-STAG scheme at different times \(t = 0.815\) and \(t = 1.63\). We choose \(\varepsilon = 1/11\) and we plot the initial pressure distributions for comparison. In the figure, the reference solution has been computed with \(N=1500\). The results have the same behavior as in [38].

Fig. 9
figure 9

\(\varepsilon =1/11\) (top panel) and \(\varepsilon =10^{-4}\) (bottom panel), \(N=440\), final time \(T=0.815\) (Left) and \(T=1.63\) (Right). CFL = \(10^{-3}\) has been used when \(\varepsilon = 10^{-4}\). We displayed the initial condition (dotted line), the numerical solution to the first (dashed line) and second order scheme (dot-dashed line). Reference solution (continuous line)

7.4 Example 3: Gresho Vortex

In this section we apply our scheme to the classical Gresho vortex test case. This test is used to check the effect of the numerical diffusion introduced by the scheme. As it appears in several papers (see for example [35, 38]), classical schemes, both explicit and implicit, have an excessively large numerical diffusion when applied to low Mach number problems. In particular, the effect of the diffusion increases when the Mach number is decreased. The Gresho vortex [24] is a stationary solution of compressible Euler equation which does not contain acoustic waves. It consists of a 2D axis-symmetric vortex with compact support in the velocity, in which centrifugal force is balanced by a suitable radial pressure gradient. The vortex is centered at \((x,y) = (0.5,0.5)\) of the computational domain \([0,1] \times [0,1]\). The initial condition is specified in terms of the radial distance \(r = \sqrt{(x - 0.5)^2 + (y-0.5)^2}\) which denotes the radial coordinate of the rotating flow:

$$\begin{aligned} \rho (x,y,0)&= 1.0, \\ u(x,y,0)&= -u_{\phi }(r)\sin (\phi ),\\ v(x,y,0)&= u_{\phi }(r)\cos (\phi ),\\ p(x,y,0)&= \left\{ \begin{array}{ll} p_0 + 12,5 r^2, &{}\,\,\, \text {if} \quad 0 \le r< 0.2\\ p_0 + 4 - 4.0 \log (0.2) + 12.5 r^2-20 r + 4 \log r,&{}\,\,\, \text {if} \quad 0.2 \le r< 0.4\\ p_0 - 2 + 4 \log 2, &{}\,\,\, \text {otherwise}. \end{array} \right. \end{aligned}$$

Here \(\tan {\phi } = (y-0.5)/(x-0.5)\) and the angular velocity \(u_{\phi }\) is defined by

$$\begin{aligned} u_{\phi }(r)&= \left\{ \begin{array}{ll} 5 r, &{}\,\,\, \text {if} \quad 0 \le r< 0.2\\ 2-5r,&{}\,\,\, \text {if} \quad 0.2 \le r< 0.4\\ 0, &{}\,\,\, \text {otherwise}. \end{array} \right. \end{aligned}$$

We apply our scheme with final time \(t=1\), periodic boundary conditions and three different values of the Mach number, \(\varepsilon = 10^{-1}, \varepsilon =10^{-2}, \varepsilon =10^{-3}\). The Mach number distribution for \(40\times 40\) grid is reported in Fig. 10 for \(\varepsilon = 10^{-3}\). The decay of kinetic energy for different values of \(\varepsilon \) are reported in Fig. 11, for two space resolution, namely \(40\times 40\) and \(80\times 80\). It appears from the figure that the decay in the kinetic energy is essentially independent on \(\varepsilon \). Note that the use of staggering introduces an additional source of numerical dissipation compared to the corresponding non-staggered approach [35], however the effect becomes four times smaller as the grid is refined.

Fig. 10
figure 10

Gresho vortex problem: pseudo-colour plots of the Mach number at times \(t = 0.0\), 1.0. In this problem \(\varepsilon = 10^{-3}\) and the \(\mathrm{CFL}_{Imp} = 0.35\)

Fig. 11
figure 11

Temporal evolution of the total kinetic energy \(E_{\mathrm{kin}}(t)\) relative to its initial value \(E_{\mathrm{kin}}(0)\) in the Gresho vortex problem for two different meshes: \(40\times 40\) (dotted) and \(80\times 80\) (solid) with \(\mathrm{CFL}_{Imp} = 0.35\). For each mesh, three different values of the Mach number have been used, namely \(\varepsilon = 10^{-1}, 10^{-2}, 10^{-3}\). The lines corresponding to the various Mach numbers are almost indistinguishable for both meshes, showing that the dissipation is essentially independent on the Mach number

Remark

The main source of diffusion of many shock capturing schemes when computing low Mach number flow is the large numerical viscosity which is needed to allow the dissipation near shocks, which are associated to fast acoustic waves. If only the material waves are treated explicitly, as we do in our scheme, then there is no need of such large numerical viscosity, and therefore the corresponding dissipation is not so large any more. Only acoustic waves are treated implicitly, with a central discretization of pressure gradient. This causes the dissipation of the acoustic waves, still having almost no effect on the material wave.

7.5 Example 4: Asymptotic Preserving Property (AP)

In Sect. 3.2 we have discussed the asymptotic preserving property of our scheme when applied to the Euler isentropic case (2.3) and to the full Euler one (6.2). Now, the goal in this section is to verify such AP property, numerically.

In particular, we compare the solutions of the scheme at low Mach number, when applied to the isentropic Euler equations (2.3) and to the complete Euler ones (6.2), with the solution of the incompressible Euler equations.

Consider incompressible Euler equation in the vorticity stream-function formulation, [45]:

$$\begin{aligned} \omega _t+\mathbf u \cdot \nabla \omega =0,\quad (x,y)\in [0,2\pi ]\times [0,2\pi ] \end{aligned}$$
(7.3)

where

$$\begin{aligned} \omega = \frac{\partial v}{\partial x} -\frac{\partial u}{\partial y}. \end{aligned}$$

Because \(\nabla \cdot \mathbf u =0\), there exists a function \(\psi \) such that

$$\begin{aligned} \mathbf u =(\partial _y\psi ,-\partial _x\psi ). \end{aligned}$$
(7.4)

Inserting this relation in the expression for \(\omega \) one obtains the Poisson equation

$$\begin{aligned} -\Delta \psi =\omega . \end{aligned}$$
(7.5)

For our numerical test we assume periodic boundary conditions and we consider as initial condition, the shear flow:

$$\begin{aligned} \omega (x,y,0)=\left\{ \begin{array}{ll} \displaystyle \delta \cos (x)-\frac{1}{\rho }\text {sech}^2((y-\pi /2)/\rho ), &{} y\leqslant \pi \\ \displaystyle \delta \cos (x)+\frac{1}{\rho }\text {sech}^2((3\pi /2-y)/\rho ), &{} y>\pi \end{array} \right. \end{aligned}$$
(7.6)

where \(\delta =0.05\) and \(\rho =\pi /15\).

As a reference solution for incompressible Euler equations (7.3), we consider a very accurate numerical solution obtained by Fourier spectral discretization in space and fourth order Runge–Kutta method in time. Final time is \(T = 6\). With \(N = 160\) grid points per direction we have a fully resolved calculation. We denote it the reference solution (see Fig. 12).

Now we compute numerical solutions of isentropic Euler equations (2.3) and of the complete Euler ones (6.2) by using our scheme.

As initial condition we give the velocity field associated to the initial vorticity distribution (7.6). It is obtained by solving the Poisson equation (7.5) for the stream function \(\psi \), with periodic boundary conditions, and then computing the initial velocity from (7.4). The initial value for density \(\rho \) and pressure p are set to 1. We set \(\varepsilon = 10^{-4}\), \(N = 160\) and final time \(T = 6.0\), and solve the Euler equations with periodic boundary conditions. The results are given in Fig. 13.

Note that the CFL condition in two dimensions is similar to (5.4), i.e.,

$$\begin{aligned} \displaystyle \Delta t = \frac{\mathrm{CFL}_{Imp}}{\displaystyle \frac{\max |{ u}_{ij} + \tilde{c}_{ij}|}{\Delta x} + \frac{\max |{v}_{ij} + \tilde{c}_{ij}|}{\Delta y}}. \end{aligned}$$

In our simulation we used \(\Delta x = \Delta y\).

Comparing the reference solution for incompressible Euler equations, Fig. 12, with the solutions obtained with the second order semi implicit scheme (S-IMEX-RK-STAG), Fig. 13, we observe that there is a qualitative agreement.

Fig. 12
figure 12

Plot of the reference solution at final time \(T = 6\)

Fig. 13
figure 13

Numerical solution for the isentropic case (left), and for the complete Euler case (right) with \(\varepsilon = 10^{-4}\) at final time \(T = 6\)

Finally, in Fig. 14 we show the behavior of the \(L^1\) error, as the difference between the numerical solution of the Euler scheme computed by our second order scheme S-IMEX-RK-STAG scheme with different values of \(\varepsilon \) from \(10^{-1}\) to \(10^{-4}\) and the reference solution. We refined \(N = 16, 24, 32, 48, 64, 96, 128, 192, 256, 384, 512\) to compute the numerical solution for each value of \(\varepsilon \). Similarly, we computed the reference solution for each value of N. In this test we fixed \(\rho = \pi /10\) and the final time \(T = 1\).

Two main sources of error are present when comparing the numerical solution of weakly compressible Euler equation and the reference solution for incompressible Euler: space and time discretization error and modelling error. The latter is due to the different behaviour between compressible and incompressible flow. For a given value of \(\varepsilon \), discretization error is dominant for coarse grid. Refining the grid, the typical second order convergence rate is observed. When space and time are fully resolved, the model error becomes dominant and is responsible of the plateau observed for large values of N. As \(\varepsilon \) is decreased, the discrepancy between compressible and incompressible Euler decreases, and is observed at finer and finer meshes (see Fig. 14).

Fig. 14
figure 14

\(L^1\)-error

8 Conclusions

In this paper we present a simple strategy to construct semi-implicit schemes for Euler equations which are able to work on a wide range of Mach numbers. The schemes are based on staggered grid discretization in space, which is second order accurate and avoids the need of exact or approximate Riemann solvers. In the proposed schemes, acoustic waves are treated linearly implicitly, while material waves are treated explicitly. The resulting scheme is Asymptotic Preserving, i.e. it converges to a consistent scheme for the incompressible Euler equations as the Mach number vanishes. Because of the linear treatment of implicit terms, the schemes are quite efficient, especially for low Mach number flow. Second order schemes in time are constructed using Implicit–Explicit Runge–Kutta methods. Because of the staggered nature of the problem, second order discretization in time requires the use of Globally Stiffly Accurate schemes. A simplification is obtained by computing most of the stage values implicitly by a possibly non conservative predictor, while the conservative corrector guarantees that the overall scheme is conservative. A stability analysis is performed showing that the last stage of the scheme has to be implicit at the level of the numerical solution in order to avoid classical stability restrictions. Numerical convergence study is performed on various test problems, emphasizing the robustness and efficiency of the scheme. In principle the procedure could be extended to two space dimensions on unstructured grids, using central schemes on tetrahedral meshes developed by P.Arminjon and collaborators [1]. Such extension is however beyond the purposes of the present paper.

The procedure could be also extended to construct higher order schemes. Third order semi-implicit schemes on a non staggered grid are considered in [10]. Implicit treatment of boundary conditions, will be subject of future investigation.