Code saturne

logiciel informatique From Wikipedia, the free encyclopedia

code_saturne est un logiciel libre de mécanique des fluides numérique (CFD) développé par la division recherche et développement d'EDF. Publié sous licence GNU GPL depuis 2007, il repose sur une approche volumes finis co-localisés et permet de simuler des écoulements incompressibles ou dilatables, avec ou sans turbulence et transfert de chaleur[1].

Faits en bref Développé par, Première version ...
code_saturne
Description de l'image Logo code saturne.png.
Informations
Développé par EDF
Première version
Dernière version 9.0[1] ()
Version avancée 9.0.1[1] ()
Dépôt « code_saturne sur GitHub »
État du projet En développement actif
Écrit en C++, C, Fortran
Interface QtVoir et modifier les données sur Wikidata
Environnement GNU/Linux, Unix, macOS
Langues Anglais
Type Mécanique des fluides numérique
Politique de distribution Gratuit
Licence GNU GPL
Site web code-saturne.org
Fermer

Le logiciel est intégré à la plate-forme SALOME via la distribution salome_cfd[2] et peut être couplé au code de thermique solide SYRTHES ainsi qu'au code de mécanique des structures code_aster, tous deux développés par EDF sous licence libre.

Son extension diphasique, Neptune_CFD, co-développée par EDF et le CEA, permet de traiter les écoulements à deux phases (mélanges eau-vapeur, eau-air)[3].

Historique

Le développement de code_saturne débute en 1997 au sein de la division R&D d'EDF, initialement comme outil interne destiné aux études de sûreté nucléaire et de thermohydraulique des centrales nucléaires[3].

En , EDF publie le code sous licence GNU GPL, adoptant un modèle de développement ouvert[4]. Cette ouverture favorise l'adoption du logiciel par des partenaires industriels et académiques en France et à l'international.

Le logiciel a depuis été retenu comme application de référence dans le cadre du projet européen PRACE (Partnership for Advanced Computing in Europe) pour l'évaluation des performances de supercalculateurs[3].

Fonctionnalités

Méthode numérique

code_saturne résout les équations de Navier-Stokes par une méthode de volumes finis co-localisés. Il accepte des maillages de tout type — structurés, non structurés, hybrides, conformes ou non conformes — et des éléments géométriques variés : tétraèdres, hexaèdres, prismes, pyramides ou polyèdres quelconques[1].

Les écoulements simulés peuvent être stationnaires ou instationnaires, laminaires ou turbulents, isothermes ou non, incompressibles ou compressibles[3].

Modèles de turbulence

Le logiciel dispose de nombreux modèles de turbulence couvrant les approches :

  • RANS (Reynolds-Averaged Navier-Stokes)
  • LES (Large Eddy Simulation)
  • hybrides RANS/LES (DES, SAS).

Modules physiques spécifiques

En complément du solveur généraliste, code_saturne intègre des modules dédiés à des physiques particulières[1] :

Parallélisation et couplage

Le code est parallélisé à l'aide de la bibliothèque MPI, ce qui lui permet de fonctionner sur des architectures de calcul haute performance[3]. Il peut être couplé au code de thermique solide SYRTHES et au code de mécanique des structures code_aster, notamment via la plate-forme SALOME.

Interopérabilité

code_saturne est compatible avec différents types de maillages (éléments polyédriques quelconques, non structurés), avec gestion de recollements non conformes. En revanche, il ne dispose pas de mailleur ni de module de visualisation intégré, mais il est compatible avec de nombreux outils et formats standards[5].

Formats de maillages reconnus :

Davantage d’informations Format, Origine ...
FormatOrigine
MEDSALOME (EDF/CEA)
CGNSStandard CFD
GmshLogiciel libre
I-deas UniversalSiemens
GAMBIT NeutralANSYS
EnSight 6 / GoldCEI / Ensight
SIMAIL (NOPO)INRIA/Simulog
STAR-CCM+Siemens
Fermer

Formats de sortie (post-traitement) :

Domaines d'application et utilisateurs

code_saturne est utilisé dans un cadre à la fois industriel et académique, en France et à l'international. Environ 500 ingénieurs et chercheurs l'emploient au sein d'EDF[3].

Énergie et sûreté nucléaire

Initialement conçu pour les études de sûreté des installations nucléaires, le logiciel est utilisé pour l'analyse des écoulements dans les circuits primaires, le refroidissement, les transferts thermiques couplés fluide-structure et l'étude des générateurs de vapeur. Il est également employé pour la modélisation de fermes éoliennes, notamment l'étude des interactions entre turbines et l'optimisation de leur implantation[3].

Environnement et atmosphère

Le logiciel est employé pour la modélisation des écoulements atmosphériques, la dispersion de polluants, la qualité de l'air et les interactions entre le vent et les structures[3].

Hydrodynamique et industrie

code_saturne a été utilisé par des industriels pour des applications d'hydrodynamique, notamment dans le domaine de la construction navale[6].

Recherche et enseignement

Le logiciel est employé dans des universités et des organismes de recherche pour le développement et la validation de modèles numériques, ainsi que pour l'enseignement de la mécanique des fluides numérique.

Développement et communauté

Le développement est piloté par la division R&D d'EDF. Le code source est hébergé sur GitHub[7]. Les versions sont publiées selon des cycles réguliers.

Une communauté d'utilisateurs, regroupant des ingénieurs et des chercheurs du monde industriel et académique, contribue au projet par le développement de modèles physiques, d'outils associés ou de cas de validation. Un forum officiel[8] et une documentation technique (guides utilisateurs, manuels de référence, exemples) sont accessibles sur le site du projet.

Publications

Les fondements numériques et la validation de code_saturne sont décrits dans plusieurs publications scientifiques :

  • F. Archambeau, N. Méchitoua et M. Sakiz, « Code_saturne: A finite volume code for the computation of turbulent incompressible flows - Industrial applications », International Journal on Finite Volumes, vol. 1, no 1, (lire en ligne)
  • Y. Fournier, J. Bonelle, C. Moulinec, Z. Shang, A.G. Sunderland et J.C. Uribe, « Optimizing Code_Saturne computations on Petascale systems », Computers & Fluids, vol. 45, no 1, , p. 103–108 (DOI 10.1016/j.compfluid.2011.01.028)

Disponibilité

code_saturne est principalement destiné aux systèmes de type Unix. Il fonctionne sous GNU/Linux et, plus généralement, sous les systèmes Unix.

Le logiciel est distribué sous forme de code source, téléchargeable depuis le site officiel « Téléchargement », sur code-saturne.org (consulté le ). Des paquets précompilés sont également fournis pour certaines distributions GNU/Linux, notamment Debian et Ubuntu.

Des images de conteneurs compatibles avec Docker et Singularity sont proposées afin de faciliter le déploiement sur des stations de travail et des environnements de calcul haute performance. Ces binaires et images de conteneurs sont disponibles à la fois sur le site officiel et via la plate-forme Open Simulation Center« Téléchargement de code_saturne », sur Open Simulation Center (consulté le ).

Sous Windows, Code_Saturne n’est pas disponible nativement, mais peut être utilisé à travers le Windows Subsystem for Linux.

Logiciels comparables

Davantage d’informations Logiciel, Licence ...
LogicielLicence
OpenFOAMGPL
SU2GPL
ANSYS FluentPropriétaire
ANSYS CFXPropriétaire
STAR-CCM+Propriétaire
Fermer

Notes et références

Voir aussi

Related Articles

Wikiwand AI