In the following we describe the session file configuration. Specifically we consider the sections
under the tag
<CONDITIONS> in the session (.xml) file.
Under this section it is possible to set the parameters of the simulation.
TimeStepis the time-step we want to use.
FinTimeis the final physical time at which we want our simulation to stop.
NumStepsis the equivalent of
FinTimebut instead of specifying the physical final time we specify the number of time-steps.
IO_CheckStepssets the number of steps between successive checkpoint files. No checkpoint file is written if it is set to 0.
IO_InfoStepssets the number of steps between successive info stats are printed to screen.
Gammaratio of the specific heats. Default value = 1.4.
pInffarfield pressure (i.e. p∞). Default value = 101325 Pa.
rhoInffarfield density (i.e. ρ∞). Default value = 1.225 Kg∕m3.
GasConstantuniversal gas contant. Default value = 287.058 JKg-1K-1.
TInffarfield temperature (i.e. T∞). Default value = 288.15 K.
Twalltemperature at the wall when isothermal boundary conditions are employed (i.e. Tw). Default value = 300.15K.
uInffarfield X-component of the velocity (i.e. u∞). Default value = 0.1 m∕s.
vInffarfield Y -component of the velocity (i.e. v∞). Default value = 0.0 m∕s.
wInffarfield Z-component of the velocity (i.e. w∞). Default value = 0.0 m∕s.
mudynamic viscosity (i.e. μ∞). Default value = 1.78e-05 Pas.
PrPrandtl number. Default value = 0.72.
thermalConductivitythermal conductivity (i.e. κ∞). This can be set as an alternative to
Pr, in which case the Prandtl number is calculated from κ∞ (it is only possible to set one of them). By default, this is obtained from the Prandtl number.
CFLis the CFL number (explicit and implicit solvers).
CFLGrowthis the growing CFL (explicit and implicit solvers).
CFLEndis the maximum value of the CFL number (explicit and implicit solvers).
Timer_IO_Leveldefines the amount of timer information that is printed after the solver is finished. The default value is -1, which disables output. By selecting a value between 0 and 2, more detailed timer information is printed.
Under this section it is possible to set the time integration scheme information.
TimeIntegrationSchemeis the time-integration scheme we want to use. There are implicit and explicit schemes for the Compressible flow solver. For an explicit discretization, the time-integration schemes supported are as follows
|Runge Kutta 2 - SSP||RungeKutta||SSP||2|
|Runge Kutta 3 - SSP||RungeKutta||SSP||3|
|Runge Kutta 4||ClassicalRungeKutta||-||4|
|Runge Kutta 5||RungeKutta||-||5|
For an implicit discretization, the time-integration schemes available are
|Backward Differentiation Formula Implicit||BDFImplicit||-||1|
|Backward Differentiation Formula Implicit||BDFImplicit||-||2|
|Singly Diagonally Implicit Runge Kutta||DIRK||-||2|
|Singly Diagonally Implicit Runge Kutta||DIRK||-||3|
|Singly Diagonally Implicit Runge Kutta||DIRK||ES5||3|
|Singly Diagonally Implicit Runge Kutta||DIRK||-||4|
|Singly Diagonally Implicit Runge Kutta||DIRK||ES5||4|
Under this section it is possible to set the solver information.
EQTypeis the tag which specify the equations we want solve:
Explicit discretization in time:
NavierStokesCFE(Compressible Navier-Stokes equations).
EulerCFE(Compressible Euler equations).
IsentropicVortex(Isentropic vortex test case).
RinglebFlow(Ringleb flow test case).
Implicit discretization in time:
NavierStokesImplicitCFE(Compressible Navier-Stokes equations).
EulerImplicitCFE(Compressible Euler equations).
Projectionis the type of projection we want to use:
AdvectionTypeis the advection operator we want to use.
WeakDG(classical DG in weak form).
FRDG(Flux-Reconstruction recovering nodal DG scheme).
FRSD(Flux-Reconstruction recovering a spectral difference (SD) scheme).
FRHU(Flux-Reconstruction recovering Huynh (G2) scheme).
FRcmin(Flux-Reconstruction with c = cmin).
FRcinf(Flux-Reconstruction with c = ∞).
Note that only
WeakDG is fully supported, the other operators work only with
quadrilateral elements (2D or 2.5D).
DiffusionTypeis the diffusion operator we want to use for the Navier-Stokes equations:
LDGNS(LDG with primitive variables. The penalty term is inversely proportional to the element size, proportional to the local viscosity for the momentum equations and to the thermal conductivity for the energy equation, and proportional to an optional parameter
LDGNSc11which is by default set to one; proportionality to polynomial order can be manually imposed by setting the parameter
LDGNSc11equal to p2).
LFRDGNS(Flux-Reconstruction recovering nodal DG scheme).
LFRSDNS(Flux-Reconstruction recovering a spectral difference (SD) scheme).
LFRHUNS(Flux-Reconstruction recovering Huynh (G2) scheme).
LFRcminNS(Flux-Reconstruction with c = cmin).
LFRcinfNS(Flux-Reconstruction with c = ∞).
InteriorPenalty(Symmetric interior penalty method).
Note that only
InteriorPenalty are fully supported, the other operators
work only with quadrilateral elements (2D or 2.5D).
UpwindTypeis the numerical interface flux (i.e. Riemann solver) we want to use for the advection operator:
ViscosityTypeis the viscosity type we want to use:
Variable(Variable viscosity through the Sutherland’s law).
EquationOfStateallows selecting an equation of state for accounting for non-ideal gas behaviour:
VanDerWaals(requires additional parameters
RedlichKwong(requires additional parameters
PengRobinson(requires additional parameters
Driverspecifies the type of problem to be solved:
Standard(default option to solve the unsteady equations).
SteadyState(uses the Selective Frequency Damping method (see Sec. 11.1.5) to obtain a steady-state solution of the Navier-Stokes equations (explicit or implicit)).
ShockCaptureTypespecifies the type of operator to be used for shock capturing:
NonSmoothadd a Laplacian operator to apply artificial diffusion (see Sec. 184.108.40.206).
Physicaladd artificial viscosity to the physical viscosity.
ShockSensorTypespecifies the sensor type of shock capturing to be used:
Modal(default) use a modal sensor to identify where to add viscosity (see Sec. 220.127.116.11).
Dilatationuse a dilatation sensor to identify where to add viscosity.
DucrosSensorapply a Ducros  (anti-vorticity) filter to the shock sensor:
Smoothingapply a smoothing filter to the shock sensor:
C0smooth the artificial viscosity to be a continuous field.
In this section we can specify the boundary conditions for our problem. First we need
to define the variables under the section
VARIABLES. For a 1D problem we have:
For a 2D problem we have
For a 3D problem we have:
After having defined the variables depending on the dimensions of the problem we want to solve, it is necessary to specify the boundary regions on which we want to define the boundary conditions:
Finally we can specify the boundary conditions on the regions specified under
Note that the no-slip, isothermal, wall boundary condition requires Twall to be specified. In
the following are some examples for a 2D problem:
In some cases we need to excite perturbations inside the boundary layer. This can be
achieved by setting part of the wall as a disturbance strip. In the no-slip/adiabatic wall
boundary conditions, if the
VALUE is not exact "0" but any expression, which can be
time-dependent, the value of the expression will be added to the ghost state of what it
should be in the input boundary conditions, and then generate a non-zero flux through
the Riemann solver. The following is an example to set a disturbance strip of
amplitude A, frequency f, and in the range of [x0,x0 + len] on a flat plate.
pOut is the target static pressure at the boundary.
Under the two following sections it is possible to define the initial conditions and the exact solution (if existent).