7. Parameter File

A parameter.ini file is needed to control the code. An overview of all options in the parameter file can be generated by following command in the terminal:

flexi --help

Generally following types are used:

INTEGER = 1
REAL    = 1.23456
LOGICAL = T         ! True
LOGICAL = F         ! False
STRING  = FLEXI
VECTOR  = (/1.0,2.0,3.0/)

The concept of the parameter file is described as followed:

  • each single line is saved and examined for specific variable names

  • the examination is case-insensitive

  • comments can be set with symbol “!” in front of the text

! commented text
  • the order of defined variables is with one exception generally indifferent, but it is preferable to group similar variables

  • the order is only necessary for combined parameters for a setting, e.g., when changing boundary conditions or using multiple sponge zones. For example, if you want to change a specific boundary by addressing its name, the associated boundary type must be defined in the correct order:

BoundaryName=inflow         ! BC_Name defined in mesh file
BoundaryType=(/2,0,0,0/)
BoundaryName=outflow        ! BC_Name defined in mesh file
BoundaryType=(/2,0,0,0/)

The following tables describe the main configuration options which can used in the parameter file:

MPI

Default

Description

GroupSize

0

Define size of MPI subgroups, used to e.g. perform grouped IO, where group master collects and outputs data.

IO_HDF5

Default

Description

gatheredWrite

F

Set true to activate gathered HDF5 IO for parallel computations.
Only local group masters will write data after gathering from local slaves.

Interpolation

Default

Description

N

Polynomial degree of computation to represent to solution

Restart

Default

Description

ResetTime

F

Override solution time to t=0 on restart.

FlushInitialState

F

Check whether (during restart) the statefile from which the restart is performed should be deleted.

Output

Default

Description

NVisu

Polynomial degree at which solution is sampled for visualization.

NOut

-1

Polynomial degree at which solution is written. -1: NOut=N, >0: NOut

ProjectName

Name of the current simulation (mandatory).

Logging

F

Write log files containing debug output.

ErrorFiles

T

Write error files containing error output.

OutputFormat

None

File format for visualization: None, ParaView.

ASCIIOutputFormat

CSV

File format for ASCII files, e.g. body forces: CSV

doPrintStatusLine

F

Print: percentage of time, …

WriteStateFiles

T

Write HDF5 state files. Disable this only for debugging issues. NO SOLUTION WILL BE WRITTEN!

WriteTimeAvgFiles

T

Write HDF5 time average files. Disable this only for debugging. NO TIME AVERAGE FILES WILL BE WRITTEN!

Attention

OpenMPI v5.x changed the output buffering behaviour. To see the status line on newer versions of OpenMPI, pass --output :raw to mpirun.

Mesh

Default

Description

MeshFile

(relative) path to meshfile (mandatory).

useCurveds

T

Controls usage of high-order information in mesh. Turn off to discard high-order data and treat curved meshes as linear meshes.

interpolateFromTree

T

For non-conforming meshes, built by refinement from a tree structure, the metrics can be built from the tree geometry if it is contained in the mesh.
Can improve free-stream preservation.

meshScale

1.0

Scale the mesh by this factor (shrink/enlarge).

meshdeform

F

Apply simple sine-shaped deformation on Cartesian mesh (for testing).

crossProductMetrics

F

Compute mesh metrics using cross product form. Caution: in this case free-stream preservation is only guaranteed for N=3*NGeo.

debugmesh

0

Output file with visualization and debug information for the mesh. 0: no, visualization, 3: Paraview binary

BoundaryName

Names of boundary conditions to be set (must be present in the mesh!).For each BoundaryName a BoundaryType needs to be specified.

BoundaryType

Type of boundary conditions to be set. Format: (BC_TYPE,BC_STATE)

writePartitionInfo

F

Write information about MPI partitions into a file.

NGeoOverride

-1

Override switch for NGeo. Interpolate mesh to different NGeo.<1: off, >0: Interpolate

Equation of State

Default

Description

UseNonDimensionalEqn

F

Set true to compute R and mu from bulk Mach Reynolds (nondimensional form).

BulkMach

Bulk Mach (UseNonDimensionEqn=T)

BulkReynolds

Bulk Reynolds (UseNonDimensionEqn=T)

kappa

1.4

Heat capacity ratio / isentropic exponent

R

287.058

Specific gas constant

Pr

0.72

Prandtl number

mu0

0.0

Dynamic Viscosity

Ts

110.4

Sutherland’s law for variable viscosity: Ts

Tref

273.15

Sutherland’s law for variable viscosity: Tref

ExpoSuth

1.5

Sutherland’s law for variable viscosity: Exponent

Equation

Default

Description

IniRefState

Refstate required for initialization.

RefState

State(s) in primitive variables (density, velx, vely, velz, pressure).

BCStateFile

