Skip to main content

Advertisement

Log in

A Second-Order Finite-Volume Scheme for Euler Equations: Kinetic Energy Preserving and Staggering Effects

  • Published:
Journal of Scientific Computing Aims and scope Submit manuscript

Abstract

A finite-volume method for Euler equations is presented. Interfaces fluxes are reconstructed with a linear interpolation, which leads to a second order approximation of the spatial derivatives. Since shocked flows have been considered as test cases, a Rusanov-like artificial dissipation is used in order to prevent spurious oscillations. The conservative form of a scheme does not ensure the correct balance of quantities like kinetic energy and inner energy because they are embedded into the total energy, which is instead conserved. We present how to define the fluxes of a conservative scheme taking also into account the kinetic energy balance. Moreover, two grid arrangements are used. One with all conserved variables collocated at the center of the volume, the other one with kinetic quantities collocated at the edges. We discuss the effect of the kinetic energy preservation constraint and of the kinetic variables staggering analyzing two shock tube problems: the modified Sod’s problem and the Shu–Osher’s problem.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

Notes

  1. Given the dimension of each volume h and the highest velocity s of each waves arising from each Riemann problem inside the computational domain, in order to ensure stability, the time step \(\varDelta t\) should fulfill the condition \(\varDelta t = C h/s\) where the constant C must be chosen in a range, which depends on the stability properties of the adopted scheme.

  2. Let \({\mathrm {L}}\) be a discrete operator, we say that \({\mathrm {L}}\) is TVD if \(u^{n+1} = u^{n} + \varDelta t {\mathrm {L}}u^{n}\) is such that \(TV(u^{n+1}) \le TV(u^{n})\) under a given CFL condition \(\varDelta t < \lambda _{0}\).

