Slow-moving shock test

This test problem demonstrates the extent to which post-shock oscillations are controlled in slowly-moving shocks. This effect can be exhibited in all Godunov codes, even with first-order methods, for sufficiently slow-moving shocks across the computational grid (Jin & Liu, 1996)1.

The shock flattening method of (Colella & Woodward, 1984)2 (implemented in our code in modified form) reduces the oscillations, but does not completely suppress them. Adding artificial viscosity according to the method of (Colella & Woodward, 1984)2, even to the level of smoothing the contact discontinuity by 5-10 cells, does not cure the problem.

Parameters

The left- and right-side initial conditions are (Quirk, 1994)3:

\[\begin{aligned} \rho_0 = 3.86 \\ v_{x,0} = -0.81 \\ P_0 = 10.3334 \\ \rho_0 = 1.0 \\ v_{x,0} = -3.44 \\ P_0 = 1.0 \end{aligned}\]

The shock moves to the right with speed \(s = 0.1096\).

Solution

We use the RK2 integrator with a fixed timestep of \(10^{-3}\) and a mesh of 100 equally-spaced cells. The contact discontinuity is initially placed at \(x=0.5\).

The density is shown as the solid blue line. The exact solution is the solid orange line.


  1. Jin, S., & Liu, J.-G. (1996). The Effects of Numerical Viscosities. I. Slowly Moving Shocks. Journal of Computational Physics, 126(2), 373–389. https://doi.org/10.1006/jcph.1996.0144 

  2. Colella, P., & Woodward, P. R. (1984). The Piecewise Parabolic Method (PPM) for Gas-Dynamical Simulations. Journal of Computational Physics, 54, 174–201. https://doi.org/10.1016/0021-9991(84)90143-8 

  3. Quirk, J. J. (1994). A contribution to the great Riemann solver debate. International Journal for Numerical Methods in Fluids, 18(6), 555–574. https://doi.org/10.1002/fld.1650180603