Utilisation de l'IBM Blue Gene/P de l'IDRIS : le projet YALES2

Titre du projet  : Simulations massivement parallèles de la combustion turbulente diphasique (YALES2)

Nom du responsable et des collaborateurs : V. Moureau, P. Domingo, L. Vervisch, G. Ribert Affiliations : CORIA, CNRS UMR-6614 Résumé du projet

YALES2 est un outil de simulation de mécanique des fluides développé par V. Moureau au CORIA. Le but du code est de réaliser des simulations très résolues d?écoulements turbulents réactifs et diphasiques, de l?atomisation primaire à la prédiction des polluants dans des géométries complexes. Les développements récents apportés au code permettent de tirer pleinement parti des plateformes de calcul massivement parallèles sans être limité par la mémoire vive des processeurs ou les temps d?accès aux disques. A partir de cet outil, de nouvelles stratégies de calcul ont été élaborées pour arriver à un résultat convergé de manière optimale en temps CPU. Ainsi, des simulations numériques de haute résolution d?écoulements turbulents complexes ont été réalisées et analysées. Ces calculs ouvrent des perspectives pour valider et concevoir de nouveaux modèles.

Objet de la recherche, problématique scientifique

L?objectif principal du projet est de réaliser à moyen terme des simulations de haute fidélité de la combustion de jets de carburant liquide, de l?atomisation primaire à la prédiction des polluants. Ce type d?écoulement réactif est présent dans une grande majorité de brûleurs allant des moteurs automobiles aux turbines à gaz aéronautiques en passant par les fours industriels. Ce type de simulations est accessible aujourd?hui grâce à l?émergence de plateformes de calcul massivement parallèles de haute performance. Les défis liés au projet sont, d?une part, la modélisation conjointe de plusieurs phénomènes (atomisation, turbulence, prise en compte de cinétiques détaillées, ?) ainsi que leurs interactions dans des géométries complexes et, d?autre part, le développement d?outils capables d?exploiter la puissance des machines de calcul.

Caractéristiques du code et de l?implémentation sur la Blue Gene/P

YALES2 est un code de calcul moderne développé depuis 2006 par V. Moureau. Cet outil, écrit en fortran 90 orienté objet, est basé sur un grand nombre de structures de données, qui facilitent  de nombreuses tâches telles que l?ajout de nouvelles variables de transport ou le partitionnement des maillages. Le code est constitué de modules appelés par les différents solveurs disponibles. Parmi ces solveurs, on trouve : un solveur incompressible (ICS), un solveur bas Mach à densité variable (VDS), un solveur de level set (LSS), un solveur de spray avec suivi d?interface et Ghost-Fluid Method (SPS) et un solveur pour la magnéto-hydrodynamique (MHD). Outre le large spectre de problèmes qui peuvent être simulés, le code est parfaitement adapté aux machines de calcul massivement parallèles. Ainsi, la plupart des communications parallèles, qui reposent sur les librairies MPI, sont non bloquantes avec une organisation optimisée. De même, les solveurs linéaires multi-niveaux du code permettent de garder d?excellentes performances sur un grand nombre de processeurs.

Pour tirer parti de la puissance de la machine Blue Gene, plusieurs développements ont été réalisés dans le code. Le premier fut l?ajout du partitionnement et du format HDF5 pour les fichiers de solutions, nécessaires à la visualisation et à la relance du calcul. Ce partitionnement est indépendant du nombre de processeurs du calcul. Par exemple, un maillage en 128 parties peut tourner sur 4096 processeurs. Dans ce cas, 128 processeurs sont responsables de la lecture du maillage et de la solution et vont découper leur partie pour peupler les processeurs qui n?ont pas de maillage et de solution. Ainsi, on évite d?atteindre la limite en mémoire vive des coeurs.

Le second développement fut l?implémentation du raffinement de maillage homogène non dégénérescent en cours de calcul. Par exemple, un maillage de 28 millions de tétraèdres peut être transformé en un maillage de 224 millions d?éléments en découpant chaque tétraèdre en 8. Ainsi, la résolution est nettement augmentée sans avoir à réaliser un nouveau maillage.

Comme la solution est interpolée de l?ancien sur le nouveau maillage, une nouvelle stratégie de calcul pour les écoulements stationnaires a vu le jour. D?abord, on converge un calcul sur un maillage grossier avec peu de processeurs. Ensuite, on raffine le maillage automatiquement, puis on converge à nouveau la solution. Cette étape est rapide car seules les plus petites structures ne sont pas convergées. Ainsi, on aboutit à un très grand raffinement de maillage de manière optimale. Tous ces développements permettent à YALES2 de réaliser des calculs de plusieurs milliards d?éléments sur la machine Blue Gene.

Description des résultats obtenus

En s?appuyant sur le solveur de Poisson avec déflation, la gestion de maillages pré-partitionnés, le raffinement de maillage homogène et la machine Blue Gene, des simulations aux grandes échelles d?écoulements turbulents ont été réalisées. Dans ces simulations, où la résolution du maillage atteint 100 microns, l?ensemble des échelles turbulentes sont résolues et on peut qualifier ces simulations de simulations numériques directes. La géométrie choisie pour ces simulations est celle d?un injecteur de turbine à gaz, exploité dans un projet européen appelé PRECCINSTA. L?écoulement issu de l?injecteur est en forte rotation pour stabiliser au mieux la combustion pauvre. A notre connaissance, ces simulations d?écoulements turbulents très résolus dans des géométries complexes sont les premières à avoir été réalisées. L?état de l?art avant ces calculs se situait aux alentours de 90 millions de tétraèdres alors que les simulations effectuées dans le cadre de ce projet comprennent 2,6 milliards de tétraèdres. Ces simulations nécessitent 12288 coeurs de Blue Gene et environ 346000 heures CPU au total. Dans ces simulations, on remarque que la gamme des tailles des structures turbulentes est très large et que ces calculs sont visuellement très différents des calculs aux grandes échelles classiques.

Une première analyse de ces simulations a été faite en étudiant la répartition spatiale et la taille des tourbillons. Avec plusieurs calculs de résolutions différentes, de 3 millions de tétraèdres à 2,6 milliards, des lois d?échelles ont été déterminées, pour la valeur du critère Q à l?échelle de coupure par exemple. Ces travaux sont en cours de publication. Pour conclure, ces simulations vont permettre de comprendre des phénomènes inaccessibles jusqu?à présent et elles vont servir de référence pour l?écriture de nouveaux modèles de turbulence.

Simulation directe d'un écoulement turbulent à Reynolds modéré.

Légende : Simulation directe d?un écoulement turbulent à Reynolds modéré. Norme de la vitesse.

Références et publications associées
  • L. Vervisch, V. Moureau, P. Domingo & G. Lodato, Scalar fields Sub-Grid Scale Energy in Large-Eddy Simulation of turbulent flames: Mesh quality criterion. Congrès Français de Mécanique, Marseille, 2009.
  • V. Moureau, & O. Desjardins, A second-order ghost-fluid method for the primary atomization of liquid fuel in air-blast type injectors. CTR Summer Program, Center for Turbulence Research, NASA Ames/Stanford Univ., 2008.