References

  1. Bauer, A.L., Loubere, R., Wendroff, B.: On stability of staggered schemes. SIAM J. Numer. Anal. 46(2), 996–1011 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  2. Bijl, H., Wesseling, P.: A unified method for computing incompressible and compressible flows in boundary-fitted coordinates. J. Comput. Phys. 141(2), 153–173 (1998). doi:10.1006/jcph.1998.5914

    Article  MathSciNet  MATH  Google Scholar 

  3. Boersma, B.J.: A staggered compact finite difference formulation for the compressible Navier–Stokes equations. J. Comput. Phys. 208(2), 675–690 (2005). doi:10.1016/j.jcp.2005.03.004

    Article  MATH  Google Scholar 

  4. Book, D., Boris, J., Hain, K.: Flux-corrected transport ii: generalizations of the method. J. Comput. Phys. 18(3), 248–283 (1975). doi:10.1016/0021-9991(75)90002-9

    Article  MATH  Google Scholar 

  5. Boris, J.P., Book, D.L.: Flux-corrected transport. i. Shasta, a fluid transport algorithm that works. J. Comput. Phys. 11(1), 38–69 (1973). doi:10.1016/0021-9991(73)90147-2

    Article  MATH  Google Scholar 

  6. Burton, D.E.: Exact conservation of energy and momentum in staggered-grid hydrodynamics with arbitrary connectivity. In: Trease, H.E., Fritts, M.J., Crowley, W.P. (eds.) Advances in the Free-Lagrange Method Including Contributions on Adaptive Gridding and the Smooth Particle Hydrodynamics Method, pp. 7–19. Springer, Berlin, Heidelberg (1991)

  7. Ducros, F., Laporte, F., Soulères, T., Guinot, V., Moinat, P., Caruelle, B.: High-order fluxes for conservative skew-symmetric-like schemes in structured meshes: application to compressible flows. J. Comput. Phys. 161(1), 114–139 (2000). doi:10.1006/jcph.2000.6492

    Article  MathSciNet  MATH  Google Scholar 

  8. Engquist, B., Osher, S.: One-sided difference approximations for nonlinear conservation laws. Math. Comput. 36(154), 321–351 (1981)

    Article  MathSciNet  MATH  Google Scholar 

  9. Godunov, S.K.: A difference method for numerical calculation of discontinuous solutions of the equations of hydrodynamics. Matematicheskii Sbornik 89(3), 271–306 (1959)

    MathSciNet  MATH  Google Scholar 

  10. Gottlieb, S., Shu, C.W.: Total variation diminishing Runge–Kutta schemes. Math. Comput. 67(221), 73–85 (1998)

    Article  MathSciNet  MATH  Google Scholar 

  11. Harlow, F.H., Amsden, A.A.: A numerical fluid dynamics calculation method for all flow speeds. J. Comput. Phys. 8(2), 197–213 (1971). doi:10.1016/0021-9991(71)90002-7

    Article  MATH  Google Scholar 

  12. Harten, A., Lax, P.D., van Leer, B.: On upstream differencing and godunov-type schemes for hyperbolic conservation laws. SIAM Rev. 25(1), 35–61 (1983)

    Article  MathSciNet  MATH  Google Scholar 

  13. Jameson, A.: Analysis and design of numerical schemes for gas dynamics, 1: artificial diffusion, upwind biasing, limiters and their effect on accuracy and multigrid convergence. Int. J. Comput. Fluid Dyn. 4(3–4), 171–218 (1995)

    Article  Google Scholar 

  14. Jameson, A.: Formulation of kinetic energy preserving conservative schemes for gas dynamics and direct numerical simulation of one-dimensional viscous compressible flow in a shock tube using entropy and kinetic energy preserving schemes. J. Sci. Comput. 34(2), 188–208 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  15. Johnsen, E., Larsson, J., Bhagatwala, A.V., Cabot, W.H., Moin, P., Olson, B.J., Rawat, P.S., Shankar, S.K., Sjögreen, B., Yee, H., et al.: Assessment of high-resolution methods for numerical simulations of compressible turbulence with shock waves. J. Comput. Phys. 229(4), 1213–1237 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  16. Karki, K.C., Patankar, S.V.: Pressure based calculation procedure for viscous flows at all speedsin arbitrary configurations. AIAA J. 27(9), 1167–1174 (1989). doi:10.2514/3.10242

    Article  Google Scholar 

  17. McGuirk, J.J., Page, G.J.: Shock capturing using a pressure-correction method. AIAA J. 28(10), 1751–1757 (1990). doi:10.2514/3.10470

    Article  Google Scholar 

  18. Mesinger, F., Arakawa, A. (eds.): Numerical methods used in atmospheric models, vol. 1. GARP Publication Series, No. 17, WMO/ICSU Joint Organizing Committee (1976)

  19. Morinishi, Y.: Skew-symmetric form of convective terms and fully conservative finite difference schemes for variable density low-mach number flows. J. Comput. Phys. 229(2), 276–300 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  20. Nagarajan, S., Lele, S.K., Ferziger, J.H.: A robust high-order compact method for large eddy simulation. J. Comput. Phys. 191(2), 392–419 (2003). doi:10.1016/S0021-9991(03)00322-X

    Article  MathSciNet  MATH  Google Scholar 

  21. Pandolfi, M.: Computation of steady supersonic flows by a flux-difference/splitting method. Comput. Fluids 13(1), 37–46 (1985)

    Article  MATH  Google Scholar 

  22. Roe, P.: Approximate riemann solvers, parameter vectors, and difference schemes. J. Comput. Phys. 43(2), 357–372 (1981). doi:10.1016/0021-9991(81)90128-5

    Article  MathSciNet  MATH  Google Scholar 

  23. Shu, C.W., Osher, S.: Efficient implementation of essentially non-oscillatory shock-capturing schemes. J. Comput. Phys. 77(2), 439–471 (1988)

    Article  MathSciNet  MATH  Google Scholar 

  24. Shyy, W., Braaten, M.: Adaptive grid computation for inviscid compressible flows using a pressure correction method. In: AIAA, ASME, SIAM and APS, National Fluid Dynamics Congress, pp. 112–120 (1988). http://adsabs.harvard.edu/abs/1988aiaa.conf..112S

  25. Sod, G.A.: A survey of several finite difference methods for systems of nonlinear hyperbolic conservation laws. J. Comput. Phys. 27(1), 1–31 (1978)

    Article  MathSciNet  MATH  Google Scholar 

  26. Toro, E.F.: Riemann Solvers and Numerical Methods for Fluid Dynamics: A Practical Introduction. Springer, Berlin (2009)

    Book  MATH  Google Scholar 

  27. Van Doormaal, J.P., Raithby, G.D., McDonald, B.H.: The segregated approach to predicting viscous compressible fluid flows. J. Turbomach. 109(2), 268–277 (1987). doi:10.1115/1.3262097

    Article  Google Scholar 

  28. von Neumann, J., Richtmyer, R.D.: A method for the numerical calculation of hydrodynamic shocks. J. Appl. Phys. 21(3), 232–237 (1950). doi:10.1063/1.1699639

    Article  MathSciNet  MATH  Google Scholar 

  29. Wenneker, I., Segal, G., Wesseling, P.: Computation of compressible flows on unstructured staggered grids. In: O\(\tilde{{\rm n}}\)ate, E.O., Bugeda, G. Suárez, B. (eds.) Proceedings European Congress on Computational Methods in Applied Sciences and Engineering, ECCOMAS, vol. 2 (2000)

  30. Wilkins, M.L.: Use of artificial viscosity in multidimensional fluid dynamic calculations. J. Comput. Phys. 36(3), 281–303 (1980). doi:10.1016/0021-9991(80)90161-8

    Article  MathSciNet  MATH  Google Scholar 

  31. Zalesak, S.T.: Fully multidimensional flux-corrected transport algorithms for fluids. J. Comput. Phys. 31(3), 335–362 (1979). doi:10.1016/0021-9991(79)90051-2

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Andrea Perrotta.

