OpenFOAM
Open-source Computational Fluid Dynamics (CFD) toolbox for solving continuum mechanics problems using the finite volume method. Developed by OpenCFD Ltd and the OpenFOAM Foundation.
Navier-Stokes Equations (Incompressible)
The foundational equations solved by most OpenFOAM solvers:
Continuity (mass conservation):
Momentum conservation:
Where U is velocity, p is pressure, ρ is density, ν is kinematic viscosity, and g is gravitational acceleration.
Capabilities
Incompressible Flow
Solve steady and transient Navier-Stokes equations for laminar and turbulent flows. Solvers include simpleFoam, pimpleFoam, pisoFoam, and icoFoam.
Compressible Flow
High-speed aerodynamics and gas dynamics with density-based and pressure-based solvers. Supports shock capturing, real gas models, and combustion (reactingFoam).
Heat Transfer
Conjugate heat transfer (chtMultiRegionFoam), buoyancy-driven flow (buoyantSimpleFoam), radiation models (P1, fvDOM, viewFactor), and phase change.
Multiphase Flow
Volume-of-fluid (interFoam), Euler-Euler (multiphaseEulerFoam), and Lagrangian particle tracking for sprays, bubbles, and sediment transport.
Turbulence Modelling
RANS models (k-ε, k-ω SST, Spalart-Allmaras), LES (Smagorinsky, WALE, dynamic models), DES, and hybrid RANS-LES approaches.
Mesh Handling
blockMesh for structured grids, snappyHexMesh for automatic hex-dominant meshing around complex geometries, and cfMesh for tetrahedral/polyhedral meshing. Supports dynamic mesh refinement (AMR).
Case Directory Structure
myCase/
├── 0/ # Initial & boundary conditions
│ ├── U # Velocity field
│ ├── p # Pressure field
│ └── k, epsilon # Turbulence fields
├── constant/ # Physical properties & mesh
│ ├── transportProperties
│ ├── turbulenceProperties
│ └── polyMesh/ # Mesh data
└── system/ # Solver & discretisation settings
├── controlDict
├── fvSchemes
└── fvSolutionRunning a Simulation
# Generate mesh blockMesh # Decompose for parallel execution decomposePar -decomposeParDict system/decomposeParDict # Run solver on 4 cores mpirun -np 4 simpleFoam -parallel # Reconstruct results reconstructPar # Post-process with ParaView paraFoam
Resources: Visit openfoam.com for official documentation and tutorials. VELSTROM tutorials for environmental CFD workflows are under development.