1 Introduction

Until fairly recently, three basic patterns of reflection were recognized for the reflection of weak to moderately strong shocks off a plane wedge: regular reflection, Mach reflection, and von Neumann reflection. These patterns are shown schematically in Fig. 1. The kind of reflection that occurs depends on the values \((M, \theta , \gamma ),\) where \(M, \theta , \gamma \) are the incident shock Mach number, the wedge angle, and the fluid specific heat ratio, respectively. In regular reflection (Fig. 1a), which occurs for large wedge angles or weak shocks, the incident shock and reflected shock meet at the wedge wall. As the wedge angle decreases, there is a transition to Mach reflection (Fig. 1b), in which the reflection point moves off the wall and an additional shock, the Mach shock, joins the incident and reflected shocks to the wall. The point where the three shocks meet is called the triple point; its trajectory makes a constant angle \(\chi \) with respect to the wall, as shown in Fig. 1b. A contact discontinuity emanates from the triple point, separating flow that has been processed by two shocks from flow that has passed through a single shock. At the triple point, there is a discontinuity in the slope of the incident-Mach shock, as illustrated in Fig. 1b. For weak shocks and small wedge angles (Fig. 1c), three shocks are still clearly observed in experiments. However, the contact discontinuity typically disappears in these experiments, and the slope appears to be continuous at the triple point. This pattern is known as von Neumann reflection, or weak irregular reflection.

Fig. 1
figure 1

Shock reflection geometries. Regular reflection is depicted in (a), Mach reflection in (b), and von Neumann (weak irregular) reflection in (c). \(I\) is the incident shock, \(R\) is the reflected shock, \(M\) is the Mach shock, \(T\) is the triple point, and \(c.d.\) is the contact discontinuity. \(\chi \) is the triple point trajectory angle

The classical theory which describes regular and Mach reflection is called two-shock and three shock theory, respectively, and is due to von Neumann [16]. For regular and Mach reflection, agreement between the theory and experiment is good for a wide range of conditions. The case of weak shocks, though, is special: the von Neumann theory shows that three-shock solutions do not exist, while experiments clearly show the reflection pattern sketched in Fig. 1c, containing three shock waves. This discrepancy has come to be known as the von Neumann paradox. There have been a number of approaches taken over the years in attempts to resolve the paradox, as described in [6, 8, 15]. The most intriguing of these was the suggestion by Guderley in 1947 that there may be an additional wave—an expansion fan—at the triple point in an inviscid weak shock Mach reflection. Guderley’s proposed solution in [3] contained a supersonic patch at the triple point, and he demonstrated that one could construct local solutions in which constant states are separated by three shock waves and an expansion fan centered at the triple point. However, his solution was not observed in experiments (as explained below), and was largely disregarded until recently.

In the last decade and a half, a number of numerical studies using special techniques to resolve the flowfield near the triple point have found evidence of Guderley’s proposed supersonic patch and expansion fan. Numerical solutions of the unsteady transonic small disturbance (UTSD) equations by Hunter and Brio [5, 6], and solutions of the Euler equations under von Neumann paradox conditions by Vasil‘ev and Kraiko [14, 15], both contained a supersonic patch. A schematic of a solution by Vasil‘ev and Kraiko, obtained using a monotone second-order Godunov scheme with a moving curvilinear grid adapted to the flow in the triple point neighborhood, is shown in Fig. 2. The solution, with the sonic line dashed, shows a clearly defined supersonic patch and an expansion fan centered at the triple point. (This solution was obtained for a relatively strong weak shock with \(M_s=1.47\), explaining the clearly visible contact discontinuity.) The results obtained in [6] were similar, except for the absence from the picture of contact discontinuities, since the UTSD does not admit linear waves. A similar study by Zakharian et al. [17] using the Euler equations also resulted in similar findings. All of these solutions appear to show that there is a single supersonic patch and a single centered expansion fan, as originally proposed by Guderley, with a continuous transition from supersonic to subsonic flow at the rear of the patch.

Fig. 2
figure 2

A schematic of the solution found in [15] (the single-patch structure with continuous transition). The flow “inside” the sonic line and behind the triple point is supersonic. The size of the supersonic region found in [15] was several thousandths of the total dimension of the perturbed flow region, making it extremely difficult to observe numerically. \(I\) is the incident shock, \(R\) is the reflected shock, \(M\) is the Mach shock, \(T\) is the triple point, and \(c.d.\) is the contact discontinuity

Following the detection of a supersonic patch in [6], work was undertaken in [11] to develop a new numerical method to solve the UTSD equations written in self-similar coordinates, with the aim being to improve the resolution obtainable near the triple point in weak shock reflections. A depiction of a result from [11], obtained by solving the equations written in self-similar coordinates on a sequence of stationary, successively refined grids, is shown in Fig. 3. Unlike the solutions just described, this solution shows a sequence of triple points and supersonic patches between the sonic line and the Mach shock, with each patch terminated by a shock. The terminating shock to each patch results in a new triple point, and a new four-wave pattern. It was conjectured in [11] that this sequence is infinite for an inviscid weak shock reflection. Since the detection of this multiple patch structure in [11], the same phenomenon has been found in solutions of the nonlinear wave system in [12], and, more recently, in the compressible Euler equations in [13].

All of these solutions—obtained by several different groups and using various methods and equations—show that there is a tiny supersonic region, including at least one expansion fan, behind the triple point in a shock wave reflection in the von Neumann paradox regime. The extremely small size of the region, on the order of several thousandths of the total dimension of the perturbed flow, explains why it had not been observed earlier.

Fig. 3
figure 3

A schematic of the solution found in [11] (the multiple-patch structure with discontinuous transition). There is a sequence of supersonic patches and expansion fans behind the leading triple point. Each patch is terminated by a shock, resulting in a new triple point and a new expansion fan. \(I\) is the incident shock \(R\) is the reflected shock, and \(T_i\) are the triple points

On the experimental front, following the announcement of the multiple patch structure in [11], Skews and Ashworth [8] carried out experiments with a large-scale shock tube, and succeeded in observing a tiny shocklet behind the triple point in a weak shock Mach reflection, as predicted by the numerics in [11]. The large-scale shock tube enabled them to generate Mach reflections with Mach shock lengths an order of magnitude larger than those of a conventional shock tube, thus allowing the region behind the triple point to be resolved, and the supersonic patch to be observed for the first time. Some experiments gave indications of at least one more shocklet, but they are near the limit of experimental resolution. In [9], Skews et al. extended this earlier investigation with an enhanced photographic setup in order to obtain better images than those presented in [8]. The vast majority of the several hundred images taken in this work showed the primary supersonic patch and indications of the first terminating shocklet, with a number of images showing indications of further shocklets and expansions, leading the authors to conclude that the experiments provided “very clear evidence of the existence of multiple supersonic patches.”

More recently, Skews and Cachuco in [10] carried out experiments with a conventional, small-scale shock tube using a scheme of reflecting the Mach reflection several times off the ceiling and floor of the shock tube in order to obtain large “virtual” Mach shock lengths. The experiments succeeded in identifying the primary supersonic patch and expansion fan, but the majority of them did not show evidence of a terminating shocklet, or of any further features. Thus, in terms of the single and multiple patch structures discussed above, these experiments appeared to provide evidence of the single patch structure. In [9], Skews et al. had proposed that both types of reflection—the single and multiple patch geometries—might be possible under different sets of conditions. They cited as evidence the fact that the computations of Vasil‘ev and Kraiko, which had found a single patch structure, were obtained at an incident shock strength of \(M_s=1.47\), specific heat ratio of \(\gamma =5/3\), and wedge angle of \(12.5^\circ \), while the computations of Tesdall et al., which had found the multiple patch structure, used \(M_s=1.075, \,7/5,\) and \(15^\circ ,\) respectively. The experiments in [10] were carried out over a set of larger incident shock Mach numbers (\(1.1 \le M_s \le 1.4\)) than were used in the earlier experiments in [8] and [9], which had \(1.05 \le M_s \le 1.1\). Thus, these new experiments lent weight to the suggestion made in [9] that both reflection geometries might be valid under different conditions.

