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, air11 — under 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.