Next Article in Journal
Numerical Analysis of the Primary Gas Boundary Layer Flow Structure in Laser Fusion Cutting in Context to the Striation Characteristics of Cut Edges
Previous Article in Journal
Gas-Solid Heat Transfer Computation from Particle-Resolved Direct Numerical Simulations
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Semi-Lagrangian Godunov-Type Method without Numerical Viscosity for Shocks

Aircraft Construction and Design Department, Samara University, Moskovskoye Shosse, 34, 443086 Samara, Russia
Fluids 2022, 7(1), 16; https://doi.org/10.3390/fluids7010016
Submission received: 13 November 2021 / Revised: 24 December 2021 / Accepted: 28 December 2021 / Published: 30 December 2021

Abstract

:
One of the most important and complex effects in compressible fluid flow simulation is a shock-capturing mechanism. Numerous high-resolution Euler-type methods have been proposed to resolve smooth flow scales accurately and to capture the discontinuities simultaneously. One of the disadvantages of these methods is a numerical viscosity for shocks. In the shock, the flow parameters change abruptly at a distance equal to the mean free path of a gas molecule, which is much smaller than the cell size of the computational grid. Due to the numerical viscosity, the aforementioned Euler-type methods stretch the parameter change in the shock over few grid cells. We introduce a semi-Lagrangian Godunov-type method without numerical viscosity for shocks. Another well-known approach is a method of characteristics that has no numerical viscosity and uses the Riemann invariants or solvers for water hammer phenomenon modeling, but in its formulation the convective terms are typically neglected. We use a similar approach to solve the one-dimensional adiabatic gas dynamics equations, but we split the equations into parts describing convection and acoustic processes separately, with corresponding different time steps. When we are looking for the solution to the one-dimensional problem of the scalar hyperbolic conservation law by the proposed method, we additionally use the iterative Godunov exact solver, because the Riemann invariants are non-conserved for moderate and strong shocks in an ideal gas. The proposed method belongs to a group of particle-in-cell (PIC) methods; to the best of the author’s knowledge, there are no similar PIC numerical schemes using the Riemann invariants or the iterative Godunov exact solver. This article describes the application of the aforementioned method for the inviscid Burgers’ equation, adiabatic gas dynamics equations, and the one-dimensional scalar hyperbolic conservation law. The numerical analysis results for several test cases (e.g., the standard shock-tube problem of Sod, the Riemann problem of Lax, the double expansion wave problem, the Shu–Osher shock-tube problem) are compared with the exact solution and Harten’s data. In the shock for the proposed method, the flow properties change instantaneously (with an accuracy dependent on the grid cell size). The iterative Godunov exact solver determines the accuracy of the proposed method for flow discontinuities. In calculations, we use the iteration termination condition less than 10−5 to find the pressure difference between the current and previous iterations.

1. Introduction

Simulating compressible flows is challenging owing to the presence of discontinuities in fluid flow, such as shocks, contact waves, and broad-band continuous flow scales. Numerous high-resolution schemes have been proposed to resolve smooth flow scales accurately and to capture the discontinuities simultaneously, e.g., the artificial viscosity method [1,2], total variation diminishing (TVD) method [3], essentially non-oscillatory (ENO) scheme [4], and weighted essentially non-oscillatory (WENO) scheme [5].
Harten et al. studied the ENO scheme [4,6,7,8], which was the first successful high-order method to enable the spatial discretization of hyperbolic conservation laws that had the ENO property. This property is considered to be very useful in the numerical simulation of hyperbolic conservation laws, because high-order numerical methods often produce spurious oscillations—especially near shocks or other discontinuities. The finite-volume ENO spatial discretization has been studied [4], where it was shown to have uniform high-order accuracy in capturing the location of any discontinuity in fluid flow. Subsequently, Shu and Osher [9,10] developed the finite-difference ENO scheme. The main idea of the ENO scheme is to choose a stencil of interpolation points that suppresses oscillations, i.e., one chooses the stencil on which the solution varies the smoothest and approximates the flux at the cell boundaries with high-order accuracy, thus avoiding the large, spurious oscillations caused by interpolating data across discontinuities.
WENO schemes have been introduced [5,11,12] to address potential numerical instabilities when choosing ENO stencils. WENO methods use a convex combination of all of the ENO stencils; they achieve a higher order of accuracy than ENO methods in smooth regions, while retaining the ENO property at discontinuities.
The aforementioned methods follow the Eulerian approach. One disadvantage of these methods [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24] is the presence of a numerical viscosity for shocks. Additionally, there are methods [25,26,27,28] using the exact Riemann solver; however, they too are Eulerian methods; moreover, these methods have numerical viscosity for shocks. Godunov et al. [25] proposed using moving grids to eliminate this disadvantage, but this dramatically complicates the problem, particularly in two- or three-dimensional cases. In this paper, we use a Lagrangian Godunov-type method and a fixed homogeneous grid to eliminate the disadvantage of numerical viscosity for shocks via a simplified approach. Additionally, we describe wall conditions. As discussed in the following sections, the proposed method has no numerical viscosity for shocks, as a well-known method of characteristics (MOC) [29,30,31]. In particular [30,31], the water hammer phenomenon modelling by the MOC using the Riemann invariants or solvers is considered. In the MOC, the convective terms are typically neglected, because the Riemann invariants in the water hammer problem are only weakly interdependent [30,31]. We use a similar approach to solve the one-dimensional adiabatic gas dynamics equations [29], but we split the equations into parts describing convection and acoustic processes separately. Different time steps are used to solve these equations because the local acoustic velocity (speed of sound) can differ many times from the convective velocity of the flow. When we are looking for the solution to the one-dimensional problem of the scalar hyperbolic conservation law via the proposed method, we additionally use the iterative Godunov exact solver [25], because the Riemann invariants are non-conserved for moderate and strong shocks. On the other hand, the proposed method is similar to particle-in-cell (PIC) methods. PIC methods are readily available in the literature [32,33,34,35]; to the best of the author’s knowledge, there are no similar PIC numerical schemes using the Riemann invariants or the iterative Godunov exact solver. Finally, it should be mentioned that besides the Eulerian and Lagrangian approaches to the description of shocks, there is another approach based on the variational principle [36]; however, for this approach, when modeling flows, a numerical scheme of Eulerian or Lagrangian type is still needed.

2. Materials and Methods

2.1. A Methodological Concept for the Inviscid Burgers’ Equation

For a better understanding of an idea of the proposed method, we describe an algorithm of the method for the inviscid Burgers’ equation [37]. The inviscid Burgers’ equation is a scalar nonlinear equation given as follows:
  u   t + u   u   x = 0 ,
where u is the convective velocity of flow, x is the direction, and t is the time. Equation (1) can be solved using the proposed Lagrangian scheme. The cells are considered in pairs. We will use two fundamental solutions of the inviscid Burgers’ equation: shock, and rarefaction wave. The cells’ coordinates after transferring are determined as follows:
  x 1 = x i + u i k 1   Δ t ,   x 2 = x i + 1 + u i + 1 k 1   Δ t ,
where Δ t is the time step. Furthermore, we use the following parameters: e 1 = 10 4 , which is the tolerance associated with the comparison of the flow variables; and e 2 = 10 8 , which is the machine arithmetic tolerance associated with the comparison of the x coordinates.
The solution is sought in the following form:
(1)
If the conditions
| u i + 1 u i | < e 1 ,
are satisfied, then for all grid cells for which the conditions are satisfied, the solution at the next time moment k is trivial:
u j k = 1 2 ( u i k 1 + u i + 1 k 1 ) .
(2)
If the conditions
( u i + 1 u i ) < e 1
are satisfied, then we have the shock.
(2.1) if
( x 2 x 1 ) > e 2 ,
then the solution is defined as
( 2.1   a )   if       x 1 x j ( x 1 + x 2 ) / 2       then       u j k = u i k 1 , ( 2.1   b )   if       ( x 1 + x 2 ) / 2 < x j x 2       then       u j k = u i + 1 k 1 .
(2.2) If
( x 2 x 1 ) e 2 ,
then the discontinuity boundary is first determined as
  x = x i + h / 2 + 0.5 ( u i k 1 + u i + 1 k 1 )   Δ t ,
and the solution is assigned to cell j to the left of the discontinuity boundary
u j k = u i k 1 ,
and in cell j + 1 to the right of the discontinuity boundary, the following values are assigned:
u j k = u i + 1 k 1 .
(3)
If
( u i + 1 u i ) e 1 ,
then we have the rarefaction wave, and the solution for x 1 x j x 2 is determined as follows:
u j k = u i k 1 + u i + 1 k 1 u i k 1 x 2 x 1 ( x j x 1 ) .
In this case, the loop over all x i is performed twice: first, for all u i e 1 from n 1 to 1 , and second, for all u i e 1 from 1 to n 1 . Here, n is the number of grid cells. When conditions (1)–(3) are satisfied, if it turns out that the solution has already been assigned to the grid cell, then it is replaced by a new one. When assigning the solution to the grid cells, the condition is separately checked so that the propagation of this solution at the convection velocity does not overtake (does not overwrite) the solution of the forward shock, if one exists. For this, at the beginning, the positions of all of the shock boundaries at the next moment in time are determined.
The modeling area is taken to be x [ a ,   b ] . The grid contains n cells, and the grid step h is
h = b a n ,
as shown in Figure 1. The time step was chosen similar to the Courant criterion.
Δ t = k u h u s ,
where u s is the convective velocity of the shock, and k u is an integer. For example, if k u = 4 , then the shock propagates to the four grid cells.

2.2. Basic Terms and a Methodological Concept for Adiabatic Gas Dynamics Equations

Consider the one-dimensional adiabatic gas dynamics equations [37]:
ρ   t + u   ρ   x + ρ   u   x = 0 ,   u   t + u   u   x + 1 ρ   p   x = 0 .
Here, ρ is the density and p is the pressure.
The pressure is related to the adiabatic law
p ρ κ = p 0 ρ 0 κ = A = c o n s t ,
where κ is the ratio of specific heat coefficients at constant pressure and volume. For air, κ = 1.4 . Values ρ 0 and p 0 can be chosen from initial conditions of a considered problem.
As previously shown [38], the system of Equation (16) can be represented as a system of wave equations as follows:
  w 1   t + ( u c )   w 1   x = 0 ,   w 2   t + ( u + c )   w 2   x = 0 ,