All of these numerical results and experimental studies confirm the existence of Guderley’s supersonic patch and expansion fan. However, there is a lack of agreement on the question of whether a shock terminates the supersonic patch (as occurs on a transonic airfoil), and on whether or not a sequence of such patches, each with a terminating shock, actually occurs. The multiple-patch structure has been found in solutions of the UTSD equations, the nonlinear wave system, and the full Euler equations, and it appears likely that a sequence of supersonic patches and triple points is a generic feature of some class of hyperbolic conservation laws, possibly characterized by “acoustic waves,” as proposed in [12]. A natural question is whether the single-patch structure is also typical in solutions, possibly in a different range of parameter values. In spite of the lack of agreement, the notion that both reflection geometries are possible under different conditions has become entrenched in the literature (see, for example, the book by Ben-Dor [1]).

The multiple-patch structure was named “Guderley Mach reflection” in [7], and in [9] it was suggested that the single-patch structure be referred to by the name “Guderley reflection.” The similarity of the names chosen for the two reflection geometries may have played a role in the lack of clarity which exists, up until the present time, on the question of the true nature of weak irregular reflection.

Clearly, whether or not both reflection geometries actually occur is an issue that deserves further study. It has been suggested that the occurrence of different reflection patterns in the numerical solutions in [13] and [15] may be due to the quite different conditions of the simulations, as noted above. In this paper, we obtain numerical solutions of the compressible Euler equations that are more finely resolved than those in [15], where a single-patch geometry was found. We use a third-order method based on quadratic reconstruction from cell averages and approximate Riemann solvers to solve the equations written in self-similar coordinates. In self-similar coordinates, solutions of the shock reflection problem are stationary, enabling us to solve the equations on coarse grids, project the solutions onto finer grids, and converge the solution on the fine grids. On our finest grid, using the same set of parameter values as was used in [15], we find the sequence of triple points and supersonic patches that is characteristic of the multiple-patch structure, that is, we find Guderley Mach reflection. We do not find evidence of the existence of the single-patch structure.

This paper is organized as follows. In Sect. 2, we describe the shock reflection problem for the compressible Euler equations. In Sect. 3, we give the details of the numerical method, and explain the grid structure and our strategy for converging solutions on successively refined grids. The numerical results we obtain are presented in Sect. 4. In Sect. 5 we discuss these results. Finally, in Sect. 6 we summarize our conclusions.

2 The Shock Reflection Problem

We consider the unsteady flow that develops in an inviscid gas when a plane shock wave \(I\) reflects off a wedge, as in Fig. 1. The incident shock is normal to the symmetry plane of the wedge, as indicated. The shock propagates to the right into quiescent gas with speed \(Mc,\) where \(M\) is the shock Mach number and \(c\) is the sound speed in the quiescent gas. The wedge apex angle is \(\theta \).

The Euler equations which describe the two-dimensional compressible inviscid flow of a gas are

$$\begin{aligned}&\rho _t + (\rho u)_x + (\rho v)_y =0, \nonumber \\&(\rho u)_t + (\rho u^2+p)_x +(\rho u v)_y = 0, \nonumber \\&(\rho v)_t + (\rho u v)_x + (\rho v^2 + p)_y = 0, \nonumber \\&(\rho e)_t + ((\rho e+p)u)_x + ((\rho e + p)v)_y = 0. \end{aligned}$$
(1)

Here, \(x\) and \(y\) are the Cartesian spatial coordinates with origin at the wedge apex, \(\rho \) is the density, \(u\) and \(v\) are the \(x\) and \(y\) velocity components, and \(e\) is the specific total energy (kinetic plus internal energy per unit mass). We obtain the pressure \(p\) from the ideal gas law,

$$\begin{aligned} p=(\gamma -1) \rho \varepsilon , \end{aligned}$$
(2)

where \(\varepsilon \) is the fluid’s specific internal energy, \(e=\frac{1}{2}(u^2+v^2) + \varepsilon \), and \(\gamma \) is the constant ratio of specific heats. We take \(\gamma =5/3\), corresponding to an ideal monatomic gas. The shock reflection problem consists of (1)–(2) together with Riemann data corresponding to a vertical, plane incident shock hitting the wedge apex, \(x=0\), \(y=0\), at \(t=0\). This Riemann data consists of two constant states separated by a jump discontinuity. Letting \(U(x,y,t)\) denote the solution state in primitive variables, the Riemann initial data takes the form

