general documentation

code_saturne is a general purpose Computational Fluid Dynamics (CFD) software developed mostly by EDF.

The basic capabilities of code_saturne enable the handling of either incompressible or expandable flows with or without heat transfer and turbulence. Dedicated modules are available for specific physics such as radiative heat transfer, combustion (gas, coal, heavy fuel oil, ...), magneto-hydrodynamics, compressible flows, two-phase flows (Euler-Lagrange approach with two-way coupling), or atmospheric flows.

code_saturne relies on a finite volume discretisation and allows the use of various mesh types which may be hybrid (containing several kinds of elements) and may have structural non-conformities (hanging nodes).


code_saturne is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.


code_saturne may be configured and installed using the configure shell script and make. Please read the INSTALL file in the toplevel source directory if you are not familiar with configuration scripts generated through GNU autoconf and automake.


code_saturne also relies on the PLE (Parallel Location and Exchange) library (developed by the same team, under the LGPL license) for the management of code coupling; this library can also be used independently.

See PLE (Parallel Location and Exchange).

User sources, functions, and subroutines

Many user examples are available in the user examples tab:

Additional documentation

In addition to the Doxygen documentation, Code_Saturne is provided with six pdf documents:

Base architecture

code_saturne is composed of three main elements, as shown on the following figure:

  • the (optional) GUI allows defining computation settings
  • the Solver module is the numerical solver
  • the Preprocessor module is in charge of mesh import

    code_saturne elements