where c is the sound velocity, and w i represents variables that are determined as follows:
w 1 = u P ˜ , w 2 = u + P ˜ .
Here, the function P ˜ is
P ˜ = 2 c 0 κ 1 ( ( ρ ρ 0 ) κ 1 2 1 ) ,
where c 0 is the sound velocity, which is determined from the initial conditions as follows:
c 0 = κ p 0 ρ 0 .
Equation (18) describes a movement of two waves with velocities u c and u + c , and their respective transfer values w 1 and w 2 . The system of Equation (18) can be solved using the Lagrangian approach. In this paper, the following method is proposed: The stages of convection and acoustics are considered separately, and splitting into physical processes is performed because the local acoustic velocity (speed of sound) can differ greatly from the convective velocity of the flow. Thus, at the acoustic stage we solve the system
  ρ   t + ρ   u   x = 0 ,   u   t + 1 ρ   p   x = 0 ,
obtained from (16) by discarding the convective terms; its corresponding system of wave equations is
  w 1   t c   w 1   x = 0 ,   w 2   t + c   w 2   x = 0 ,
The system (23) is obtained from (22) with help of (19).
At the convection stage, we solve the system with the convective terms only:
  ρ   t + u   ρ   x = 0 ,   u   t + u   u   x = 0 .
We apply the numerical scheme principle described above for the inviscid Burgers’ equation to find the solution of the systems (23) and (24); for more details, see Appendix A.
The time step at the acoustics stage was chosen according to the Courant criterion.
Δ t c = k c h c s ,
where c s is the acoustic velocity of the shock. For example, if k c = 3 , then the shock propagates through three grid cells at the acoustics stage.
The time step at the convection stage was chosen similar to that of (25):
Δ t u = k u h u s ,
where u s is the convective velocity of the shock. For example, if k u = 2 , then the shock propagates to two grid cells at the convection stage. If Δ t c Δ t u , then the marching time step Δ t is chosen so that
Δ t c = n c Δ t , Δ t u = n u Δ t ,
where n c and n u are integers.

2.3. Basic Terms and a Methodological Concept for the One-Dimensional Scalar Hyperbolic Conservation Law

Consider the one-dimensional scalar hyperbolic conservation law [13]:
  ρ   t + u   ρ   x + ρ   u   x = 0 ,   u   t + u   u   x + 1 ρ   p   x = 0 ,   ε   t + u   ε   x + p ρ   u   x = 0 .
Here, ε is the internal specific energy.
The pressure is related to thermodynamic state variables ρ and ε through the following state equation:
p = ( κ 1 )   ρ   ε .
Godunov et al. [25] proposed the iterative exact Riemann solver implemented in a finite-difference scheme. Instead of this method, other researchers later used a control volume method, while we used the Lagrangian approach. In this paper, the following method is proposed: The stages of convection and acoustics are considered separately, and splitting into physical processes is performed because the local acoustic velocity (speed of sound) can differ greatly from the convective velocity of the flow. Thus, at the acoustic stage we solve the system
  ρ   t + ρ   u   x = 0 ,   u   t + 1 ρ   p   x = 0 ,   ε   t + p ρ   u   x = 0 .
and the Equation (29). The system (30) is obtained from (28) by discarding the convective terms, and it can be represented in a matrix form as follows:
{   ρ   t   u   t   ε   t } = [ A ] {   ρ   x   u   x   ε   x }
where [ A ] is the Jacobian matrix
[ A ] = [ 0 ρ 0 ( κ 1 ) ε ρ 0 κ 1 0 ( κ 1 ) ε 0 ] .
The matrix [ A ] can be expressed as
[ A ] = [ R ] [ Λ ] [ L ]
in terms of a diagonal matrix [ Λ ] of eigenvalues of the Jacobian matrix
[ Λ ] = [ c 0 0 0 0 0 0 0 c ] ,
a matrix of corresponding left eigenvectors [ L ] , determined as
[ L ] = [ c κ ρ 1 κ 1 c 1 0 ρ κ c 2 c κ ρ 1 κ 1 c ] ,
and a matrix of corresponding right eigenvectors [ R ] , defined as
[ R ] = [ ρ 2 c κ 1 κ ρ 2 c 1 2 0 1 2 c 2 κ ( κ 1 ) ε κ ρ c 2 κ ] .
Since
[ L ] [ R ] = [ E ] ,
where [ E ] is a diagonal identity matrix, the multiplication of Equation (31) from the left by [ L ] and the use of (37) gives
[ L ] {   ρ   t   u   t   ε   t } = [ Λ ] [ L ] {   ρ   x   u   x   ε   x } .
If  [ L ] = [ c o n s t ] , we can obtain from (38) the characteristic form
  w 1   t c   w 1   x = 0 ,   w 2   t = 0 ,   w 3   t + c   w 3   x = 0 ,
where
w 1 = c * κ ρ * ρ + u κ 1 c * ε , w 2 = ρ κ ρ * c * 2 ε , w 3 = c * κ ρ * ρ + u + κ 1 c * ε .
Here, an asterisk indicates constant values. Equation (39) describes the movement of two waves with velocities c and c , and their respective transfer values, w 1 and w 3 (40).
The system of Equation (39) can be solved using the proposed Lagrangian approach. However, in this paper, we use the Godunov exact solver for the solution of the full nonlinear system (28), (29), and then subtract the convective velocity from the solution to obtain the solution of the Equation (30). For more details, see Appendix B.
At the convection stage, we solve the system with the convective terms only:
  ρ   t + u   ρ   x = 0 ,   u   t + u   u   x = 0 ,   ε   t + u   ε   x = 0 ,
as well as Equation (29).
The time step Δ t c at the acoustics stage was chosen according to the Courant criterion (25). The time step Δ t u at the convection stage was chosen as (26).

3. Results

In this section, we apply the proposed method to solve several problems with different initial and boundary conditions.

3.1. Results for the Inviscid Burgers’ Equation

Firstly, we considered the initial value problem [39] for the inviscid Burgers’ equation with the initial conditions
u j 0 = 0 ,   if   x j < 0 , u j 0 = 1 ,   if   0 x j 1 , u j 0 = 0 ,   if   x j > 1 .
The exact solution of the shock–rarefaction wave problem (42) was determined as follows:
u ( t , x ) = { 0 ,   i f   x < 0 x t ,   i f   0 x t 1 ,   i f   t < x t 2 + 1 0 ,   i f   x > t 2 + 1 ,   for   t 2 ,
and
u ( t , x ) = { 0 ,   i f   x < 0 x t ,   i f   0 x 2 t 0 ,   i f   x > 2 t ,   for   t > 2 .
The modeling area was taken to be  x [ 1 ,   4 ] . The grid contained 50 cells, and the grid step was h = 0.1 . The time step was chosen according to the Courant criterion (15), where u s = 0.5 is the convective velocity of the shock in (42), where k u = 4 , i.e., the shock propagates to the four grid cells. The time step was Δ t = 0.8 . It should be noted that the rarefaction wave (at its right boundary) has the convective velocity u r = 1.0 in (43), and propagates to the eight grid cells. At the time t = 2 , the rarefaction wave catches up with the shock, but is not able to overtake it (44).
The results after two and five time steps are shown in Figure 2 and Figure 3 in comparison to the exact solutions (43) and (44), respectively. We can see the good agreement between the numerical and exact solutions, and that the proposed method does not have numerical viscosity for shocks. However, owing to the accumulation of the roundoff error, the shock in Figure 3 overtakes the exact solution by one grid cell at the shown moment in time.
Secondly, we considered the well-known test problem [40] with the periodic initial function
u j 0 = 0.5 sin ( π   x ) .
The modeling area was taken to be x [ 1 ,   1 ] . The grid contained 80 cells, and the grid step was h = 0.025 . The time step was chosen according to the Courant criterion (15), where u s = 0.5 is the convective velocity of the shock in (45), where k u = 2 , i.e., the shock propagates to the two grid cells. The time step was Δ t = 0.1 .
The result after 11 time steps is shown in Figure 4 in comparison to the exact solution [40]. We can see the good agreement between numerical and exact solutions, and that the proposed method does not have numerical viscosity for shocks.

3.2. Results for the Adiabatic Gas Dynamics Equations

The first example for the adiabatic gas dynamics equations is the standard shock-tube problem with the following initial conditions:
p j 0 = 1 ,   u j 0 = 0 ,   ρ j 0 = 1 ,   if   x j < 0 , p j 0 = 0.378929142 ,   u j 0 = 0 ,   ρ j 0 = 0.5 ,   if   x j 0 .
The modeling area was taken to be x [ 1 , 1 ] . The grid contained 200 cells, and the grid step was h = 0.01 . The time step at the acoustics stage Δ t c = 0.054218535053 was chosen according to the Courant criterion (25), where k c = 6 , i.e., the shock propagates through six grid cells at the acoustics stage. The time step at the convection stage Δ t u = 0.052230695168 was chosen according to a similar criterion (26), where k u = 2 , i.e., the shock propagates to two grid cells at the convection stage. The marching time step was chosen as Δ t = Δ t c = Δ t u = 0.052230695168 .
The results after 10 marching time steps t = 0.52230695168 are shown in Figure 5, Figure 6 and Figure 7 in comparison to the exact solution. Figure 5, Figure 6 and Figure 7 show the absence of the numerical viscosity for the shock. However, owing to the accumulation of the roundoff error, the shock overtakes the exact solution by two grid cells at the shown moment in time.
The second example for the adiabatic gas dynamics equations is the double expansion wave problem [41] with the following initial conditions:
p j 0 = 10 5 ,   u j 0 = 100 ,   ρ j 0 = 1.2 ,   if   x j < 0 , p j 0 = 1 0 5 ,   u j 0 = 100 ,   ρ j 0 = 1.2 ,   if   x j 0 .
The modeling area was taken to be  x [ 0.5 , 0.5 ] . The grid contained 100 cells, and the grid step was h = 0.01 . The time step at the acoustics stage Δ t u = 0.000204939017 was chosen according to the Courant criterion (25), where k c = 7 , i.e., the shock propagates through seven grid cells at the acoustics stage. The time step at the convection stage Δ t u = 0.0002 was chosen according to a similar criterion (26), where k u = 2 , i.e., the shock propagates to two grid cells at the convection stage. The marching time step was chosen as Δ t = Δ t c = Δ t u = 0.0002 .
The results after four marching time steps t = 0.0008 are shown in Figure 8, Figure 9 and Figure 10 in comparison to the exact solution. Figure 8, Figure 9 and Figure 10 show a good agreement between the exact and numerical solutions for the double expansion wave problem.

3.3. Results for the One-Dimensional Scalar Hyperbolic Conservation Law

The first example is the standard shock-tube problem of Sod [42], with the following initial conditions:
p j 0 = 1 ,   u j 0 = 0 ,   ρ j 0 = 1 ,   if   x j < 0 , p j 0 = 0.1 ,   u j 0 = 0 ,   ρ j 0 = 0.125 ,   if   x j 0 .
The modeling area was taken to be  x [ 4.5 ,   5.5 ] . The grid contained 100 cells, and the grid step was h = 0.1 . The time step at the acoustics stage was chosen according to the Courant criterion (25), where k c = 1 , i.e., the shock propagates through one grid cell at the acoustics stage. The time step at the convection stage was chosen according to (26), where k u = 2 , i.e., the shock propagates to two grid cells at the convection stage. The marching time step was Δ t u = 0.02020929 . The acoustics stage was performed in 6 time steps Δ t c = 6 Δ t , and the convection stage was performed after 10 steps Δ t u = 10 Δ t .
The results after 110 marching time steps are shown in Figure 11, Figure 12 and Figure 13 in comparison to the exact solution and the data obtained by Harten [3] via the ULT1C scheme. Note that more modern numerical schemes, such as WENO [14,24], have even higher numerical viscosity for shocks. Therefore, we chose the ULT1C scheme for comparison. Figure 11, Figure 12 and Figure 13 show the absence of the numerical viscosity for the shock, in contrast to the Harten method. However, owing to the accumulation of the roundoff error, the shock is delayed by one grid cell at the shown moment in time.
The second example is the Riemann problem of Lax [43], with the following initial conditions:
p j 0 = 3 . 52773 ,   u j 0 = 0 . 69888 ,   ρ j 0 = 0 . 445 ,   if   x j < 0 , p j 0 = 0.571 ,   u j 0 = 0 ,   ρ j 0 = 0.5 ,   if   x j 0 .
The modeling area was taken as  x [ 8 ,   6 ] . The grid contained 140 cells, and the grid step was h = 0.1 . The time step at the acoustics stage was chosen according to the Courant criterion (25), where k c = 2 , i.e., the shock propagates through two grid cells at the acoustics stage. The time step at the convection stage was chosen according to (26), where k u = 3 , i.e., the shock propagates through three grid cells at the convection stage. The marching time step was Δ t = 0.2 . The acoustics and convection stages were performed at each marching time step, i.e., Δ t c = Δ t u = Δ t .
The results are shown in Figure 14, Figure 15 and Figure 16 in comparison with the exact solution and the data obtained by Harten [3] using the ULT1C scheme at the time t = 2.0 . Figure 14, Figure 15 and Figure 16 show the absence of the numerical viscosity for the shock, in contrast to the Harten method. However, owing to the accumulation of the roundoff error, the shear wave is delayed by one grid cell at the shown moment in time.
The third example for the one-dimensional scalar hyperbolic conservation law is the double expansion wave problem [41] with the initial conditions given by (47).
The modeling area was taken to be x [ 0.5 , 0.5 ] . Two kinds of grids were used: a coarse grid (100 grid points), and a finer grid (1000 grid points); the grid step was h = 0.01 and h = 0.001 , respectively. The time step at the acoustics stage was chosen according to the Courant criterion (25), where k c = 7 —i.e., the shock propagates through seven grid cells at the acoustics stage—for both the coarse grid and the finer grid. The time step at the convection stage was chosen according to (26), where k u = 2 —i.e., the shock propagates through two grid cells at the convection stage—for both grids. The marching time step was Δ t = 0.0002 for the coarse grid and Δ t = 0.00002 for the finer grid. The acoustics and convection stages were performed at each marching time step, i.e., Δ t c = Δ t u = Δ t .
The results after 4 marching time steps for the coarse grid and after 40 marching time steps for the finer grid ( t = 0.0008 ) are shown in Figure 17, Figure 18, Figure 19, Figure 20, Figure 21 and Figure 22 in comparison to the exact solution. Figure 17, Figure 18 and Figure 19 show a good agreement and Figure 20, Figure 21 and Figure 22 show a better agreement between the exact and numerical solutions for the double expansion wave problem.
The fourth example is the Shu–Osher shock-tube problem.
The Shu–Osher problem [44] simulates a normal shock front moving inside a one-dimensional inviscid flow with artificial density fluctuations. The initial conditions for the simulation are
p j 0 = 10.3333 ,   u j 0 = 2.629369 ,   ρ j 0 = 3.857143 ,   if   x j < 1 / 8 , p j 0 = 1.0 ,   u j 0 = 0 ,   ρ j 0 = 1 + 0 . 2 sin ( 16 π x ) ,   if   x j 1 / 8 .
The modeling area was taken to be x [ 0 , 1 ] . Three kinds of grids were used: a coarse grid (192 grid points), a fine grid (384 grid points), and a finer grid (1000 grid points). The time step at the acoustics stage was chosen according to the Courant criterion (25), where k c = 2 —i.e., the shock propagates through two grid cells at the acoustics stage—for all grids. The time step at the convection stage was chosen according to (26), where k u = 5 —i.e., the shock propagates through five grid cells at the convection stage—for all grids. The marching time step was Δ t = 0.010270978683 for the coarse grid, Δ t = 0.005135489341 for the fine grid, and Δ t = 0.001972027907 for the finer grid. The acoustics and convection stages were performed at each marching time step, i.e., Δ t c = Δ t u = Δ t . To avoid additional fluctuations in the solution, we calculated the rarefaction wave at the acoustics stage instead of (A50) as
U R j k = U R i k 1 + U R i + 1 k 1 U R i k 1 x 2 x 1 ( x j x 1 ) , E R j k = E R i k 1 + E R i + 1 k 1 E R i k 1 x 2 x 1 ( x j x 1 ) , R R j k = R R i k 1 + R R i + 1 k 1 R R i k 1 x 2 x 1 ( x j x 1 ) , P R j k = ( κ 1 ) R R j k   E R j k ,
and at the convection stage instead of (A67) as
u j k = u i k 1 + u i + 1 k 1 u i k 1 x 2 x 1 ( x j x 1 ) , ε j k = ε i k 1 + ε i + 1 k 1 ε i k 1 x 2 x 1 ( x j x 1 ) , ρ j k = ρ i k 1 + ρ i + 1 k 1 ρ i k 1 x 2 x 1 ( x j x 1 ) , p j k = ( κ 1 ) ρ j k   ε j k .
The results are shown in Figure 23, Figure 24 and Figure 25 in comparison with the “exact” solution [44] at the time t = 0.178 . The results show that the fine grid and the finer grid are better than the coarse grid. However, owing to the accumulation of the roundoff error, the shock is delayed by a few grid cells for the coarse grid results at the shown moment in time.
The fifth example is a one-dimensional problem with initial conditions
p j 0 = 101325.0 ,   u j 0 = 100.0 ,   ρ j 0 = 1.25 .
In this case, at the time moment t = 0 , a thin wall was lowered in the channel section x = 0 .
The modeling area was taken to be x [ 5 ,   6 ] . The grid contained 110 cells, and the grid step was h = 0.1 . The time step at the acoustics stage was chosen according to the Courant criterion (25), where k c = 7 , i.e., the shock propagates through seven grid cells at the acoustics stage. The time step at the convection stage was chosen according to (26), where k u = 6 , i.e., the shock propagates through six grid cells at the convection stage. The marching time step was Δ t = 0.002 . The acoustics stage was performed at each marching time step, i.e., Δ t c = Δ t ; the convection stage was performed after three steps, i.e., Δ t u = 3 Δ t .
The results are shown in Figure 26, Figure 27 and Figure 28 in comparison with the exact solution at the time t = 0.012 . Figure 26, Figure 27 and Figure 28 show the absence of numerical viscosity for the shock. In this case, there is no delay caused by the shock.
The sixth example is a one-dimensional problem with the initial conditions
p j 0 = 101325.0 ,   u j 0 = 600.0 ,   ρ j 0 = 1.25 .
In this case, as in the third problem, at the time t = 0 , a thin wall was lowered in the channel section x = 0 .
The modeling area was taken to be x [ 5 ,   5 ] . The grid contained 100 cells, and the grid step was h = 0.1 . The time step at the acoustics stage was chosen according to the Courant criterion (25), where k c = 2 , i.e., the shock propagates through two grid cells at the acoustics stage. The time step at the convection stage was chosen according to (26), where k u = 5 , i.e., the shock propagates through five grid cells at the convection stage. The marching time step was Δ t = 0.00079 . The acoustics and convection stages were performed at each marching time step, i.e., Δ t c = Δ t u = Δ t .
The results are shown in Figure 29, Figure 30 and Figure 31 in comparison with the exact solution at the time t = 0.00474 . Figure 29, Figure 30 and Figure 31 show the absence of numerical viscosity for the shock. In this case, there is no delay caused by the shock.

4. Discussion

The numerical solution results for the aforementioned well-known test cases were compared with the exact solutions and Harten’s data. Based on the results obtained, the following conclusions can be drawn:
(1)
The advantage of the proposed method in comparison with the known methods of TVD, ENO, and WENO is the absence of numerical viscosity (diffusion) for shocks;
(2)
The convective terms are not neglected in comparison with the MOC methods, which is important in gas flow modeling;
(3)
Over time, shocks or rarefaction waves can propagate somewhat slower or faster than in the exact solution. This can be attributed to the rounding off of the position of the wave fronts to the accuracy of the grid cell, owing to the use of the fixed homogeneous grid.
The iterative Godunov exact solver determines the accuracy of the proposed method for flow discontinuities. In calculations, we use the iteration termination condition less than 10−5 to find the pressure difference between the current and previous iterations.
The directions for further research are connected with two-dimensional modeling and the study of complex flow structures caused by fluid–solid interactions.

Funding

This research did not receive any specific grant from funding agencies in the public, commercial, or not-for-profit sectors.

Acknowledgments

I am grateful to V.G. Shakhov and other anonymous referees for their insightful comments and advice, which have greatly improved the quality of this work.

Conflicts of Interest

The author declares no conflict of interest.

Nomenclature

SymbolMeaning
u Convective velocity of flow
x Direction
t Time
Δ t Time step, marching time step
e 1 Tolerance associated with the comparison of the flow variables
e 2 Machine arithmetic tolerance associated with the comparison of the x coordinates
h Grid step
n Number of grid cells
u s Convective velocity of a shock
k u Integer coefficient in the formula for the time step at the convection stage
a Left boundary of a modeling area
b Right boundary of the modeling area
ρ Density
p Pressure
κ Ratio of specific heat coefficients
c Sound velocity
w i Transfer variables of wave equations
w ¯ i Transfer vector variables
i Coordinate index
j Coordinate index
k Time index
P ˜ Pressure function for adiabatic law
Δ t c time step at the acoustics stage
c s Acoustic velocity of a shock
k c Integer coefficient in the formula for the time step at the acoustics stage
Δ t u Time step at the convection stage
n c An integer showing how many times the time step at the acoustics stage is greater than the marching time step
n u An integer showing how many times the time step at the convection stage is greater than the marching time step
ε Internal specific energy
[ A ] Jacobian matrix
[ Λ ] Diagonal matrix of eigenvalues of the Jacobian matrix
[ L ] Matrix of corresponding left eigenvectors
[ R ] Matrix of corresponding right eigenvectors
[ E ] Diagonal identity matrix
c * Constant sound velocity
ρ * Constant density
R L Density of the exact solution of the Riemann problem on the left
R R Density of the exact solution of the Riemann problem on the right
U L Velocity of the exact solution of the Riemann problem on the left
U R Velocity of the exact solution of the Riemann problem on the right
E L Internal specific energy of the Riemann problem on the left
E R Internal specific energy of the Riemann problem on the right
P L Pressure of the Riemann problem on the left
P R Pressure of the Riemann problem on the right
D L Velocity of the propagation of a shock or rarefaction wave of the Riemann problem on the left
D R Velocity of the propagation of a shock or rarefaction wave of the Riemann problem on the right
C L Local acoustic velocity of the Riemann problem on the left
C R Local acoustic velocity of the Riemann problem on the right
ρ c Density after the acoustics stage
p c Pressure after the acoustics stage
u c Velocity after the acoustics stage
ε c Internal specific energy after the acoustics stage
ρ u Density after the convection stage
p u Pressure after the convection stage
u u Velocity after the convection stage
ε u Internal specific energy after the convection stage
u r Velocity on the right
ρ 0 Density for the initial conditions
p 0 Pressure for the initial conditions
u 0 Velocity for the initial conditions
π Pi

Appendix A. The Methodological Scheme for the Adiabatic Gas Dynamics Equations

Appendix A.1. A Scheme of the Method for the Acoustics Stage

At the acoustics stage, the system of Equation (23) is solved. These equations describe the movement of two waves with velocities c and c , and their respective transfer values, w 1 and w 2 (19). In the proposed method, we replace variables w 1 and w 2 with variables w ¯ 1 = { w 1 ,   u } and w ¯ 2 = { w 2 ,   u } , which are transferred with local acoustic velocities c and c , respectively.
Consider a wave propagating along the positive direction of the x-axis (to the right). The grid cells are considered in pairs. The cells’ coordinates after transferring at the acoustics stage for the right wave w ¯ 2 are determined as follows:
x 1 = x i + c i k 1   Δ t c , x 2 = x i + 1 + c i + 1 k 1   Δ t c .
The solution to the problem is sought in the following form:
(1)
If conditions
| w 2   i + 1 k 1 w 2   i k 1 | < e 1 ,   | c i + 1 k 1 c i k 1 | < e 1
are satisfied, then for all grid cells for which the condition x 1 x j x 2 is satisfied, the solution at the next time instant k is trivial, and can be given as follows:
w 2   j k = 1 2 ( w 2   i k 1 + w 2   i + 1 k 1 ) ,   u j k = 1 2 ( u i k 1 + u i + 1 k 1 ) .
(2)
If condition
( c i + 1 k 1 c i k 1 ) < e 1
is satisfied, and
(2.1) if
( x 2 x 1 ) > e 2 ,
then we have a weak shock, which does not overtake the solution from the cell in front. Hence, the solution is given as follows:
w 2   j k = w 2   i k 1 ,   u j k = u i k 1 ,   if   x 1 x j ( x 1 + x 2 ) / 2 , w 2   j k = w 2   i + 1 k 1 ,   u j k = u i + 1 k 1 ,   if   ( x 1 + x 2 ) / 2 < x j x 2 ;
(2.2) if
( x 2 x 1 ) e 2 ,
(2.2 a) and if
( u i + 1 k 1 u i k 1 ) 0   and   ( x 1 h / 2 ) x j ( x 1 + h / 2 ) ,
then the solution can be given as follows:
w 2   j k = w 2   i k 1 ,   u j k = u i k 1 ,
because we have the shock, and
(2.2 b) if
( u i + 1 k 1 u i k 1 ) > 0   and   ( x 2 h / 2 ) x j ( x 2 + h / 2 ) ,
then
w 2   j k = w 2   i + 1 k 1 ,   u j k = u i + 1 k 1 ,
because we have a rarefaction wave.
(3)
If
( c i + 1 k 1 c i k 1 ) e 1 ,
and
(3.1) if
( u i + 1 k 1 u i k 1 ) < e 1 ,
then we have the shock.
(3.1 a) If
( x 1 h / 2 ) x j ( x 1 + h / 2 ) ,
then
w 2   j k = w 2   i k 1 ,   u j k = u i k 1 .
(3.1 b) If
( x 1 + h / 2 ) < x j x 2 ,
then
w 2   j k = w 2   i + 1 k 1 ,   u j k = u i + 1 k 1 .
(3.2) If
( u i + 1 k 1 u i k 1 ) e 1 ,
then we have a rarefaction wave, and the solution for x 1 x j x 2 is determined as follows:
w 2   j k = w 2   i k 1 + w 2   i + 1 k 1 w 2   i k 1 x 2 x 1 ( x j x 1 ) , u j k = u i k 1 + u i + 1 k 1 u i k 1 x 2 x 1 ( x j x 1 ) .
Under conditions (1)–(3), if it turns out that the solution has already been assigned to the grid cell at the given substep, then it is replaced by a new one when the pressure of the new solution is greater than the pressure of the solution already in the grid cell. The pressure can be obtained by subtracting u from w 2 ; see (19). This is why for each Lagrangian cell we assigned not only w 2 , but also u ; thus, we replaced w 2 with w ¯ 2 = { w 2 ,   u } . Additionally, when assigning a solution to the grid cell, the condition is checked so that the propagation of these solutions with a local acoustic velocity does not overtake (or overwrite) the solution of the forward shock, if such a shock exists.
For the wave propagating along the negative direction of the x-axis (to the left), and with transfer values w ¯ 1 = { w 1 ,   u } , the conditions and expressions are obtained in a similar way.
After simulating the wave propagations along the left and right directions, we have sets of transfer values w ¯ 1 = { w 1 ,   u } and w ¯ 2 = { w 2 ,   u } , respectively, in each cell of the grid. Hence, we can find the solution after the acoustic substep as follows:
u i k = 0.5 ( w 1   i k w 2   i k ) , P ˜ i k = 0.5 ( w 2   i k w 1   i k ) ,
where the density is determined from (20) as follows:
ρ i k = ρ 0 ( 1 + P ˜ i k κ 1 2 c 0 ) 2 κ 1 ,
and the pressure p i k can be found from the adiabatic law (17). The solution to the acoustics stage is { p c k ,   u c k ,   ρ c k } .

Appendix A.2. A Methodological Scheme for the Convection Stage

At the convection stage, the system of Equation (24) is solved. We can replace this system with
  w ¯   t + u w ¯   x = 0 ,
where w ¯ = { ρ , u } . The solution of the acoustics stage { ρ c k , u c k } gives the initial conditions for the convection stage w ¯ = { ρ u k 1 ,   u u k 1 } = {   ρ c k ,   u c k } , which are transferred with local convective velocity u u k 1 . Additionally, the cells are considered in pairs at the convection stage. The cells’ coordinates after transferring at the convection stage are determined as follows:
  x 1 = x i + u u i k 1   Δ t u ,     x 2 = x i + 1 + u u i + 1 k 1   Δ t u .
Furthermore, after we omit subscript u , the variables here refer to the convection stage.
The solution at the convection stage is sought in the following form:
(1)
if the conditions
| u i + 1 u i | < e 1 ,   | ρ i + 1 ρ i | < e 1
are satisfied, then for all grid cells for which the condition is satisfied, the solution at the next time moment k is trivial:
ρ j k = 1 2 ( ρ i k 1 + ρ i + 1 k 1 ) ,   u j k = 1 2 ( u i k 1 + u i + 1 k 1 ) .
When assigning the solution (A18) to the grid cells, the condition is separately checked so that the propagation of this solution at the convection velocity does not overtake (does not overwrite) the solution of the forward shock, if one exists. For this, at the beginning of the convection stage, the positions of all of the shock boundaries at the next moment in time are determined.
(2)
If the conditions
( u i + 1 u i ) < e 1
are satisfied, then we have the shock.
(2.1) If
( x 2 x 1 ) > e 2 ,
then the solution is defined as follows:
(2.1 a) if
x 1 x j ( x 1 + x 2 ) / 2 ,
then
ρ j k = ρ i k 1 ,   u j k = u i k 1 ;
(2.1 b) if
( x 1 + x 2 ) / 2 < x j x 2 ,
then
ρ j k = ρ i + 1 k 1 ,   u j k = u i + 1 k 1 ;
(2.2) if
( x 2 x 1 ) e 2 ,
then
(2.2 a) if
| p i + 1 k 1 p i k 1 | < e 1 ,
and the discontinuity boundary is first determined as follows:
  x = x i + h / 2 + ( u i k 1 + u i + 1 k 1 )   Δ t u ,
then the solution is assigned to cell j to the left of the discontinuity boundary
ρ j k = ρ i k 1 ,   u j k = u i k 1 ,
and in cell j + 1 to the right of the discontinuity boundary, the values are assigned as follows:
ρ j k = ρ i + 1 k 1 ,   u j k = u i + 1 k 1 .
(2.2 b) If
| p i + 1 k 1 p i k 1 | e 1 ,
then the solution is defined as follows:
-
if
p i k 1 > p i + 1 k 1   and   ( x 1 h / 2 ) x j ( x 1 + h / 2 ) ,
then
ρ j k = ρ i k 1 ,   u j k = u i k 1 ;
-
if
p i k 1 < p i + 1 k 1   and   ( x 2 h / 2 ) x j ( x 2 + h / 2 ) ,
then
ρ j k = ρ i + 1 k 1 ,   u j k = u i + 1 k 1 .
(3)
If
( u i + 1 u i ) e 1 ,
then we have the rarefaction wave, and the solution for x 1 x j x 2 is determined from the conservation condition of the Riemann invariants as follows:
u j k = u i k 1 + u i + 1 k 1 u i k 1 x 2 x 1 ( x j x 1 ) ,   ρ j k = ( ( ρ i k 1 ) κ 1 2 + ( ρ i + 1 k 1 ) κ 1 2 ( ρ i k 1 ) κ 1 2 x 2 x 1 ( x j x 1 ) ) 2 κ 1 .
When conditions (1)–(3) are satisfied, if it turns out that the solution has already been assigned to the grid cell at this substep, then it is replaced by a new one when the pressure of the new solution is greater than the pressure of the solution already in the grid cell.

Appendix B. The Scheme of the Method for the One-Dimensional Scalar Hyperbolic Conservation Law

Appendix B.1. A Methodological Scheme for the Acoustics Stage of the One-Dimensional Scalar Hyperbolic Conservation Law

At the acoustics stage, the system of Equation (30) is solved. Although we cannot obtain the system of wave Equation (39) for nonlinear cases, the fundamental properties of the solution of the linear system (39) are conserved for the solution of the nonlinear system (30). The solutions for the nonlinear system are a shock wave or a rarefaction wave [37], just like for the linear system. Unfortunately, we do not know the variables w 1 and w 3 for the nonlinear system (30), but we know the exact solution of the Riemann problem using the Godunov method [25] for the nonlinear system (28), (29). We denote this solution with the large variables: R L and R R —density, U L = U R —velocity, E L and E R —internal specific energy, P L = P R —pressure, and D L and D R —velocity of propagation of a shock or rarefaction wave, where the subscripts L and R denote the left and right regions of an edge between the cells, respectively.
In the proposed method, we replace the variables w 1 and w 3 (40) with the variables w ¯ 1 = { P L ,   U L ,   R L ,   E L } and w ¯ 3 = { P R ,   U R ,   R R ,   E R } , which are transferred with local acoustic velocities C L = D L U L and C R = D R U R , respectively.
We first need to solve the Riemann problem using the Godunov method [25] for every pair of cells ( i and i + 1 ) with data ( { p i , u i , ρ i , ε i } and { p i + 1 , u i + 1 , ρ i + 1 , ε i + 1 } ), respectively. As a result, the values of the large variables { P ,   U ,   R L ,   E L ,   D L ,   R R ,   E R ,   D R } are obtained, which are assigned to the grid cells as follows:
P L i + 1 k 1 = P ,   U L i + 1 k 1 = U ,   R L i + 1 k 1 = R L ,   E L i + 1 k 1 = E L ,   C L i + 1 k 1 = D L U ,
which constitute the vector w ¯ 1 of the wave propagating along the negative direction of the x-axis (to the left); and:
P R i k 1 = P ,   U R i k 1 = U ,   R R i k 1 = R R ,   E R i k 1 = E R ,   C R i k 1 = D R U ,
which constitute the vector w ¯ 3 of the wave propagating along the positive direction of the x-axis (to the right). In the case of a rarefaction wave, the variable D assigns the velocity of the slower characteristic of the rarefaction wave. For example, for the right rarefaction wave, DR is given as follows:
D R = U + c i + 1 ( κ 1 ) 2 ( u i + 1 U ) ,
where
c i + 1 = κ p i + 1 ρ i + 1 ,
and for the left rarefaction wave DL is determined as
D L = U c i ( κ 1 ) 2 ( u i U ) . D L = U c i ( κ 1 ) 2 ( u i U ) .
Consider a wave propagating along the positive direction of the x-axis (to the right). The grid cells are considered in pairs. The cells’ coordinates after transferring at the acoustics stage for the right wave w ¯ 3 are determined as follows:
  x 1 = x i + C R i k 1   Δ t c ,   .   x 2 = x i + 1 + C R i + 1 k 1 Δ t c
The solution to the problem is sought in the following form:
(1)
If the conditions
| P R i + 1 k 1 P R i k 1 | < e 1 ,   | C R i + 1 k 1 C R i k 1 | < e 1
are satisfied, then for all grid cells for which the condition x 1 x j x 2 is satisfied, the solution at the next time instant k is trivial, and can be given as follows:
P R j k = 1 2 ( P R i k 1 + P R i + 1 k 1 ) ,   U R j k = 1 2 ( U R i k 1 + U R i + 1 k 1 ) ,   R R j k = 1 2 ( R R i k 1 + R R i + 1 k 1 ) ,   E R j k = 1 2 ( E R i k 1 + E R i + 1 k 1 ) .
(2)
If the condition
( C R i + 1 k 1 C R i k 1 ) < e 1
is satisfied, and
(2.1) if
( x 2 x 1 ) > e 2 ,
then we have a weak shock, which does not overtake the solution from the cell in front. Hence, the solution is given as follows:
P R j k = P R i k 1 ,   U R j k = U R i k 1 ,   R R j k = R R i k 1 ,   E R j k = E R i k 1 ,   if   x 1 x j ( x 1 + x 2 ) / 2 , P R j k = P R i + 1 k 1 ,   U R j k = U R i + 1 k 1 ,   R R j k = R R i + 1 k 1 ,   E R j k = E R i + 1 k 1 ,   if   ( x 1 + x 2 ) / 2 < x j x 2 ;
(2.2) if
( x 2 x 1 ) e 2 ,
(2.2 a) if
( U R i + 1 k 1 U R i k 1 ) 0   and   ( x 1 h / 2 ) x j ( x 1 + h / 2 ) ,
then the solution can be given as follows:
P R j k = P R i k 1 ,   U R j k = U R i k 1 ,   R R j k = R R i k 1 ,   E R j k = E R i k 1 ,
because we have the shock, and
(2.2 b) if
( U R i + 1 k 1 U R i k 1 ) > 0   and   ( x 2 h / 2 ) x j ( x 2 + h / 2 ) ,
then
P R j k = P R i + 1 k 1 ,   U R j k = U R i + 1 k 1 ,   R R j k = R R i + 1 k 1 ,   E R j k = E R i + 1 k 1
because we have a rarefaction wave.
(3)
If
( C R i + 1 k 1 C R i k 1 ) e 1 ,
then
(3.1) if
( U R i + 1 k 1 U R i k 1 ) < e 1 ,
then we have the shock.
(3.1 a) If
( x 1 h / 2 ) x j ( x 1 + h / 2 ) ,
then
P R j k = P R i k 1 ,   U R j k = U R i k 1 ,   R R j k = R R i k 1 ,   E R j k = E R i k 1 ;
(3.1 b) if
( x 1 + h / 2 ) < x j x 2 ,
then
P R j k = P R i + 1 k 1 ,   U R j k = U R i + 1 k 1 ,   R R j k = R R i + 1 k 1 ,   E R j k = E R i + 1 k 1 .
This option is possible because of the following ratio of the local acoustic velocity of the shock to the sound velocity of the unperturbed flow ahead of its front, which can be given as follows:
C R i k 1 C R i + 1 k 1 = D R U c R = ρ R R R ( κ + 1 ) P 2 κ   p R + κ 1 2 κ
or
D R U c R = ρ R R R ( κ + 1 ) 2 κ ( κ + 1 ( κ 1 ) ρ R R R ( κ + 1 ) ρ R R R ( κ 1 ) ) + κ 1 2 κ .
From the graphical analysis of this ratio, it follows that for weak shock waves, it will be less than unity and increase indefinitely.
Particularly, the test case of a shock wave considered by Sod [42] refers to the variant “(3.1).”
(3.2) If
( U R i + 1 k 1 U R i k 1 ) e 1 ,
then we have a rarefaction wave, and the solution for x 1 x j x 2 is determined from the Riemann invariants of the hyperbolic conservation law as follows:
U R j k = U R i k 1 + U R i + 1 k 1 U R i k 1 x 2 x 1 ( x j x 1 ) ,   E R j k = ( E R i k 1 + E R i + 1 k 1 E R i k 1 x 2 x 1 ( x j x 1 ) ) 2 ,   R R j k = ( R R i k 1 ( E R j k E R i k 1 ) 1 κ 1 + R R i + 1 k 1 ( E R j k E R i + 1 k 1 ) 1 κ 1 ) / 2 ,   P R j k = ( κ 1 ) R R j k   E R j k .
Under conditions (1)–(3), if it turns out that the solution has already been assigned to the grid cell at the given substep, then it is replaced by a new solution obtained using the Riemann exact solver. In this case, the solution already assigned will be with the subscript R, and the next solution that comes to this cell will be with the subscript L. The resulting new solution is taken from the result of the Riemann problem with subscript R. Additionally, when assigning a solution to the grid cell, the condition is checked so that the propagation of these solutions with a local acoustic velocity does not overtake (or overwrite) the solution of the forward shock, if such a shock exists.
For the wave propagating along the negative direction of the x-axis (to the left), and with transfer values w ¯ 1 = { P L ,   U L , R L ,   E L } , the conditions and expressions are obtained in a similar way.
After simulating the wave propagations along the left and right directions, we have sets of transfer values w ¯ 1 = { P L k ,   U L k , R L k ,   E L k } and w ¯ 3 = { P R k ,   U R k , R R k ,   E R k } , respectively, in each cell of the grid, as well as a solution from the last substep in time { p k 1 ,   u k 1 ,   ρ k 1 ,   ε k 1 } (see Figure A1) for which the Riemann problem is solved by the Godunov exact solver [25] three times. The first time the problem is solved for data w ¯ 3 = { P R k ,   U R k , R R k ,   E R k } on the left and { p k 1 ,   u k 1 ,   ρ k 1 ,   ε k 1 } on the right (see Figure A2), the resulting right solution is assigned to the data of the Riemann problem solved for the third time from the left (see Figure A2). The second time the problem is solved for the data { p k 1 ,   u k 1 ,   ρ k 1 ,   ε k 1 } on the left and w ¯ 1 = { P L k ,   U L k , R L k ,   E L k } on the right (see Figure A3), the resulting left solution is assigned to the data of the third problem on the right (see Figure A4). Finally, the third time the problem is solved for the aforementioned data (see Figure A4), as a result, we again obtain the values of the large variables { P k * ,   U k * , R L k * ,   E L k * , R R k * ,   E R k * } .
Because the pressure and convective velocity are equal for the left and right sides, their values after the acoustics stage are determined as follows:
p c i k = p i k * ,   u c i k = U i k * .
The values for density and energy are selected as follows:
ρ c i k = R R i k * ,   ε c i k = E R i k * ,   if   U i k * 0 , ρ c i k = R L i k * ,   ε c i k = E L i k * ,   if   U i k * < 0 .
The solution to the acoustics stage is { p c k ,   u c k ,   ρ c k ,   ε c k } .
Figure A1. Initial conditions for the three Riemann problems.
Figure A1. Initial conditions for the three Riemann problems.
Fluids 07 00016 g0a1
Figure A2. The first Riemann problem.
Figure A2. The first Riemann problem.
Fluids 07 00016 g0a2
Figure A3. The second Riemann problem.
Figure A3. The second Riemann problem.
Fluids 07 00016 g0a3
Figure A4. The third Riemann problem.
Figure A4. The third Riemann problem.
Fluids 07 00016 g0a4

Appendix B.2. A Scheme of the Method for the Convection Stage of the One-Dimensional Scalar Hyperbolic Conservation Law

At the convection stage, the system of Equations (29) and (41) is solved. In the proposed method, the value { p c k ,   u c k ,   ρ c k ,   ε c k } = { p u k 1 ,   u u k 1 ,   ρ u k 1 ,   ε u k 1 } is transferred with local convective velocity u c k , i.e., the calculated results of the acoustics stage are the initial data for the convection stage. Additionally, the cells are considered in pairs at the convection stage. The cells’ coordinates after transferring at the convection stage are determined as follows:
x 1 = x + u u i k 1   Δ t u , x 2 = x i + 1 + u u i + 1 k 1   Δ t u .
Furthermore, after we omit subscript u , the variables here refer to the convection stage.
The solution at the convection stage is sought in the following form:
(1)
if the conditions
| u i + 1 u i | < e 1 ,   | ρ i + 1 ρ i | < e 1 ,   | ε i + 1 ε i | < e 1
are satisfied, then for all grid cells for which the condition is satisfied, the solution at the next time moment k is trivial:
p j k = 1 2 ( p i k 1 + p i + 1 k 1 ) ,   u j k = 1 2 ( u i k 1 + u i + 1 k 1 ) ,   ρ j k = 1 2 ( ρ i k 1 + ρ i + 1 k 1 ) ,   ε j k = 1 2 ( ε i k 1 + ε i + 1 k 1 ) .
When assigning the solution (A55) to the grid cells, the condition is separately checked so that the propagation of this solution at the convection velocity does not overtake (does not overwrite) the solution of the forward shock, if one exists. For this, at the beginning of the convection stage, the positions of all of the shock boundaries at the next moment in time are determined.
(2)
If the conditions
( u i + 1 u i ) < e 1
are satisfied, then we have the shock.
(2.1) If
( x 2 x 1 ) > e 2 ,
then the solution is defined as follows:
(2.1 a) if
x 1 x j ( x 1 + x 2 ) / 2 ,
then
p j k = p i k 1 ,   u j k = u i k 1 ,   ρ j k = ρ i k 1 ,   ε j k = ε i k 1 ;
(2.1 b) if
( x 1 + x 2 ) / 2 < x j x 2 ,
then
p j k = p i + 1 k 1 ,   u j k = u i + 1 k 1 ,   ρ j k = ρ i + 1 k 1 ,   ε j k = ε i + 1 k 1 ;
(2.2) if
( x 2 x 1 ) e 2 ,
then
(2.2 a) if
| p i + 1 k 1 p i k 1 | < e 1 ,
then the discontinuity boundary is first determined as follows:
  x = x i + h / 2 + ( u i k 1 + u i + 1 k 1 )   Δ t u
and the solution is assigned to cell j to the left of the discontinuity boundary
p j k = p i k 1 ,   u j k = u i k 1 ,   ρ j k = ρ i k 1 ,   ε j k = ε i k 1 ,
and in cell j + 1 to the right of the discontinuity boundary, the following values are assigned:
p j k = p i + 1 k 1 ,   u j k = u i + 1 k 1 ,   ρ j k = ρ i + 1 k 1 ,   ε j k = ε i + 1 k 1 ,
(2.2 b) if
| p i + 1 k 1 p i k 1 | e 1
then the solution is defined as follows:
-
if
p i k 1 > p i + 1 k 1   and   ( x 1 h / 2 ) x j ( x 1 + h / 2 ) ,
then
p j k = p i k 1 ,   u j k = u i k 1 ,   ρ j k = ρ i k 1 ,   ε j k = ε i k 1 ;
-
if
p i k 1 < p i + 1 k 1   and   ( x 2 h / 2 ) x j ( x 2 + h / 2 ) ,
then
p j k = p i + 1 k 1 ,   u j k = u i + 1 k 1 ,   ρ j k = ρ i + 1 k 1 ,   ε j k = ε i + 1 k 1 .
(3)
If
( u i + 1 u i ) e 1 ,
then we have the rarefaction wave, and the solution for x 1 x j x 2 is determined from the conservation condition of the Riemann invariants as follows:
u j k = u i k 1 + u i + 1 k 1 u i k 1 x 2 x 1 ( x j x 1 ) ,   ε j k = ( ε i k 1 + ε i + 1 k 1 ε i k 1 x 2 x 1 ( x j x 1 ) ) 2 , ρ j k = ( ρ i k 1 ( ε j k ε i k 1 ) 1 κ 1 + ρ i + 1 k 1 ( ε j k ε i + 1 k 1 ) 1 κ 1 ) / 2 , p j k = ( κ 1 ) ρ j k   ε j k .
When conditions (1)–(3) are satisfied, if it turns out that the solution has already been assigned to the grid cell at this substep, then it is replaced by a new one when the pressure of the new solution is greater than the pressure of the solution already in the grid cell.

Appendix B.3. Boundary Conditions for a Wall

The main idea behind choosing the following boundary conditions is to study the mechanism of wave reflection from the wall. Suppose that, at the acoustics stage, when conditions (1)–(3) are satisfied, the wave w ¯ 3 = { P R ,   U R ,   R R ,   E R } propagates to the right with velocity C R and meets the wall, and then it is reflected from it, and transforms into a wave w ¯ 1 = { P R , U R ,   R R ,   E R } that propagates to the left of the wall with velocity C R . In this case, when the wave w ¯ 1 is distributed into the grid cells, the dam-break problem is solved using the Godunov method, where the variables on the left are the data already assigned to the cell, and the variables on the right are w ¯ 1 = { P R , U R ,   R R ,   E R } As a result, new values of large variables { P * ,   U * ,   R L * ,   E L * ,   D L * ,   R R * ,   E R * ,   D R * } are obtained, which are assigned to the grid cells as follows
p i k = P i * ,   u i k = U i * ,   ρ i k = R L i * ,   ε i k = E R i * ,   c i k = D L i * U i * .
For wave w ¯ 1 = { P L ,   U L ,   R L ,   E L } that, after meeting a wall, turns into the wave w ¯ 3 = { P L ,   U L ,   R L ,   E L }
p i k = P i * ,   u i k = U i * ,   ρ i k = R R i * ,   ε i k = E R i * ,   c i k = D R i * U i * .
At the convection stage, we have one wave that reverses direction when it meets the wall. Under conditions (1)–(3) of the convection stage, wave w ¯ = { p k , u k , ρ k , ε k } moves to the right with velocity u k , meets the wall, and is reflected from it, turning into wave w ¯ = { p k , u k , ρ k , ε k } , which propagates to the left of the wall with velocity u k . In this case, when the wave w ¯ is distributed into the grid cells, the dam-break problem is solved using the Godunov method, where the variables on the left are the data already assigned to the cell, and the variables on the right are w ¯ = { p k , u k , ρ k , ε k } . As a result, new values of large variables { P * ,   U * ,   R L * ,   E L * ,   D L * ,   R R * ,   E R * ,   D R * } are obtained, which are assigned to the grid cells as shown in (A68). If wave w ¯ = { p k , u k , ρ k , ε k } propagates to the left, then a similar reasoning leads to the result described using formula (A69).

References

  1. von Neumann, J.; Richtmyer, R.D. A method for the numerical calculation of hydrodynamic shocks. J. Appl. Phys. 1950, 21, 232. [Google Scholar] [CrossRef]
  2. 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. 1994, 4, 171–218. [Google Scholar] [CrossRef] [Green Version]
  3. Harten, A. A high resolution scheme for the computation of weak solutions of hyperbolic conservation laws. J. Comput. Phys. 1983, 49, 357–393. [Google Scholar] [CrossRef] [Green Version]
  4. Harten, A.; Engquist, B.; Osher, S.; Chakravarthy, S.R. Uniform high order accurate essentially non-oscillatory schemes, III. J. Comput. Phys. 1987, 71, 231–303. [Google Scholar] [CrossRef]
  5. Liu, X.D.; Osher, S.; Chan, T. Weighted essentially non-oscillatory schemes. J. Comput. Phys. 1994, 115, 200–212. [Google Scholar] [CrossRef] [Green Version]
  6. Harten, A. ENO schemes with subcell resolution. J. Comput. Phys. 1987, 83, 148–184. [Google Scholar] [CrossRef] [Green Version]
  7. Harten, A.; Osher, S. Uniformly high order essentially non-oscillatory schemes I. SIAM J. Numer. Anal. 1987, 24, 279–309. [Google Scholar] [CrossRef]
  8. Harten, A.; Osher, S.; Engquist, B.; Chakravarthy, S. Some results on uniformly high order accurate essentially non-oscillatory schemes. Appl. Numer. Math. 1986, 2, 347–377. [Google Scholar] [CrossRef]
  9. Shu, C.-W.; Osher, S. Efficient implementation of essentially non-oscillatory shock-capturing schemes. J. Comput. Phys. 1988, 77, 439–471. [Google Scholar] [CrossRef] [Green Version]
  10. Shu, C.-W.; Osher, S. Efficient implementation of essentially non-oscillatory shock-capturing schemes II. J. Comput. Phys. 1989, 83, 32–78. [Google Scholar] [CrossRef]
  11. Jiang, G.-S.; Shu, C.-W. Efficient implementation of Weighted ENO schemes. J. Comput. Phys. 1996, 126, 202–228. [Google Scholar] [CrossRef] [Green Version]
  12. Pawar, S.; San, O. CFD Julia: A Learning Module Structuring an Introductory Course on Computational Fluid Dynamics. Fluids 2019, 4, 159. [Google Scholar] [CrossRef] [Green Version]
  13. Roe, P.L. Approximate Riemann solvers, parameter vectors, and difference schemes. J. Comput. Phys. 1997, 135, 250–258. [Google Scholar] [CrossRef] [Green Version]
  14. Feng, H.; Hu, F.; Wang, R. A New Mapped Weighted Essentially Non-oscillatory Scheme. J. Sci. Comput. 2012, 51, 449–473. [Google Scholar] [CrossRef]
  15. Shu, C.-W. Essentially non-oscillatory and weighted essentially non-oscillatory schemes for hyperbolic conservation laws. In Advanced Numerical Approximation of Nonlinear Hyperbolic Equations, Lecture Notes in Mathematics; Cockburn, B., Johnson, C., Shu, C.-W., Tadmor, E., Quarteroni, A., Eds.; Springer: Berlin/Heidelberg, Germany, 1998; Volume 1697, pp. 325–432. [Google Scholar]
  16. Henrick, A.K.; Aslam, T.D.; Powers, J.M. Mapped weighted essentially non-oscillatory schemes: Achieving optimal order near critical points. J. Comput. Phys. 2005, 207, 542–567. [Google Scholar] [CrossRef]
  17. Aràndiga, F.; Baeza, A.; Belda, A.M.; Mulet, P. Analysis of WENO schemes for full and global accuracy. SIAM J. Numer. Anal. 2011, 49, 893–915. [Google Scholar] [CrossRef]
  18. Balsara, D.S.; Shu, C.-W. Monotonicity preserving weighted essentially non-oscillatory schemes with increasingly high order of accuracy. J. Comput. Phys. 2000, 160, 405–452. [Google Scholar] [CrossRef] [Green Version]
  19. Borges, R.; Carmona, M.; Costa, B.; Don, W.S. An improved weighted essentially non-oscillation scheme for hypebolic conservation laws. J. Comput. Phys. 2008, 227, 3191–3211. [Google Scholar] [CrossRef]
  20. Castro, M.; Costa, B.; Don, W.S. High order weighted essentially non-oscillatory WENO-Z schemes for hyperbolic conservation laws. J. Comput. Phys. 2011, 230, 1766–1792. [Google Scholar] [CrossRef]
  21. Gottlieb, S.; Shu, C.-W.; Tadmor, E. Strong stability-preserving time discretization methods. SIAM Rev. 2001, 43, 89–112. [Google Scholar] [CrossRef]
  22. Wang, B.-S.; Li, P.; Gao, Z.; Don, W.S. An improved fifth order alternative WENO-Z finite difference scheme for hyperbolic conservation laws. J. Comput. Phys. 2018, 374, 469–477. [Google Scholar] [CrossRef]
  23. Cravero, I.; Puppo, G.; Semplice, M.; Visconti, G. Cool WENO schemes. Comput. Fluids 2018, 169, 71–86. [Google Scholar] [CrossRef] [Green Version]
  24. Fu, L.; Xiangyu, Y.H.; Nikolaus, A.A. A new class of adaptive high-order targeted ENO schemes for hyperbolic conservation laws. J. Comput. Phys. 2018, 374, 724–751. [Google Scholar] [CrossRef]
  25. Godunov, S.K. A difference scheme for numerical computation of discontinuous solution of hyperbolic equation. Mat. Sbornik 1959, 47, 271–306. [Google Scholar]
  26. LeVeque, R.J. Balancing source terms and flux gradients on high-resolution Godunov methods: The quasi-steady wave-propagation algorithm. J. Comput. Phys. 1998, 146, 346–365. [Google Scholar] [CrossRef] [Green Version]
  27. Einfeldt, B. On Godunov-type methods for gas dynamics. SIAM J. Numer. Anal. 1988, 25, 294–318. [Google Scholar] [CrossRef]
  28. Wu, Y.Y.; Cheung, K.F. Explicit solution to the exact Riemann problem and application in nonlinear shallow-water equations. Int. J. Numer. Meth. Fluids 2008, 57, 1649–1668. [Google Scholar] [CrossRef]
  29. Fritz, J. Partial Differential Equations, 4th ed.; Springer: New York, NY, USA, 1991; ISBN 978-0-387-90609-6. [Google Scholar]
  30. Guinot, V. Riemann solvers for water hammer simulations by Godunov method. Int. J. Numer. Methods Eng. 2000, 49, 851–870. [Google Scholar] [CrossRef]
  31. Pal, S.; Hanmaiahgari, P.R.; Karney, B.W. An Overview of the Numerical Approaches to Water Hammer Modelling: The Ongoing Quest for Practical and Accurate Numerical Approaches. Water 2021, 13, 1597. [Google Scholar] [CrossRef]
  32. Byrne, F.N.; Ellison, M.A.; Reid, J.H. The particle-in-cell computing method for fluid dynamics. Methods Comput. Phys. 1964, 3, 319–343. [Google Scholar] [CrossRef]
  33. Levato, T.; Goncalves, L.V.; Giannini, V. Laser-Plasma Accelerated Protons: Energy Increase in Gas-Mixtures Using High Mass Number Atomic Species. Fluids 2019, 4, 150. [Google Scholar] [CrossRef] [Green Version]
  34. Błoński, D.; Strzelecka, K.; Kudela, H. Vortex Trapping Cavity on Airfoil: High-Order Penalized Vortex Method Numerical Simulation and Water Tunnel Experimental Investigation. Energies 2021, 14, 8402. [Google Scholar] [CrossRef]
  35. Meli, A.; Nishikawa, K.-I. Particle-in-Cell Simulations of Astrophysical Relativistic Jets. Universe 2021, 7, 450. [Google Scholar] [CrossRef]
  36. Mellmann, M.; Scholle, M. Symmetries and Related Physical Balances for Discontinuous Flow Phenomena within the Framework of Lagrange Formalism. Symmetry 2021, 13, 1662. [Google Scholar] [CrossRef]
  37. Toro, F.E. Riemann Solvers and Numerical Methods for Fluid Dynamics; Springer: Berlin/Heidelberg, Germany, 2009; ISBN 3-540-65966-8. [Google Scholar]
  38. Courant, R.; Hilbert, D. Methods of Mathematical Physics: Partial Differential Equations; Wiley: Singapore, 1989; Volume II, ISBN 0-4-71-50439-4. [Google Scholar]
  39. Inviscid Burgers’ Equation and Its Numerical Solutions. Available online: https://etd.lib.metu.edu.tr/upload/12621609/index.pdf (accessed on 17 December 2021).
  40. Liu, X.-D.; Osher, S. Nonoscillatory high order accurate self-similar maximum principle satisfying shock capturing schemes I. SIAM J. Numer. Anal. 1996, 33, 760–779. [Google Scholar] [CrossRef] [Green Version]
  41. Carmouze, Q.; Saurel, R.; Chiapolino, A.; Lapebie, E. Riemann solver with internal reconstruction (RSIR) for compressible single-phase and non-equilibrium two-phase flows. J. Comput. Phys. 2020, 408, 109–176. [Google Scholar] [CrossRef] [Green Version]
  42. Sod, G.A. A survey of several finite difference methods for systems of nonlinear hyperbolic conservation laws. J. Comput. Phys. 1978, 107, 1–31. [Google Scholar] [CrossRef] [Green Version]
  43. Lax, P.D. Weak solutions of nonlinear hyperbolic equations and their numerical computation. Commun. Pure Appl. Math. 1954, 7, 159–193. [Google Scholar] [CrossRef]
  44. Taylor, E.M.; Wu, M.; Martin, M.P. Optimization of Nonlinear Error for Weighted Essentially Non-Oscillatory Methods in Direct Numerical Simulations of Compressible Turbulence. J. Comput. Phys. 2007, 223, 384–397. [Google Scholar] [CrossRef]
Figure 1. The modeling area and the grid of the proposed method.
Figure 1. The modeling area and the grid of the proposed method.
Fluids 07 00016 g001
Figure 2. Velocity plot for the shock–rarefaction wave problem for the inviscid Burgers’ equation at the time t = 1.6 : the exact solution (line), and the present method (cross).
Figure 2. Velocity plot for the shock–rarefaction wave problem for the inviscid Burgers’ equation at the time t = 1.6 : the exact solution (line), and the present method (cross).
Fluids 07 00016 g002
Figure 3. Velocity plot for the shock–rarefaction wave problem for the inviscid Burgers’ equation at the time t = 4.0 : the exact solution (line), and the present method (cross).
Figure 3. Velocity plot for the shock–rarefaction wave problem for the inviscid Burgers’ equation at the time t = 4.0 : the exact solution (line), and the present method (cross).
Fluids 07 00016 g003
Figure 4. Velocity plot for the problem (45) for the inviscid Burgers’ equation ( t = 1.1 ): the exact solution [40] (line), and the present method (cross).
Figure 4. Velocity plot for the problem (45) for the inviscid Burgers’ equation ( t = 1.1 ): the exact solution [40] (line), and the present method (cross).
Fluids 07 00016 g004
Figure 5. Density plot for the shock-tube problem (46) for the adiabatic gas dynamics equations: the exact solution (line), and the present method (cross).
Figure 5. Density plot for the shock-tube problem (46) for the adiabatic gas dynamics equations: the exact solution (line), and the present method (cross).
Fluids 07 00016 g005
Figure 6. Velocity plot for the shock-tube problem (46) for the adiabatic gas dynamics equations: the exact solution (line), and the present method (cross).
Figure 6. Velocity plot for the shock-tube problem (46) for the adiabatic gas dynamics equations: the exact solution (line), and the present method (cross).
Fluids 07 00016 g006
Figure 7. Pressure plot for the shock-tube problem (46) for the adiabatic gas dynamics equations: the exact solution (line), and the present method (cross).
Figure 7. Pressure plot for the shock-tube problem (46) for the adiabatic gas dynamics equations: the exact solution (line), and the present method (cross).
Fluids 07 00016 g007
Figure 8. Density plot for the double expansion wave problem (47) for the adiabatic gas dynamics equations: the exact solution (line), and the present method (cross).
Figure 8. Density plot for the double expansion wave problem (47) for the adiabatic gas dynamics equations: the exact solution (line), and the present method (cross).
Fluids 07 00016 g008
Figure 9. Velocity plot for the double expansion wave problem (47) for the adiabatic gas dynamics equations: the exact solution (line), and the present method (cross).
Figure 9. Velocity plot for the double expansion wave problem (47) for the adiabatic gas dynamics equations: the exact solution (line), and the present method (cross).
Fluids 07 00016 g009
Figure 10. Pressure plot for the double expansion wave problem (47) for the adiabatic gas dynamics equations: the exact solution (line), and the present method (cross).
Figure 10. Pressure plot for the double expansion wave problem (47) for the adiabatic gas dynamics equations: the exact solution (line), and the present method (cross).
Fluids 07 00016 g010
Figure 11. Density plot for the shock-tube problem of Sod: the exact solution (line), the ULT1C scheme of Harten (circle), and the present method (cross).
Figure 11. Density plot for the shock-tube problem of Sod: the exact solution (line), the ULT1C scheme of Harten (circle), and the present method (cross).
Fluids 07 00016 g011
Figure 12. Velocity plot for the shock-tube problem of Sod: the exact solution (line), the ULT1C scheme of Harten (circle), and the present method (cross).
Figure 12. Velocity plot for the shock-tube problem of Sod: the exact solution (line), the ULT1C scheme of Harten (circle), and the present method (cross).
Fluids 07 00016 g012
Figure 13. Pressure plot for the shock-tube problem of Sod: the exact solution (line), the ULT1C scheme of Harten (circle), and the present method (cross).
Figure 13. Pressure plot for the shock-tube problem of Sod: the exact solution (line), the ULT1C scheme of Harten (circle), and the present method (cross).
Fluids 07 00016 g013
Figure 14. Density plot for the Riemann problem of Lax: the exact solution (line), the ULT1C scheme of Harten (circle), and the present method (cross).
Figure 14. Density plot for the Riemann problem of Lax: the exact solution (line), the ULT1C scheme of Harten (circle), and the present method (cross).
Fluids 07 00016 g014
Figure 15. Velocity plot for the Riemann problem of Lax: the exact solution (line), the ULT1C scheme of Harten (circle), and the present method (cross).
Figure 15. Velocity plot for the Riemann problem of Lax: the exact solution (line), the ULT1C scheme of Harten (circle), and the present method (cross).
Fluids 07 00016 g015
Figure 16. Pressure plot for the Riemann problem of Lax: the exact solution (line), the ULT1C scheme of Harten (circle), and the present method (cross).
Figure 16. Pressure plot for the Riemann problem of Lax: the exact solution (line), the ULT1C scheme of Harten (circle), and the present method (cross).
Fluids 07 00016 g016
Figure 17. Density plot for the double expansion wave problem (47) for the one-dimensional scalar hyperbolic conservation law, using the coarse grid (100 grid points): the exact solution (line), and the present method (cross).
Figure 17. Density plot for the double expansion wave problem (47) for the one-dimensional scalar hyperbolic conservation law, using the coarse grid (100 grid points): the exact solution (line), and the present method (cross).
Fluids 07 00016 g017
Figure 18. Velocity plot for the double expansion wave problem (47) for the one-dimensional scalar hyperbolic conservation law, using the coarse grid (100 grid points): the exact solution (line), and the present method (cross).
Figure 18. Velocity plot for the double expansion wave problem (47) for the one-dimensional scalar hyperbolic conservation law, using the coarse grid (100 grid points): the exact solution (line), and the present method (cross).
Fluids 07 00016 g018
Figure 19. Pressure plot for the double expansion wave problem (47) for the one-dimensional scalar hyperbolic conservation law, using the coarse grid (100 grid points): the exact solution (line), and the present method (cross).
Figure 19. Pressure plot for the double expansion wave problem (47) for the one-dimensional scalar hyperbolic conservation law, using the coarse grid (100 grid points): the exact solution (line), and the present method (cross).
Fluids 07 00016 g019
Figure 20. Density plot for the double expansion wave problem (47) for the one-dimensional scalar hyperbolic conservation law, using the finer grid (1000 grid points): the exact solution (solid line), and the present method (dotted line).
Figure 20. Density plot for the double expansion wave problem (47) for the one-dimensional scalar hyperbolic conservation law, using the finer grid (1000 grid points): the exact solution (solid line), and the present method (dotted line).
Fluids 07 00016 g020
Figure 21. Velocity plot for the double expansion wave problem (47) for the one-dimensional scalar hyperbolic conservation law, using the finer grid (1000 grid points): the exact solution (solid line), and the present method (dotted line).
Figure 21. Velocity plot for the double expansion wave problem (47) for the one-dimensional scalar hyperbolic conservation law, using the finer grid (1000 grid points): the exact solution (solid line), and the present method (dotted line).
Fluids 07 00016 g021
Figure 22. Pressure plot for the double expansion wave problem (47) for the one-dimensional scalar hyperbolic conservation law, using the finer grid (1000 grid points): the exact solution (solid line), and the present method (dotted line).
Figure 22. Pressure plot for the double expansion wave problem (47) for the one-dimensional scalar hyperbolic conservation law, using the finer grid (1000 grid points): the exact solution (solid line), and the present method (dotted line).
Fluids 07 00016 g022
Figure 23. Density plot for the Shu–Osher shock-tube problem, using the coarse grid (192 grid points): the “exact” solution [44] (line), and the present method (cross).
Figure 23. Density plot for the Shu–Osher shock-tube problem, using the coarse grid (192 grid points): the “exact” solution [44] (line), and the present method (cross).
Fluids 07 00016 g023
Figure 24. Density plot for the Shu–Osher shock-tube problem, using the fine grid (384 grid points): the “exact” solution [44] (line), and the present method (cross).
Figure 24. Density plot for the Shu–Osher shock-tube problem, using the fine grid (384 grid points): the “exact” solution [44] (line), and the present method (cross).
Fluids 07 00016 g024
Figure 25. Density plot for the Shu–Osher shock-tube problem, using the finer grid (1000 grid points): the “exact” solution [44] (line), and the present method (cross).
Figure 25. Density plot for the Shu–Osher shock-tube problem, using the finer grid (1000 grid points): the “exact” solution [44] (line), and the present method (cross).
Fluids 07 00016 g025
Figure 26. Density plot for the problem (53): the exact solution (line), and the present method (cross).
Figure 26. Density plot for the problem (53): the exact solution (line), and the present method (cross).
Fluids 07 00016 g026
Figure 27. Velocity plot for the problem (53): the exact solution (line), and the present method (cross).
Figure 27. Velocity plot for the problem (53): the exact solution (line), and the present method (cross).
Fluids 07 00016 g027
Figure 28. Pressure plot for the problem (53): the exact solution (line), and the present method (cross).
Figure 28. Pressure plot for the problem (53): the exact solution (line), and the present method (cross).
Fluids 07 00016 g028
Figure 29. Density plot for the problem (54): the exact solution (line), and the present method (cross).
Figure 29. Density plot for the problem (54): the exact solution (line), and the present method (cross).
Fluids 07 00016 g029
Figure 30. Velocity plot for the problem (54): the exact solution (line), and the present method (cross).
Figure 30. Velocity plot for the problem (54): the exact solution (line), and the present method (cross).
Fluids 07 00016 g030
Figure 31. Pressure plot for the problem (54): the exact solution (line), and the present method (cross).
Figure 31. Pressure plot for the problem (54): the exact solution (line), and the present method (cross).
Fluids 07 00016 g031
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Nikonov, V. A Semi-Lagrangian Godunov-Type Method without Numerical Viscosity for Shocks. Fluids 2022, 7, 16. https://doi.org/10.3390/fluids7010016

AMA Style

Nikonov V. A Semi-Lagrangian Godunov-Type Method without Numerical Viscosity for Shocks. Fluids. 2022; 7(1):16. https://doi.org/10.3390/fluids7010016

Chicago/Turabian Style

Nikonov, Valeriy. 2022. "A Semi-Lagrangian Godunov-Type Method without Numerical Viscosity for Shocks" Fluids 7, no. 1: 16. https://doi.org/10.3390/fluids7010016

Article Metrics

Back to TopTop