$$\begin{aligned}&U(x,y,0) = \left\{ \begin{array}{ll} U_L \equiv (\rho _L,u_L,0,p_L)&{}\quad \text{ if } x < 0,\\ U_R \equiv (\rho _R,0,0,p_R)&{} \quad \text{ if } x \ge 0. \end{array}\right. \end{aligned}$$
(3)

Here, the left-hand and right-hand states satisfy the Rankine–Hugoniot conditions for a shock with Mach number \(M\). The flow tangency boundary condition,

$$\begin{aligned} \mathbf {v} \cdot \mathbf {n}=0, \end{aligned}$$
(4)

applies at the wedge wall, where \(\mathbf {v}=(u,v)\) is the fluid’s vector velocity and \(\mathbf {n}\) is the perpendicular unit normal vector of the wall. Sufficiently far above the wall the incident shock propagates to the right with location given by

$$\begin{aligned} x = (M c) t, \end{aligned}$$
(5)

where \(c\) is the sound speed in the fluid ahead of the shock at state \(U_R\).

The solution to problem (1)–(4) is self-similar, so it depends only on the similarity variables

$$\begin{aligned} \xi = \frac{x}{t}, \qquad \eta = \frac{y}{t}. \end{aligned}$$

If we write (1) in the form

$$\begin{aligned} U_t + F_x + G_y = 0, \end{aligned}$$
(6)

where

$$\begin{aligned}&U=(\rho ,\rho u, \rho v, \rho e)^\mathrm{T}, \quad F=(\rho u,\rho u^2 + p,\rho u v, \rho u e + up)^\mathrm{T}, \\&\text{ and } \quad G=(\rho v,\rho u v, \rho v^2+p, \rho v e + vp)^\mathrm{T}, \end{aligned}$$

and change variables in (6) from \(x, y,\) and \(t\) to \(\xi \) and \(\eta \), we obtain

$$\begin{aligned} - \xi U_{\xi } - \eta U_{\eta } + F_{\xi } + G_{\eta } = 0. \end{aligned}$$
(7)

Equation (7) is hyperbolic when \(c^2 < \bar{u}^2 + \bar{v}^2\), corresponding to supersonic flow in a self-similar coordinate frame, and of mixed type when \(c^2 > \bar{u}^2 + \bar{v}^2\), corresponding to subsonic flow, where \(\bar{u}=u-\xi , \bar{v}=v-\eta \). Here, \(c=\sqrt{\gamma p/\rho }\) is the local sound speed. The sonic line is given by

$$\begin{aligned} \bar{u}^2 + \bar{v}^2 = c^2. \end{aligned}$$
(8)

We define a local self-similar Mach number \(\widetilde{M}\),

$$\begin{aligned} \widetilde{M}^2 = \frac{\bar{u}^2+\bar{v}^2}{c^2}. \end{aligned}$$
(9)

When \(\widetilde{M}>1\), the flow is supersonic, and when \(\widetilde{M}<1\) the flow is subsonic.

For a given value of \(\gamma \), there are two parameters in the shock reflection problem: the wedge angle \(\theta \) and the shock strength, which we parameterize by the shock Mach number \(M\). For small wedge angles and sufficiently small shock strengths, Mach reflection is impossible according to the von Neumann three-shock theory. This ‘triple-point paradox’ regime is the main area of interest of this paper.

3 The Numerical Method

The two dimensional Euler equations given in (1) can be written in compact divergence form

$$\begin{aligned} \frac{\partial \varvec{u}}{\partial t} + \nabla _{\varvec{x}}\cdot \varvec{f} = \varvec{0}, \end{aligned}$$

where the vector of states \(\varvec{u}\) and associated flux \(\varvec{f}\) are given by

$$\begin{aligned} \varvec{u} = \begin{pmatrix} \rho \\ \rho u\\ \rho v\\ \rho e\\ \end{pmatrix},\quad \varvec{f} = \begin{pmatrix} \rho \varvec{v}\\ \rho u\varvec{v} + p\,\varvec{e}_x\\ \rho v\varvec{v} + p\,\varvec{e}_y\\ (\rho e+p)\varvec{v}\\ \end{pmatrix}. \end{aligned}$$

Here we use \(\varvec{e}_x\) and \(\varvec{e}_y\) to denote the two dimensional standard basis vectors and \(\nabla _{\varvec{x}} = \varvec{e}_x\,\partial /\partial x + \varvec{e}_y\,\partial /\partial y\). Our goal is to seek self-similar solutions to the Euler equations. For \(t>0\), scaling variables \(\xi = x/t\), \(\eta = y/t\) and setting \(\tau = \log \, t\) allows us to write the Euler equations in self-similar form

$$\begin{aligned} \frac{\partial \varvec{u}}{\partial \tau } + \nabla _{\varvec{\xi }}\cdot \left( \varvec{f}-\varvec{\xi }\varvec{u}\right) + 2\varvec{u} = \varvec{0}, \end{aligned}$$
(10)

where now we use the notation \(\varvec{\xi } = \xi \,\varvec{e}_x+\eta \,\varvec{e}_y\) and \(\nabla _{\varvec{\xi }} = \varvec{e}_x\,\partial /\partial \xi + \varvec{e}_y\,\partial /\partial \eta \). A self-similar solution is a solution to (10) which is independent of \(\tau \); i.e., \(\varvec{u} = \varvec{u}(\xi ,\eta )\).

We create a two dimensional wedge type grid by employing a simple conformal map which takes a parameter rectangle in complex \(w\)-space to computational variables given by \(z = \xi + i\eta \) via

$$\begin{aligned} z = e^{i\theta }\, w^{1-\theta /\pi }. \end{aligned}$$
(11)

The wedge angle, \(\theta \), is measured in radians. The ramp boundary in \((\xi ,\eta )\) corresponds to complex \(w\) with \(\mathrm {Im}(w)=0\). The upper, left and right computational boundaries are given by grid extent parameters \(\mathrm {Im}(w) = t > 0\), \(\mathrm {Re}(w) = l < 0\) and \(\mathrm {Re}(w) = r > 0\) respectively. Values for \(l\), \(r\) and \(t\) are taken so that the computational domain encompasses all expected flow structure except for the incident shock. See Fig. 4. The remainder of \(w\) parameter space is partitioned into a stretched Cartesian grid yielding the logically rectangular and locally orthogonal \((\xi ,\eta )\) grid depicted in the figure. We will say more about the specifics of grid stretching later in this section.

Fig. 4
figure 4

A typical computational grid. The gray lines depict the expected wave structure of the computed solution. The small box near the shock triple point indicates where the grid will be greatly refined

The self-similar Euler equations (10) are discretized by a fairly traditional high order finite volume method which is now described. The basic atom of a finite volume approximate solution is the cell average. Integrate the differential equation (10) over a typical cell \(\varOmega _{i,j}\) (see Fig. 5), and apply the divergence theorem to obtain

$$\begin{aligned} \frac{d }{d \tau } \bar{\varvec{u}}_{i,j} + \frac{1}{|\varOmega _{i,j}|}\int _{\partial \varOmega _{i,j}} \left( \varvec{f}-\varvec{\xi }\varvec{u}\right) \cdot \varvec{n}\,dS_{\varvec{\xi }} + 2\bar{\varvec{u}}_{i,j} = \varvec{0}, \end{aligned}$$
(12)

where \(\bar{\varvec{u}}_{i,j} = \frac{1}{|\varOmega _{i,j}|}\int _{\varOmega _{i,j}} \varvec{u}\,d\varvec{\xi }\) is the solution’s average value over cell \(\varOmega _{i,j}\).

Fig. 5
figure 5

A typical quadrilateral cell \(\varOmega _{i,j}\)

The total cell flux, represented by the surface integral above, is approximated by replacing each true flux, \(\left( \varvec{f}-\varvec{\xi }\varvec{u}\right) \cdot \varvec{n}\) along each cell face, by a consistent two point Roe type numerical flux function. This turns out to be quite easy for the Euler equations due to their rotational symmetry;

$$\begin{aligned} O\,\left( \varvec{f}(\varvec{u})-\varvec{\xi }\varvec{u}\right) \cdot \varvec{n} = \begin{pmatrix} \rho u_n \\ \rho u_n^2 + p \\ \rho u_n v_n \\ (\rho e + p)u_n\\ \end{pmatrix} -(\varvec{\xi }\cdot \varvec{n}) \begin{pmatrix} \rho \\ \rho u_n \\ \rho v_n \\ \rho e \\ \end{pmatrix}, \end{aligned}$$

where \(u_n = \varvec{u}\cdot \varvec{n}\), \(v_n = \varvec{u}\cdot \varvec{n}^\perp \), \(\varvec{n}^\perp =-n_y\varvec{e}_x+n_x\varvec{e}_y\), and orthogonal rotation matrix \(O\) given by

$$\begin{aligned} O = \begin{pmatrix} 1 &{}\quad 0 &{}\quad 0 &{}\quad 0\\ 0 &{}\quad n_x &{}\quad n_y &{}\quad 0\\ 0 &{}\quad -n_y &{}\quad n_x &{}\quad 0\\ 0 &{}\quad 0 &{}\quad 0 &{}\quad 1\\ \end{pmatrix}. \end{aligned}$$

Eigenvectors to the Jacobian of \(\left( \varvec{f}(\varvec{u})-\varvec{\xi }\varvec{u}\right) \cdot \varvec{n}\) are therefore rotations of the eigenvectors to the usual one-dimensional Euler flux evaluated at \(\rho \), \(\rho u_n\), \(\rho v_n\), \(\rho e\), and the eigenvalues are simply translated by \(-(\varvec{\xi }\cdot \varvec{n})\). A straightforward calculation yields right and left eigenvector matrices

$$\begin{aligned} R(\varvec{u}) = \begin{pmatrix} 1 &{}\quad 1 &{}\quad 0 &{}\quad 1 \\ u-cn_x &{}\quad u &{}\quad -n_y &{}\quad u+cn_x \\ v-cn_y &{}\quad v &{}\quad n_x &{}\quad v+cn_y \\ \alpha -c(\varvec{u}\cdot \varvec{n})&{}\quad \kappa &{}\quad \varvec{u}\cdot \varvec{n}^\perp &{}\quad \alpha +c(\varvec{u}\cdot \varvec{n})\\ \end{pmatrix}, \quad L(\varvec{u}) = R^{-1}(\varvec{u}), \end{aligned}$$

and associated eigenvalues

$$\begin{aligned} \lambda _1(\varvec{u}) = (\varvec{u}-\varvec{\xi })\cdot \varvec{n} - c,\ \ \lambda _2(\varvec{u}) = \lambda _3(\varvec{u}) = (\varvec{u}-\varvec{\xi })\cdot \varvec{n},\ \ \lambda _4(\varvec{u}) = (\varvec{u}-\varvec{\xi })\cdot \varvec{n} + c, \end{aligned}$$

where \(\kappa =\frac{1}{2}|\varvec{u}|^2\), \(\alpha = \kappa +\gamma \varepsilon \) and for a \(\gamma \)-law gas \(c = \sqrt{\gamma (\gamma -1)\varepsilon }\) is the sound speed.

We specify our numerical flux on a typical cell face \(S\) in \(\partial \varOmega _{i,j}\), and use the notation \(\varvec{u}^-\) and \(\varvec{u}^+\) to denote the inner and outer solution traces along \(S\) computed according to a quadratic reconstruction from cell averages formula described below. Also, let the shorter symbol \(\varvec{F}(\varvec{u})\) stand for \(\left( \varvec{f}(\varvec{u})-\varvec{\xi }\varvec{u}\right) \cdot \varvec{n}\) where the variable coefficient \(\varvec{\xi }\) is evaluated at the midpoint of \(S\). So, for each face \(S\) in \(\partial \varOmega _{i,j}\), our Roe type numerical flux takes the form

$$\begin{aligned} \int _{S} \left( \varvec{f}(\varvec{u})\!-\varvec{\xi }\varvec{u}\right) \cdot \varvec{n}\,dS_{\varvec{\xi }}\approx & {} \frac{|S|}{2}\left( \varvec{F}(\varvec{u}^-)\!+\varvec{F}(\varvec{u}^+) -R(\varvec{u}^*)\,|M_\varLambda (\varvec{u}^-,\varvec{u}^+)|\, L(\varvec{u}^*) (\varvec{u}^+-\varvec{u}^-)\right) \\\equiv & {} |S|\,\varvec{H}_{\varvec{F}}(\varvec{n},\varvec{u}^-,\varvec{u}^+), \end{aligned}$$

where for performance reasons the eigenvector matrices \(R\) and \(L\) are evaluated at the state midpoint \(\varvec{u}^* = \frac{1}{2}(\varvec{u}^-+\varvec{u}^+)\) as opposed to the true Roe average. As is known, the standard Roe scheme can admit spurious expansion shocks. This is dealt with following the seminal work of Harten and Hyman [4]. The diagonal Roe matrix \(|M_\varLambda (\varvec{u}^-,\varvec{u}^+)|\) is modified from its usual form as follows.

$$\begin{aligned}&|M_\varLambda (\varvec{u}^-,\varvec{u}^+)| = \text{ diag }( m_1, m_2, m_3, m_4 ),\\&m_1 = \max ( |\lambda _1(\varvec{u}^*)|, \lambda _1(\varvec{u}^*)-\lambda _1(\varvec{u}^-), \lambda _1(\varvec{u}^+)-\lambda _1(\varvec{u}^*)), \\&m_2 = m_3 = |\lambda _2(\varvec{u}^*)| = |\lambda _3(\varvec{u}^*)|, \\&m_4 = \max ( |\lambda _4(\varvec{u}^*)|, \lambda _4(\varvec{u}^*)-\lambda _4(\varvec{u}^-), \lambda _4(\varvec{u}^+)-\lambda _4(\varvec{u}^*)). \end{aligned}$$

The finite volume flux as outlined above might not obviously appear to be in conservation form. However, a careful inspection will reveal the fact that

$$\begin{aligned} \varvec{H}_{\varvec{F}}(\varvec{n},\varvec{u}^-,\varvec{u}^+)=-\varvec{H}_{\varvec{F}}(-\varvec{n},\varvec{u}^+,\varvec{u}^-), \end{aligned}$$

which should dispel such concerns.

It is well known that strictly upwind numerical fluxes can sometimes yield less than satisfactory results around strong, slowly moving, grid aligned, two dimensional shocks—the so-called carbuncle phenomenon. Roe’s flux, even with Harten and Hyman’s entropy modification, can exhibit this weakness. The robust but more dissipative Lax-Friedrichs flux is obtained by taking

$$\begin{aligned} m_1 = m_2 = m_3 = m_4 = |\varLambda |,\ \hbox {where }|\varLambda | \hbox { is larger than the flow's fastest wave speed,} \end{aligned}$$

and it does not suffer the carbuncle phenomenon. During this investigation, the Lax-Friedrichs flux was periodically switched on to serve as a check. We do not, however, display these more dissipative results in the Sect. 4 below.

We use the classic minmod function together with quadratic interpolation to construct trace values \(\varvec{u}^-\) and \(\varvec{u}^+\) at cell interfaces. Recall

$$\begin{aligned} \text{ minmod }(a,b) = {\left\{ \begin{array}{ll} a &{}\hbox {if } ab>0 \hbox { and } |a|\le |b|\\ b &{}\hbox {if } ab>0 \hbox { and } |b|<|a|\\ 0 &{}\hbox {otherwise}.\\ \end{array}\right. } \end{aligned}$$

For directions \(i\) and \(j\) in each cell \(\varOmega _{i,j}\) compute the following using the minmod function defined above component-wise for its vector argument. (\(l\)–left, \(r\)–right, \(b\)–bottom, \(t\)–top.)

$$\begin{aligned} \varvec{\delta }_{i,j}^l= & {} R_i\, \text{ minmod }( L_i(\bar{\varvec{u}}_{i,j}-\bar{\varvec{u}}_{i-1,j}), r\, L_i(\bar{\varvec{u}}_{i+1,j}-\bar{\varvec{u}}_{i,j})), \\ \varvec{\delta }_{i,j}^r= & {} R_i\, \text{ minmod }( L_i(\bar{\varvec{u}}_{i+1,j}-\bar{\varvec{u}}_{i,j}), r\, L_i(\bar{\varvec{u}}_{i,j}-\bar{\varvec{u}}_{i-1,j})), \\ \varvec{\delta }_{i,j}^b= & {} R_j\, \text{ minmod }( L_j(\bar{\varvec{u}}_{i,j}-\bar{\varvec{u}}_{i,j-1}), r\, L_j(\bar{\varvec{u}}_{i,j+1}-\bar{\varvec{u}}_{i,j})), \\ \varvec{\delta }_{i,j}^t= & {} R_j\, \text{ minmod }( L_j(\bar{\varvec{u}}_{i,j+1}-\bar{\varvec{u}}_{i,j}), r\, L_j(\bar{\varvec{u}}_{i,j}-\bar{\varvec{u}}_{i,j-1})), \end{aligned}$$

where \(1 < r < 3\) is a user specified parameter (we typically take \(r=2\)), \(L_i = L_i(\bar{\varvec{u}}_{i,j})\) is the matrix of left eigenvectors to the direction–\(i\) flux Jacobian, \(R_i = R_i(\bar{\varvec{u}}_{i,j})\) the matrix of right eigenvectors, etc. What we are doing here is slope limiting in the so-called characteristic variables. From these limited slopes compute at every cell interface

Above, the \(-\) superscript denotes the trace value to the left/bottom of the cell interface whereas the \(+\) denotes the value to the right/top. These formulae are derived as follows. Observe that generically \(\varvec{\delta }_{i,j}^l = \bar{\varvec{u}}_{i,j}-\bar{\varvec{u}}_{i-1,j} = \varDelta \bar{\varvec{u}}_{i-1/2,j} \) and \(\varvec{\delta }_{i,j}^r = \bar{\varvec{u}}_{i+1,j}-\bar{\varvec{u}}_{i,j} = \varDelta \bar{\varvec{u}}_{i+1/2,j}\). If one evaluates the quadratic interpolant of three consecutive cell averages, \(\bar{\varvec{u}}_{i-1,j}\), \(\bar{\varvec{u}}_{i,j}\) and \(\bar{\varvec{u}}_{i+1,j}\), at the \(i+1/2\) cell interface, the value obtained is \(\bar{\varvec{u}}_{i,j} + \frac{1}{6}(2\varDelta \bar{\varvec{u}}_{i+1/2,j}+\varDelta \bar{\varvec{u}}_{i-1/2,j})\). Similarly, interpolating \(\bar{\varvec{u}}_{i,j}\), \(\bar{\varvec{u}}_{i+1,j}\) and \(\bar{\varvec{u}}_{i+2,j}\) yields \(\bar{\varvec{u}}_{i+1,j} - \frac{1}{6}(2\varDelta \bar{\varvec{u}}_{i+3/2,j}+\varDelta \bar{\varvec{u}}_{i+1/2,j})\) at the same point. Therefore, these trace value approximations, \(\varvec{u}_{i+1/2,j}^-\) and \(\varvec{u}_{i+1/2,j}^+\), are generically exact for quadratic \(\varvec{u}\).

The following is worth noting. If the slope limiting parameter \(r\) is taken to be zero, the cell reconstruction algorithm above yields the cell average as its left and right value. This yields the standard first-order piecewise constant reconstruction. If \(r\) is taken as one, the reconstruction algorithm yields the traditional piecewise linear and second-order minmod method. Generically third-order quadratic reconstruction is obtained for \(r>1\) and cellwise overshoots are prevented when \(r\le 3\). For the purpose of checking our numerical results, we periodically take \(r=0\) or \(r=1\). These lower quality results are not displayed in the numerical results section, however.

Our review of the spatial discretization of (12) will be complete once we briefly discuss the treatment of boundary conditions. Along the computational portion of the boundary, the left, right and top depicted in Fig. 4, phantom cells are utilized to impose freestream conditions. Hard wall boundary conditions are imposed along the bottom by reflection. Specifically, solution values in phantom cells below the wall, say \(\rho ^-\), \(e^-\) and velocity \(\varvec{v}^-\), are obtained from those directly above, say \(\rho ^+\), \(e^+\) and \(\varvec{v}^+\), as follows: \(\rho ^-=\rho ^+\), \(e^-=e^+\) and reflected velocity \(\varvec{v}^- = \varvec{v}^+ - 2(\varvec{v}^+\cdot \varvec{n})\varvec{n}\), where \(\varvec{n}\) is the wall’s perpendicular normal vector.

Time discretization of (12) is now given. Using the finite volume spatial discretization above, the resulting method of lines formulation is symbolically written as

$$\begin{aligned} \frac{d }{d \tau } \bar{\varvec{u}} + {\fancyscript{H}}(\bar{\varvec{u}}) = \varvec{0}. \end{aligned}$$

Time integration is performed via Heun’s predictor–corrector method. That is, we first predict with the first order forward Euler method

$$\begin{aligned} \bar{\varvec{u}}^{*} = \bar{\varvec{u}}^{n} - \varDelta \tau {\fancyscript{H}}(\bar{\varvec{u}}^n), \end{aligned}$$

and then correct with the second order trapezoidal rule

$$\begin{aligned} \bar{\varvec{u}}^{n+1} = \bar{\varvec{u}}^{n} - \frac{\varDelta \tau }{2}\left( {\fancyscript{H}}(\bar{\varvec{u}}^n)+{\fancyscript{H}}(\bar{\varvec{u}}^*)\right) . \end{aligned}$$

The resulting time marching scheme is second order in time and conditionally stable.

In our computational work presented in the next section, we usually take

$$\begin{aligned} \varDelta \tau |\varLambda | \le 0.4 \min (\varDelta \xi ,\varDelta \eta ) \end{aligned}$$

where \(|\varLambda | \ge |\varvec{u}-\varvec{\xi }|+c\) dominates the flow’s fastest wave speed. Typical computational performance is somewhat larger than \(10^6\) updated cells per second on a 2.80 GHz processor.

Simple grid continuation combined with artificial time iteration is used to drive the time dependent discretization of (12) to its steady-state. Specifically, by grid continuation we mean the following. Suppose we have a converged piecewise constant approximate solution on a coarse grid, \(\bigcup _{i,j} \varOmega ^{c}_{i,j}\), say \(\varvec{u}^{c}(\varvec{x}) = \sum _{i,j} \varvec{u}^{c}_{i,j} \chi _{\varOmega ^{c}_{i,j}}(\varvec{x})\). On the next finer grid, \(\bigcup _{i,j} \varOmega ^{f}_{i,j}\), we initialize each cell value by \({\varvec{u}^f_0}_{i,j} = \int _{\varOmega ^f_{i,j}} \varvec{u}^c(\varvec{x})\,d\varvec{x}/|\varOmega ^f_{i,j}|\). The piecewise constant initialization \(\varvec{u}^f_0(\varvec{x})\) is then driven to its steady-state by artificial time relaxation to obtain \(\varvec{u}^f(\varvec{x})\). The process is continued until the finest computational grid is reached. While slow, we consider this approach very reliable. The steady problem is first solved on a coarse uniform grid using on the order of \(200\times 100\) cells. From such coarse grid runs, the grid extent parameters \(l\), \(r\) and \(t\) (see Eq. 11’s container paragraph) are determined so the grid fits well to the computed flow structure. The approximate location of the triple point is also noted. Subsequent grids are constructed as follows. A box is determined large enough to contain the approximate triple point location and a region in the subsonic zone where additional solution structure might appear (see Figs. 4, 6). Inside the box the grid is uniformly partitioned with a specified grid size. Outside the grid is allowed to stretch by a specified amount. The stretching factor is typically taken to be on the order of 1 %. During the process of grid refinements, minor adjustments are made to the location and extent of the aforementioned triple point box, and the box’s uniform grid size is typically halved in length.

Fig. 6
figure 6

The grid is uniform on a rectangle containing the enigmatic triple point. Outside the rectangle it is exponentially stretched. The stretching depicted here is exaggerated by a factor of ten in order to improve clarity

4 Numerical Results

We computed numerical solutions of (1)–(4) for a shock strength \(M\) equal to 1.47 at wedge angles \(\theta \) equal to \(12.5^{\circ }\) and \(35^{\circ }\). These parameter values match values used in the numerical solutions presented in [15] (and also earlier experiments and computations in [2]). As pointed out in [15], at shock strength \(M=1.47\) and specific heat ratio \(\gamma =5/3\) a three-shock solution does not exist for \(\theta =12.5^{\circ }\). Hence, this computation is in the von Neumann paradox regime. On the other hand, for \(M=1.47,\) \(\gamma =5/3\), and \(\theta =35^{\circ }\), a three-shock solution exists according to the von Neumann theory, and this computation provides a test of whether the numerical method yields the correct result in cases where no supersonic patch structure exists. In our computations, we set \(\rho _R = \gamma \) and \(p_R = 1\) in (3), and determined the values of \(U_L\) behind the shock from the jump conditions. Table 1 gives the initial values of the gas variables.

Table 1 Left and right states for an incident shock with Mach number \(M=1.47\) and \(\gamma =5/3\)

We give our finest grid results in the following plots. Figure 7 shows a global numerical solution that gives an overall picture of the shock reflection for \(\theta =12.5^{\circ }\). The plots in (a) and (c) show contours of pressure \(p\) and density \(\rho \), respectively, as functions of the self-similar independent variables \((x/t, y/t)\). The plots in (b) and (d) give an alternate depiction of these flow variables as surfaces \(z=p(x/t, y/t)\) and \(z=\rho (x/t, y/t)\), respectively, instead of as level curves. The numerical solution appears to show a standard Mach reflection, with three shocks meeting in a triple point. Hence, this solution illustrates a classic triple point paradox. Ahead of the incident shock the pressure is equal to 1 and the density is equal to 5/3. As the shock moves into quiescent fluid it induces a flow in the fluid behind it, and corresponding increases in pressure and density (the jumps in these quantities are given in Table 1). The reflected shock is much weaker than the incident shock, as shown in the plots in (b) and (d), and decreases in strength as it moves away from the apparent triple point. The Mach shock increases in strength with increasing distance from the triple point, and reaches a maximum at the wall, where it is a normal shock. The pressure and density are largest at this point. A weak contact discontinuity can be seen in the surface plot of density in (d); this contact discontinuity is too weak to be clearly seen in the contour plot in (c). A very weak wave is also visible in the plot in (d), extending downstream from the point where the incident shock exits the numerical domain. This wave is a numerical artifact generated because the incident shock is not aligned with the grid at the top boundary.

Fig. 7
figure 7

Contour and surface plots of pressure in (a, b), and of density in (c, d), for \(\theta =12.5^\circ \), \(M=1.47\) and \(\gamma =5/3\). The almost vertical planar surface in the plots in (b) and (d) is the incident/Mach shock, and the cylindrical jump is the reflected shock. The \(p\)-contour spacing is 0.075, and the \(\rho \)-contour spacing is 0.05. The full grid contains \(3870\times 3770\) grid cells; about a quarter of these cells are in the triple point rectangle

In Fig. 8 we show our global numerical solution for \(\theta =35^{\circ }\), presenting a set of plots analogous to those given in Fig. 7. The pressure and density contour spacings used in Fig. 8 are the same as those used in Fig. 7. Again, the numerical solution appears to show a standard Mach reflection, and in this case a standard three-shock solution is consistent with theory. In the plots in Fig. 8, there is a clearly evident discontinuity in slope between the incident shock and the Mach shock (compare to the plots in Fig. 7, for example). A strong contact discontinuity is also visible in both plots of density in (c) and (d). (This contact discontinuity is not seen in the plots in (a) and (b) because pressure does not jump across a contact discontinuity.) The reflected and Mach shocks are both much stronger for \(\theta = 35^{\circ }\) than for \(\theta =12.5^{\circ }\), as seen by comparing Fig. 8b, d with Fig. 7b, d. Again, the reflected shock decreases in strength as it moves away from the triple point, and the Mach shock increases in strength as it moves away from the triple point. The weak numerical wave which was noted in the numerical solution for \(\theta =12.5^\circ \) is also visible in the plot in Fig. 8d.

Fig. 8
figure 8

Contour and surface plots of pressure in (a, b), and of density in (c, d), for \(\theta =35.0^\circ \), \(M=1.47\) and \(\gamma =5/3\). The almost vertical planar surface in the plots in (b) and (d) is the incident/Mach shock, and the cylindrical jump is the reflected shock. The \(p\)-contour spacing is 0.075, and the \(\rho \)-contour spacing is 0.05 (identical to the spacings used in Fig. 7). The full grid contains \(2222\times 1992\) grid cells

From the numerical solutions depicted in Figs. 7 and  8 and in the more detailed figures to follow, we determined the triple point locations in self-similar coordinates \((x/t, y/t)\). Table 2 gives these triple point locations. From these, we computed the angle \(\chi \) between the triple point trajectory and the wedge wall (see Fig. 1). We note that neither the triple point location nor the angle \(\chi \) can be obtained from the local three-shock theory, but must be determined by global numerical solution, or experiment. We give our values for \(\chi \) in Table 2, and we also list the values for \(\chi \) that were computed in [15] at the same set of conditions. As shown in the table, the triple point trajectory angles obtained here are close to the values presented in [15].

Table 2 Numerically computed values of the triple point location and the triple point trajectory angle \(\chi \)
Fig. 9
figure 9

The solution near the triple point for \(M=1.47\), \(\gamma =5/3\) and \(\theta =12.5^\circ \). The pressure contour spacing is \(0.004\) in (a) and \(0.0015\) in (b). The density contour spacing in (c) is \(0.001\). The dashed red line in (a) and (b) is the sonic line; the sideways step is due to the contact discontinuity. A very weak secondary contact discontinuity can be seen in (c) emanating from where the shock at the rear of the first patch hits the Mach shock. The refined uniform grid is approximately contained within the box shown in (a) and (c) (but is not aligned with this box), and has \(1638 \times 1638\) cells (\(\varDelta \xi = \varDelta \eta = 2.4 \times 10^{-6}\)). Two reflected shock/expansion wave pairs are visible, with indications of a third. The full grid contains \(3870\times 3770\) grid cells

We now focus on our numerical solution for \(\theta =12.5^{\circ }\). In Fig. 9a we show pressure contours in the most refined grid region that surrounds the apparent triple point. The numerically computed location of the sonic line (8) has been superimposed as a dashed line in the figure (the sonic line is displayed more distinctly in Fig. 10a). Flow to the right of the sonic line is supersonic, and the figure shows that there is a region of supersonic flow embedded in the subsonic flow behind the triple point. The boundary of this supersonic region has a complicated geometry, as shown. There is a centered expansion fan at the leading triple point. There is also a weak shock immediately behind this expansion fan, which is characteristic of the multiple patch structure discussed earlier, but this weak shock cannot be seen clearly from the perspective used in the plot in (a). To show the expansion fan and shock more clearly, in Fig. 9b we show an enlargement of the solution shown in Fig. 9a, using more closely spaced contours, in a tiny region very close to the leading triple point. Behind the leading triple point there is a sequence of weak reflected shock waves that hit the Mach shock, creating a sequence of triple points. There is a weak expansion fan centered at each triple point. Each reflected shock/expansion wave pair is smaller in size, and weaker, than the one preceding it. In Fig. 9, four reflected shocks appear to be visible, beginning with the leading reflected shock. Their approximate strengths are given in Table 3. The shock strength, parameterized by the jump \([\rho ]\) in \(\rho \) across each shock, is measured close to the point where the flow behind the shock is sonic. This point is close to the corresponding triple point on the Mach shock, as shown in the plots in Fig. 9. In principle, the sonic point behind a shock and the corresponding triple point coincide, and there is a wedge of subsonic flow between each reflected shock/expansion wave pair, with wedge apex at the triple point, as illustrated in Fig. 3. The reflected shock/expansion wave pairs are extremely weak and difficult to resolve, however, and in the numerical solution these subsonic wedges do not extend all the way to the corresponding triple points, as shown in the figure. There is a tiny subsonic ‘island’ visible behind the second reflected shock in Fig. 9, which has been cut off in the numerical solution from the rest of the subsonic wedge above it.

Figure 9c shows closely spaced density contours over the same region that is plotted in Fig. 9a. A contact discontinuity is clearly visible, emanating from the primary triple point. Directly below this primary contact discontinuity, there is a very weak secondary contact discontinuity emanating from the second triple point.

Table 3 Approximate values of the reflected shock strengths for the four reflected shocks visible in Fig. 9, beginning with the leading reflected shock, from the numerical data. For each shock, \(\rho _1\) and \(\rho _0\) denote the approximate values of \(\rho \) ahead of and behind the shock, respectively
Fig. 10
figure 10

Supersonic and subsonic regions near the leading triple point, for \(M=1.47\), \(\gamma =5/3\) and \(\theta =12.5^\circ \). The sonic line, shown in (a), delineates the sequence of supersonic patches that are embedded within the subsonic flow behind the triple point. A dotted vertical line is shown at approximately \(x/t=1.4697\) in (a), and in (b), values of \(\widetilde{M}\) taken from the numerical data along this cut are displayed. The large jump in (b) is the leading reflected shock. The crossings at \(\widetilde{M}=1\) indicate jumps across weak reflected shocks or smooth transitions across the sonic line. \(I\) is the incident shock, \(R\) is the reflected shock, and \(M\) is the Mach shock. In (b), \(R_i\) and \(E_i\) are the \(i\)th reflected shock and expansion waves, respectively, in the sequence

In order to more clearly illustrate the regions of supersonic and subsonic flow in this multiple-patch structure, in Fig. 10a we plot just the sonic line near the triple point (for reference, a sufficient number of pressure contours are plotted to indicate the positions of the incident, reflected, and Mach shocks). The organization of the supersonic “patch” as, in fact, a sequence of consecutively smaller supersonic patches is clear from the plot. In order to further characterize this sequence-of-patches description, we take a vertical cut of the numerical data at the position indicated in Fig. 10a, and examine the self-similar Mach number \(\widetilde{M}\) along this cut. Here, we refer to the local self-similar Mach number of the solution, defined in (9), not the shock Mach number \(M\). We plot the values of \(\widetilde{M}\) through this vertical cross section as a function of \(y/t\) in Fig. 10b. Proceeding downwards along the vertical cross section indicated in the plot in (a) corresponds to moving from right to left along the curve in the plot in (b). As shown, proceeding in the direction of decreasing \(y/t\) along the cut, a sequence of four successively weaker transonic shocks are crossed, beginning with the leading reflected shock \(R\). Following the crossing of each shock, an expansion wave is crossed; \(E_1\) is the expansion wave centered at the leading triple point. As shown in the plot in (b), four reflected shocks and three expansion waves are indicated by the numerical data. There is an indication of further structure, but this is at the limit of numerical resolution.

From the plot in Fig. 10a, the height \(\varDelta (y/t)\) of the supersonic region behind the triple point is approximately \(0.0031\), and the width \(\varDelta (x/t)\) is approximately \(0.0009\). Here, the height \(\varDelta (y/t)\) is a numerical estimate of the difference between the maximum value of \(y/t\) on the sonic line and the minimum value of \(y/t\) at the rear sonic point on the Mach shock. The width \(\varDelta (x/t)\) is an estimate of the width of the supersonic region at the value of \(y/t\) corresponding to the leading triple point. Defined in this way, the height of the supersonic region is approximately 0.4 % of the height of the Mach shock.

Fig. 11
figure 11

A sequence of contour plots illustrating the effect of increasing grid resolution on the numerical solution, for \(M=1.47\), \(\gamma =5/3\), and \(\theta =12.5^\circ \). The plots show \(p\)-contours near the triple point, with a \(p\)-contour spacing of 0.004. The dashed line is the sonic line. The regions shown in (d)–(f) are approximately the refined uniform grid areas; the refined grid areas in (a)–(c) extend beyond the regions shown. In (a), the refined uniform grid contains \(100 \times 100\) grid cells with \(\varDelta \xi = \varDelta \eta = 8 \times 10^{-5}\). A supersonic patch is visible as a bump in the sonic line, but it is poorly resolved. In (b), the refined uniform grid area contains \(200 \times 200\) grid cells with \(\varDelta \xi = \varDelta \eta = 4 \times 10^{-5}\), and in (c) it contains \(400 \times 400\) grid cells with \(\varDelta \xi = \varDelta \eta = 2 \times 10^{-5}\). The supersonic patches in (b) and (c) appear to be smooth. In (d), the refined uniform grid area contains \(400 \times 400\) grid cells, with \(\varDelta \xi = \varDelta \eta = 1 \times 10^{-5}\). There is an indication of a shock wave behind the leading triple point. In (e), the refined uniform grid area contains \(800 \times 800\) grid cells with \(\varDelta \xi = \varDelta \eta = 5 \times 10^{-6}\). There is a shock wave behind the leading triple point. The refined uniform grid in (f) contains \(1600 \times 1600\) grid cells, with \(\varDelta \xi = \varDelta \eta = 2.5 \times 10^{-6}\). Two shock waves are visible behind the leading triple point

Our method of obtaining solutions on coarse grids and projecting these onto successively more refined grids allowed us to observe the effect of grid resolution on the solution. At the coarser levels of grid refinement, we found no supersonic patch behind the triple point. At a certain minimum level of refinement, a poorly resolved supersonic patch became visible. As we refined the grid beyond this minimum level, a detailed flowfield structure emerged in the supersonic region. Figure 11 shows pressure contours and the sonic line near the triple point for a sequence of solutions for \(M=1.47\), \(\gamma =5/3\), and \(\theta =12.5^{\circ }\) computed on successively refined grids. In this sequence, we refined each grid by a factor of two in \(x/t\) and \(y/t\) with respect to the previous grid. The size of the region shown is the same in all plots, and the resolution of the locally refined areas is indicated. The contact discontinuity is visible in these plots as a sideways step in the sonic line, becoming more pronounced as the resolution increases. In Fig. 11a–c, the sonic line appears fairly smooth. There is no indication of a terminating shock. At the next level of refinement, shown in Fig. 11d, there is an indication of a shock behind the leading triple point. After one more refinement, shown in Fig. 11e, this shock is clearly visible, with an indication of a second shock behind it. In our finest grid solution, shown in Fig. 11f (and in Figs. 9, 10), this second shock is more clearly defined, and there is an indication of a third, weaker shock following it. In terms of the single-patch/multiple-patch solutions discussed above, the plots shown in (a)–(c) appear to indicate a single-patch solution, the plots shown in Fig. 11e, f clearly indicate a multiple-patch solution, and the plot shown in Fig. 11d represents a transition between the two solution structures.

The supersonic patch in the under-resolved solution depicted in Fig. 11c is similar in size, shape, and appearance to the supersonic patch in the solution obtained by Vasil’ev and Kraiko [15] at the same set of conditions. Vasil’ev and Kraiko’s local solution near the triple point is shown on page 1339 in Fig. 3 of [15]. The size of the region displayed in the contour plots with sonic line in that figure is given as \(0.0024 L \times 0.003 L\), where \(L\) is the distance the (unperturbed) incident shock has propagated along the wedge wall. For an incident shock with location given by (5), and with initial data given by Table 1, this corresponds to a region of size \(0.0036 \times 0.0045\), which is close to the size of the region shown in our plot in Fig. 11c. Therefore, the fact that the ratios of the supersonic patch area to total plot area in the Vasil’ev-Kraiko plots and Fig. 11c appear to be approximately equal serves as a preliminary indication that the supersonic patch sizes are close. We can compare the sizes of the supersonic patches more precisely, for example by estimating the self-similar length of the patch in a direction parallel to the reflected shock; we denote this length by \(\varDelta (l/t)\). From our plot in Fig. 11c, we obtain \(\varDelta (l/t) \approx 0.0033\), and from Figure 3 in [15], we estimate \(\varDelta (l/t) \approx 0.0032\), confirming that the patches are approximately the same size. Comparison of the sonic line in Fig. 11c with the sonic line shown in Figure 3 of [15] shows that the supersonic patches are also of similar shape, and they are smooth: there is no indication of a terminating shock. To further compare the two solutions, in Fig. 12 we plot Mach number contours near the triple point for the solution of Fig. 11c. (Here, we refer to the local Mach number of the solution, not to the shock Mach number \(M\).) The contact discontinuity is visible as a jump in these contours. The Mach number contours and the appearance of the contact discontinuity in Fig. 12, and the pressure contours in Fig. 11c, are qualitatively similar to the Mach number and pressure contours in the corresponding plots in Figure 3 of [15]. Both sets of plots provide evidence of an expansion fan at the leading triple point, but show no evidence of a second shock behind the leading reflected shock.

Fig. 12
figure 12

For the coarse-grid solution of Fig. 11c, a contour plot of Mach number near the triple point. The size of the region shown is identical to that in Fig. 11c. The dashed line is the sonic line. The Mach contour spacing is 0.0004. The solution shown here and in Fig. 11c is similar to the solution presented in [15] at the same parameter values: \(M=1.47\), \(\gamma =5/3\), \(\theta =12.5^\circ \)

We note that we checked the effect of using different numerical flux schemes and orders during this investigation. In addition to the generically third-order quadratic reconstruction scheme used in the results presented here, we made computations using both first-order piecewise constant and second-order piecewise linear reconstruction schemes (see Sect. 3 for a description of how these schemes are implemented). These test results were less resolved than the results presented here, of course, and in the first-order case, much less resolved. However, the basic multiple patch structure consisting of a supersonic patch terminated by a shock was still obtained, although more mesh refinements were required before this structure appeared. In the early stages of this investigation we also experimented with first and second-order Lax-Friedrichs fluxes. Even with the extremely diffusive first-order LF scheme, we succeeded in resolving a supersonic patch when the grid was sufficiently refined.

Finally, we return to our numerical solution for \(\theta = 35^{\circ }\) . In Fig. 13 we show pressure contours and the numerically computed location of the sonic (dashed) line in the most refined grid region near the triple point. The locally refined uniform grid used in this solution for \(\theta =35^{\circ }\) has the same resolution as the one used in our most refined solution for \(\theta =12.5^{\circ }\), and the size of the region shown in Fig. 13 is approximately the same as the size of the region shown in Fig. 9b. The thickening of the reflected shock as it moves away from the triple point in Fig. 13 is caused by the use of a stretched grid. There is a noticeable discontinuity in the slope of the incident-Mach shock at the triple point. Flow to the right of the sonic line is supersonic, and to the left it is subsonic. As expected, there is no supersonic patch behind the triple point, and the solution is a simple Mach reflection.

Fig. 13
figure 13

The solution near the triple point for \(M=1.47\), \(\gamma =5/3\) and \(\theta =35^\circ \), showing a simple Mach reflection. The pressure contour spacing is \(0.035\). The dashed red line is the sonic line; the sonic line runs down the reflected shock, through the triple point, and down the Mach shock. The region shown includes the refined uniform grid, which contains \(410 \times 410\) grid cells (\(\varDelta \xi = \varDelta \eta = 2.5 \times 10^{-6}\)). The full grid contains \(2222 \times 1992\) grid cells (Color figure online)

5 Discussion

These numerical results show that the single-patch geometry (Guderley reflection, or GR) does not occur in the shock reflection problem with \(M=1.47,\) \(\gamma =5/3\), and \(\theta =12.5^{\circ }\). When the grid is sufficiently refined, as shown in Fig. 11, the single-patch geometry is replaced by the multiple-patch geometry (Guderley Mach reflection, or GMR). Furthermore, once sufficient refinement is applied to obtain a GMR solution, further refinement results in the resolution of additional secondary waves behind the leading triple point. This same scenario has been observed in other numerical solutions of weak shock reflections. In [13], solutions of the weak shock reflection problem for the Euler equations with \(M=1.04\) and \(M=1.075\) also showed a transition from GR to GMR when the grid was refined. Prior to this, it was described in [11] how GMR solutions of the UTSD equation shock reflection problem revealed an increasingly complex sequence of waves inside the supersonic region under increasing grid refinement. Taken all together, these numerical results suggest that the single-patch structure—GR—does not occur as a distinct reflection pattern in irregular shock reflections: its observance is due to insufficient resolution.

The reflection problem whose GMR solution is presented here is identical to the one studied by Vasil’ev and Kraiko in [15], where GR was obtained. The numerical solutions agree closely in a number of other respects, however. The triple point trajectory angles predicted by the two solutions agree to within approximately 0.1 %, as shown in Table 2. (Recall that this angle cannot be predicted from the von Neumann theory, but must be obtained from the numerical solution.) The predicted triple point locations are therefore very close. For example, for a given \(x/t\) coordinate of the triple point, the values of the \(y/t\) coordinate computed by the two numerical solutions differ by approximately 0.08 %. Further, as described in Sect. 4, the size of the supersonic patch obtained by Vasil‘ev and Kraiko is very close to the size of the patch in a comparably resolved solution from the present work, and the patch shapes are similar. Other features, such as the qualitative appearance of pressure and Mach number contours in the neighborhood of the triple point, are similar between the two solutions. This overall correspondence between the two solutions serves as an independent check of both numerical methods. As explained in the paragraph above, the main reason for the crucial difference between our solution and that of Vasil‘ev and Kraiko—the finding of GR in [15]—appears to be the use of insufficient resolution there.

In our most refined solution, shown in Fig. 11f, two supersonic patches are clearly visible, with indications of a third. We expect that increased grid resolution, if we could afford it, would demonstrate the existence of even more patches, each one smaller and weaker than the one preceding it. In [7], for example, using the steady transonic small disturbance equations Hunter and Tesdall obtained five supersonic patches in a GMR, with an indication of a sixth, before reaching the limit of numerical resolution. The numerical difficulty in resolving more patches is that the reflected shock and expansion waves become extremely weak (and the patches extremely small) as the sequence progresses. Table 3 gives an indication of how the reflected shock strength decays in the sequence of shock/expansion wave pairs in a GMR. As shown, the strengths of the first three reflected shocks are approximately in the ratio 6.7:1.7:1. This is quite similar to results obtained in [11] and in [13]. In [11], using the UTSD equations, four reflected shocks were visible in the solution, with the strengths of the first three in the approximate ratio 8:2:1. In [13], the strengths of the first three reflected shocks were approximately in the ratio 9.5:2:1. We do not know exactly how the sequence of supersonic patches and shock/expansion wave pairs in GMR decreases in size and strength, nor do we know whether the sequence is finite or infinite (in [11] the sequence was conjectured to be infinite for an inviscid weak shock reflection).

The extremely small size of the supersonic region makes it important to consider the probable effect of physical viscosity on the inviscid predictions. In a typical shock tube experiment the triple point is expected to lie well outside the boundary layer, so the main effect of viscosity is to thicken the shocks. In particular, since the shock reflection structure grows self-similarly as the shock moves up the ramp, there will be some minimum distance traveled before the supersonic region is larger than the viscous thickness of the reflected shock. (The reflected shock is thicker than the incident or Mach shocks because it is weaker). Prior to the time when this distance is reached, the local structure near the triple point will be dominated by viscous effects, and no supersonic patch will be seen. It was estimated in [11] that for a shock reflection in argon with shock Mach number \(M\), the distance \(L\) traveled by the shock along the ramp would have to be much larger than \((M-1)^{-2}\) mm in order for the supersonic region to be much larger than the viscous shock thickness, and therefore visible in an experiment. For example, for a shock with \(M=1.1\), the test section of the tube would have to be much longer than 100 mm. Therefore, it is very difficult to observe the supersonic patch in a conventional shock tube experiment, and even more difficult to observe secondary features such as the shock terminating the first patch.

In [8, 9], Skews and coauthors overcame these difficulties by using a very large scale shock tube with a test section of some 3.6 m in length in order to observe GMR reflections in the shock Mach number range 1.05–1.1. At the viewing window the Mach stem length was on the order of 800 mm, and the supersonic region was large enough that the shock terminating the first patch—the crucial feature distinguishing GMR from GR—was some 15 mm in length (i.e., less than 2 % of the length of the Mach shock). They were able to see evidence of a second patch and expansion fan as well. Following this, in [10], Cachucho and Skews devised a novel method to achieve large effective shock propagation distances \(L\) in a conventional shock tube, and observed weak shock reflections over the higher Mach number range 1.1 to 1.4. In that work, however, the majority of experiments found GR rather than GMR. This, of course, again raises the question of whether both GR and GMR can occur depending on the parameter range. In light of the numerical results presented here, however, this seems unlikely: we have found GR solutions to be indicative of under-resolved GMR, and we have found GMR to occur at Mach numbers as large as 1.47. The most plausible explanation for the finding of GR in [10] seems to be that the resolution attainable with the conventional shock tube and the method used was insufficient for the purpose of identifying multiple-patch features. One possible reason for this, as remarked by the authors in [10], is that the triple point was reflected a number of times off the top and bottom of the shock tube and thus interacted with the viscous boundary layer.

We note that the numerical scheme (for the inviscid equations) has numerical viscosity, which mimics the effect of physical viscosity. Increasing the grid resolution corresponds to reducing the numerical viscosity, so the plots (a)–(e) in Fig. 11 presumably give an indication of the effect of decreasing the physical viscosity on the solution.

Finally, our numerical solution of (1)–(4) with \(\theta =35^{\circ }\) produced the expected result, the simple Mach reflection shown in Fig. 13. It was included as a check of the numerical method. The close comparison of the overall features of our GMR solution and the GR solution of Vasil‘ev and Kraiko, described above and in Sect. 4, serves as another check of the computations.

6 Conclusions

We have presented numerical solutions of a shock reflection problem for the Euler equations in the triple point paradox regime. At the set of parameter values used, we find that the multiple-patch reflection geometry called Guderley Mach reflection (GMR) occurs and resolves the paradox. The numerical solutions provide evidence that the smooth single-patch structure called Guderley reflection (GR) is not a distinct reflection geometry, but rather is under-resolved GMR.