Code_Saturne

Fiche logiciel validé
  • Création ou MAJ importante : 20/04/10
  • Correction mineure : 19/04/13
  • Rédacteur de la fiche : David Monfort - un des développeurs de Code_Saturne - EDF R& D (EDF)
  • Relecteur(s) : Remi Manceau (LEA)
    Gilles Mariaux (SPCTS ENSIL)
  • Contributions importantes : cette fiche a d'abord été rédigée par Marc Sakiz avant d'être reprise par David Monfort
  • Responsable thématique : Laurent Perochon (METAFORT)
Mots-clés
Pour aller plus loin

Code_Saturne : mécanique des fluides numérique (CFD)

  • Site web
  • Système : UNIX-like, MacOS X
  • Téléchargement
  • Version évaluée : 2.0
  • Langue(s) de l'interface : anglais
  • Licence : GPL, LGPL

    Le noyau, le préprocesseur et l'interface graphique de Code_Saturne sont sous licence GPL.
    Les bibliothèques auxiliaires BFT et FVM sont sous licence LGPL.
    Tous ces modules sont propriété d'EDF.

  • Origine du développement : EDF R&D
Description
Fonctionnalités générales

Code_Saturne est un logiciel généraliste de Mécanique des Fluides Numérique (CFD). Il permet de modéliser les écoulements incompressibles ou dilatables, avec ou sans turbulence ou transfert de chaleur. Des modules dédiés sont disponibles pour des physiques particulières :

  • combustion gaz
  • combustion de charbon pulvérisé
  • combustion de fioul lourd
  • transfert de chaleur par rayonnement semi-transparent
  • écoulements fluide-particules par méthode Euler/Lagrange
  • écoulements atmosphériques
  • magnéto-hydrodynamique
  • interaction rotor/stator
Autres fonctionnalités

Structure du code
Code_Saturne est constitué de 3 modules :

  • un préprocesseur, pour la lecture des maillages et le recollement éventuel
  • un noyau pour la résolution effective des équations
  • une interface graphique de mise en données
  • Pour plus de flexibilité, certaines fonctionnalités profondes sont externalisées sous forme de librairies :

  • BFT (Base Functions and Types) pour la gestion de la mémoire et des I/O
  • FVM (Finite Volume Mesh) pour les fonctionnalités profondes de gestion de maillages, notamment liées au parallélisme (post-traitement, échange de données, localisation, ...)
  • MEI (Mathematical Expression Interpreter) pour l'interprétation de fonctions mathématiques définies dans l'interface graphique

Gestion des maillages

  • Utilisable avec des maillages non structurés contenant tous types d'éléments
  • Recollements de maillages, avec gestion automatique des non conformités
  • Gestion des maillages mobiles par approche ALE
  • Gestion de conditions aux limites de périodicité de translation et/ou de rotation
  • Possibilités de post-traitement avancées : post-traitement de variables utilisateur, possibilité de réaliser des post-traitements sur des sous-maillages définis par l'utilisateur et potentiellement variables en temps, possibilité de découper les polyèdres quelconques pour le post-traitement si le logiciel utilisé ne les gère pas bien

Modélisation physique de base

  • Modèles de turbulence standards : k-epsilon, k-epsilon à production linéaire, Rij-epsilon, SSG, k-omega SST, v2f (phi-model)
  • Conditions aux limites de paroi lisse ou rugueuse
  • Approche instationnaire LES (modèles de Smagorinsky et modèle dynamique) avec génération synthétique de turbulence en entrée
  • Module interne d'interaction du fluide avec des structures mobiles indéformables
  • Prise en compte de l'inertie thermique des parois par module 1D interne ou par couplage avec le code de thermique SYRTHES (licence GPL)
  • Prise en compte du rayonnement semi-transparent par approches Discrete Ordinate Method ou approche P1

Module lagrangien

  • Suivi lagrangien de particules avec prise en compte de la dispersion turbulente et de l'influence retour des particules sur le fluide
  • Couplage thermique entre les particules et le fluide, échange de masse entre les particules et le fluide
  • Interaction fine particule/paroi, déposition et remise en suspension, force de van der Waals, ...

Modules de combustion

  • Modèles de flammes de prémélange et flammes de diffusion (Eddy Break-Up, Chimie 3 points, Libby-Williams)
  • Modèle de combustion du charbon par approche homogène avec prise en compte de la polydispersion et de l'humidité du charbon
  • Modèle de combustion du fioul lourd par approche homogène avec prise en compte de la polydispersion des gouttelettes