Appendices

Appendix 1: Control of Spurious Oscillations via Artificial Dissipation

A centered flux computation gives a second order approximation of derivatives, then in presence of discontinuities it is well known that spurious oscillations are bound to appear. In order to reduce this numerical effect, we introduce artificial diffusion terms which smear the solution. The idea is to solve an approximated Riemann problem, for the sake of clarity we consider a one dimensional scalar conservation law

$$\begin{aligned} \frac{\partial u}{\partial t} + \frac{\partial f(u)}{\partial x} = 0 \end{aligned}$$
(68)

where \(u \in {\mathbb {R}}\) is the conserved variable and \(f:{\mathbb {R}} \rightarrow {\mathbb {R}}\) is the flux.

In presence of a discontinuity we know that this singularity propagates following the eigenvalues of the jacobian matrix \(\partial f / \partial u\), that in this case is only one. If a is an approximation of the jacobian \(\partial f / \partial u\) at the discontinuity abscissa \(x_{d}\) and \(u_{L}\) and \(u_{R}\) are respectively the left and right value of the discontinuity, then

$$\begin{aligned} u(x_{d}, t) = {\left\{ \begin{array}{ll} u_{L}, &{} \text {if a > 0} \\ u_{R}, &{} \text {if a < 0} \end{array}\right. } \end{aligned}$$
(69)

is the solution of the approximate Riemann problem. When the problem is not scalar and there are more than one eigenvalues, things get more complicated and several jacobian matrix approximations were proposed. However, if we consider a finite volume discretization, the flux computation is always written as follows:

$$\begin{aligned} f_{j+\frac{1}{2}} = \frac{f_{j + 1} + f_{j}}{2} - d_{j+\frac{1}{2}}, \end{aligned}$$
(70)

where \(d_{j + 1 / 2} = |a_{j + 1 / 2} |(u_{j+1} - u_{j}) / 2\) is the so-called dissipative term and it is characterized by the approximation of the jacobian, see [13]. These schemes belong to the class of linear upstream schemes which contain a large amount of dissipation [12]. In order to reduce this effect, we want to build a control function that enables a scheme with artificial dissipation to reach the second order of accuracy.

When the system of conservation laws is the Euler equations system, the jacobian matrix has three distinct eigenvalues: \(u - a\), u and \(u + a\); where a is the speed of sound. As we said there are several approximations of \(\partial \mathbf {F} / \partial \mathbf {U}\) where \(\mathbf {U} = \begin{bmatrix} \rho , m, \rho E\end{bmatrix}\) and \(\mathbf {F} = \begin{bmatrix} m, um + p, \rho u H \end{bmatrix}\). In this appendix we approximate the propagation velocity \(a_{j + 1 / 2}\), which is actually a family of characteristics, with the maximum absolute value of the eigenvalues of the jacobian \(\partial \mathbf {F} / \partial \mathbf {U}\) over the cells j and \(j+1\), that is

$$\begin{aligned} a_{j+\frac{1}{2}} = \max \left\{ \rho \left( \frac{\partial \mathbf {F}_{j}}{\partial \mathbf {U}}\right) , \rho \left( \frac{\partial \mathbf {F}_{j+1}}{\partial \mathbf {U}} \right) \right\} , \end{aligned}$$

where \(\rho \left( \partial \mathbf {F} / \partial \mathbf {U}\right) \) is the spectral radius of the jacobian, in this case it reduces to \(\max \{ |u\pm a |, |u |\} = |u | + a\). The numerical propagation velocity is therefore given by

$$\begin{aligned} a_{j+\frac{1}{2}} = \max \left\{ |u_{j} | + a_{j}, |u_{j+1} |+ a_{j+1}\right\} \end{aligned}$$
(71)

and the flux with this kind of dissipation is referred to as Rusanov flux [26]. Instead of using the simple average of the fluxes \(F_{j}\) and \(F_{j+1}\) as centered high order flux, we can use whatever high order flux \(F^{HI}\). The collocated TVD flux has therefore the following form:

$$\begin{aligned} F_{j+\frac{1}{2}}^{TVD} = F^{HI}_{j+\frac{1}{2}} - \frac{1}{2}a_{j+\frac{1}{2}} \phi _{j+\frac{1}{2}}(U_{j+1} - U_{j}), \end{aligned}$$
(72)

where \(\phi \) is a dissipation multiplier or oscillations control function, which is inherited by TVD methods for linear problems.

Remark 3

The control function \(s_{j + 1 / 2}\) needs two quantities: \(c = a_{j + 1 / 2}\varDelta t / h\) and r; the former is the local Courant number and the latter is the ratio of the slopes of the quantity, whose we want to check the oscillations, for instance the density \(\rho \).

When staggered variables are considered, we can not define the flux and consequently the jacobian in a single point of the discretization. A different approach from the approximation of the propagation speed will be used in this situation. We introduce a staggered version of the upwind scheme, as in [29], thereby taking advantage of the dissipative term that will appear. The momentum flux is

$$\begin{aligned} \begin{aligned} f_{j}^{m}&= u_{j} m_{j}\\&= u_{j}\frac{m_{j+\frac{1}{2}} + m_{j-\frac{1}{2}}}{2} - \frac{ |u_{j} |}{2}(m_{j+\frac{1}{2}} - m_{j-\frac{1}{2}}) + p_{j}, \end{aligned} \end{aligned}$$
(73)

which yields the following discretization of the momentum equation

$$\begin{aligned} m_{j+\frac{1}{2}}^{n+1} = m_{j+\frac{1}{2}}^{n} - \frac{\varDelta t}{h} \left[ f_{j+1}^{m} - f_{j}^{m}\right] . \end{aligned}$$
(74)

This value, \(m_{j + 1 / 2}^{n+1}\), enables us to define the staggered velocity:

$$\begin{aligned} u_{j+\frac{1}{2}} = \frac{m_{j+\frac{1}{2}}^{n+1}}{\overline{\rho }_{j+\frac{1}{2}}} = \frac{2m_{j+\frac{1}{2}}^{n+1}}{\rho _{j+1} + \rho _{j}}; \end{aligned}$$

which is used within the mass and energy discretization.

The density and energy flux become, respectively,

$$\begin{aligned} f_{j+\frac{1}{2}}^{\rho }= & {} u_{j+\frac{1}{2}} \frac{\rho _{j+1} + \rho _{j}}{2} - \frac{ |u_{j+\frac{1}{2}} |}{2}(\rho _{j+1} - \rho _{j}). \end{aligned}$$
(75)
$$\begin{aligned} f_{j+\frac{1}{2}}^{\rho E}= & {} u_{j+\frac{1}{2}} \frac{\rho H_{j} + \rho H_{j+1}}{2} - \frac{ |u_{j+\frac{1}{2}} |}{2}(\rho H_{j+1} - \rho H_{j}). \end{aligned}$$
(76)

where \(\rho H\) is the enthalpy. Replacing the centered terms of the fluxes with whatever high order reconstruction you want and multiplying each dissipative term by the dissipation control function, we have:

$$\begin{aligned} f_{j+\frac{1}{2}}^{\rho }&= m_{j+\frac{1}{2}} - \frac{1}{2}\phi _{j+\frac{1}{2}} |u_{j+\frac{1}{2}} |(\rho _{j+1} - \rho _{j}) \end{aligned}$$
(77a)
$$\begin{aligned} f_{j}^{m}&= \overline{u}_{j}\overline{m}_{j} + p_{j} - \frac{1}{2}\phi _{j} |u_{j} |(m_{j+\frac{1}{2}} - m_{j-\frac{1}{2}}) \end{aligned}$$
(77b)
$$\begin{aligned} f_{j+\frac{1}{2}}^{\rho E}&= \frac{1}{2} \left. \overline{\overline{m} \widetilde{uu}}\right| _{j+\frac{1}{2}} + \frac{\gamma }{\gamma - 1}u_{j+\frac{1}{2}}\overline{p}_{j+\frac{1}{2}} - \frac{1}{2} \phi _{j+\frac{1}{2}} |u_{j+\frac{1}{2}} |(\rho H_{j+1} - \rho H_{j}); \end{aligned}$$
(77c)

keeping in mind that we have to solve the momentum equation first and then the mass and energy one.

Remark 4

Within (77) we see \(\phi _{j + 1 / 2}\) and \(\phi _{j}\); the former is computed in the same way as in the collocated case, the latter checks the momentum oscillations, instead of density, because at the interface where it is applied we have only momentum variations, so its arguments are: \(c = u_{j}\varDelta t / h\) and r computed over m.

Appendix 2: Time Integration

If a semi-discrete scheme is built, a time integration is mandatory to solve the problem. Moreover, if the flux computation is based on centered averages, in order to ensure the stability of the scheme, a single forward step is not enough. Let us go through this problem and consider a model problem like the scalar advection equation with the following numerical flux

$$\begin{aligned} f_{j+\frac{1}{2}} = \frac{1}{2}(1+\phi _{j+\frac{1}{2}})au_j^n + \frac{1}{2}(1-\phi _{j+\frac{1}{2}}) a u_{j+1}^n. \end{aligned}$$
(78)

Let \(\{u_{j}\}_{j=1}^{N}\) be the vector of unknowns. Since the semi-discrete scheme has this form

$$\begin{aligned} \begin{aligned} \frac{du_{j}}{dt}&= -\frac{1}{2h}\left[ a\frac{u_{j+1} - u_{j-1}}{2} -\phi _{j+\frac{1}{2}} |a |(u_{j+1} - u_{j}) + \phi _{j-\frac{1}{2}} |a |(u_{j} - u_{j-1})\right] \\&= \frac{1}{2h}\left( -a + \phi _{j+\frac{1}{2}} |a |\right) u_{j+1} - \frac{ |a |}{2h}\left( \phi _{j+\frac{1}{2}} + \phi _{j-\frac{1}{2}}\right) u_{j} + \frac{1}{2h}\left( a + \phi _{j-\frac{1}{2}} |a |\right) u_{j-1}, \end{aligned} \end{aligned}$$

under the hypothesis that we are observing a compactly supported wave, we can rewrite the scheme like an ODE system

$$\begin{aligned} \frac{d}{dt} \begin{bmatrix} u_{1} \\ u_{2} \\ u_{3} \\ \vdots \\ u_{N-1} \\ u_{N} \end{bmatrix} = \begin{bmatrix} \alpha&\beta \\ \gamma&\alpha&\beta \\&\gamma&\ddots&\ddots \\&\ddots&\alpha&\beta \\&&\gamma&\alpha&\beta \\&&\gamma&\alpha \end{bmatrix} \begin{bmatrix} u_{1} \\ u_{2} \\ u_{3} \\ \vdots \\ u_{N-1} \\ u_{N} \end{bmatrix}, \end{aligned}$$
(79)

where \(\alpha = - |a | / (2h)(\phi _{j + 1 / 2} + \phi _{j - 1 / 2})\), \(\beta = 1/ (2h) (a + \phi _{j - 1 / 2} |a |)\) and \(\gamma = 1 / (2h) (-a + \phi _{j + 1 / 2} |a |)\). Now, it is possible to study the stability analyzing the eigenvalues of the space discretization operator.

Lemma 1

Let be \(A\in {\mathbb {R}}^{m\times m}\) a tridiagonal matrix with the main diagonal made up of a’s, the upper diagonal of b’s and the lower diagonal of c’s. Then it admits m eigenvalues of the form

$$\begin{aligned} \lambda _{s} = a + 2\sqrt{bc}\cos \left( \frac{\pi s}{m + 1}\right) \end{aligned}$$

for \(s = 1,\dots , m\).

The proof is a straightforward computation and it is omitted.

Here the operator is a tridiagonal matrix, whose eigenvalues are always

$$\begin{aligned} \lambda _{s} = \alpha + 2\sqrt{\beta \gamma }\cos \left( \frac{\pi s}{N+1}\right) \quad \text {for}\, s=1,\dots ,N \end{aligned}$$

thanks to Lemma 1. We want to localize these eigenvalues on the complex plane, so let us analyze the square root that could give a non-trivial imaginary part. Suppose that a is positive, for negative a it would have been the same, then

$$\begin{aligned} \sqrt{\beta \gamma } = \frac{a}{2h}\sqrt{z(\phi _{j+\frac{1}{2}}, \phi _{j-\frac{1}{2}})} \end{aligned}$$

where \(z(u,t) = ut - 1 + u - t\). Since \(0 \le \phi \le 1\), z is always not-positive so we have complex eigenvalues, which lie in the image of \(\mathopen [0,1\mathclose ]^{2} \times \left\{ 1, \dots , N \right\} \) mapped by the following transformation

$$\begin{aligned} (u,t,\phi ) \rightarrow \frac{a}{2h}\left( -(u + t), \sqrt{-z(u,t)}\cos \left( \frac{\pi s}{N+1}\right) \right) . \end{aligned}$$
(80)

In order to establish whether a time integration scheme is stable or not, we need to find its region of absolute stability.

Let us introduce a Runge–Kutta type TVDFootnote 2 time discretization proposed by Gottlieb and Shu in [10]:

  • the second order RK2-TVD is

    $$\begin{aligned} \begin{aligned} u^{(1)}&= u^{n} + \varDelta t {\mathrm {L}}u^{(n)} \\ u^{n+1}&= \frac{1}{2}u^{n} + \frac{1}{2}u^{(1)} + \frac{1}{2}\varDelta t {\mathrm {L}}u^{(1)} \end{aligned} \end{aligned}$$
    (81)

    with a unitary CFL condition,

  • the third order RK3-TVD is

    $$\begin{aligned} \begin{aligned} u^{(1)}&= u^{n} + \varDelta t {\mathrm {L}}u^{(n)} \\ u^{(2)}&= \frac{3}{4}u^{n} + \frac{1}{4}u^{(1)} + \frac{1}{4}\varDelta t {\mathrm {L}}u^{(1)} \\ u^{n+1}&= \frac{1}{3}u^{n} + \frac{2}{3}u^{(2)} + \frac{2}{3}\varDelta t {\mathrm {L}}u^{(2)} \end{aligned} \end{aligned}$$
    (82)

    with a unitary CFL condition.

Given the following IVP

$$\begin{aligned} {\left\{ \begin{array}{ll} \frac{{\mathrm {d}}}{{\mathrm {d}}t}u(t) = \lambda u(t) \\ u(0) = u_{0} \end{array}\right. } \end{aligned}$$
(83)

where \(\lambda \in {\mathbb {C}}^{-}\), whose exact solution tends to zero when t tends to infinity, we can handle the absolute stability of a time integration scheme with this definition.

Definition 1

(Absolute Stability Region) A time integration scheme is said to be absolutely stable if its provided solution for the model problem (83) is such that

$$\begin{aligned} \lim _{t\rightarrow \infty }|u^{n}| = 0. \end{aligned}$$

Rewriting the scheme for the model problem as follows:

$$\begin{aligned} u^{n+1} = R(z)u^{n} \end{aligned}$$

where \(z = \lambda \varDelta t\) and R is a function that characterize the scheme; we have that a value of z such that \( |R(z) | < 1\) gives a stable scheme. Therefore the absolute stability region is

$$\begin{aligned} {\mathscr {A}} = \left\{ z \in {\mathbb {C}}: |R(z) | < 1 \right\} . \end{aligned}$$
(84)

Proposition 3

The absolute stability regions of the schemes defined above are

$$\begin{aligned} {\mathscr {A}}_{\text {RK2-TVD}}&= \left\{ z\in {\mathbb {C}} : |1 + z + \frac{z^{2}}{2} | < 1 \right\} \end{aligned}$$
(85)
$$\begin{aligned} {\mathscr {A}}_{\text {RK3-TVD}}&= \left\{ z\in {\mathbb {C}} : |1 + z + \frac{z^{2}}{2} + \frac{z^{3}}{6} | < 1 \right\} . \end{aligned}$$
(86)

Proof

Let \({\mathrm {L}}u^{n} = \lambda u^{n}\) be the operator so that the discretization (81) becomes

$$\begin{aligned} \begin{aligned} u^{(1)}&= (1 + z)u^{n} \\ u^{n+1}&= \frac{1}{2} u^{n} + \frac{1}{2} u^{(1)} + \frac{z}{2}u^{(1)} \\&= \frac{1}{2}u^{n} + \frac{1}{2}(1 + z) u^{n} + \frac{z}{2}(1 + z) u^{n} \\&= \left( 1 + z + \frac{z^{2}}{2} \right) u^{n}. \end{aligned} \end{aligned}$$

Similarly for the scheme (82) we get

$$\begin{aligned} u^{n+1} = \left( 1 + z + \frac{z}{2} + \frac{z^{3}}{6} \right) u^{n} \end{aligned}$$

and the proposition is thus proved. \(\square \)

The purpose of this section is to establish which is the most useful time integration scheme to solve the system (79). Thus, we have to compare the position of each eigenvalue with the absolute stability region shown above. We have seen that the eigenvalues lie into a region delineated by the transformation (80) conveniently scaled by \(\varDelta t\), therefore it is sufficient to check whether this region is included into a stability region or not. RK3-TVD includes all the eigenvalues even though they would be all pure imaginary numbers. On the other hand, RK2-TVD does not include the whole eigenvalues region but it spares a lot of computation and has a, not included, tiny region extremely close to the imaginary axis. Thus, the eigenvalues hardly fall outside the RK2-TVD stability region.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Perrotta, A., Favini, B. A Second-Order Finite-Volume Scheme for Euler Equations: Kinetic Energy Preserving and Staggering Effects. J Sci Comput 71, 166–194 (2017). https://doi.org/10.1007/s10915-016-0295-5

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10915-016-0295-5

Keywords

Mathematics Subject Classification

Navigation