Section: incflo

This section deals with parameters that mostly determine how amr-wind is run such as initial conditions and discretization options.

incflo.physics

type: List of strings

Specify a string or a list of strings for each type of physics to initialize and simulate. Physics is additive and more than one type of physics may be used. Current implemented physics include FreeStream, SyntheticTurbulence, ABL, Actuator, RayleighTaylor, BoussinesqBubble, TaylorGreenVortex, and ScalarAdvection (which is an example of using a passive scalar advection). For multiphase simulations, the MultiPhase physics must be specified, and for forcing wave profiles into the domain, the OceanWaves physics must be specified as well. For immersed boundary forcing method TerrainDrag must be specified and the folder should include a terrain file (default name: terrain.amrwind, user control is TerrainDrag.terrain_file) file.

incflo.density

type: Real

Specify reference density. For the most part if incflo.constant_density = true then incflo.density sets a constant density everywhere. Refer to the field initializer for your chosen incflo.physics for how incflo.density is used.

incflo.gravity

type: List of three Real numbers, optional, default = 0 0 -9.81

Acceleration due to gravity in m/s2 . This constant vector is used by all parts of the solver related to gravity.

incflo.velocity

type: List of three Real numbers, sometimes mandatory depending on the incflo.physics

Specify reference velocity in the “x-”, “y-”, “z-direction”. Refer to the field initializer for your chosen incflo.physics for how incflo.velocity is used. In the context of ABL flows, this argument specifies the initial bulk velocity as well as the target velocity for ABL forcing terms, unless reference values come from a file instead. Many field initializers do not use this input argument.

incflo.verbose

type: Integer, optional, default = 0

Specifies amount of verbosity. A value of 0 is minimal verbosity output and 3 gives full verbosity output.

incflo.initial_iterations

type: Integer, optional, default = 3

Number of initial pressure iterations to perform when the simulation starts.

incflo.do_initial_proj

type: Boolean, optional, default = true

This flag when true performs a nodal projection to ensure the initial velocity is divergence-free.

incflo.constant_density

type: Boolean, optional, default = true

This flag specifies if density is constant throughout the simulation. If the flag is true then a constant density field is used, the density field is copied from old to new time steps. If the flag is false then density is not constant and an extra advection equation is solved to evolve density.

incflo.use_godunov

type: Boolean, optional, default = true

Specifies which advection scheme to use: either Godunov (true) or method of lines (false). Godunov the default approach and has many advantages over the method of lines (MOL): better accuracy, stability at larger CFL numbers, and greater computational efficiency. Setting this argument to false is not recommended, and active use or development relying on the method of lines (MOL) is very sparse.

incflo.dry_run

type Boolean, optional, default = false

Setting this option to true enables a “dry run” of the code. This is intended for checking if an input file is set up properly and for investigating the initial state of a simulation. A dry run will make sure that initial iterations and the initial projection are skipped, and it will complete no time steps. This is to minimize the computational demands of such a run. A plot file with the prefix dry_run will be output regardless of whether the simulation restarts from a checkpoint file or from scratch.

incflo.godunov_type

type: String, optional, default = weno_z

Specifies which Godunov scheme to use. Options include plm, ppm, ppm_nolim, weno_js, and weno_z

incflo.godunov_use_forces_in_trans

type: Boolean, optional, default = false

Specifies if body forces are included in the transverse velocity prediction. Note: only used when incflo.use_godunov = true.

incflo.diffusion_type

type: Integer, optional, default = 2

Determines how the diffusion term is handled when updating the momentum equations. A value of 0 is explicit diffusion and all diffusion terms are moved to the right hand side (warning this carries with it a more stringent CFL restriction), a value of 1 is Crank-Nicolson and diffusion terms are on both the left and right hand sides, and a value of 2 (default) is a fully implicit diffusion where the entire diffusion term is handled on the left hand side.

incflo.post_processing

type: List of strings, optional

When present, this parameter contains list of sections to be read with specific post-postprocessing actions. Currently, the code supports Sampling, KineticEnergy, Enstrophy and Averaging

incflo.post_processing     = sampling ke enst
sampling.type              = Sampling
sampling.output_frequency  = 5
sampling.labels            = line1 line2
sampling.fields            = velocity
sampling.line1.type        = LineSampler
sampling.line1.num_points  = 21
sampling.line1.start       = 250.0 250.0 10.0
sampling.line1.end         = 250.0 250.0 210.0
sampling.line2.type        = LineSampler
sampling.line2.num_points  = 21
sampling.line2.start       = 500.0 500.0 10.0
sampling.line2.end         = 500.0 500.0 210.0
ke.type                    = KineticEnergy
ke.output_frequency        = 2

In the above example, the code will read the parameters with keyword sampling to initialize user-defined probes.