Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Numerics presets

For convenience, Vanellus provides three tested numerics presets: fast, balanced, and stable. They select coordinated linear-solver, advection, and relaxation settings without requiring users to configure every equation separately.

The fourth option, custom, applies no preset. It requires a complete numerics configuration and is intended for cases where every solver choice must be controlled explicitly.

Presets at a glance

PresetOverall behaviorWhen to use it
fastLight preconditioning, earlier inner-solve stopping, and larger equation updatesSimple cases that settle cleanly without stronger numerical controls
balancedStronger preconditioning and more damping where it commonly helpsCases with coupling, recirculation, or geometry that make fast less predictable
stableInner solves that reduce residuals further, and stronger momentum and turbulence dampingCases that oscillate, diverge, or fail to settle with the lighter presets
customNo inherited configurationAdvanced cases where every numerical setting must be specified and maintained explicitly

The preset names do not guarantee a runtime order: fast is not necessarily faster than balanced or stable. Stronger preconditioning and less aggressive equation updates can reduce linear-solver work and outer oscillation enough for stable to finish sooner. Actual performance depends on the case.

What the presets control

Each preset supplies three groups of settings:

  • Linear solvers: convergence tolerances and equation-specific preconditioners.
  • Advection schemes: the face interpolation used by momentum, energy, and turbulence transport.
  • Relaxation: the size of each equation or pressure-field update during the SIMPLE iteration.

The presets use the same BiCGSTAB algorithm and robust first-order advection. They all precondition the pressure solve, provide an ordered preconditioner fallback for energy, and leave the energy equation unrelaxed. Their main differences are the strength of momentum and turbulence preconditioning, the strictness of the inner linear solves, and the damping applied to momentum, pressure, tke, and sdr.

How the presets differ

Controlfastbalancedstable
Absolute stopping threshold atol (all equations)1e-61e-81e-8
Relative stopping threshold rtol (momentum, pressure, tke, and sdr)0.010.010.001
Relative stopping threshold rtol (energy)0.010.0010.001
Momentum and turbulence preconditionernoneilu13ilu13
Momentum relaxation factor0.70.70.3
Pressure-field relaxation factor0.30.30.7
Turbulence relaxation factor (tke and sdr)0.70.50.3

balanced adds preconditioning, lowers the stopping threshold for the energy solve, and reduces the turbulence update factor. stable applies lower relative stopping thresholds to every equation, reduces momentum and turbulence updates further, and increases the pressure-field update factor as part of the complete SIMPLE configuration.

All three presets keep the energy update factor at 1, so none under-relaxes the energy equation. Energy relaxation explains why reducing that factor is strongly discouraged.

Preset overrides and custom

A preset string selects the complete tested configuration:

"numerics": "balanced"

If you want to keep most of the settings of a preset the same and adjust some, you can do so like this:

"numerics": {
  "balanced": {
    "relaxation_factors": {
      "tke": 0.3
    }
  }
}

The object form starts from the named preset and replaces only the supplied fields. All omitted settings retain their preset values.

custom does not inherit any omitted values: every required linear-solver, advection, and relaxation setting must be supplied. Prefer a preset unless the complete numerical configuration needs to be owned explicitly.

See also