La CFD chez NEMOSFLOW : avec quels outils?

Comme expliqué dans un article précédent, mon métier consiste à étudier la physique des écoulements via la résolution numérique des équations régissant le comportement des fluides. Pour cela, un certain nombre d’outils sont indispensables :

✓ Un logiciel de CAO (Conception Assistée par Ordinateur), pour la construction de la géométrie et du maillage.

✓ Un logiciel de CFD (Computational Fluid Dynamics), pour la résolution numérique du problème.

✓ Un logiciel de visualisation 3D, pour l’analyse des résultats.

Concernant chacune de ces catégories, de multiples solutions existent. Elles peuvent toutefois être séparées en deux grands groupes : les logiciels commerciaux, et les logiciels Open Source. Avec NEMOSFLOW, j’ai fait le choix de me spécialiser principalement dans l’utilisation des logiciels Open Source pour traiter mes études. Je profite de cet article pour justifier ce choix, et vous décrire succinctement ceux dont je me sers le plus actuellement.

Le choix de l'Open Source

Par définition, un logiciel Open Source est un logiciel comportant un code source que n’importe qui peut inspecter, utiliser, modifier et améliorer. Cela apporte de nombreux avantages, dont je suis devenu particulièrement adepte.

La transparence

L’accès au code source permet de connaître la moindre ligne de programmation, et de comprendre précisément le fonctionnement du logiciel en question. Dans le monde de la CFD, ce peut être particulièrement utile pour l’optimisation d’une simulation, lorsque l’on cherche à évaluer sa pertinence physique ou à analyser des résultats posant problème, par exemple.

La flexibilité et l'optimisation

Bien souvent, les logiciels Open Source sont nativement conçus pour pouvoir être modifiés facilement par les utilisateurs (via l’ajout de modules supplémentaires, etc). Ainsi, en partant du code source de départ, il est possible d’y ajouter de quoi répondre à ses propres besoins. En CFD, cela peut par exemple être l’ajout d’un nouveau modèle ou d’une nouvelle loi physique, qui permettra de traiter correctement le procédé que l’on souhaite modéliser.

La sécurité et la stabilité

Les logiciels Open Source connus possèdent un très grand nombre d’utilisateurs, dont de nombreux experts. La transparence du code source, et les nombreux retours des utilisateurs permettent ainsi d’assurer une grande qualité au logiciel en question, et ce de manière continue. Par ailleurs, cela garantit également sa pérennité : un logiciel Open Source ne peut pas disparaître du jour au lendemain suite au changement de politique d’une entreprise.

La limitation des frais

Évidemment, et en toute honnêteté, l’accès libre aux logiciels Open Source représente un atout incontestable dans le cadre d’une activité d’indépendant, grâce à l’absence des coûts importants pouvant être présents en cas de licence commerciale.

L'aspect communautaire

Enfin, le monde Open Source est basé sur le partage, l’échange et la transmission du savoir. Chaque utilisateur peut apporter sa pierre à l’édifice, et œuvrer pour le bien commun. Ce sont des valeurs que j’affectionne, et que je m’efforce de transmettre au travers de mon activité.

Les principaux logiciels utilisés

Bien que cette liste ne soit pas forcément exhaustive, elle représente toutefois l’essentiel de mes outils actuels. La description que j’en fais est par ailleurs très synthétique, aussi n’hésitez pas à aller faire un tour sur les sites mentionnés.

OpenFOAM

openfoam logo

OpenFoam est une plateforme multi-physiques développé par la société OpenCFD Ltd, elle-même détenue par ESI Group. Basé sur la méthode des volumes finis et principalement développé en C++, il est constitué de nombreux solveurs, chacun étant dédié à un type d’écoulement donné. L’un de ses points forts réside dans la facilité d’implantation de nouveaux modèles, grâce à la syntaxe très intuitive utilisée dans ses bibliothèques C++.

Ce code est hautement parallélisable. Il est par ailleurs fourni avec des outils de pré-traitement (maillage, etc) et de post-traitement (paraview).

Pour plus de renseignements : https://www.openfoam.com/

 

Code Saturne

cfd software code_saturne logo

Code_Saturne est un solveur de mécanique des fluides développé par la R&D d’EDF. Il est basé sur une approche de type volumes finis, et accepte la plupart des maillages que l’on rencontre aujourd’hui (structurés ou non, conformes ou non, éléments de tout type : tétraèdres, hexaèdres, pyramides, polyèdres…). Ce solveur est conçu pour les fluides incompressibles ou faiblement compressibles, avec ou sans turbulence, avec ou sans transfert thermique. Par ailleurs, de nombreux modules ont été développés, permettant de traiter des physiques particulières (écoulements atmosphériques, combustion, turbomachines, MHD, écoulement polyphasiques, etc).

Enfin, ce code est hautement parallélisable et peut être couplé avec d’autres logiciels.

Pour plus de renseignements : https://www.code-saturne.org/cms/web/

 

Syrthes

syrthes logo

Syrthes est un logiciel basé sur la méthode des éléments finis, permettant de traiter les transferts thermiques entre solides : conduction et rayonnement en milieu transparent. Il intègre également des modèles d’évaporation et de condensation. Hautement parallélisable, l’une de ses grandes forces réside dans la possibilité d’être couplé avec Code_Saturne, pour étudier des transferts thermique conjugués et ainsi ajouter les échanges convectifs à l’ensemble.

Pour plus de renseignements : https://www.edf.fr/groupe-edf/inventer-l-avenir-de-l-energie/r-d-un-savoir-faire-mondial/nos-offres/codes-de-calcul/syrthes

Salome

salome platform logo

Salome est une plateforme de simulation développée par EDF, le CEA et d’autres partenaires. Elle permet notamment de construire géométries et maillages, et contient également des outils de post-traitement. L’une de ses forces réside dans la possibilité d’utiliser des scripts python, ce qui permet d’automatiser la génération de cas et de rendre aisé tout type de paramétrisation.

Pour plus de renseignements : https://www.salome-platform.org/?lang=fr

Gmsh

gmsh logo

Gmsh est un logiciel basé sur les éléments finis qui permet de créer, entre autres choses, géométries et maillages. L’une de ses forces réside dans la possibilité d’utiliser des scripts (syntaxe proche du C), ce qui permet d’automatiser la génération de cas et de rendre aisé tout type de paramétrisation.

Pour plus de renseignements : https://gmsh.info/

Paraview

paraview logo

Paraview est un logiciel de visualisation de données développé par Kitware, basé sur la bibliothèque VTK. C’est un outil très puissant de post-traitement, dont le principe est d’appliquer différents filtres aux données chargées pour arriver à la visualisation souhaitée, aussi bien en 2 ou 3D que sous forme de courbes ou autres. Il permet également de faire de l’automatisation grâce à l’utilisation de scripts python.

Pour plus de renseignements : https://www.paraview.org/

En conclusion

Le choix de l’Open Source est conforme à mes valeurs et cohérent avec ce que je souhaite transmettre au travers de mon activité. Mais je tiens toutefois à préciser qu’il s’agit avant tout d’un choix personnel, loin de tout jugement envers les logiciels internes ou commerciaux. En toute honnêteté, il m’arrive d’ailleurs régulièrement d’avoir à les utiliser !

Si cet article vous a plu, ou si vous souhaitez en discuter, n’hésitez pas à vous manifester 🙂

A bientôt.

 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *