
Figure 1. Mach number contours for inviscid Mach 1.3 flow
through a normal shock.
This verification case involves the steady, inviscid, adiabatic Mach 1.3 flow with a normal shock. Supersonic flow enters the normal shock and subsonic flow exits the shock. This flow is a classic, fundamental supersonic flow whose analytic solution is exact and can be found in any compressible flow textbook, such as the book by Anderson.
The supersonic conditions are presented in Table 1 and represent the reference conditions. The choice of pressure and temperature are arbitrary and do not change the basic character of the flow for perfect gases.
| Mach | Pressure (psia) | Temperature (R) | Angle-of-Attack (deg) | Angle-of-Sideslip (deg) |
|---|---|---|---|---|
| 1.3 | 10.0 | 520.0 | 0.0 | 0.0 |
The geometry is a straight duct of length 2.0 ft with a diameter of 1.0 ft.
An analytic solution for the inviscid, supersonic, steady, adiabatic flow through a normal shock is well known and presented in any compressible flow text book. Table 3 presents the solution for a Mach 1.3 supersonic flow. The subscript 1 refers to the supersonic side of the shock, while the subscript 2 refers to the subsonic side of the shock.
Since the flow is supersonic, the inflow boundary I1 of the domain is specified as FROZEN. The outflow boundary IMAX is specified as an OUTFLOW boundary where the Mach number is specified. The J1 boundary is a singular axis and is specified as an INVISCID WALL. The JMAX boundary is the casing of the duct and is specified as an INVISCID WALL. The K1 and KMAX boundaries are specified as REFLECTION planes.
The grid is generated using the Fortran 90 program normic.f90 with a grid size of (202x11x5). The grid is uniformly spaced in all directions. The grid file is norm.x and is in Plot3d format (unformatted, multi-zone, 3D, whole, single-precision). This is converted to the common grid file format as norm.cgd.
The boundary conditions are implemented through GMAN as
gman < gman.com
The restart file (fort.2) for NPARC is also created through the Fortran program normic.f90.
The initial flow conditions are created through the Fortran program normic.f90 to correspond to the analytic solution for the normal shock. The shock is placed at x = 1.0 ft and the even number of grid points assures that the shock is initially placed between two grid points.
The computation is performed using the time-marching capabilities of WIND and NPARC to march to a steady-state (time asymptotic) solution. Local time stepping is used at each iteration. The time-marching is performed until convergence criteria is achieved.
The input data file for the WIND computation is norm.dat. Much of the default settings are used. The CFL number is 1.5 and the computation is run for 1000 iterations.
The input data file for the NPARC computation is norm.nparc.in. Much of the default settings are used. The CFL number is 1.5 and the computation is run for 1000 iterations.
The output files for the WIND and NPARC computations are listed in Table 2.
| File | WIND | NPARC |
|---|---|---|
| Solution | norm.wind.cfl | norm.nparc.cfl |
| List / Residual | norm.nparc.lis | res.nparc.do |
The residual information was read from the WIND list files using the RESPLT utility and plotted using CFPOST,
resplt < resplt.nsl2.com
cfpost < cfpost.nsl2.com
The CFPOST utility was used to obtain information from the solution.
Flowfield Mach Number Contours. The Mach number contours for the flow field can be generated by
cfpost < cfpost.mach.com
Properties at J1. The properties along J1, which is the axial direction, are output to the GENPLOT file J1.gen by
cfpost < cfpost.J1.com
The average properties aft of the shock are computed using the Fortran program avg.f. It simply sums up the values after x of 1.2 and averages them. These values are expected be constant.
avg < J1.wind.gen
avg < J1.nparc.gen
A comparison of the properties behind the shock are provided below. As can be seen the WIND computations and the NPARC computations compare fairly well with each other and with the exact solution.
| Computation | Exact | WIND | Error% | NPARC | Error% |
|---|---|---|---|---|---|
| M2 | 0.7860 | 0.785989 | -0.0014 | 0.785991 | -0.0011 |
| p2 / p1 | 1.8050 | 1.804906 | -0.0052 | 1.804911 | -0.0049 |
| pt2 / pt1 | 0.9794 | 0.979353 | -0.0048 | 0.979358 | -0.0043 |
| rho2 / rho1 | 1.5157 | 1.515639 | -0.0040 | 1.515645 | -0.0036 |
| T2 / T1 | 1.1909 | 1.190857 | -0.0036 | 1.190853 | -0.0039 |
| Tt2 / Tt1 | 1.0 | 0.999995 | -0.0005 | 0.999993 | -0.0007 |
Modification of the WIND code requires the developer to check that no harm has been done to the code. This verification case can be run as one check. A typical procedure is listed below:
cp norm0.cfl norm.cfl
wind -runinplace -dat norm
cfpost < cfpost.J1.com
avg < J1.gen
The average values computed by avg can be compared to the exact solution.
Anderson, J.D., Modern Compressible Flow , McGraw Hill Inc., New York, 1984.
Questions or comments about this case can be sent be emailed to John W. Slater,
NASA John H. Glenn Research Center, MS 86-7
21000 Brookpark Road
Cleveland, Ohio 44135
Phone: (216) 433-8513
e-mail: John.W.Slater@grc.nasa.gov