Skip to content
Draft. This manual is new and still being checked against the software as it is verified. Some pages will change. If something here does not match what you see, the software is right — tell us and we will fix the page.

Analysis types and solvers

Every analysis type the application offers, what it is for, and which solver it runs.

You do not normally choose a solver. You choose an analysis type and the application derives the solver from it, together with the field set, the dictionaries and the boundary conditions that solver requires. The solver name is here because you will see it in the log, and because knowing it is how you read the OpenFOAM documentation for the thing actually solving your case.


Analysis type Use it for Solver
Incompressible Almost everything below about Mach 0.3. Steady unless the wake will not settle simpleFoam steady, pimpleFoam or pisoFoam transient
Compressible Gas flows where density varies with pressure rhoSimpleFoam steady, rhoPimpleFoam transient
Supersonic / shock Shocks. Density-based and explicit, because a pressure-based solver smears a shock over as many cells as its scheme is diffusive rhoCentralFoam
Atmospheric & Wind Wind loading, pedestrian comfort, dispersion. An incompressible case with a logarithmic inlet and a rough ground simpleFoam, pimpleFoam
Scalar transport A passive tracer carried by the flow — smoke, dye, concentration simpleFoam, pimpleFoam
Rotating frame (SRF) A single rotating frame where the whole mesh spins. No interface, no zone to define SRFSimpleFoam, SRFPimpleFoam
Analysis type Use it for Solver
Convective Heat Transfer Buoyancy-driven flow in a fluid Boussinesq pair below ~30 K rise, buoyantSimpleFoam / buoyantPimpleFoam above it
Conjugate Heat Transfer Fluid and solid together, heat crossing between them chtMultiRegionSimpleFoam, chtMultiRegionFoam
Solid conduction No flow at all: Laplace’s equation on a single scalar laplacianFoam

Convective heat transfer chooses between two families on whether the density change is small. Boussinesq keeps pressure kinematic and is right while the temperature rise is modest; past roughly 30 K the approximation stops holding and the compressible pair is the honest choice. Both are offered rather than one being hidden, because the threshold is a judgement about your case.

Analysis type Use it for Solver
Multiphase (VoF) A sharp interface between two immiscible fluids — a tank, a dam break, a sloshing vessel interFoam, or interIsoFoam for isoAdvector
Marine & Waves VoF with waves on the inlet as VoF
Cavitation Two phases with mass transfer between them — a pump, a propeller interPhaseChangeFoam
Compressible multiphase A free surface where the phases compress: a gas pocket squeezed, a water hammer compressibleInterFoam
Miscible mixing Two liquids that mix rather than hold an interface twoLiquidMixingFoam
Sediment / drift flux A settling mixture, one momentum equation with a relative velocity driftFluxFoam
Shallow water Depth-averaged free surface over a large area shallowWaterFoam
Free surface (potential) A free surface as a moving pressure boundary. Cheap, and right while the surface stays single-valued potentialFreeSurfaceFoam
Multiphase (Euler–Euler) Dispersed phases that interpenetrate — bubbles, particles as a continuum twoPhaseEulerFoam

Two phases means exactly two, by name, with one alpha field. Three-phase cases are not modelled in this build.

Euler–Euler with energy enabled derives reactingTwoPhaseEulerFoam, which needs a phaseProperties dictionary the application does not author. Turn energy off and the analysis type works.

Analysis type Use it for Solver
Combustion / Reacting A diffusion flame, species transport with chemistry reactingFoam
Premixed combustion Reactants already mixed; the flame is a front tracked by the regress variable XiFoam
Spray Liquid injection into a gas sprayFoam
Particles (Lagrangian) Discrete particles tracked through the flow icoUncoupledKinematicParcelFoam one-way, DPMFoam two-way

Reacting is always reactingFoam, including for steady cases. rhoSimpleFoam is compressible but has no chemistry and no species equations, so a “steady reacting” case solved with it would run the flow and quietly ignore the combustion — a plausible answer to a question nobody asked, which is worse than refusing.

Two-way coupled particles (DPMFoam) is currently blocked: it names every field after the continuous phase and the application writes unqualified names. One-way coupling works, and cannot show particles slowing the flow down.

Analysis type Use it for Solver
Solid stress Small-strain linear elasticity on the same mesh machinery solidEquilibriumDisplacementFoam, solidDisplacementFoam
Electrostatics Electric potential and field electrostaticFoam
Magnetostatics Magnetic field magneticFoam
Magnetohydrodynamics Conducting fluid in a magnetic field mhdFoam

Solid stress is useful where a stress answer is wanted alongside a flow answer without moving to a separate package. It is not a substitute for a structural FEA tool and does not pretend to be.


Most cases are Incompressible, steady, with k-omega SST. Start there and change one thing at a time when you have a reason to.

The three questions that actually decide it:

  1. Does density change? Below Mach 0.3 with no significant heating, no — use incompressible. Compressibility is a cost with no benefit if you do not need it.
  2. Is there a second phase, and does it hold an interface? Sharp interface is VoF; interpenetrating is Euler–Euler; a passive scalar is not a phase at all.
  3. Is it steady? If the physics has no steady answer — vortex shedding, sloshing, an explicit transient event — a steady solver will plateau forever rather than converge, and the plateau is not a result.