With the
development of computing technologies and the increase in available computing
resources, problems previously solved exclusively by analytical or experimental
methods are increasingly moving into the field of numerical modeling. This
allows us to significantly expand the range of parameters under study, speed up
the process of finding optimal solutions and reduce the costs of conducting
expensive experiments. However, the accuracy and reliability of numerical
calculations largely depend on the approximation algorithms used, the choice of
the computational grid and the correctness of the implementation of boundary
conditions.
Solving gas
dynamics problems involving the intersection of oblique shock waves is of key
importance for the development of computational aerodynamics and modeling of
complex flows. Oblique shock waves are widely encountered in supersonic flows,
in various devices where sharp pressure and velocity changes are realized.
Correct numerical reproduction of these phenomena requires the use of efficient
and accurate methods for solving the Euler and Navier–Stokes
equations. One of the popular platforms for numerical modeling of such problems
is the OpenFOAM software package [1], which provides
a rich set of solvers and tools for solving gas dynamics equations.
However, despite
the wide choice of implemented in OpenFOAM solvers,
the question of comparing their accuracy in problems related to the
intersection of oblique shocks remains open. The complexity of modeling is
aggravated by the presence of sharp gradients of parameters arising at the
shock fronts, as well as their interaction, which requires high-resolution
numerical methods. It is known that different solvers can cope with these difficulties
in different ways, which directly affects the reliability of the results
obtained and the possibility of their use in engineering practice.
OpenFOAM, as one of the most flexible and actively developed open source platforms,
provides researchers with ample opportunities for customizing numerical schemes
and modifying algorithms for specific problems. However, the abundance of
available solvers and settings often makes it difficult to choose the optimal
approach, especially for problems with high sensitivity to numerical errors,
such as the intersection of oblique shocks. In this regard, a systematic
comparative analysis of various solvers becomes relevant OpenFOAM
in order to identify their advantages and limitations when solving problems of
the corresponding class. Such an analysis will not only increase the
reliability of calculations, but also optimize computing resources, which is
especially important when conducting large-scale or
multiparameter studies.
This work is a
continuation of a number of works by the authors. In the works of the previous
period, various classes of gas-dynamic problems with reference solutions were
considered. All problems were considered for supersonic flows.
Studies devoted
to a comparative analysis of the accuracy of solvers for flow around a circular
cone at an angle of attack are presented in [2].
Also considered
were problems of the formation of an oblique shock wave when a supersonic flow
falls at a certain angle onto a plate [3], problems of the formation of a
rarefaction wave formed when flowing around a plate at a certain angle [4],
problems of flowing around a cone with a spherical blunting [5].
All results were
obtained by constructing a generalized computational experiment. The key
features and components of the generalized computational experiment are
discussed in detail in [6-8].
In this paper,
for comparison of solvers a two-dimensional inviscid problem of the formation
of a steady flow obtained by flowing past a double wedge with angles
α
and β by a supersonic gas flow with a Mach
number at a zero angle of attack is used. The variable parameters here are the
Mach number and the wedge angles β. The ranges of change of the variable
parameters and the change step were selected as follows: the Mach number from 1.8 to 2.0 with a step of 0.1, the double wedge angles
α/β = 5°/10°, 5°/15°, 10°/15°. The general
flow diagram is shown in Fig. 1. For the calculation, a system of Euler
equations closed by the equation of state of an ideal gas was taken. We also
note that the problem has an analytical solution [8, 9].
The study
considered four solvers: two standard ones – rhoCentralFoam and
sonicFoam, and two created by third-party authors –
pisoCentralFoam and QGDFoam. The latter were developed by specialists from the Institute of System
Programming of the Russian Academy of Sciences and the
Keldysh Institute of Applied Mathematics of the Russian Academy of Sciences. All the
compared solvers implement numerical methods of different nature [10-13], i.e.
the work does not compare different software implementations of the same
method.
The scheme of the
calculation area for a wedge with angles of 10°, 20° is shown in Fig. 2. It is
worth noting that in the indicated image, for clarity, the grid is larger than
in real calculations.
Fig. 1. Flow diagram
Fig. 2. Scheme of the
computational domain
inlet boundary, the parameters of the unperturbed incident flow are set: pressure
P = 101325 Pa, temperature
T
= 300 K, the x-component of the velocity Ux varies in the previously specified range, the y-component of the velocity Uy
is taken to be 0 m/s. At the outlet boundary, as well as at the upper (top) and
lower (bottom) boundaries, the zero gradient conditions are set for all
quantities. For the wedge boundary (wedge), the zero gradient condition is set
for pressure and temperature, and the slip condition is used for the velocity,
which corresponds to the no-flow condition in the Euler equations. At the front
(front) and back (back) boundaries, a special boundary condition, empty, is
applied, which is used in cases where calculations in a given direction are not
performed. The number of grid cells is 90000. The initial conditions correspond
to the boundary conditions on the inlet face, that is, the incident flow
parameters are used as the initial conditions. In the solver QGDFoam
parameter α QGD,
which affects the dissipative properties, was
set to 0.1 (by default it is 0.5).
The flow patterns
are shown in Fig. 3 and Fig. 4 as pressure and density distributions in the
computational domain. The presented distributions were obtained using the
solver rhoCentralFoam. The solution does not collapse
for any of the solvers, which indicates high stabilizing properties of all
solvers participating in the study.
Fig. 3. Steady-state flow pressure field for the solver rhoCentralFoam, α = 5°, β = 20°
Fig. 4. Density field of steady flow for solver rhoCentralFoam, α = 5°, β = 20°
Let us construct
estimates of the deviation from the exact solution for the entire computational
domain in the L2 norm. To do this, we define the relative error Err
for the L2 norm as follows:
|
(1)
|
where
ym
are
the studied quantities (the modulus of the velocity vector and the density)
obtained by numerical calculation in the cell
m, Vm is the cell volume. The values of
ymexact
are obtained by interpolation of the analytical solution of the
problem. Solvers were used in the comparative accuracy analysis
sonicFoam, QGDFoam, rhoCentralFoam and pisoCentralFoam. The values of deviation from the exact solution for the entire computational domain are given in Tables 1–3. The smallest values in each row are shown in bold. The table uses abbreviated notations for solvers: rCF (rhoCentralFoam), pCF (pisoCentralFoam), sF (sonicFoam), QGDF (QGDFoam). The smallest values in each row are shown in bold.
Table 1. Errors for M = 1.8
Size
|
Angles α
/
β
|
rCF
|
pCF
|
sF
|
QGDF
|
Speed module
|
5/10
|
0.006476
|
0.006831
|
0.009934
|
0.006510
|
5/15
|
0.009169
|
0.009417
|
0.013579
|
0.009830
|
10/15
|
0.007309
|
0.007734
|
0.012018
|
0.006619
|
Density
|
5/10
|
0.009679
|
0.009915
|
0.015727
|
0.010157
|
5/15
|
0.010035
|
0.010582
|
0.014361
|
0.009777
|
10/15
|
0.008180
|
0.008527
|
0.015914
|
0.007864
|
Table 2. Errors for M = 1.9
Size
|
Angles α
/
β
|
rCF
|
pCF
|
sF
|
QGDF
|
Speed module
|
5/10
|
0.006283
|
0.006579
|
0.009431
|
0.006478
|
5/15
|
0.009247
|
0.009625
|
0.012744
|
0.009120
|
10/15
|
0.007709
|
0.008042
|
0.009118
|
0.006568
|
Density
|
5/10
|
0.009600
|
0.009903
|
0.015304
|
0.010341
|
5/15
|
0.011428
|
0.011852
|
0.015710
|
0.010675
|
10/15
|
0.009540
|
0.009837
|
0.013656
|
0.009179
|
Table 3. Errors for M = 2.0
Size
|
Angles α
/
β
|
rCF
|
pCF
|
sF
|
QGDF
|
Speed module
|
5/10
|
0.006336
|
0.006598
|
0.009035
|
0.006557
|
5/15
|
0.008936
|
0.009217
|
0.012018
|
0.008562
|
10/15
|
0.007502
|
0.007924
|
0.008734
|
0.006628
|
Density
|
5/10
|
0.010110
|
0.010587
|
0.015884
|
0.011495
|
5/15
|
0.011604
|
0.012043
|
0.015914
|
0.010864
|
10/15
|
0.010062
|
0.010514
|
0.014583
|
0.010274
|
To analyze the
tables, we visualize the data as error surfaces. The result is shown in Fig. 5
and Fig. 6.
Fig. 5. Error surfaces
of the solvers under consideration for the velocity module
Fig. 6. Error surfaces of the considered solvers for density
Analysis of the
presented tables showed that the solvers rhoCentralFoam and QGDFoam give similar and often better results in
accuracy, p isoCentralFoam is slightly worse
than rhoCentralFoam. The solver has the largest
errors sonicFoam, especially for density. For example, for angles of 5° and 10°, the error for
sonicFoam is 1.5 times greater than the error of the most
accurate rhoCentralFoam in this case. With an
increase in the incident flow velocity in this range, the error does not
increase. It is also worth noting that the errors for the velocity module for
angles of 5° and 15° are 1.3 times greater than the error for angles of 5° and
10°. The errors of angles of 10° and 15° are only slightly greater than the
errors of 5° and 10°. This is true for all solvers. The errors for density are
practically independent of the angles and the incident flow velocity. However,
it is worth noting that for the solver QGDFoam the
dissipative parameter plays a major role. It was selected for the range of
input parameters used in the current problem, but when going beyond the
interval the solver QGDFoam accuracy may deteriorate. Authors recommend solvers
rhoCentralFoam and pisoCentralFoam as the most universal, or solver
QGDFoam, if there is time to select the optimal value of
the dissipative parameter.
The conducted
study allowed us to comprehensively evaluate the accuracy of various solvers
OpenFOAM in solving the actual problem of crossing oblique
shocks arising when a high-speed inviscid gas flow passes a double wedge. A
comparative analysis of four solvers showed that
rhoCentralFoam demonstrates the lowest values of numerical errors in the L2 norm,
which makes it a preferable choice for problems requiring high accuracy in
reproducing complex gas-dynamic structures. It is noted that an increase in the
incident flow velocity and wedge angles does not lead to an increase in errors
for all solvers for density. For pressure, a change in wedge angles already
affects the error. The presented results allow us to recommend the use of
rhoCentralFoam and isoCentralFoam for engineering calculations where the reliability of the reproduced shocks is
critical. The data obtained can be useful both for specialists engaged in
fundamental research in the field of computational gas dynamics and for
engineers implementing numerical methods in the practice of designing aerodynamic
devices.
The calculations
were carried out using the K100 hybrid supercomputer installed at the
Supercomputer Center for Collective Use of the Keldysh Institute of Applied Mathematics of the Russian Academy of Sciences.
1. OpenFOAM Foundation [Electronic resource]. Access mode: https://openfoam.org (date of access 03/10/2025).
2. Bondarev AE, Kuvshinnikov AE Analysis of the accuracy of OpenFOAM solvers for the problem of supersonic flow around a cone // ICCS 2018, Lecture Notes in Computer Science (LNCS) 10862, 2018. P. 221–230.
3. Alekseev AK, Bondarev AE, Kuvshinnikov AE Comparative analysis of the accuracy of OpenFOAM solvers for the oblique shock wave problem // Matematica Montisnigri. 2019. V. XLV, pp. 95–105.
4. Bondarev AE, Kuvshinnikov AE Analysis and Visualization of the Computational Experiments Results on the Comparative Assessment of OpenFOAM Solvers Accuracy for a Rarefaction Wave Problem // Scientific Visualization. 2021. V. 13. No. 3. P. 34–46.
5. Bondarev AE, Kuvshinnikov AE Integrating Scientific Visualization in the Assessment of Openfoam Solvers for the Flow Around a Spherically Blunted Cone // Scientific Visualization. 2024. V. 16. No. 4. P. 25–36.
6. Bondarev AE On the Construction of the Generalized Numerical Experiment in Fluid Dynamics // Mathematica Montisnigri. 2018. T. XLII. P. 52–64.
7. Bondarev AE, Galaktionov VA Generalized Computational Experiment and Visual Analysis of Multidimensional Data // Scientific Visualization. 2019. V. 11. No. 4. P. 102–114.
8. Alekseev AK, Bondarev AE, Galaktionov VA, Kuvshinnikov AE On the construction of a generalized computational experiment in verification problems // Matematica Montisnigri. 2020. T. XLVIII. pp. 19–31.
9. Arutyunyan G.M. Reflected shock waves / G.M. Arutyunyan, L.V. Karchevsky. Moscow: Mashgiz, 1973. 376 p.
10. Anderson JD Modern Compressible Flow: With Historical Perspective. McGraw-Hill Education, 2021. 778 p.
11. Issa R. Solution of the implicit discretized fluid flow equations by operator splitting // J. Comput . Phys. 1986. Vol. 62. No. 1. P. 40–65.
12. Kurganov A., Noelle S., Petrova G. Semidiscrete central-upwind schemes for hyperbolic conservation laws and Hamilton–Jacobi equations // SIAM J Sci Comput. 2001. Vol. 23 P. 707–740.
13. Kraposhin M., Bovtrikova A., Strijhak S. Adaptation of Kurganov-Tadmor numerical scheme for applying in combination with the PISO method in numerical simulation of flows in a wide range of Mach numbers // Procedia Computer Science. 2015. Vol . 66. P. 43–52.
14. Istomina M.A. On the implementation of a one-dimensional quasi-gasdynamic algorithm in the open software package OpenFOAM // Preprints of the Keldysh Institute of Applied Mathematics . 2018. No. 001.