Code_Saturne is based on a co-located Finite Volume approach that handles meshes with any type of cell (tetrahedral, hexahedral, prismatic, pyramidal, polyhedral…) and any type of grid structure (unstructured, block structured, hybrid, conforming or with hanging nodes…).
Code_Saturne can solve flows in steady or unsteady mode. It uses a theta scheme for the time discretization.
Code_Saturne uses a fractional step method, similar to SIMPLEC.
- Velocity prediction: Solve the momentum equation with an explicit pressure gradient and obtain a predicted velocity
- Pressure correction: Use the continuity equation to enforce mass conservation
- Update velocity field using ∇ P
After the velocity has been updated, the resolution of turbulent variables and scalars is done according to their time scheme.
Rhie & Chow interpolation is used when solving the pressure to avoid oscillations.
Linear system resolution
Code_Saturne has different ways of solving the linear system:
- Jacobi (default for velocity, temperature, turbulent variables, passive scalars)
- Algebraic multigrid (default for pressure)
- Conjugate gradient
- Stabilized bi-conjugate gradient (BI-CGSTAB)
Different schemes for convective terms are available in Code_Saturne:
- First order Upwind Scheme
- Centered scheme
- Second Order Linear Upwind (SOLU) Scheme
- Blended scheme between upwind and second order scheme
A slope test is activated by default for second order schemes to switch from second order to upwind in case of overshoots
In Code_Saturne several options are available:
- Iterative reconstruction of the non-orthogonalities (initialization by zero or based on the least-square method)
- Least squares method (with a standard, extended or partial extended neighborhood)