File containing the reference solution on the boundary to be used as BC.

Riemann

Default

Description

Riemann

RoeEntropyFix

Riemann solver to be used: LF, HLLC, Roe, RoeEntropyFix, HLL, HLLE, HLLEM

RiemannBC

Same

Riemann solver used for boundary conditions: Same, LF, Roe, RoeEntropyFix, HLL, HLLE, HLLEM

Exactfunc

Default

Description

IniExactFunc

Exact function to be used for computing initial solution.

AdvVel

Advection velocity (v1,v2,v3) required for exactfunction CASE(2,21,4,8)

IniAmplitude

Amplitude for synthetic test case

IniFrequency

Frequency for synthetic test case

MachShock

1.5

Parameter required for CASE(10)

PreShockDens

1.0

Parameter required for CASE(10)

IniCenter

Shu Vortex CASE(7) (x,y,z)

IniAxis

Shu Vortex CASE(7) (x,y,z)

IniHalfwidth

0.2

Shu Vortex CASE(7)

JetRadius

1.0

Roundjet CASE(5,51,33)

JetEnd

10.0

Roundjet CASE(5,51,33)

JetAmplitude

1.0

Roundjet CASE(5,51,33)

Ramping

1.0

Subsonic mass inflow CASE(28)

P_Parameter

0.0

Couette-Poiseuille flow CASE(8)

U_Parameter

0.01

Couette-Poiseuille flow CASE(8)

AmplitudeFactor

0.1

Harmonic Gauss Pulse CASE(14)

HarmonicFrequency

400.0

Harmonic Gauss Pulse CASE(14)

SigmaSqr

0.1

Harmonic Gauss Pulse CASE(14)

delta99_in

Blasius boundary layer CASE(1338)

x_in

Blasius boundary layer CASE(1338)

Filter

Default

Description

FilterType

None

Type of filter to be applied. None, CutOff, Modal, LAF

NFilter

Cut-off mode (FilterType==CutOff or LAF)

LAF_alpha

1.0

Relaxation factor for LAF, see Flad et al. JCP 2016

HestFilterParam

Parameters for Hesthaven filter (FilterType==Modal)

Overintegration

Default

Description

OverintegrationType

none

Type of overintegration. None, CutOff, ConsCutOff

NUnder