Module électrique

  • Prise en compte de l'effet Joule et des forces de Laplace
  • Résolution d'un potentiel complexe pour le traitement du triphasé
  • Conditions aux limites complexes pour les transformateurs (effet d'offset)

Module atmosphérique

  • Lecture automatique de fichier météo
  • Loi de paroi rugueuse
  • Température potentielle

Modélisation des tours aéroréfrigérantes

  • Modélisation diphasique air/gouttes de la zone d'échange
  • Modélisation des ventilateurs

Interaction rotor/stator

  • Méthode _frozen rotor_
  • Méthode instationnaire
Interopérabilité

Code_Saturne est portable sur les architectures de type UNIX/Linux et fonctionne sur machines parallèles à mémoire distribuée. Il est codé en FORTRAN, C et Python (environ 550 000 lignes). Les mises en données complexes sont gérées par des routines en FORTRAN.

Code_Saturne est compatible avec tous types de maillages (non structurés, éléments polyédriques quelconques), avec gestion de recollements non conformes. Il ne dispose pas de mailleur intégré ni de module de visualisation, mais est compatible avec la plupart des outils standards du commerce et du monde libre.

Formats de maillages reconnus

  • NOPO/Simail (INRIA/Simulog)
  • Universal I-deas
  • GAMBIT neutral
  • Star-CCM+
  • EnSight Gold
  • Gmsh
  • Igg HEXA
  • CGNS
  • MED

Formats de sortie en post-traitement

  • EnSight Gold
  • MED
  • CGNS

Contexte d'utilisation dans mon laboratoire/service

en interne EDF

  • environ 100 utilisateurs en R&D et dans l'ingénierie
  • études d'ingénierie standard ou pointue, principalement dans le domaine du nucléaire et du thermique à flamme
  • structure de capitalisation de la R&D en mécanique des fluides à EDF

en externe EDF

  • utilisation depuis 2000 chez des partenaires d'EDF, universitaires ou industriels
  • mise en libre du code effective depuis mars 2007 sur http://www.code-saturne.org
Environnement du logiciel
Distributions dans lesquelles ce logiciel est intégré

Debian, FreeBSD

Plates-formes

Toutes machines UNIX/Linux 32 ou 64b, machines MacOS X

Logiciels connexes

SYRTHES
Logiciel généraliste de thermique pour la résolution numérique de la conduction et du rayonnement en milieu transparent (licence GPL). Code_Saturne et SYRTHES peuvent fonctionner de manière couplée pour traiter des cas d'échanges thermiques entre un domaine fluide et un domaine solide. Le couplage est intégré dans les deux codes, qui échangent des informations de température et de flux thermique à chaque pas de temps physique. Le couplage est explicite.
http://rd.edf.com/syrthes

SALOME
Plate-forme d'intégration pour la simulation numérique : CAO, maillage, couplage de codes, visualisation (licence GPL). Code_Saturne peut être utilisé directement depuis la plate-forme SALOME (module supplémentaire nécessaire).
http://www.salome-platform.org

Code_Aster
Code de mécanique des structures développé par EDF R&D (licence GPL). Code_Aster peut être couplé à Code_Saturne via la plate-forme SALOME pour des cas d'interaction du fluide avec des structures déformables
http://www.code-aster.org

ParaView
Logiciel libre de visualisation en parallèle
http://www.paraview.org

VisIt
Logiciel libre d'analyse graphique et de visualisation en parallèle
http://wci.llnl.gov/codes/visit

Gmsh
Logiciel libre de CAO et de maillage
http://www.geuz.org/gmsh

Autres logiciels aux fonctionnalités équivalentes

OpenFOAM (GPL), Star-CCM+ (propriétaire), ANSYS Fluent (propriétaire), ANSYS CFX (propriétaire)

Environnement de développement
Type de structure associée au développement

Code_Saturne est propriété d'EDF.
Code_Saturne est a priori ouvert à tout développement externe. Les contributions externes sont versées sous copyright EDF avec mention explicite des auteurs et redistribuées sous licence GPL. L'abandon de copyright au profit d'EDF ne concerne que Code_Saturne et sa diffusion.

Eléments de pérennité

Code_Saturne est développé sous assurance qualité à EDF R&D, avec une campagne de validation intensive avant la sortie de chaque version majeure.

Références d'utilisateurs institutionnels

Code_Saturne est utilisé régulièrement dans les applications industrielles d'EDF, notamment dans les applications liées à la sûreté nucléaire.

Environnement utilisateur
Liste de diffusion ou de discussion, support et forums

Site de référence de Code_Saturne
téléchargement, actualités, liens, support
http://www.code-saturne.org
forum, gestionnaire de requêtes
https://code-saturne.info

Site collaboratif TWiki de l'Université de Manchester (UK)
actualités, forum, conseils, base de donnée de cas tests, pages personnelles d'utilisateurs/développeurs
accès libre en lecture, inscription nécessaire (mais libre et gratuite) pour contribuer
http://saturne.cfdtm.org

Documentation utilisateur

Documentation utilisateur de Code_Saturne distribuée avec les sources ou accessible directement sur la page EDF du code :
http://www.code-saturne.org

  • Manuel utilisateur (en anglais)
  • Tutorial (en anglais) commenté avec fichiers exemples
  • Manuel théorique (en cours de traduction en anglais)
Contributions

Pour toute information sur l'utilisation de Code_Saturne ou le développement dans le code, contacter le support EDF
saturne-support [at] edf [dot] fr

Commentaires

Responsable thématique précédent

Cette fiche a d'abord été suivie par le responsable thématique Violaine Louvet. Laurent Pérochon l'a reprise en avril 2013.