Skip to main content

Fluid Properties / Physics Models

The Properties block selects the physics model (ideal gas, multi-species, etc.) and configures the equation of state and transport laws used by the solver. All values use the global unit system and may be expressions resolved against the Dictionary.

Structure

Properties
{
phys_model = "<model-name>" # e.g., ideal_gas
gamma = "<expr>" # ratio of specific heats (ideal_gas)
Rgas = "<expr>" # specific gas constant (ideal_gas)

visc = "<expr>" # reference dynamic viscosity (see viscosity_model)
pran = "<expr>" # Prandtl number for laminar transport
pranT = "<expr>" # (optional) thermal Prandtl, if model/closure uses it

delta = "<expr>" # optional model constant (reserved/advanced)
Cw = "<expr>" # optional model constant (reserved/advanced)

viscosity_model = "<constant | sutherland>"
}

Tip: keep gamma, Rgas, visc, and pran in your Dictionary so they can be reused across cases and expressions (e.g., compute visc from Reynolds number).


Supported physics models

ideal_gas
air_CO2
air_SF6
N2_dissociation
O2_dissociation
air5
air11
  • ideal_gas — fully supported (documented below).
  • air_CO2, air_SF6, N2_dissociation, O2_dissociation, air5, air11under construction (interfaces subject to change).
Under construction

Non-ideal-gas models are still being finalized. Names and primitive sets may change.


Primitive variables by model

This table lists the primitive variable names expected in inputs (e.g., for BCs) and diagnostics. See the IBM Surface BCs and other sections for where these appear.

ModelPrimitive variables
ideal_gasP, U, V, W, T
air_CO2WIP
air_SF6WIP
N2_dissociationWIP
O2_dissociationWIP
air5WIP
air11WIP

ideal_gas model

When phys_model = "ideal_gas", the solver initializes an ideal-gas equation of state and a viscosity law from the fields in this block.

Gas law (required)

gamma  = "<expr>"   # e.g., 1.4
Rgas = "<expr>" # e.g., 287.15
  • The solver reads gamma and Rgas, evaluates any expressions against the Dictionary, and constructs the ideal-gas law.
  • Logged on startup for traceability.

Viscosity law

viscosity_model = "<constant | sutherland>"
visc = "<expr>" # used if constant
pran = "<expr>" # laminar Prandtl number
  • viscosity_model = "constant"
    Uses a temperature-independent Sutherland form by setting internal parameters so that μ(T) = visc for all T.

    • visc is the reference dynamic viscosity (e.g., Pa·s).
    • pran sets the Prandtl number used for thermal conductivity linkage.
  • viscosity_model = "sutherland"
    Activates a temperature-dependent Sutherland law (internal defaults).

    • pran still sets the laminar Prandtl number.

pranT may be provided for advanced closures that distinguish thermal transport parameters; whether it is used depends on the active turbulence/closure configuration.

Optional coefficients

delta = "<expr>"
Cw = "<expr>"

These are reserved/advanced coefficients intended for turbulence or model closures. If you’re unsure, leave the provided defaults.


Example (ideal_gas)

Properties
{
phys_model = "ideal_gas"

gamma = "gamma"
Rgas = "Rgas"

visc = "Qinf::rhoinf*umag*Lscale/reynolds"
pran = 0.72
pranT = 0.90

delta = 0.0001
Cw = 0.55

viscosity_model = "constant"
}
  • Here visc is computed from freestream quantities and a target Reynolds number via Dictionary variables.
  • Switch to viscosity_model = "sutherland" to enable temperature-dependent viscosity.

Best practices

  • Keep phys_model, gamma, and Rgas in sync with the rest of your inputs (BCs, initial conditions).
  • For cases that compare across Reynolds numbers, compute visc from a single dictionary formula to avoid inconsistent updates.
  • Use the log outputs (gamma, Rgas, viscosity model parameters) for case reproducibility.