Polynomial degree to which solution is filtered (OverintegrationType == 1 or 2

Lifting

Default

Description

doWeakLifting

F

Set true to perform lifting in weak form.

doConservativeLifting

F

Set true to compute the volume contribution to the gradients in conservative form, i.e. deriving the solution multiplied by the metric terms
instead of deriving the solution and multiplying by the metrics.

BaseFlow

Default

Description

doBaseFlow

F

Switch on to calculate a baseflow.

BaseFlowFile

none

FLEXI file (e.g. baseflow, TimeAvg) from which baseflow is read.

BaseFlowRefState

Specify which refstate should be used in no baseflowfile is given.

SelectiveFilter

(/ -999, -999, -999 /)

Filter Mean to another polynomial degree.

TimeFilterWidthBaseFlow

1.0

Temporal filter width of exponential, explicit time filter.

Sponge

Default

Description

SpongeLayer

F

Turn on to use sponge regions for reducing reflections at boundaries.

damping

Damping factor of sponge. U_t=U_t-damping*(U-U_base) in fully damped regions.

SpongeShape

Set shape of sponge: (1) ramp : Cartesian / vector-aligned, (2) cylindrical

nSpongeVertices

Define number of vertices per Polygon sponge Zone defining the Polygon

SpongeVertex

Sponge Vertex that defines polygon

SpongeDistance

Length of sponge ramp. The sponge will have maximum strength at the end of the ramp and after that point.

SpongeXStart

Coordinates of start position of sponge ramp (SpongeShape=ramp) or center (SpongeShape=cylindrical).

SpongeXEnd

Coordinates of second point to define Cartesian aligned cube.

SpongeDir

Direction vector of the sponge ramp (SpongeShape=ramp)

SpongeRadius

Radius of the sponge zone (SpongeShape=cylindrical)

SpongeAxis

Axis vector of cylindrical sponge (SpongeShape=cylindrical)

SpongeViz

F

Turn on to write a visualization file of sponge region and strength.

WriteSponge

F

Turn on to write the sponge region and strength to the first state file.

SpongeBaseFlow

1

Type of baseflow to be used for sponge. (1) constant: fixed state,(2), exactfunction: exact function, (3) file: read baseflow file, (4) pruett:
temporally varying, solution adaptive Pruett baseflow

SpongeRefState

Index of refstate in ini-file (SpongeBaseFlow=constant)

SpongeExactFunc

Index of exactfunction (SpongeBaseFlow=exactfunction)

SpongeRefFile

FLEXI solution (e.g. TimeAvg) file from which sponge is read.

tempFilterWidthSponge

Temporal filter width used to advance Pruett baseflow in time.

TimeDisc

Default

Description

TimeDiscMethod

CarpenterRK4-5

Specifies the type of time-discretization to be used, e.g. the name of a specific Runge-Kutta scheme. Possible values:
standardrk3-3, carpenterrk4-5, niegemannrk4-14, toulorgerk4-8c, toulorgerk3-7c, toulorgerk4-8f,
ketchesonrk4-20, ketchesonrk4-18, eulerimplicit, cranknicolson2-2, esdirk2-3, esdirk3-4, esdirk4-6

TEnd

End time of the simulation (mandatory).

TStart

0.0

Start time of the simulation (optional, conflicts with restart).

CFLScale

Scaling factor for the theoretical CFL number, typical range 0.1..1.0 (mandatory)

DFLScale

Scaling factor for the theoretical DFL number, typical range 0.1..1.0 (mandatory)

dtmin

-1.0

Minimal allowed timestep (optional)

dtkill

-1.0

Kill FLEXI if dt gets below this value (optional)

maxIter

-1

Stop simulation when specified number of timesteps has been performed.

NCalcTimeStepMax

1

Compute dt at least after every Nth timestep.

Implicit

Default

Description

adaptepsNewton

F

Adaptive Newton eps by Runge-Kutta error estimation

EpsNewton

1.0E-03

Newton tolerance, only used if adaptepsNewton=F

nNewtonIter

50

Maximum amount of Newton iterations

EisenstatWalker

F

Adaptive abort criterion for GMRES

gammaEW

0.9

Parameter for Eisenstat Walker adaptation

EpsGMRES

1.0E-03

GMRES Tolerance, only used of EisenstatWalker=F

nRestarts

10

Maximum number of GMRES Restarts

nKDim

30

Maximum number of Krylov subspaces for GMRES, after that a restart is performed

Eps_Method

2

Method of determining the step size of FD approximation of A*v in GMRES, 1: sqrt(machineAccuracy)*scaleps, 2: take norm of solution into account

scaleps

1.0

Scaling factor for step size in FD, mainly used in Eps_Method=1

FD_Order

1

Order of FD approximation (1/2)

PredictorType

0

Type of predictor to be used, 0: use current U, 1: use right hand side, 2: polynomial extrapolation, 3: dense output formula of RK scheme

PredictorOrder

1

Order of predictor to be used (PredictorType=2)

Analyze

Default

Description

CalcErrorNorms

T

Set true to compute L2 and LInf error norms at analyze step.

AnalyzeToFile

F

Set true to output result of error norms to a file (CalcErrorNorms=T)

analyze_dt

0.0

Specifies time interval at which analysis routines are called.

nWriteData

1

Interval as multiple of analyze_dt at which HDF5 files (e.g. State,TimeAvg,Fluc) are written.

NAnalyze

Polynomial degree at which analysis is performed (e.g. for L2 errors). Default: 2*N.

AnalyzeExactFunc

Define exact function used for analyze (e.g. for computing L2 errors). Default: Same as IniExactFunc

AnalyzeRefState

Define state used for analyze (e.g. for computing L2 errors). Default: Same as IniRefState

doMeasureFlops

T

Set true to measure flop count, if compiled with PAPI.

PIDkill

-1.0

Kill FLEXI if PID gets above this value (optional)

NCalcPID

1

Compute PID after every Nth timestep.

AnalyzeEquation

Default

Description

CalcBodyForces

F

Set true to compute body forces at walls

CalcBulkState

F

Set true to compute the flows bulk quantities

CalcMeanFlux

F

Set true to compute mean flux through boundaries

CalcWallVelocity

F

Set true to compute velocities at wall boundaries

CalcTotalStates

F

Set true to compute total states (e.g. Tt,pt)

CalcTimeAverage

F

Set true to compute time averages

WriteBodyForces

T

Set true to write bodyforces to file

WriteBulkState

T

Set true to write bulk state to file

WriteMeanFlux

T

Set true to write mean flux to file

WriteWallVelocity

T

Set true to write wall velolcities file

WriteTotalStates

T

Set true to write total states to file

VarNameAvg

Names of variables to be time-averaged

VarNameFluc

Names of variables for which Flucs (time-averaged square of the variable) should be computed. Required for computing actual fluctuations.

RecordPoints

Default

Description

RP_inUse

F

Set true to compute solution history at points defined in recordpoints file.

RP_DefFile

File containing element-local parametric recordpoint coordinates and structure.

RP_MaxMemory

100

Maximum memory in MiB to be used for storing recordpoint state history. If memory is exceeded before regular IO level states are written to file.

RP_SamplingOffset

1

Multiple of timestep at which recordpoints are evaluated.