The Sod problem (Sod 1978) is a one-dimensional flow discontinuity problem that provides a good test of a compressible code's ability to capture shocks and contact discontinuities with a small number of cells and to produce the correct profile in a rarefaction. It also tests a code's ability to correctly satisfy the Rankine-Hugoniot shock jump conditions. When implemented at an angle to a multidimensional grid, it can be used to detect irregularities in planar discontinuities produced by grid geometry or operator splitting effects.
We construct the initial conditions for the Sod problem by establishing a
planar interface at some angle to the - and
-axes. The fluid is initially
at rest on either side of the interface, and the density and pressure jumps
are chosen so that all three types of nonlinear, hydrodynamic waves
(shock, contact, and rarefaction) develop.
To the “left” and “right” of the interface we have
![]() |
(35.1) |
In FLASH, the Sod problem (Sod) uses the runtime parameters
listed in Table 35.1 in addition to those supplied
by default with the code. For this problem we use the Gamma equation of
state alternative implementation and set gamma to 1.4. The default values listed
in Table 35.1 are appropriate to a shock with
normal parallel to the -axis that initially intersects that axis
at
(halfway across a box with unit dimensions).
Variable | Type | Default | Description |
sim_rhoLeft | real | 1 | Initial density to the
left of the interface
(
![]() |
sim_rhoRight | real | 0.125 | Initial density to the
right (
![]() |
sim_pLeft | real | 1 | Initial pressure to the
left (![]() |
sim_pRight | real | 0.1 | Initial pressure to the
right (![]() |
sim_uLeft | real | 0 | Initial velocity
(perpendicular to interface)
to the left (![]() |
sim_uRight | real | 0 | Initial velocity
(perpendicular to interface)
to the right (![]() |
sim_xangle | real | 0 | Angle made by interface
normal with the ![]() |
sim_yangle | real | 90 | Angle made by interface
normal with the ![]() |
sim_posn | real | 0.5 | Point of intersection between
the interface plane and the
![]() |
![]() |
![]() |
Figure 35.2 shows the result of running the Sod problem
with FLASH on a two-dimensional grid with the analytical solution
shown for comparison. The hydrodynamical algorithm used here is the
directionally split piecewise-parabolic method (PPM) included with
FLASH. In this run the shock normal is chosen to be parallel to the
-axis. With six levels of refinement, the effective grid size at
the finest level is
, so the finest cells have width
0.00390625. At
, three different nonlinear waves are present:
a rarefaction between
and
, a contact
discontinuity at
, and a shock at
. The two
discontinuities are resolved with approximately two to three cells
each at the highest level of refinement, demonstrating the ability
of PPM to handle sharp flow features well. Near the contact
discontinuity and in the rarefaction, we find small errors of about
in the density and specific internal energy, with similar
errors in the velocity inside the rarefaction. Elsewhere, the
numerical solution is close to exact; no oscillations are present.
Figure 35.3 shows the result of running the Sod
problem on the same two-dimensional grid with different shock
normals: parallel to the -axis (
) and along the
box diagonal (
). For the diagonal solution, we have
interpolated values of density, specific internal energy, and
velocity to a set of 256 points spaced exactly as in the
-axis
solution. This comparison shows the effects of the second-order
directional splitting used with FLASH on the resolution of shocks.
At the right side of the rarefaction and at the contact
discontinuity, the diagonal solution undergoes slightly larger
oscillations (on the order of a few percent) than the
-axis
solution. Also, the value of each variable inside the discontinuity
regions differs between the two solutions by up to 10%. However,
the location and thickness of the discontinuities is the same for
the two solutions. In general, shocks at an angle to the grid are
resolved with approximately the same number of cells as shocks
parallel to a coordinate axis.
Figure 35.4 presents a colormap plot of the density at
in the diagonal solution together with the block structure
of the AMR grid. Note that regions surrounding the discontinuities
are maximally refined, while behind the shock and contact
discontinuity, the grid has de-refined, because the second
derivative of the density has decreased in magnitude. Because
zero-gradient outflow boundaries were used for this test, some
reflections are present at the upper left and lower right corners,
but at
these have not yet propagated to the center of the
grid.
![]() |
This Blast2 problem was originally used by Woodward and Colella (1984) to compare the performance of several different hydrodynamical methods on problems involving strong shocks and narrow features. It has no analytical solution (except at very early times), but since it is one-dimensional, it is easy to produce a converged solution by running the code with a very large number of cells, permitting an estimate of the self-convergence rate. For FLASH, it also provides a good test of the adaptive mesh refinement scheme.
The initial conditions consist of two parallel, planar flow discontinuities. Reflecting boundary conditions are used. The density is unity and the velocity is zero everywhere. The pressure is large at the left and right and small in the center
![]() |
(35.2) |
Figure 35.5 shows the density and velocity profiles at
several different times in the converged solution, demonstrating the
complexity inherent in this problem. The initial pressure
discontinuities drive shocks into the middle part of the grid;
behind them, rarefactions form and propagate toward the outer
boundaries, where they are reflected back into the grid. By the time
the shocks collide at , the reflected rarefactions have
caught up to them, weakening them and making their post-shock
structure more complex. Because the right-hand shock is initially
weaker, the rarefaction on that side reflects from the wall later,
so the resulting shock structures going into the collision from the
left and right are quite different. Behind each shock is a contact
discontinuity left over from the initial conditions (at
and 0.73). The shock collision produces an extremely high and
narrow density peak. The peak density should be slightly less than
30. However, the peak density shown in Figure 35.5 is
only about 18, since the maximum value of the density does not occur
at exactly
. Reflected shocks travel back into the
colliding material, leaving a complex series of contact
discontinuities and rarefactions between them. A new contact
discontinuity has formed at the point of the collision (
). By
, the right-hand reflected shock has met the
original right-hand contact discontinuity, producing a strong
rarefaction, which meets the central contact discontinuity at
. Between
and
, the slope of the density
behind the left-hand shock changes as the shock moves into a region
of constant entropy near the left-hand contact discontinuity.
![]() |
Figure 35.6 shows the self-convergence of density
and pressure when FLASH is run on this problem. We compare the
density, pressure, and total specific energy at obtained
using FLASH with ten levels of refinement to solutions using several
different maximum refinement levels. This figure plots the L1 error
norm for each variable
, defined using
Although PPM is formally a second-order method, the convergence rate is only linear. This is not surprising, since the order of accuracy of a method applies only to smooth flow and not to flows containing discontinuities. In fact, all shock capturing schemes are only first-order accurate in the vicinity of discontinuities. Indeed, in their comparison of the performance of seven nominally second-order hydrodynamic methods on this problem, Woodward and Colella found that only PPM achieved even linear convergence; the other methods were worse. The error norm is very sensitive to the correct position and shape of the strong, narrow shocks generated in this problem.
The additional runtime parameters supplied with the 2blast
problem are listed in Table 35.2. This problem is
configured to use the perfect-gas equation of state (gamma)
with gamma set to 1.4 and is run in a two-dimensional unit
box. Boundary conditions in the -direction (transverse to the
shock normals) are taken to be periodic.
![]() |
The Sedov explosion problem (Sedov 1959) is another purely hydrodynamical test in which we check the code's ability to deal with strong shocks and non-planar symmetry. The problem involves the self-similar evolution of a cylindrical or spherical blast wave from a delta-function initial pressure perturbation in an otherwise homogeneous medium. We provide two different ways to generate the initial conditions:
![]() |
(35.4) |
We set the ratio of specific heats
.
In running this problem we choose
to be 3.5
times as large as the finest adaptive mesh resolution in order to minimize
effects due to the Cartesian geometry of our grid.
The density
is set equal to
everywhere, and the
pressure is set to a small value
everywhere but in the center
of the grid.
The fluid is initially at rest.
In the self-similar blast wave that develops for
, the
density, pressure, and radial velocity are all functions of
, where
![]() |
(35.5) |
![]() |
![]() |
![]() |
|
![]() |
![]() |
![]() |
(35.6) |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
![]() |
![]() |
![]() |
(35.7) |
![]() |
![]() |
![]() |
![]() |
Figure 35.8 shows the pressure field in the
8-level calculation at together with the block refinement
pattern. Note that a relatively small fraction of the grid is
maximally refined in this problem. Although the pressure gradient at
the center of the grid is small, this region is refined because of
the large temperature gradient there. This illustrates the ability
of PARAMESH to refine grids using several different variables at
once.
![]() |
We have also run FLASH on the spherically symmetric Sedov problem in
order to verify the code's performance in three dimensions. The
results at using five levels of grid refinement are shown
in Figure 35.9. In this figure we have plotted the
average values as well as the root-mean-square (RMS) deviations from
the averages. As in the two-dimensional runs, the shock is spread
over about two cells at the finest AMR resolution in this run. The
width of the pressure peak in the analytical solution is about 1 1/2
cells at this time, so the maximum pressure is not captured in the
numerical solution. Behind the shock the numerical solution average
tracks the analytical solution quite well, although the Cartesian
grid geometry produces RMS deviations of up to 40% in the density
and velocity in the de-refined region well behind the shock. This
behavior is similar to that exhibited in the two-dimensional problem
at comparable resolution.
![]() |
The additional runtime parameters supplied with the Sedov problem are listed in Table 35.3. This problem is configured to use the perfect-gas equation of state (Gamma) with gamma set to 1.4. It is simulated in a unit-sized box.
Variable | Type | Default | Description |
sim_pAmbient | real | ![]() |
Initial ambient pressure
(![]() |
sim_rhoAmbient | real | 1 | Initial ambient density
(![]() |
sim_expEnergy | real | 1 | Explosion energy (![]() |
sim_rInit | real | 0.05 | Radius of initial pressure
perturbation (![]() |
sim_xctr | real | 0.5 | ![]() |
sim_yctr | real | 0.5 | ![]() |
sim_zctr | real | 0.5 | ![]() |
sim_nSubZones | integer | 7 | Number of sub-cells in cells for applying the 1D profile |
![]() ![]() |
![]() ![]() |
The two-dimensional isentropic vortex problem is often used as a benchmark for comparing numerical methods for fluid dynamics. The flow-field is smooth (there are no shocks or contact discontinuities) and contains no steep gradients, and the exact solution is known. It was studied by Yee, Vinokur, and Djomehri (2000) and by Shu (1998). In this subsection the problem is described, the FLASH control parameters are explained, and some results demonstrating how the problem can be used are presented.
The simulation domain is a square, and the center of the vortex is
located at
. The flow-field is defined in
coordinates centered on the vortex center
with
. The domain is periodic, but
it is assumed that off-domain vortexes do not interact with the
primary; practically, this assumption can be
satisfied by ensuring that the simulation domain is large enough for a
particular vortex strength. We find that a domain size of
(specified through the Grid runtime parameters xmin,
xmax, ymin, and ymax) is sufficiently large for a
vortex strength (defined below) of 5.0. In the initialization below,
and
are the coordinates with respect to the nearest vortex
in the periodic sense.
The ambient conditions are given by
,
,
, and
, and the non-dimensional ambient temperature
is
. Using the equation of state, the (dimensional)
is computed from
and
. Perturbations are added to the velocity and
nondimensionalized temperature,
,
, and
according to
![]() |
![]() |
![]() |
(35.11) |
![]() |
![]() |
![]() |
(35.12) |
Figure 35.12 shows the exact density distribution represented on
a
uniform grid with
. The
borders of each grid block (
cells) are superimposed. In
addition to the shaded representation, contour lines are shown for
, 0.85, 0.75, and 0.65. The density distribution is
radially symmetric, and the minimum density is
. Because the exact solution of the isentropic vortex
problem is the initial solution shifted by
, numerical phase (dispersion) and amplitude (dissipation) errors
are easy to identify. Dispersive errors distort the shape of the
vortex, breaking its symmetry. Dissipative errors smooth the
solution and flatten extrema; for the vortex, the minimum in density
at the vortex core will increase.
![]() |
A numerical simulation using the PPM scheme was run to illustrate
such errors. The simulation used the same grid shown in
Figure 35.12 with the same contour levels and color values. The
grid is intentionally coarse and the evolution time long to make
numerical errors visible. The vortex is represented by
approximately 8 grid points in each coordinate direction and is
advected diagonally with respect to the grid. At solution times of
, etc., the vortex should be back at its initial
location.
Figure 35.13 shows the solution at ; only slight
differences are observed. The density distribution is almost
radially symmetric, although the minimum density has risen to
. Accumulating dispersion error is clearly visible at
(Figure 35.14), and the minimum density is now
.
Figure 35.15 shows the density near at three simulation
times. The black line shows the initial condition. The red line
corresponds to
and the blue line to
. For the
later two times, the density is not radially symmetric. The lines
plotted are just representative profiles for those times, which give
an idea of the magnitude and character of the errors.
![]() |
The initial setup involves a Mach 10 shock in air,
, on a rectangular 2D domain of size
. The reflecting wall is represented as the bottom surface of the domain, beginning at
.
The velocity normal to the incident shock in the post-shock region is 8.25, and the flow is at rest in the pre-shock region.
The undisturbed air ahead of the shock has a density of 1.4 and a pressure of 1.
See the initial density profile in Figure 35.16 resolved on 6 refinement AMR levels using 16
-cell block size.
The boundary condition on
at
is fixed in time with the initial values so that the reflected shock
is attached to the bottom surface. We impose reflecting boundary condition (i.e., negating the
velocity field
)
on the rest of the bottom surface. On the top surface of
, we allow the initial Mach 10 shock proceeds
exactly as a function of time in order that the numerical evolution follows the oblique shock propagation without any planar distortion.
At
, we impose a supersonic inflow boundary condition, and the outflow condition at
.
In later time, the solution develops to form two Mach stems and two contact discontinuities,
as shown in Figure 35.17 the density at sec. Also shown
in Figure 35.18 are 30 levels of contour lines of pressure,
illustrating the evolved flow discontinuities at
sec. We can also see that the numerical solution is
smooth and non-oscillatory in the region bounded by the curved reflected shock, the bottom surface and
the second Mach stem (see more discussion in Woodward and Colella, 1984).
The 5th order WENO method in the unsplit hydrodynamics solver is used with a choice of hybrid Riemann solver which selectively adopts HLL only at strong shocks and HLLC otherwise.
![]() |
Variable | Type | Default | Description |
sim_rhoLeft | real | 8 | Initial density to
the left of the shock
(
![]() |
sim_rhoRight | real | 1.4 | Initial density to the
right (
![]() |
sim_pLeft | real | 116.5 | Initial pressure to the
left (![]() |
sim_pRight | real | 1 | Initial pressure to the
right (![]() |
sim_uLeft | real | 7.1447096 | Initial ![]() ![]() |
sim_uRight | real | 0 | Initial ![]() ![]() |
sim_vLeft | real | -4.125 | Initial ![]() ![]() |
sim_vRight | real | 0 | Initial ![]() ![]() |
sim_xangle | real | -30 | Angle made by shock
normal with the ![]() |
sim_yangle | real | 90 | Angle made by shock
normal with the ![]() |
sim_posn | real | 1/6 | Point of intersection between
the shock plane and the
![]() |
The problem uses a two-dimensional rectangular domain three units wide
and one unit high. Between and
along the
-axis is a
step 0.2 units high. The step is treated as a reflecting boundary, as
are the lower and upper boundaries in the
-direction. For the right-hand
-boundary, we use an outflow (zero gradient) boundary condition, while
on the left-hand side we use an inflow boundary. In the inflow boundary
cells, we set the density to
, the pressure to
, and the
velocity to
, with the latter directed parallel to the
-axis.
The domain itself is also initialized with these values.
We use
![]() |
(35.13) |
![]() |
The additional runtime parameters supplied with the
WindTunnel problem are listed in Table 35.6.
This problem is configured to use the perfect-gas
equation of state (Gamma) with gamma set to 1.4. We
also set
xmax,
ymax
,
Nblockx
, and
Nblocky
in order to create a grid with the correct
dimensions. The version of Simulation_defineDomain supplied with this
problem
removes all but the first three top-level blocks along the lower edge
of the grid to generate the step, and
gives REFLECTING boundaries to the obstacle blocks.
Finally, we
use xl_boundary_type = "user" (USER_DEFINED condition) and
xr_boundary_type = "outflow" (OUTFLOW boundary) to instruct FLASH to use
the correct boundary conditions in the
-direction. Boundaries in
the
-direction are reflecting (REFLECTING).
Until , the flow is unsteady, exhibiting multiple shock
reflections and interactions between different types of
discontinuities. Figure 35.19 shows the evolution of
density and velocity between
and
(the period considered
by Woodward and Colella). Immediately, a shock forms directly in
front of the step and begins to move slowly away from it.
Simultaneously, the shock curves around the corner of the step,
extending farther downstream and growing in size until it strikes
the upper boundary just after
. The corner of the step
becomes a singular point, with a rarefaction fan connecting the
still gas just above the step to the shocked gas in front of it.
Entropy errors generated in the vicinity of this singular point
produce a numerical boundary layer about one cell thick along the
surface of the step. Woodward and Colella reduce this effect by
resetting the cells immediately behind the corner to conserve
entropy and the sum of enthalpy and specific kinetic energy through
the rarefaction. However, we are less interested here in reproducing
the exact solution than in verifying the code and examining the
behavior of such numerical effects as resolution is increased, so we
do not apply this additional boundary condition. The errors near the
corner result in a slight over-expansion of the gas there and a weak
oblique shock where this gas flows back toward the step. At all
resolutions we also see interactions between the numerical boundary
layer and the reflected shocks that appear later in the calculation.
The shock reaches the top wall at
. The point of
reflection begins at
and then moves to the left,
reaching
at
. As it moves, the angle between
the incident shock and the wall increases until
, at which
point it exceeds the maximum angle for regular reflection
(
for
) and begins to form a Mach stem.
Meanwhile the reflected shock has itself reflected from the top of
the step, and here too the point of intersection moves leftward,
reaching
by
. The second reflection propagates
back toward the top of the grid, reaching it at
and forming
a third reflection. By this time in low-resolution runs, we see a
second Mach stem forming at the shock reflection from the top of the
step; this results from the interaction of the shock with the
numerical boundary layer, which causes the angle of incidence to
increase faster than in the converged solution. Figure 35.20 compares the density field at
as computed
by FLASH using several different maximum levels of refinement. Note
that the size of the artificial Mach reflection diminishes as
resolution improves.
![]() |
![]() |
The shear cell behind the first (“real”) Mach stem produces
another interesting numerical effect, visible at --
Kelvin-Helmholtz amplification of numerical errors generated at the
shock intersection. The waves thus generated propagate downstream
and are refracted by the second and third reflected shocks. This
effect is also seen in the calculations of Woodward and Colella,
although their resolution was too low to capture the detailed eddy
structure we see. Figure 35.21 shows the detail of
this structure at
on grids with several different levels of
refinement. The effect does not disappear with increasing
resolution, for three reasons. First, the instability amplifies
numerical errors generated at the shock intersection, no matter how
small. Second, PPM captures the slowly moving, nearly vertical Mach
stem with only 1-2 cells on any grid, so as it moves from one
column of cells to the next, artificial kinks form near the
intersection, providing the seed perturbation for the instability.
Third, the effect of numerical viscosity, which can diffuse away
instabilities on course grids, is greatly reduced at high
resolution. This effect can be reduced by using a small amount of
extra dissipation to smear out the shock, as discussed by Colella
and Woodward (1984). This tendency of physical instabilities to
amplify numerical noise vividly demonstrates the need to exercise
caution when interpreting features in supposedly converged
calculations.
Variable | Type | Default | Description |
sim_pAmbient | real | 1 | Ambient pressure (![]() |
sim_rhoAmbient | real | 1.4 | Ambient density (![]() |
sim_windVel | real | 3 | Inflow velocity (![]() |
The Shu-Osher problem (Shu and Osher, 1989) tests a shock-capturing scheme's ability to resolve small-scale flow features. It gives a good indication of the numerical (artificial) viscosity of a method. Since it is designed to test shock-capturing schemes, the equations of interest are the one-dimensional Euler equations for a single-species perfect gas.
In this problem, a (nominally) Mach 3 shock wave propagates into a sinusoidal density field. As the shock advances, two sets of density features appear behind the shock. One set has the same spatial frequency as the unshocked perturbations, but for the second set, the frequency is doubled. Furthermore, the second set follows more closely behind the shock. None of these features is spurious. The test of the numerical method is to accurately resolve the dynamics and strengths of the oscillations behind the shock.
The shu_osher problem is initialized as follows.
On the domain
, the shock is at
at
.
On either side of the shock,
![]() |
(35.14) |
The problem is strictly one-dimensional; building 2-d or 3-d executables
should give the same results along each -direction grid line. For
this problem, special boundary conditions are applied. The initial
conditions should not change at the boundaries; if they do, errors
at the boundaries can contaminate the results. To avoid this
possibility, a boundary condition subroutine was written to set the
boundary values to their initial values.
The purpose of the tests is to determine how much resolution, in
terms of mesh cells per feature, a particular method requires to
accurately represent small scale flow features. Therefore, all
computations are carried out on equispaced meshes without
adaptive refinement. Solutions are obtained at . The
reference solution, using 3200 mesh cells, is shown in
Figure 35.23. This solution was
computed using PPM at a CFL number of 0.8. Note the shock located at
, and the high frequency density oscillations just to
the left of the shock. When the grid resolution is insufficient,
shock-capturing schemes underpredict the amplitude of these
oscillations and may distort their shape.
Figure 35.24 shows the density field for the same scheme at 400 mesh cells and at 200 mesh cells. With 400 cells, the amplitudes are only slightly reduced compared to the reference solution; however, the shapes of the oscillations have been distorted. The slopes are steeper and the peaks and troughs are broader, which is the result of overcompression from the contact-steepening part of the PPM algorithm. For the solution on 200 mesh cells, the amplitudes of the high-frequency oscillations are significantly underpredicted.
Variable | Type | Value | Description |
st_stirmax | real | 25.1327 | maximum stirring wavenumber |
st_stirmin | real | 6.2832 | minimum stirring wavenumber |
st_energy | real | 5.E-6 | energy input per mode |
st_decay | real | 0.5 | correlation time for driving |
st_freq | integer | 1 | frequency of stirring |
We construct the initial conditions for the relativistic shock tube problem as
found in Martí & Müller (2003). We use an ideal equation of state
with
for this problem and the left and right states are given:
![]() |
(35.15) |
and the computational domain is
. The initial
shock location is at
(halfway across a box with unit dimensions).
In FLASH, the RHD Sod problem (RHD_Sod) uses the runtime parameters listed in Table 35.9:
Variable | Type | Default | Description |
sim_rhoLeft | real | 10 | Initial density to the
left of the interface
(
![]() |
sim_rhoRight | real | 1.0 | Initial density to the
right (
![]() |
sim_pLeft | real | 40/3 | Initial pressure to the
left (![]() |
sim_pRight | real |
![]() |
Initial pressure to the
right (![]() |
sim_uLeft | real | 0 | Initial velocity
(perpendicular to interface)
to the left (![]() |
sim_uRight | real | 0 | Initial velocity
(perpendicular to interface)
to the right (![]() |
sim_xangle | real | 0 | Angle made by interface
normal with the ![]() |
sim_yangle | real | 90 | Angle made by interface
normal with the ![]() |
sim_posn | real | 0.5 | Point of intersection between
the interface plane and the
![]() |
Figure 35.27, Figure 35.28, and Figure 35.29 show the results of running
the RHD Sod problem on a one-dimensional uniform grid of size 400 at simulation time In this run the
left-going wave is the rarefaction wave, while two right-going waves are the contact discontinuity and the
shock wave. This configuration results in mildly relativistic effects that are mainly thermodynamical in nature.
The differences in the relativistic regime, as compared to Newtonian hydrodynamics, can be seen in a curved velocity profile for the rarefaction wave and the narrow constant state (density shell) in between the shock wave and contact discontinuity. Numerically, it is particularly challenging to resolve the thin narrow density plateau, which is bounded by a leading shock front and a trailing contact discontinuity (see Figure 35.27).
![]() |
(35.16) |
The solution obtained at in Figure 35.30 shows that
the symmetry of the problem is well maintained. The two shocks are propagated
from the upper left and the lower right regions to the upper right region, yielding
continuous collisions of shocks at the upper right corner.The curved shock fronts are
transmitted and formed in the diagonal region of the domain. The lower left region is
bounded by contact discontinuities. By the time
most of regions are filled with
shocked gas, whereas there are still two unperturbed regions in the lower left and
upper right regions.
![]() |
Plots in Figure 35.31(a) - Figure 35.33(b) illusrate
Mach number and pressure plots over the airfoil with the three different initial Mach numbers, 0.65, 0.95 and 1.2 at
By this time, the flow conditions have reached their steady states. For Mach number = 0.65, the critical Mach number has not yet
been obtained and the flow over the airfoil is all subsonic as shown in Figure 35.31(a). Since the airfoil is
asymmetric and cambered, we see there are pressure gradients across the top and bottom surfaces
even at zero angle of attack in Figure 35.31(b).
These pressure gradients (higher pressure at the bottom than the top) generate a lift force
by which an airplane can fly defying gravity.
At Mach number reaching 0.95 as shown in Figure 35.32(a) there are local points that are supersonic. This indicates that the critical Mach number for the airfoil is between 0.65 and 0.95. In fact, one can show that the critical Mach number is around 0.7 for the NACA2412 airfoil. We see that there is a development of a bow shock formation in front of the airfoil. A formation of a subsonic region between the bow shock and the nose of the airfoil is visible in the Mach number plot. Inside the bow shock, a sonic line at which the local flow speed becomes the sound speed makes an oval shape together with the bow shock. In both the Mach number and pressure plots, a strong wake forms starting from the top and bottom of the surfaces near the trailing edge. The wake is hardly visible for Mach number 0.65 in Figure 35.31(a) and Figure 35.31(b). Normal shock waves have formed steming from the trailing edge as seen in Figure 35.32(a) and Figure 35.32(b).
At Mach number 1.2 the flow becomes supersonic everywhere. In this case, the shape of the bow shock becomes narrower and there are much larger supersonic pockets developed on the top and bottom surfaces with a smaller subsonic region between the bow shock and the nose region.
[a] ![]() ![]() |
[a] ![]() ![]() |
[a] ![]() ![]() |
One important thing in this problem is to keep the given symmetry throughout the simulation. The flow symmetry across the diagonal direction is well preseved in Figure 35.34(a) and Figure 35.34(b).
[a] ![]() ![]() |