Rapport de Stage Adaptation de maillage en mécanique des fluides (Collaboration avec EDF)

Projet de Fin d’Etudes du 01/03/2018 au 31/08/2018

Soufiane CHERKAOUI Master 2 Calcul Haute Performance, Simulation Encadrants : Gabriel STAFFELBACH & Guillaume DAVILLER Encadrant pédagogique : Stéphane ABIDE

Centre Européen de Recherche et de Formation Avancée en Calcul Scientifique 42 Avenue Gaspard Coriolis, 31057 Toulouse Cedex 01, France TABLE DES MATIÈRES

Table des matières

1 Remerciements 5

2 Introduction 6

3 Contexte du stage 7 3.1 Cadre de l’entreprise ...... 7 3.2 Rôle et attentes ...... 8 3.3 Environnement de travail ...... 8 3.3.1 Mise en situation ...... 8 3.3.2 Formations reçues ...... 8 3.3.3 Collaboration avec EDF ...... 9 3.3.4 Ressources informatiques du CERFACS ...... 9

4 Adaptation de maillage pour la simulation LES 11 4.1 Principes et avantages de la LES ...... 11 4.2 Modélisation numérique utilisant la LES ...... 11 4.2.1 Codes de calcul : AVBP et Code_Saturne ...... 11 4.2.2 Outil de visualisation : ParaView ...... 14 4.3 Etude et mise en oeuvre de l’adaptation de maillage ...... 14 4.3.1 Terminologie ...... 15 4.3.2 Maillage et précision numérique des simulations ...... 15 4.3.3 Métrique et adaptation ...... 16 4.3.4 Schéma général d’adaptation de maillage ...... 17 4.3.5 Outil de manipulation de maillage : HIP ...... 18

5 Description du travail réalisé 20 5.1 LES sur AVBP en proche parois d’un écoulement non réactif turbulent ...... 20 5.1.1 Configuration de la plaque à orifice à bords carrés ...... 20 5.1.2 Coefficient de décharge et de perte de pression ...... 21 5.1.3 Maillage initial et conditions aux limites ...... 21 5.1.4 Mise en données sur AVBP ...... 23 5.1.5 Intérêts de la parallélisation et lancement de la simulation sur AVBP . . . . . 25 5.1.6 Analyse et post-traitement des calculs ...... 27 5.1.7 Métrique et adaptation sous HIP ...... 31 5.1.8 Simulation après premier et deuxième niveau d’adaptation de maillage . . . . 32 5.2 LES sur Code Saturne en proche parois d’un écoulement non réactif turbulent . . . . 36 5.2.1 Mise en données sur Code Saturne ...... 36 5.2.2 Maillage initial et conditions aux limites ...... 38 5.2.3 Analyse et post-traitement des calculs ...... 39 5.2.4 Limitations et perspectives ...... 42 5.3 Simulation d’un écoulement 3D non réactif ...... 43 5.3.1 Maillage initial et conditions aux limites ...... 43 5.3.2 Mise en données sur AVBP ...... 45 5.3.3 Simulations sur le maillage initial ...... 45 5.3.4 Post-traitement temporel ...... 47

CERFACS Rapport non confidentiel page 1 TABLE DES MATIÈRES

6 Conclusion générale 49

7 Annexes 50

CERFACS Rapport non confidentiel page 2 TABLE DES FIGURES

Table des figures

1 Bâtiment du CERFACS ...... 7 2 Calculateur Nemo LENOVO ...... 9 3 Calculateur Kraken LENOVO ...... 10 4 Principale différence entre RANS et LES[5] ...... 11 5 Simulation LES d’une explosion dans un bâtiment avec AVBP ...... 12 6 Fichiers d’entrée pour une simulation AVBP ...... 12 7 Exemple de maillage 2D ...... 15 8 Adaptation de la carte de France "simple exemple 2D ...... 16 9 Schéma d’adaptation de maillage ...... 18 10 Domaine de calcul et mesures géométriques ...... 20 11 Maillage initial surfacique de la conduite ...... 22 12 Maillage initial volumique de la conduite ...... 22 13 Vue interne de la conduite après génération de la solution initiale ...... 24 14 Evolution temporelle des variables de Navier Stokes après la première simulation . . 27 15 Evolution de la masse totale gazeuse à travers les frontières du domaine ...... 28 16 Visualisation du champ de pression à différents instants de la simulation ...... 29 17 Visualisation du champ de vitesse à différents instants de la simulation ...... 29 18 Création de zones de turbulences en aval de la restriction de l’orifice[2] ...... 30 19 Profile de pression à l’intérieur de la conduite ...... 30 20 Métrique d’adaptation du maillage initial ...... 31 21 Comparaison entre maillage initial grossier et maillage après première adaptation . . 31 22 Métrique d’adaptation du maillage AD 1 ...... 32 23 Comparaison entre le maillage initial grossier et le maillage AD 2 ...... 33 24 Evolution temporelle des variables de Navier Stokes après la simulation AD 1 . . . . 33 25 Evolution temporelle des variables de Navier Stokes après la simulation AD 2 . . . . 34 26 Visualisation des champs de pression et de vitesse à différents instants des 2 simulations 34 27 Profile de pression de la dernière solution moyenne des 2 simulations ...... 35 28 Interface graphique de paramétrage de calcul sur Code Saturne ...... 37 29 Maillage initial pour la simulation 1 sur Code Saturne ...... 38 30 Champs de vitesse et de pression de la simulation 1 ...... 39 31 Visualisation en coupe longitudinale de la perturbation sur le maillage initial lors de la simulation 1 ...... 40 32 Profil de pression de la dernière solution moyenne de la simulation 1 ...... 40 33 Amélioration de la qualité du maillage initial ...... 41 34 Champs de vitesse et de pression de la simulation 1’ ...... 41 35 Profil de pression de la dernière solution moyenne de la simulation 1 après améliora- tion de la qualité du maillage ...... 42 36 Coupe longitudinale de la configuration PRECCINSTA ...... 43 37 Maillage initial de la configuration PRECCINSTA ...... 44 38 Visualisation champs de pression et de vitesse à différents instants simulation 1 . . . 46 39 Visualisation champs de pression et de vitesse à différents instants simulation 2 . . . 46 40 Evolution temporelle des variables de Navier Stokes après la simulation 1 ...... 47 41 Evolution temporelle des variables de Navier Stokes sur la simulation complète . . . 48

CERFACS Rapport non confidentiel page 3 LISTINGS

Listings

1 Carte batch de soumission d’une simulation AVBP sur le calculateur NEMO . . . . 26 2 Exemple de carte batch de soumission de job sur NEMO ...... 50 3 Définition des conditions aux limites dans le fichier (*.asciiBound) ...... 51 4 Fichier "keywords.in" de règles ...... 52 5 Fichier "run.params" d’entrées principales ...... 53 6 Fichier "makesolution.choices" de paramétrage ...... 54 7 Fichier "gensolutbound.choices" de paramétrage ...... 55 8 Adaptation de maillage sous HIP ...... 56

CERFACS Rapport non confidentiel page 4 1 REMERCIEMENTS

1 Remerciements

Avant tout développement sur cette expérience professionnelle, il apparaît opportun de com- mencer ce rapport de stage par des remerciements, à ceux qui m’ont beaucoup appris au cours de ce stage, et même à ceux qui ont eu la gentillesse de faire de ce stage un moment très profitable.

Je tiens tout d’abord à remercier M. STAFFELBACH Gabriel, chercheur sénior dans l’équipe CFD du CERFACS et mon tuteur de stage qui m’a formé et accompagné tout au long de cette expérience professionnelle avec beaucoup de patience et de pédagogie.

Je tiens également à remercier M. DAVILLER Guillaume, également chercheur sénior dans l’équipe CFD du CERFACS pour les informations qu’il m’a apporté, pour les conseils qu’il m’a donné, pour son suivi et sa patience.

D’autre part, je tiens à remercier tout particulièrement Mme LABADENS Marie, assistante administratives et secrétaire de l’équipe CFD pour l’aide et les conseils pratiques qu’elle a pu me prodiguer au cours de ces six mois de stage.

Enfin, je remercie tous les membres de l’équipe CFD du CERFACS pour leur accueil chaleureux, leur gentillesse et leur bonne humeur générale.

Ce travail sera examiné et évalué par mes chers professeurs, qu’ils soient vivement remerciés pour avoir accepté de faire partie du Jury. J’exprime ma très haute considération et mes vifs remerciements à tous mes enseignants du Département LAMPS et DALI pour les enseignements qu’ils m’ont prodigués tout au long de ces deux années de formation en Master Calcul Haute Performance, Simulation.

CERFACS Rapport non confidentiel page 5 2 INTRODUCTION

2 Introduction

Du 01/03/2018 au 31/08/2018, j’ai effectué mon stage de fin d’études au Centre Européen de Recherche et de Formation Avancée en Calcul Scientifique (CERFACS) au coeur du campus Météo France de Toulouse. Au cours de ce stage orienté recherche au sein de l’équipe "Computational Fluid Dynamics" (CFD) du CERFACS, j’ai pu m’intéresser à un aspect particulièrement important dans la simulation de phénomènes liés à la mécanique des fluides, à savoir l’adaptation de maillage. Plus largement, ce stage a été l’opportunité pour moi d’appréhender plusieurs enseignements dans le domaine de la mécanique des fluides numériques, et ce, au plus près de l’équipe CFD du CER- FACS, qui, forte de ses compétences techniques de haut niveau et de sa grande notoriété au sein de la communauté scientifique européene et internationale, est en mesure de réaliser des projets de recherche d’envergure.

Tout au long de ce stage, j’ai travaillé sur un processus itératif qui consiste à modéliser de façon géométrique un domaine en le discrétisant par des éléments proportionnés finis et bien définis, "le maillage", puis à modifier localement la taille et l’orientation de ce maillage, en tenant compte des propriétés physiques en rapport avec la mécanique des fluides afin de simuler les écoulements de fluides à l’intérieur de configurations industrielles, générant ainsi un meilleur maillage pour un problème donné et un nombre fixe de degrés de liberté. Mon maître de stage étant chercheur sénior en mécanique des fluides numériques, j’ai pu apprendre dans d’excellentes conditions. J’ai donc été amené à construire des maillages, à travailler sur des codes de calculs CFD parallèles auxquels j’ai été formé, et à faire de l’adaptation de maillage à l’aide de modules adaptatifs intégrés dans ces codes de calculs.

Au-delà d’enrichir mes connaissances en simulation numérique, ce stage m’a permis de com- prendre le besoin récurrent de simuler les phénomènes de mécanique des fluides toujours plus com- plexes, aussi bien dans le secteur aéronautique, que dans l’enérgie ou l’environnement.

En vue de rendre compte de manière fidèle et analytique des six mois passés au sein du CER- FACS, il apparaît logique de présenter à titre préalable le contexte du stage. Il s’agira ensuite de d’exposer les principes de mise en oeuvre de l’adaptation de maillage ainsi que les outils mis à disposition pour cela, et enfin, il sera précisé les différentes missions et tâches que j’ai pu effectuer, et les nombreux apports que j’ai pu en tirer.

CERFACS Rapport non confidentiel page 6 3 CONTEXTE DU STAGE

3 Contexte du stage

3.1 Cadre de l’entreprise

Le CERFACS est un centre de recherche fondamentale et appliquée, spécialisé dans la modéli- sation et la simulation numérique. Par ses moyens et savoir-faire en calcul haute performance, le CERFACS traite des grands problèmes scientifiques et techniques de recherche publique et indus- trielle. Les équipes du CERFACS réunissent des physiciens, des mathématiciens appliqués, des analystes numériques, des informaticiens qui conçoivent et développent des méthodes et solutions logicielles innovantes répondant aux besoins des secteurs de l’aéronautique, du spatial, du climat, de l’énergie et de l’environnement. Impliqué dans des projets d’envergure nationale et internationale, le CERFACS travaille en forte interaction avec ses sept associés : — le CNES (Centre National d’Etudes Spatiales) — EDF (Electricité De France) — Total — Météo France — l’ONERA (centre français de recherche en aérospatiale) — SAFRAN (groupe international de haute technologie) — Airbus

Figure 1 – Bâtiment du CERFACS

En partenariat avec d’autres organismes de recherche comme le CNRS (Unité de recherche associée), l’Irit (laboratoire commun), le CEA et l’Inria (accords de coopération), le CERFACS a pour missions de : — Développer des recherches scientifiques et techniques visant l’amélioration des méthodes de calcul avancé, incluant une meilleure prise en compte des processus physiques concernés, et la mise au point d’algorithmes performants pour les nouvelles architectures de calculateurs — Permettre l’accès, soit en propre, soit en mode partagé, aux calculateurs d’architecture nou- velle susceptibles d’apporter un gain significatif de performances — Transférer ces connaissances scientifiques et méthodes techniques, pour application, vers les grands secteurs industriels — Former des personnels hautement qualifiés et offrir une formation avancée pour les secteurs et domaines d’application retenus

CERFACS Rapport non confidentiel page 7 3 CONTEXTE DU STAGE

Par ailleurs, le CERFACS est constitué de six équipes (de tailles hétérogènes) : — Mécanique des Fluides Numérique (CFD) — Algorithmes Parallèles (Algo) — Modélisation du Climat et de son Changement Global (GlOBC) — Aviation et Environnement — COOP : équipe récente interdisciplinaire permettant de faire le lien entre toutes les équipes au CERFACS. — Equipe Informatique et Support Utilisateur (CSG)

3.2 Rôle et attentes

Dans ce contexte là, mon rôle est de simuler les écoulements de fluides dans des structures in- dustrielles par le biais de codes de calculs parallèles CFD tout en prenant en compte les différentes propriétés physiques des fluides ainsi que les considérations géométriques des domaines de calcul, et ce dans le but de prédire les pertes de pressions liées à ces écoulements. Les attentes me concernant sont donc celles typique d’un ingénieur en recherche et développement : savoir travailler et apprendre de manière autonome, ainsi que prendre des initiatives dans le but d’effectuer des recherches et leurs développement. Par ailleurs, l’équipe CFD du CERFACS, de par sa grande notoriété au sein de la communauté scientifique européene et internationale, permet à chaque personne, stagiaire, doctorant ou chercheur travaillant dans le domaine de présenter son travail aux autres. Je suis donc amené à communiquer et présenter mes résultats régulièrement.

3.3 Environnement de travail 3.3.1 Mise en situation

L’autonomie d’action offerte par le CERFACS est importante. Tout le monde fonctionne avec peu de niveaux hiérarchiques, y compris les stagiaires. Ce qui nous permet, bien sûr, d’être très réactifs. Mais cela autorise aussi un véritable échange avec les doctorants et les chercheurs qui ont tous un grand sens du partage du savoir. D’autre part, mes deux encadrants Gabriel STAFFELBACH et Guillaume DAVILLER me permettent non seulement de cadrer mon travail pour l’utilisation des ressources matérielles et l’environnement informatique mis à ma disposition mais également de m’orienter dans les tâches que je suis amené à effectuer.

3.3.2 Formations reçues

Le CERFACS étant également un centre de formation, je profite pleinement des différentes formations assurées en relation directe avec mon stage. Dans ce contexte, j’ai pu bénéficier de deux formations, l’une sur les "Méthodes numériques pour la simulation aux grandes échelles", formation assurée par plusieurs doctorants et chercheurs du CERFACS et qui s’est étalée sur cinq jours durant lesquelles l’accent a été porté sur l’ensemble des aspects techniques et pratiques ainsi que le développement des compétences requises à la maîtrise du code de calcul du CERFACS "AVBP". La deuxième formation quant à elle a duré deux jours et a été assurée par un ingénieur chercheur chez EDF R&D, Monsieur LE COUPANEC Erwan, puisqu’il s’agissait d’une formation sur le logiciel libre de CFD entièrement développé à EDF R&D, à savoir "Code_Saturne".

CERFACS Rapport non confidentiel page 8 3 CONTEXTE DU STAGE

3.3.3 Collaboration avec EDF

Ce stage étant en collaboration avec EDF, je suis amené à faire un point une fois toutes les deux semaines, en présence de mes encadrants de stage et en visioconférence avec des ingénieurs chercheurs du département MFEE (Mécanique des Fluides, Energies et Environnement) du site EDF R&D Chatou, sur ce qui a été fait et ce qui serait à faire pour la quinzaine suivante.

3.3.4 Ressources informatiques du CERFACS

Les moyens de simulation numérique du CERFACS sont très important puisque le centre dispose de deux calculateurs fournissant une capacité crête agrégée d’environ 600 Tflop/s permettant de traiter la majeure partie des besoins de simulation essentiels.

— Le cluster Nemo LENOVO Le cluster Némo comprend 6 912 coeurs répartis dans 288 noeuds de calcul disposant chacun de 2 processeurs Intel 12 coeurs E5-2680-v3 à 2.5 Ghz. La puissance crête du calculateur est de 277 Tflop/s. Les 288 noeuds de la partition “noeuds fins” sont dotés de 64 GO de mémoire DDR4, ils sont appuyés par douze noeuds de post-traitement dotés de 256 GO de mémoire DDR4 et d’un noeud doté de 512 GO de mémoire DDR4 destiné au traitement des maillages les plus importants. Une partition constituée de 4 Noeuds Intel Knights Landing offrant chacun 64 coeurs à 1.3 Ghz avec 96 GO de mémoire et 16 GO de MCDram permet d’assurer les portages et optimisation dans cet environnement. Le système d’exploitation installé sur les noeuds est CentOS 6.6.

Figure 2 – Calculateur Nemo LENOVO

Le réseau d’interconnexion est un réseau Infiniband FDR non bloquant qui offre une bande pas- sante de 12 GO/s entre noeuds. La latence MPI est de l’ordre de la micro-seconde. Un système de fichier parallèle GPFS met à disposition des utilisateurs un espace disque de travail d’une capacité de 0,5 PO utiles et d’une bande passante de 10 GO/sec. L’environnement logiciel comprend les outils de développement Intel, les debuggers DDT et TotalView, le gestionnaire de travaux SLURM. La solution a été intégrée par Lenovo et Serviware, elle est entrée en production au mois de septembre 2015.

CERFACS Rapport non confidentiel page 9 3 CONTEXTE DU STAGE

— Le cluster Kraken Le cluster Kraken comprend 4 284 coeurs répartis dans 119 noeuds de calcul disposant chacun de 2 processeurs Intel 18 coeurs Xeon Gold 6140 (Skylake) à 2.3 Ghz. La puissance crête du calculateur est de 315 Tflop/s. Les 119 noeuds de la partition “noeuds fins” sont dotés de 96 GO de mémoire, ils sont appuyés par trois noeuds de post-traitement dotés de 384 GO de mémoire et d’une carte Nvidia Tesla M60 et d’un noeud doté de 768 GO de mémoire destiné au traitement des maillages les plus importants.

Figure 3 – Calculateur Kraken LENOVO

Le réseau d’interconnexion est un réseau Intel Omnipath non bloquant.Un système de fichier parallèle GPFS met à disposition des utilisateurs un espace disque de travail d’une capacité de 0,25 PO utiles. L’environnement logiciel comprend les outils de développement Intel, les debuggers DDT et TotalView, le gestionnaire de travaux SLURM. La solution a été intégrée par Lenovo et NeoTekno, elle est entrée en production au mois de mai 2018. A ces moyens internes s’ajoutent ceux des partenaires du CERFACS (Météo-France et le CCRT). A noter que tous les calculs que j’ai été amené à faire ont été réalisé sur le cluster Nemo.

CERFACS Rapport non confidentiel page 10 4 ADAPTATION DE MAILLAGE POUR LA SIMULATION LES

4 Adaptation de maillage pour la simulation LES

4.1 Principes et avantages de la LES

Face à la difficulté d’effectuer des mesures dans des configurations industrielles complexes, la simulation numérique de phénomènes d’écoulements de fluides est de plus en plus recherchée. La résolution directe des équations de Navier-Stokes (représentation explicite de toutes les échelles de l’écoulement d’un fluide) n’est possible que pour des écoulements simples et à faible nombre de Reynolds. On rappelle que le nombre de Reynolds (Re) est un nombre sans dimension utilisé en mécanique des fluides qui caractérise un écoulement, en particulier la nature de son régime (lami- naire, transitoire, turbulent).

Avec l’avénement des super-calculateurs, la modélisation sous-maille de phénomènes tels que les écoulements turbulents (à haut Reynolds) est devenue possible. Ce type de modélisation est à la base de la simulation des grandes échelles (Large Eddy Simulation LES) qui consiste à résoudre explicitement toutes les échelles de taille plus grande que la taille du maillage, de façon à prendre en compte la non-homogénéité de l’écoulement. Contrairement à l’approche Reynolds Average Navier- Stokes (RANS) qui représente la méthode la moins chère du point de vue des calculs, mais ne capte pas le caractère instationnaire des écoulements. Les simulations LES sont beaucoup plus riches et permettent de capturer des structures très fines, comme le montre la figure suivante :

Figure 4 – Principale différence entre RANS et LES[5]

4.2 Modélisation numérique utilisant la LES 4.2.1 Codes de calcul : AVBP et Code_Saturne

La LES exige des algorithmes numériques très efficaces et des maillages suffisamment raffinés pour limiter les effets indésirables de la modélisation. Dans ce cadre, deux outils ont été utilisés durant ce stage, AVBP et Code_Saturne.

— Code AVBP : Le CERFACS a développé un code parallèle de mécanique des fluides qui résout les équations de Navier-Stokes dans les modes laminaires et turbulent compressible. Il s’applique à des espaces en 2 et 3 dimensions sur des maillages non-structurés et hybrides. Bien qu’il ait été initialement conçu pour résoudre les écoulements non réactifs pour l’aérodynamique ses applications principales aujourd’hui concernent la modélisation des écoulements réactifs.

CERFACS Rapport non confidentiel page 11 4 ADAPTATION DE MAILLAGE POUR LA SIMULATION LES

Figure 5 – Simulation LES d’une explosion dans un bâtiment avec AVBP

AVBP représente l’un des outils CFD les plus avancés au monde pour la simulation numé- rique de la turbulence instationnaire pour les flux réactifs. Il est largement utilisé à la fois pour la recherche fondamentale et la recherche appliquée d’intérêt industriel. Aujourd’hui, le projet AVBP comprend au total une trentaine de chercheurs scientifiques et d’ingénieurs au CERFACS et une centaine d’utilisateurs dans le monde.

Typiquement, voici à quoi ressemble une simulation AVBP :

Figure 6 – Fichiers d’entrée pour une simulation AVBP

Plusieurs fichiers sont obligatoires pour lancer une exécution avec AVBP, d’autres sont fa- cultatifs. Sur la figure 6, on distingue quatre sections :

— Les quatre fichiers de paramètres nécessaires pour paramétrer un calcul avec AVBP (au format ASCII) ;

— keywords.in : ce fichier est le fichier de règles. Il spécifie le nom du fichier d’entrée principal du calcul (nom par défaut = ’run.params’) et il contient également une

CERFACS Rapport non confidentiel page 12 4 ADAPTATION DE MAILLAGE POUR LA SIMULATION LES

liste de mots-clés qui représentent toutes les options disponibles pour un calcul dans AVBP; — run.params : Ce fichier est le fichier d’entrée principal. Il liste tous les paramètres du calcul ; — mixture_database.dat : toutes les caractéristiques du mélange (espèces utilisées, propriétés de transport, chimie, ...) utilisées dans un calcul sont spécifiées dans ce fichier ; — species_database.dat : toutes les caractéristiques des espèces gazeuses et liquides (poids moléculaire, enthalpie de formation, tables d’enthalpie sensible et d’entropie, ...) comprises dans le mélange sont définies dans ce fichier.

— Le fichier de maillage qui décrit les coordonnées du maillage, la connectivité, les conditions aux limites... Ce fichier est créé par HIP (cf. section 4.3.5 ) , soit à partir de rien, soit à partir d’un fichier mesh existant précédemment généré par un logiciel de grille (Gambit, Centaursoft, ...) (au format HDF5) ; — Le fichier .asciibound permet de spécifier la condition limite physique (entrée, sortie, mur, ...) associée à chaque patch limite de la phase gazeuse (au format ASCII) ; — Le fichier .solutbound contient les valeurs cibles qui devraient être imposées sur chaque condition aux limites (au format HDF5) ; — Le fichier solution initiale qui peut être créé à partir de rien avec une moulinette ou peut être le résultat d’un calcul précédent (au format HDF5) ;

D’autre part, plusieurs outils de pré-traitement (outils de conversion, outils pour créer une première solution, outils pour imposer des conditions aux limites, ...) et post-traitement (lo- giciels de visualisation, outils de visualisation 1D, évolution temporelle, ...) sont disponibles pour AVBP : les "moulinettes". La plupart de ces moulinettes sont écrites en 90 et sont encapsulées dans des scripts UNIX.

— Code_Saturne : ’est un logiciel CFD open source développé par EDF qui résout les équations de Navier- Stokes pour les écoulements 2D, 2D-axisymétriques et 3D, stationnaires ou instationnaires, laminaires ou turbulents, incompressibles ou faiblement dilatables, isothermes ou non, avec transport scalaire si nécessaire. Le logiciel est téléchargeable depuis la plateforme web de Code Saturne : https://www.code-saturne.org/cms/download. Il est basé sur une approche co-localisée de volumes finis qui manipule des mailles avec n’im- porte quel type de cellule (tétraédrique, hexaèdre, prismatique, pyramidale, polyédrique ...) et n’importe quel type de structure de grille (non structurée, structurée par blocs, hybride, ... ). En ce qui concerne la résolution de systèmes linéaires, Code_Saturne propose différentes façons de les résoudre :

— Jacobi (par défaut pour la vitesse, la température, les variables turbulentes, les scalaires passifs) ; — Multigrille algébrique (par défaut pour la pression) ; — Gradient de conjugué ; — Gradient bi-conjugué stabilisé (BI-CGSTAB)

CERFACS Rapport non confidentiel page 13 4 ADAPTATION DE MAILLAGE POUR LA SIMULATION LES

Par ailleurs, plusieurs modèles de turbulence sont disponibles, des modèles Reynolds-Averaged aux modèles Large-Eddy Simulation. De plus, un certain nombre de modèles physiques spé- cifiques sont également disponibles sous forme de "modules". Enfin, différents schémas pour les termes convectifs sont disponibles dans Code_Saturne :

— Schémas de premier ordre (Upwind Scheme) ; — Schémas centrés (Centered Scheme) ; — Schémas d’ordre deux (Second Order Linear Upwind "SOLU" Scheme) ; — Schémas mixtes.

Une construction minimale de Code_Saturne nécessite un système Linux avec des compi- lateurs C et Fortran (C99 et Fortran 95 avec des liaisons Fortran 2003 ISO C conformes respectivement) et un interpréteur Python (2.6 ou ultérieur). Pour les exécutions parallèles, une bibliothèque MPI est également nécessaire.

D’autres bibliothèques peuvent être utilisées pour d’autres options de format de maillage, ainsi que pour améliorer les performances et optimiser le partitionnement de maillage :

— HDF5 est nécessaire pour MED, et peut également être utilisé par CGNS ; — CGNSlib est nécessaire pour lire ou écrire des fichiers de maillage et de visualisation en utilisant le format CGNS, disponible en format d’exportation avec de nombreux outils de maillage tiers. CGNS version 3.1 ou supérieure est requise ; — MED est nécessaire pour lire ou écrire des fichiers de maillage et de visualisation en utilisant le format MED, principalement utilisé par la plateforme SALOME ; — Scotch peut être utilisé pour optimiser le partitionnement de maillage ;

4.2.2 Outil de visualisation : ParaView

Afin de pouvoir créer des visualisations pour analyser les données établies par les codes de calculs à l’aide de techniques qualitatives et quantitatives, le CERFACS met à disposition "ParaView", une application open-source multi-plateforme d’analyse et de visualisation de données. L’exploitation de données se fait alors soit de manière interactive en 3D ou par programmation en utilisant les capacités de traitement par lots de ParaView. Du fait du traitement de données issues des codes de calculs extrêmement volumineuses, ParaView est utilisé non seulement sur sur les petites machines mais également sur les supers-calculateurs du CERFACS (NEMO et KRAKEN) pour analyser tout types de données en utilisant des ressources de calcul de mémoire distribuées.

4.3 Etude et mise en oeuvre de l’adaptation de maillage

Avant de rendre compte du travail qui a été réalisé durant ce stage, il apparaît opportun d’in- troduire les notions clés et les bases sur lesquelles s’appuie le travail qui a été effectué. Dans ce contexte, nous définirons le terme technique de l’adaptation de maillage par métrique sur lequel s’articule ce travail, puis nous décrirons sommairement les outils mathématiques qui serviront à l’analyse des résultats numériques.

CERFACS Rapport non confidentiel page 14 4 ADAPTATION DE MAILLAGE POUR LA SIMULATION LES

4.3.1 Terminologie

Lors de la résolution numérique de phénomènes d’écoulements de fluides dans des configura- tions géométriques, il est nécessaire de discrétiser le domaine où s’écoule le fluide pour simuler le phénomène sur de petits intervalles ou sous-domaine. Le maillage est alors la discrétisation spatiale de ce domaine par des éléments proportionnés finis et bien définis. Un maillage est caractérisé par plusieurs notions, à savoir :

— Un élément qui est un intervalle ou sousdomaine géométrique qui forme le maillage. En 3D, les éléments sont plus communémement des téraèdres ou des hexaèdres ; — Les arêtes qui définissent les bords d’un élément ; — Les noeuds géométriques qui définissent les sommets d’un élément ; — Les noeuds de calcul qui sont des points dont nous choisissons la position sur l’élément et qui vont déterminer comment l’écoulement se comporte à ce niveau.

Figure 7 – Exemple de maillage 2D

4.3.2 Maillage et précision numérique des simulations

Dans l’optique de simulations numériques d’écoulements de fluides, l’objectif d’un maillage est de procéder à une simplification du domaine d’écoulement par un modèle représentant ce domaine, en vue de simuler de la manière la plus adéquate l’écoulement du fluide à l’intérieur de ce domaine. Cependant, afin d’augmenter la précision de la solution simulée et de produire un maillage optimal en termes de coût de calcul, il est nécessaire d’identifier au préalable et de manière automatique les zones d’intérêts du flux suivant un critère choisi par l’utilisateur, raffinant ainsi ces zones et grossissant les autres. Les caractéristiques du maillage (i.e, le nombre, la forme et la taille de ses éléments) et la précision numérique des simulations sont donc deux concepts étroitement liés. En effet, le temps de calcul est proportionnel au nombre d’éléments du maillage : plus il y a d’éléments, plus le temps d’obtention de résultats est important. Raffiner un maillage peut être une bonne solution pour améliorer la précision des calculs mais im- plique de disposer de ressources en temps et en mémoire non limitées. Ainsi, si on dispose d’un maillage en tétraèdres et qu’on veut diviser par deux la taille des éléments de celui-ci, il faut dé- couper chaque élément en huit : le temps de calcul augmentera d’environ un ordre de grandeur. Il est alors intéressant de chercher à effectuer un raffinement local et directionnel du maillage, c’est à dire de l’adapter localement au problème étudié, d’où le principe d’adaptation de maillage.

CERFACS Rapport non confidentiel page 15 4 ADAPTATION DE MAILLAGE POUR LA SIMULATION LES

4.3.3 Métrique et adaptation

On considère comme simple exemple de visualisation la carte de France (figure 8 a) d’une part, et d’autre part, la même carte de France mais cette fois-ci dessinée non pas en prenant en compte la distance séparant les différentes villes, mais plutôt la durée d’un trajet en train entre deux villes (figure 8b):

Figure 8 – Adaptation de la carte de France "simple exemple 2D

Ceci est un exemple d’une adaptation basée sur une métrique M responsable de la conversion d’une taille en distance en une taille en durée de trajet.

Dans un contexte plus général d’adaptation de maillage, l’idée est de prescrire une taille et une direction aux éléments du maillage pour contrôler l’erreur due aux calculs. Pour cela, il faut calculer l’erreur d’approximation eh entre la solution exacte u d’un problème et sa solution approchée uh au sens des éléments finis :

eh = u − uh (1)

En général, la solution approchée uh calculée en un point du maillage ne correspond pas à la solution exacte u en ce point. De plus, il n’est pas possible de garantir que la solution approchée uh corresponde en au moins un point de chaque élément à la solution exacte u. Ceci rend donc l’erreur d’approximation difficile à quantifier. Pour éviter ces problèmes, on préconise une approche indirecte qui ne fait plus apparaître l’erreur d’approximation eh. On note πhu l’interpolé linéaire de u sur un élément du maillage. L’écart entre la solution exacte u et son interpolé linéaire πhu est appelé erreur d’interpolation. Pour des problèmes elliptiques, le lemme de Céa [3] établit que pour des problèmes elliptiques :

1 1 ku − uhkH 6 Cku − πhukH (2) où C est une constante dépendant de la dimension. De ce fait, on peut considérer que l’erreur d’interpolation fournit un bon estimateur valide dans le contexte d’adaptation de maillage. Le problème d’adaptation peut être posé comme présenté par Alauzet [1] : "A partir d’une erreur 0 d’interpolation πhu de u sur un maillage τh, construire un maillage τh (qui peut être différent de

τh) où l’erreur d’approximation définie par :

0 eh = u − πhu (3) est limitée par une valeur connue dans toutes les directions. La démarche d’adaptation de maillage peut alors se résumer en deux étapes :

CERFACS Rapport non confidentiel page 16 4 ADAPTATION DE MAILLAGE POUR LA SIMULATION LES

— construction d’un estimateur de l’erreur d’interpolation, c’est à dire un indicateur qui prescrit les tailles et directions des arêtes dans le but d’équirépartir l’erreur sur le maillage ; — modification du maillage en accord avec l’estimateur d’erreur.

Alauzet [1] présente une surestimation globale de l’erreur d’interpolation sur chaque élément de maillage. Soit K un élément du maillage, ~e les bords de l’élément K et Ek le groupe de bords de l’élément K, on peut énoncer :

~t ku − πhuk∞,K 6 c max max e |Hu(x)|~e, ∀~e ∈ Ek (4) x∈K e∈Ek où Hu(x) est la matrice hessienne au point x, écrite en fonction de ces vecteurs et valeurs propres

(respectivement R et ∧), et |Hu(x)|. Le module de la matrice hessienne est la matrice symétrique définie positive suivante :

  |λ1| 0 0 − |Hu(x)| = R| ∧ |R , | ∧ | =  0 |λ2| 0  (5) 0 0 |λ3|

Cependant, comme la valeur maximale sur le champ métrique Hessien |Hu| n’est pas connue, on considérera que l’on peut définir un tenseur métrique M¯ (K) approximant |Hu| comme suit :

~t ~t max e |Hu(x)|~e e M¯ (K)~e, (6) x∈K 6 Ainsi, l’estimation explicite suivante est trouvée :

~t ¯ ku − πhuk∞,K 6 c max e M(K)~e, ∀~e ∈ Ek (7) e∈Ek et conséquemment, l’erreur d’interpolation k faite sur un élément K est estimée par :

~t k = c max e M¯ (K)~e, (8) e∈Ek On définit alors la norme euclidienne d’un vecteur ~u associé à une métrique M (i.e la longueur de u sur M):

p p ~t kukM = (~u,~u)M = u M~u, (9)

En comparant les équations (8) et (9), on remarque que l’erreur d’interpolation [6] faite sur un élément K est proportionnelle au carré de la plus grand longueur de bord par rapport à l amétrique M, ce qui illustre le lien entre la métrique et la taille des éléments. Et c’est ce lien qui est exploré par l’adaptation de maillage, où l’erreur d’interpolation va être fixé à priori par l’utilisateur pour faire varier les éléments suivant la valeur de la métrique, puisque la norme des bords par rapport à la métrique M est proportionnel à l’erreur. De ce fait, il est extrêmement important de bien construire la métrique M pour un résultat de haute qualité.

4.3.4 Schéma général d’adaptation de maillage

Le but de l’adaptation de maillage étant d’équirépartir l’erreur d’interpolation sur le maillage, l’idée est donc de trouver un point fixe pour le couple formé par le maillage et la solution. Ceci signifie que l’algorithme d’adaptation converge à la fois vers une solution et vers un maillage adapté à celle-ci. Il s’agit donc de transcrire la solution en une information pertinente pour le mailleur. L’estimateur d’erreur vu précédemment correspond bien à cette attente.

CERFACS Rapport non confidentiel page 17 4 ADAPTATION DE MAILLAGE POUR LA SIMULATION LES

Le schéma d’adaptation de maillage, figure 9, est donc un algorithme itératif au cours duquel la solution est analysée pour décider de la poursuite ou de l’arrêt de celui-ci (lorsque l’erreur d’in- terpolation est équirépartie sur le maillage). Cet algorithme démarre avec un maillage τ0 et une solution initiale S0. Les étapes de cet algorithme consistent à :

— calculer une solution sur le maillage τ0 ; — analyser la solution pour décider de la convergence de l’algorithme, si l’estimateur d’erreur

d’interpolation est équirépartie sur le maillage τ0, l’algorithme s’arrête, sinon un champ de métrique est construit ; — interpoler la solution sur le nouveau maillage et réitérer l’algorithme.

Figure 9 – Schéma d’adaptation de maillage

4.3.5 Outil de manipulation de maillage : HIP

Les aspects liés au maillage sur AVBP sont traités par le préprocesseur de grilles multifonction HIP. Cet outil de manipulation de grilles de calcul non structurées a été developpé au CERFACS en 1997 et permet notamment de convertir des maillages multiblocs structurés en maillages non structurés, mais aussi :

— lire les maillages dans différents formats (Centaur, Fluent, Ensight, etc...) ; — générer des maillages 2D rectangulaires simples ; — transforme les maillages par translation, mise à l’échelle de la rotation ou de la réflexion ; — extruder les maillages 2D axialement et radialement vers des maillages 3D ; — interpoler les solutions entre les maillages ; — grossir les maillages non structurés pour des applications multigrilles ; — faire de l’adaptation de maillage et du raffinement local de mailles ; — écrire des maillages dans divers formats.

CERFACS Rapport non confidentiel page 18 4 ADAPTATION DE MAILLAGE POUR LA SIMULATION LES

Pour faire de l’adaptation de maillage, HIP fait appel à la bibliothèque MMG3D de l’INRIA Bor- deaux. Le maillage original est adapté de manière itérative selon un champ métrique isotrope ou anisotrope définissant la longueur et la direction des arêtes du maillage adapté. L’algorithme sur lequel est basé cette bibliothèque pour faire de l’adaptation utilise une métrique interpolée sur un maillage tétraédrique existant pour produire un nouveau maillage tétraédrique adapté.

CERFACS Rapport non confidentiel page 19 5 DESCRIPTION DU TRAVAIL RÉALISÉ

5 Description du travail réalisé

Les travaux qui ont été réalisé dans le cadre de ce stage avaient pour but d’initier aux procédures typiques de simulations numériques d’écoulements LES en 3D de fluides turbulents et non réactifs sur AVBP et Code Saturne. Dans ce contexte, des calculs précis et rapides d’écoulement d’air dans des géométries complexes ont été menées durant ce stage.

5.1 LES sur AVBP en proche parois d’un écoulement non réactif turbu- lent

La première configuration sur laquelle des simulations ont été réalisée est un dispositif à diffé- rentiel de pression couramment utilisé pour mesurer les débits dans l’industrie. Il fonctionne sur le principe que les variations de la forme d’écoulement modifient les profils de pression et de vitesse. Ce dispositif à différentiel de pression est privilégié puisqu’il existe une norme internationale pour réglementer son utilisation : ISO 5167. En respectant ces normes, les mesures de débit peuvent être garanties dans un niveau d’incertitude quantifiable et commercialement acceptable. Compte tenu de la simplicité et de la fiabilité de ce genre d’outils, il est utilisé dans de nombreuses industries, comme c’est le cas chez EDF pour les mesures de flux monophasiques.

5.1.1 Configuration de la plaque à orifice à bords carrés

Les simulations réalisées sur cette configuration ont été l’objet d’études réalisées par [Ben & al.] [7] afin de prédire les écoulements à Re = 25000 turbulent, de mesurer en LES les pertes de pression à la restriction, de les comparer aux données expérimentales disponibles et à l’ISO 5167, puis permettre d’avoir confiance en son utilisation si nécessaire, à un nombre de Reynolds de l’ordre de 104, pour une autre configuration pour laquelle aucune donnée expérimentale n’est disponible. La plaque à orifice circulaire à bords carrés dans un tuyau rond est un instrument fréquemment utilisé pour les mesures de débit dans les tuyaux industriels.

Figure 10 – Domaine de calcul et mesures géométriques

CERFACS Rapport non confidentiel page 20 5 DESCRIPTION DU TRAVAIL RÉALISÉ

Le domaine de calcul du cas test représenté sur la figure 10 a été reproduit avec le logiciel de modélisation 3D directe SpaceClaim. L’entrée "Inlet" est située à 18D (D étant le diamètre de la conduite) en amont de l’orifice et la sortie "Outlet" est située à 12D en aval de l’orifice. Les paramètres pertinents sont donnés dans la table 1, et la paroi de la conduite est supposée lisse. Une analyse dimensionnelle conduit à trois nombres non dimensionnels : le nombre de Reynolds Re et deux rapports d’aspect, β le rapport entre le diamètre intérieur de l’orifice et celui du tube, et α le rapport entre l’épaisseur de la plaque à orifice et le diamètre intérieur du tuyau. Les valeurs de ces trois paramètres non dimensionnels sont respectivement égales à 25000, 0, 62 et 0, 11. On considérera tout au long de ces calculs l’air comme fluide de référence avec un débit volumique de 0.017m3/s pour toutes les simulations.

Densité de l’air ρ [kg/m3] 1.177 Viscosité Dynamique de l’air µ [kg/m/s] 1.85e−5 Diamètre de la conduite D [m] 0.046 Diamètre de l’orifice d [m] 0.0285 Epaisseur de l’orifice [m] 0.005 Vitesse initiale de l’air dans la conduite u0 [m/s] 8.54 Rapport α 0.11 Rapport β 0.62 3 Débit volumique de l’air Vflow [m /s] 0.017

Table 1 – Principaux paramètres du cas-test

La vitesse initiale d’entrée de l’air dans la conduite est determinée à partir de la relation qui donne le nombre de Reynolds :

ρV D Re = (10) µ

5.1.2 Coefficient de décharge et de perte de pression

Cette étude ayant pour but de démontrer la précision obtenue à l’aide d’une approche LES en proches parois pour prédire la vitesse, la perte de pression et le coefficient de décharge pour un écoulement à travers la conduite à Re = 25000, il est nécessaire de définire le coefficient de décharge et de perte de pression. Le coefficient de perte de pression quant à lui est définit par :

2∆P ξ = 2 (11) ρu0 où ∆P est la perte de charge moyenne entre les prises situées 2D en amont de l’orifice et 6D en aval.

5.1.3 Maillage initial et conditions aux limites

Afin de préparer au mieux le problème d’écoulement d’air dans la conduite et de pouvoir le résoudre numériquement sur les codes de calculs, il est nécessaire de discrétiser le domaine de calcul de la figure 11 à travers un maillage de référence (voir figure 11 et 12 ). Ce maillage est créé en utilisant le logiciel de maillage et de Conception Assistée par Ordinateur CentaurSoft. C’est un maillage tétraédrique non structuré constitué de 8539 noeuds et 36106 éléments de volumes dans le sens de l’écoulement et localement raffiné dans le sens de l’écoulement près de l’orifice. Le domaine étant délimité par 5 frontières :

CERFACS Rapport non confidentiel page 21 5 DESCRIPTION DU TRAVAIL RÉALISÉ

— l’entrée (Inlet), — la sortie (Outlet), — les bords ou murs (Wall 1 et 2), — l’orifice.

La table 2 reprend certaines informations sur le maillage de initial :

Longueur minimale d’une cellule hmin [m] 0.00223095 Longueur maximale d’une cellule hmax [m] 0.0180073 3 Elément de volume minimal Vmin [m ] 3.29708e−09 3 Elément de volume maximal Vmax [m ] 3.37201e−07 Volume total du maillage [m3] 0.00226389

Table 2 – Informations sur le maillage initial de référence

Figure 11 – Maillage initial surfacique de la conduite

Figure 12 – Maillage initial volumique de la conduite

CERFACS Rapport non confidentiel page 22 5 DESCRIPTION DU TRAVAIL RÉALISÉ

5.1.4 Mise en données sur AVBP

Une fois le maillage de référence construit, il s’agit d’effectuer la mise en données sur les codes de calculs afin de simuler l’écoulement de l’air dans la conduite. Chaque simulation étant réalisée à la fois sur AVBP et Code Saturne.

Reprenons la figure 6 qui résume les différents fichiers d’entrée pour la mise en place d’une simulation AVBP. Dans la partie "MESH", il faut inclure le fichier de maillage qui reprend les coordonnées de notre maillage décrit ci-dessus, la connectivité et la spécification des conditions aux limites. Pour cela, un fichier au format HDF5 (*.h5) est nécessaire. Le maillage généré par Centaur au format Hybrid (*.hyb) n’étant pas supporté par AVBP, une conversion de format est indispensable. L’outil HIP mis à disposition par AVBP permet alors de lire le maillage au format (*.hyb) et de le convertir en maillage au format (*.h5). Trois fichiers sont alors générés :

— le fichier de maillage au format (*.h5) ; — le fichier de visualisation de maillage au format (*.xmf) ; — le fichier au format (*.asciibound).

Ce dernier fichier est l’une des entrées les plus importantes d’AVBP : dans ce fichier, l’utilisateur définit la condition limite physique (BC) associée à chaque patch de limite (un mur "Wall", une entrée "Inlet", une sortie "Outlet", ...). Chaque patch de limite est caractérisé par un nom et est associé à un type de BC. Selon le type de BC utilisé, une liste de paramètres supplémentaires doit être spécifiée. Pour notre cas-test, voir listing 3 en annexe.

En entrée, on impose une condition aux limites qui permet à une perturbation de vitesse turbulente d’entrer dans la condition d’entrée principale. Cette condition limite caractéristique permet d’imposer les composantes de vitesse, la température statique et les fractions massiques. En sortie, on impose une condition aux limites qui permet d’imposer une pression statique. Enfin, on impose aux murs une condition adiabatique avec une vitesse nulle.

Dans la section "RUN", les deux fichiers keywords.in et run.params sont des fichiers au format ASCII qui communiquent entre eux pour paramétrer un calcul sur AVBP. En effet, le fichier run.params donne une description détaillée de tous les mots-clés répertoriés dans les différents blocs du fichier keywords.in. Le fichier keywords.in contient deux parties principales. La première partie permet de spécifier le nom du fichier d’entrée principal du calcul (run.params par défaut). La liste complète des mots-clés disponibles pour l’utilisateur figure dans la deuxième partie du fichier keywords.in. Chaque mot clé est caractérisé par son type (integer, double, array of integers, ...) et son statut (required, optional, conditional). Ces mots-clés sont situés dans différents blocs identifiés par les caractères spéciaux $ (début d’un bloc) et $ end_ (fin d’un bloc). Comme pour chaque mot-clé, un bloc peut être obligatoire ou facultatif (voir listing 4 en annexe). Le fichier run.params est le fichier d’entrée principal d’AVBP. Il permet de spécifier toutes les caractéristiques d’un calcul : Euler ou Naviers-Stokes, réactif ou non, avec quel schéma numérique, avec quel modèle LES, ... Toutes ces caractéristiques sont déterminées par plusieurs mots-clés, qui sont ensuite analysés par un parseur. Pour notre cas-test, voir listing 5 en annexe.

CERFACS Rapport non confidentiel page 23 5 DESCRIPTION DU TRAVAIL RÉALISÉ

Dans ce fichier, on distingue trois blocs importants :

— le bloc $RUN-CONTROL qui contrôle les principales caractéristiques du calcul. Il précise les équations résolues (Euler ou Navier-Stokes, réactives ou non, gazeuses ou gazeuses et liquides), avec quelles méthodes numériques et quels modèles ; — le bloc $INPUT-CONTROL qui définit les chemins vers les principaux fichiers d’entrée né- cessaires au calcul : maillage, solution initiale, fichier asciibound, ... ; — le bloc $OUTPUT-CONTROL qui permet de paramétrer toutes les sorties du calcul : fichiers de solution instantanés ou moyens, fichiers temporels, informations sur le calcul, nombre d’itérations qui doivent être effectuées, taux de stockage de la solution ...

L’objet de cette simulation étant de simuler l’écoulement de l’air dans la conduite, on spécifie dans le bloc $RUN-CONTROL que l’écoulement n’est pas réactif et que c’est un gaz parfait. Etant donné que l’on cherche à modéliser le mouvement de l’air qui est un fluide newtonien continu à une seule phase et décrit par des équations de Navier-Stokes), AVBP implémente un solveur de type Navier- Stokes permettant la résolution numérique de ces équations aux dérivées partielles. La Méthode des éléments finis (MEF), combinée à ce solveur permet de représenter analytiquement le comportement dynamique de l’air à l’intérieur de la conduite, d’où le choix d’un schéma de diffusion à éléments finis 2∆. Par ailleurs, afin de simuler l’écoulement turbulent de l’air à l’entrée de la conduite, un mo- dèle LES de type Smagorinsky permet de calculer l’écoulement turbulent en capturant les grandes échelles pour un coût raisonnable. Le milieu aux petites échelles étant raisonnablement supposé isotrope peut être décrit par une méthode simple. Enfin, le schéma de convection Lax-Wendroff de second ordre en temps et en espace de type volumes finis est généralement utilisé pour commencer un calcul et obtenir rapidement une première «estimation» de la solution. Le nombre CFL et Fou- rier sont utilisés pour calculer le pas de temps convectif et diffusif respectivement. Une fois ce fichier paramétré, il s’agit de générer le fichier solution initiale de notre calcul à partir duquel la simulation va être lancée. Ce fichier au format HDF5 doit être placé dans le répér- toire "INIT" et généré par un outil mis à disposition par AVBP "makesolution", en spécifiant une pression, une température, une vitesse et fraction massique constantes dans un fichier nommé "makesolution.choices" (voir listing 6 en annexe).

Figure 13 – Vue interne de la conduite après génération de la solution initiale

CERFACS Rapport non confidentiel page 24 5 DESCRIPTION DU TRAVAIL RÉALISÉ

Le dernier répértoire "SOLUTBOUND" contient les valeurs cibles qui devraient être imposées sur chaque patch de limite définit dans le fichier "mesh.asciiBound". C’est un fichier cible de conditions aux limites (solutBound) au format HDF5 généré par les moulinettes AVBP telles que "makesolutbound" ou "gensolutbound" avec soit des paramètres constants (en fonction du fichier asciiBound), soit des profils analytiques (genprofile) (voir listing 7 en annexe).

Dans ce fichier, on indique les conditions aux limites à l’instant initial. Le type de conditions aux limites ayant été défini dans le fichier ASCII du répértoire "MESH" (voir listing 3 ), on impose sur chaque frontière du domaine de calcul les propriétés du fluide entrant. Ce cas-test étant isotherme, on ne résout pas d’équation de la chaleur et donc la température est main- tenue constante à la valeur de référence définie 300K. La résolution des équations se fait de manière approchée, en plusieurs étapes, et il importe que l’on se rapproche à chaque étape de la solution (convergence, calcul stable). Les conditions aux limites donnant le calcul le plus stable sont :

— une entrée sur laquelle on impose une vitesse ou un débit ; — une sortie sur laquelle on impose une pression.

En entrée, le flux d’air à sens unique est maintenu avec un débit de 0.017m3.s−1. En sortie, on impose une pression statique moyenne de 101325P a.

5.1.5 Intérêts de la parallélisation et lancement de la simulation sur AVBP

L’émérgence de l’approche LES pour la résolution et la prédiction d’écoulements turbulents in- stables a fait d’elle une technique très exigeante au niveau de la précision des méthodes numériques utilisés et du calcul scientifique intensif. En effet, la précision de la description de l’écoulement turbulent de l’air dans la conduite est un phénomène physique étroitement lié à la taille du maillage utilisé. Le but ultime de ce travail étant d’adapter le maillage initial de référence afin de décrire au mieux le comportement turbulent de cet écoulement, le calcul parallèle se veut indispensable, avec tous les besoins en stockage et visualisation qui en découlent, le volume de données d’une seule simulation qui représente plusieurs gigaoctets à stocker, transférer et post-traiter, sans oublier le gain important en temps de calcul.

Dans le cas de codes éléments finis comme AVBP, le calcul d’une solution approchée en un point du maillage nécessite de connaître l’information des points voisins. Le partitionnement du domaine en sous-domaines permet alors d’effectuer des calculs en parallèle. Cette décomposition est faite par rapport aux tétraèdres du maillage. Pour les points n’appartenant qu’à un seul sous-domaine, le calcul s’effectue de manière indépendante. Les points sur les interfaces entre deux ou plusieurs sous-domaines quant à eux nécessitent de connaître les informations des points des autres sous- domaines pour faire les calculs. Une communication point à point est alors établie, d’où le recours au standard MPI par AVBP pour le traitement des communications entre les différents points des différents sous-domaines, et donc des différents processeurs alloués à cet effet. Cette parallélisation passe par une décomposition du maillage de façon à ce que chaque processus calcul la solution sur un morceau du domaine qui lui est attribué, tout en prenant garde à répartir la taille des sous- domaines sur chaque processus de manière équitable, d’où l’utilisation par AVBP de la bibliothèque de partitionnement de maillage de types éléments finis non structurés ParMetis (Parallel Graph Partitioning and Fill-reducing Matrix Ordering).

CERFACS Rapport non confidentiel page 25 5 DESCRIPTION DU TRAVAIL RÉALISÉ

La table 3 donne les caractéristiques du partitionnement du maillage initial :

Après partitionnement

Nombre de noeuds : 16 382 Noeuds supplémentaires en raison du partitionnement : 7843

Qualité du partitionnement

Nombre maximal de voisins 22.00 Nombre moyen de voisins 10.63 Nombre maximal de nœuds d’échange 47.00 Nombre moyen de nœuds d’échange 35.42

Table 3 – Caractéristiques du partitionnement

Une fois la mise en donnée décrite précedemment terminée, la simulation AVBP peut être lancée sur un calculateur par le biais d’une carte batch paramétrée comme décrite dans la section 3.3.4 :

#!/bin/bash

# Nom queue de soumission #BATCH −−partition=prod

# Nom du job soumis #SBATCH −J pipe_turb

# Temps limite du job (5 minutes) #SBATCH −−time=12:00:00

# groupe sorties standard et erreurs #SBATCH −−output=out.%j #SBATCH −−error=err.%j

# Nombre de processus pour ce job #SBATCH −−nodes=15 #SBATCH −−ntasks −per−node=24

date cd $SLURM_SUBMIT_DIR ! Soumission du job SLURM

module load avbp mpirun −np $SLURM_NTASKS /AVBP_INSTALL_DIRECTORY

Listing 1 – Carte batch de soumission d’une simulation AVBP sur le calculateur NEMO

CERFACS Rapport non confidentiel page 26 5 DESCRIPTION DU TRAVAIL RÉALISÉ

La simulation débute à partir du fichier de solution initiale immobile. 300000 itérations de calcul sont effectuées avec un taux de stockage élevé des fichiers de solution et des fichiers temporels. Le calcul est exécuté sur 360 coeurs (ou processus MPI) jusqu’à convergence. −09 3 Pour ce maillage, l’élément de volume minimal Vmin = 3.29708e m . Ce volume minimal contrôle le pas de temps de la simulation. Une évaluation de ce pas de temps ∆t peut être faite en calculant l’expression : √ CF L. 3 V ∆t = min (12) c où CFL est un nombre inférieur à 1 défini dans le fichier "run.params" et c et la vitesse du son sous les conditions physiques de la simulation. Avec CFL = 0.7 et c = 340m/s, ∆t = 3.0643e−6. Les pas de temps typiques sur AVBP pour les simulations LES turbulent sont compris entre 10−5 et 10−7. Ici, on simule dans 0.92s, qui représente le temps physique de simulation.

5.1.6 Analyse et post-traitement des calculs

Une fois la simulation terminée, AVBP génère plusieurs fichiers de sorties regroupés dans des répértoires crées à cet effet dans le fichier d’entrées principales d’AVBP du répértoire principal de calcul "RUN" (voir listing 5). Ce sont des fichiers de post-traitement qui permettent d’analyser tous les aspects de la simulation (fichiers solutions instantanées, fichiers solutions moyennes, fichiers temporels,...), et qui sont traités par les outils de post-traitement tels que les logiciels de visualisation (ParaView) et d’analyse d’évolutions temporels (XMGRACE).

Les graphes de la figure 14 tracent l’évolution des valeurs moyennes, minimales et maximales de la densité, la vitesse, la pression et la température au cours du temps :

Figure 14 – Evolution temporelle des variables de Navier Stokes après la première simulation

CERFACS Rapport non confidentiel page 27 5 DESCRIPTION DU TRAVAIL RÉALISÉ

L’énérgie cinétique Ekinetic dégagée par le système du fait de l’écoulement de l’air croît fortement au cours des premières itérations du calcul, puis se stabilise à 70J au bout de quelques itérations. La pression, la température, la densité et la viscosité moyenne de l’air varient à leur tour légérement puis stagnent au bout de quelques itérations. Les propriétés physiques du fluide (Densité et viscosité dynamique) ainsi que les valeurs de références de vitesses, de pression et de température imposées ne présentent plus de fluctuations. Il s’agit donc d’un état stationnaire, d’un régime établi longtemps après le lancement de la simulation.

Les graphes de la figure 15 donnent l’évolution du flux d’air à travers les frontières du domaine. Les graphes 1 à 5 présentent le flux total sur chaque zone limite. C’est la somme des différentes contributions. Le graphe 6 donne un aperçu de la qualité de la balance. Il compare la quantité dérivée à la somme des flux et des termes volumétriques. Enfin, le graphe 7 donne l’erreur absolue entre ces jeux de données.

Figure 15 – Evolution de la masse totale gazeuse à travers les frontières du domaine

L’ensemble des graphes ci-dessus montrent que le flux a atteint un état de convergence sur le maillage grossier initial. Les fichiers solutions générés à la suite du calcul peuvent être visualisés par l’outil de visualisation et de post-traitement ParaView. Ainsi, chaque solution générée peut être analysée, aussi bien du point de vue de la pression, de la vitesse d’écoulement ou encore de la perte d’énergie cinétique.

La figure 16 montre le champs de pression à l’intérieur de la conduite et sa variation au cours de la simulation. On constate que la pression imposée en sortie de la conduite est maintenue au cours de la simulation. Celle-ci étant légérement plus importante à l’entrée de la conduite du fait de l’écoulement de l’air à débit constant. L’air s’écoulant au travers de l’orifice de restriction voit sa pression chuter d’une valeur proportionnelle au carré du débit.

CERFACS Rapport non confidentiel page 28 5 DESCRIPTION DU TRAVAIL RÉALISÉ

Figure 16 – Visualisation du champ de pression à différents instants de la simulation

Sur la figure 17, l’air est progressivement accéléré au voisinage de la restriction. Sa vitesse atteint son maximum en aval de la restriction, puis revient progressivement à sa valeur normale plus loin en aval. Des zones de turbulence avec formation de tourbillons (voir figure 18) se produisent en amont et surtout en aval de la restriction.

Figure 17 – Visualisation du champ de vitesse à différents instants de la simulation

CERFACS Rapport non confidentiel page 29 5 DESCRIPTION DU TRAVAIL RÉALISÉ

Figure 18 – Création de zones de turbulences en aval de la restriction de l’orifice[2]

Parallèlement à l’augmentation de vitesse, la pression diminue localement, puis augmente pro- gressivement lorsque la vitesse retrouve sa valeur normale. Les frottements occasionnés par cette accélération génèrent une perte de pression permanente, la perte de charge, de valeur nettement plus faible que la variation de pression observée au voisinage de la restriction. Ainsi, après avoir établit le profile de pression en amont et en aval de la restriction, on remarque, comme le montre le graphe de la figure 20, une perte de pression brutale juste après la restriction de l’orifice. La relation (11) établie à la section 5.1.2 permet alors de calculer le coefficient de perte de pression à l’aide de la variation de pression ∆P dûe à l’accélération au voisinage de la restriction. Ce qui aboutit à une valeur de ξcoarse = 20.1, valeur nettement supérieure à celle qui est dans l’article [Ben & al.] [7]

(ξexp = 8.79). Ceci s’explique par le maillage plutôt dérafiné du calcul, d’où le besoin d’adapter le maillage pour améliorer le résultat.

Figure 19 – Profile de pression à l’intérieur de la conduite

CERFACS Rapport non confidentiel page 30 5 DESCRIPTION DU TRAVAIL RÉALISÉ

5.1.7 Métrique et adaptation sous HIP

Afin de simuler de manière juste l’écoulement de l’air en amont et en aval de la restriction de l’orifice de la conduite, une discrétisation plus raffinée du domaine doit être effectuée. Les détails de l’écoulement de l’air en aval de l’orifice impliquent donc un raffinement local du maillage tout en respectant la géométrie de la conduite. HIP permet de faire cette adaptation de maillage avec la librairie MMG3D. Le principe consiste à construire une métrique basée sur une solution moyenne du calcul précédent, en l’occurence dans notre cas la dernière solution générée par le calcul, et le maillage initial de référence. Pour cela, un script python implémenté sur AVBP permet de calculer une métrique à partir d’un champ moyen de solution et d’un maillage initial au format HDF5 et de générer cette métrique au format HDF5. Les zones en bleu de la métrique représentée dans la figure 20 montrent les différentes mailles qui vont être localement raffinées. Le listing 8 en annexe reprend les étapes de calcul de métrique et d’adaptation de maillage sous HIP.

Figure 20 – Métrique d’adaptation du maillage initial

Figure 21 – Comparaison entre maillage initial grossier et maillage après première adaptation

CERFACS Rapport non confidentiel page 31 5 DESCRIPTION DU TRAVAIL RÉALISÉ

Une fois cette métrique calculée, l’adaptation de maillage peut être faite et ainsi obtenir un maillage raffiné sur les zones d’intérêts. La figure 21 permet de comparer le maillage initial à 36106 mailles tétraédriques et 8539 noeuds au maillage obtenu après première adaptation à 207201 mailles tétra- édriques et 45425 noeuds.

5.1.8 Simulation après premier et deuxième niveau d’adaptation de maillage

Après avoir effectué un raffinement adaptatif sur le maillage initial, deux nouvelles simulations sont réalisées à partir de solutions initiales avancées dans le temps, l’une avec le nouveau maillage à 207201 mailles tétraédriques et 45425 noeuds (AD 1), et l’autre après adaptation du maillage AD 1, pour obtenir le maillage AD 2. La mise en données de la première simulation est maintenue pour ces deux dernières simulations. En effet, les mêmes conditions aux limites sont définies avec les mêmes valeurs cibles aux frontières du domaine, les principales caractéristiques du calcul définies dans le fichier de paramétrage restent les mêmes (même solveur, même méthode numérique de résolution, même modèle de turbulence). Le schéma de convection est modifié en schéma Taylor-Galerkin à deux étapes TTGC de troisième ordre en temps et en espace, puisque le schéma de Lax-Wendroff, généralement utilisé pour commencer un calcul et obtenir rapidement une première «estimation» de la solution, reste hautement dissipatif et dispersif. Cependant, il est important de noter que le schéma TTGC est environ 2,5 fois plus chers que le schéma LW en termes de temps CPU, ce qui explique qu’on ne l’utilise pas par défaut. Enfin, les solutions initiales utilisées pour ces deux simulations sont les dernières solutions instantanées obtenues respectivement à la première puis à la deuxième simulation, interpolées sur les nouveaux maillages adaptés, et ce, afin que le flux atteigne un état de convergence plus rapidement.

Figure 22 – Métrique d’adaptation du maillage AD 1

La figure ci-dessus montre la nouvelle métrique calculée à partir de la dernière solution instantanée de la deuxième simulation AD 1. En bleu, les zones du maillage AD 1 qui vont être localement raffinées pour obtenir le nouveau maillage adapté AD 2 à la simulation suivante.

CERFACS Rapport non confidentiel page 32 5 DESCRIPTION DU TRAVAIL RÉALISÉ

Figure 23 – Comparaison entre le maillage initial grossier et le maillage AD 2

La figure 23 permet de comparer les trois maillages (Coarse, AD 1, AD 2). Le maillage AD 2 est raffiné sur les zones où il y a des gradients en amont de la restriction d’orifice, puis en aval de chaque côté, et ce afin de capter le caractère instationnaire de l’écoulement de l’air. Ce maillage ne pouvant pas être fait à la main car les zones raffinées sont des zones qui n’ont pas une forme géométrique prédéfinie, d’où le recours à l’adaptation de maillage.

Figure 24 – Evolution temporelle des variables de Navier Stokes après la simulation AD 1

CERFACS Rapport non confidentiel page 33 5 DESCRIPTION DU TRAVAIL RÉALISÉ

Figure 25 – Evolution temporelle des variables de Navier Stokes après la simulation AD 2

Dans les 2 simulations, la pression, la température, la densité et la viscosité moyenne de l’air varient légérement puis stagnent au bout de quelques itérations. L’énérgie cinétique croît fortement puis stagne au bout de quelques itérations au cours de la simulation AD 1, tandis qu’elle varie pendant plusieurs itérations de calcul avant de stagner au cours de la simulation AD 2. Là encore, le fluide est dans un état stationnaire. Ce comportement initial s’explique par le temps nécessaire pour que les nouvelles échelles résolues soient convergées.

(a) Champ de pression simulation AD 1 (b) Champ de pression simulation AD 2

(c) Champ de vitesse simulation AD 1 (d) Champ de vitesse simulation AD 2

Figure 26 – Visualisation des champs de pression et de vitesse à différents instants des 2 simulations

CERFACS Rapport non confidentiel page 34 5 DESCRIPTION DU TRAVAIL RÉALISÉ

Le coefficient de perte de pression calculé à partir de la variation de pression ∆P dûe à l’accélération au voisinage de la restriction de l’orifice sur les deux simulations est respectivement égal à ξAD1 =

8.69 et ξAD2 = 9.36 (voir figure 27a et 27b).

(a) Simulation AD 1 (b) Simulation AD 2

Figure 27 – Profile de pression de la dernière solution moyenne des 2 simulations

Dans ce cas test, le coefficient de perte de pression cible de l’expérience de l’article [Ben & al.] [7] est obtenu en deux étapes d’adaptation et trois simulations LES. La table 4 résume les paramètres et le coût. A partir du maillage grossier initial de la figure 11 et 12, un premier maillage adapté AD 1 est obtenu. Cette première étape de raffinement conduit à une sous-estimation de la perte de pression par rapport à l’expérience de seulement 0.011% alors qu’elle était surestimée à plus de 128% sur le maillage grossier initial. Enfin, une discrétisation acceptable est obtenue dans la deuxième simulation et le maillage AD 2. L’erreur sur les pertes prévues est inférieure à 0.1%. L’adaptation AD 2 sert en fait à vérifier la convergence du maillage.

Paramètres de calcul Maillage grossier Maillage AD 1 Maillage AD 2 Pas de temps ( ×10−6s) 2.378 1.17 0.506 Nombre de cellules 36106 207201 1379077 Nombre de CPU cores 360 360 360 Nombre d’heures CPU 0.16 0.44 2.34 Nombre d’itérations 300000 300000 400000 Volume plus petite cellule ( ×10−8m3) 0.329 0.0469 0.00310 Coefficient de perte de pression 20.1 8.69 9.36

Table 4 – Récapitulatif des paramètres de calcul de l’adaptation de maillage LES sur la plaque à orifice

CERFACS Rapport non confidentiel page 35 5 DESCRIPTION DU TRAVAIL RÉALISÉ

5.2 LES sur Code Saturne en proche parois d’un écoulement non réactif turbulent

Dans cette partie, on garde la configuration de la plaque à orifice circulaire à bords carrés à Reynolds Re = 25000 sur laquelle on simule l’écoulement d’air à débit volumique constant sur Code Saturne. Le but étant encore une fois de mesurer en LES la perte de pression à la restriction de l’orifice et d’évaluer le coefficient de perte de pression.

5.2.1 Mise en données sur Code Saturne

Comme décrit dans la section 4.2.1, Code Saturne offre la possibilité de lancer des simulations à partir d’une interface graphique qui fait appel à plusieurs librairies et logiciels tiers. Afin d’exécuter un calcul sur Code Saturne, il est primordial de préparer les répertoires de calcul. Dans notre cas, le répertoire d’étude STUDY contenant un seul répertoire de calcul case_study sera créé en tapant la commande suivante : code_saturne create −s STUDY −c case_study

L’architecture standard pour d’une simulation sur Code Saturne est la suivante : Un répertoire d’étude facultatif contenant : — un répertoire MESH contenant les maillages nécessaires à l’étude ; — un répertoire POST pour les scripts de post-traitement potentiels (non utilisés directement par le code) ; — un ou plusieurs répertoires de calcul ;

Chaque répertoire de calcul contient : — un répertoire SRC pour les sous-programmes utilisateur potentiels nécessaires au calcul ; — un répertoire DATA pour les données de calcul (fichier de données de l’interface, profils d’entrée, données thermochimiques, ...), le script utilisateur et le fichier XML ; — un répertoire SCRIPTS pour le script de lancement de calcul ; — un répertoire RESU pour les résultats.

Les fichiers de maillage doivent être copiés dans le répertoire MESH, le fichier de données de calcul case_study.xml lu par l’interface graphique doit être copié dans le répertoire case_study/DATA. Une fois ces étapes terminées, l’interface graphique avec le fichier de calcul chargé apparaît en tapant la ligne de commande suivante :

./SaturneGUI case_study.xml

Une fenêtre similaire à la figure 28 apparaît, permettant ainsi de commencer la mise en données du calcul.

CERFACS Rapport non confidentiel page 36 5 DESCRIPTION DU TRAVAIL RÉALISÉ

Figure 28 – Interface graphique de paramétrage de calcul sur Code Saturne

Les onglets à gauche de l’interface graphique permettent de paramétrer l’environnement de calcul, c’est à dire le domaine de calcul, les modèles thermophysiques (LES, k-epsylon, ...) , les propriétés physiques du fluide, les conditions initiales de vitesse, de pression et de température, les conditions aux limites du domaine de calcul, les paramètres numériques tels que le pas de temps, les solveurs et les schémas numériques de résolution d’EDP, les sorties de calculs et la gestion des calculs. La table 5 reprend tous les paramètres utilisés pour la "simulation 1" d’écoulement d’air dans la configuration de la plaque à orifices sur Code Saturne.

Paramètres Valeurs Température de référence (T [K]) 300 Vitesse initiale de référence (U0[m/s]) 8.54 Pression totale de référence (P0[P a]) 101325 Densité de l’air (ρ[Kg/m3]) 1.177 Viscosité de l’air (µ[P a/s]) 1.85e−5 Chaleur spécifique (Cp[J/Kg/K]) 1000 Modèle de turbulence LES (Smagorinsky) Solveur d’écoulement Instable Algorithme de résolution vitesse / pression (algo SIMPLEC) Schéma de convection ordre 2 Pas de temps constant à 10−5 Nombre d’itérations 100000

Table 5 – Récapitulatif du paramétrage de la simulation 1 sur Code Saturne

CERFACS Rapport non confidentiel page 37 5 DESCRIPTION DU TRAVAIL RÉALISÉ

5.2.2 Maillage initial et conditions aux limites

Code Saturne a la particularité de pouvoir lire plusieurs formats de maillages, notamment le format CGNS qui nous permet de faire le lien entre le maillage au format HDF5 généré pour les simulations sur AVBP et le format MED que l’on va adopter pour cette simulation sur Code Saturne. L’idée consiste en fait à lire le maillage au format HDF5 (on prend le maillage à 45425 noeuds et 207201 tétraèdres) et à le convertir au format CGNS sous HIP. On utilise ensuite le logiciel open source SALOME qui fournit une plateforme générique permettant entre autres de lire des modèles de maillage CAO (CGNS, UNV, DAT, STL) , de modifier un maillage, de vérifier la qualité du maillage, et d’importer / exporter le maillage (MED, UNV, DAT, STL). C’est cette dernière particularité qui nous intéresse puisqu’on peut exporter le maillage CGNS généré par HIP et lu sur SALOME en un maillage MED.

Figure 29 – Maillage initial pour la simulation 1 sur Code Saturne

Là encore, le domaine est délimité par 5 frontières. Les conditions aux limites sont définies sur l’interface graphique dans l’onglet "Boundary conditions" comme suit :

— l’entrée (Inlet) sur laquelle on impose la vitesse de référence ; — la sortie (Outlet) sur laquelle on impose la pression de référence ; — des murs lisses (Wall 1 et 2) ; — l’orifice considérée comme un mur lisse (Smooth wall).

Une fois la mise en donnée décrite précedemment terminée, la simulation sur Code Saturne peut être lancée sur un calculateur par la commande de lancement suivante : sbatch nom_job.slurm

CERFACS Rapport non confidentiel page 38 5 DESCRIPTION DU TRAVAIL RÉALISÉ

5.2.3 Analyse et post-traitement des calculs

(a) Champ de vitesse simulation 1

(b) Champ de pression simulation 1

Figure 30 – Champs de vitesse et de pression de la simulation 1

Le champ de vitesse représenté sur la figure 30a montre que sur les premières itérations de la simulation, l’air est progressivement accéléré au voisinage de la restriction. Sa vitesse atteint son maximum en aval de la restriction, puis revient progressivement à sa valeur normale plus loin en aval. La pression imposée en sortie de la conduite est maintenue, sauf en aval de la restriction où elle chute d’une valeur proportionnelle au carré du débit. Celle-ci étant plus importante à l’entrée de la conduite du fait de l’écoulement de l’air à débit constant (voir figure 30b). Cependant, au bout de quelques itérations, les champs de vitesse que de pression présentent un phénomène de perturbation, visible sur les figure 30a et 30b à une distance de 6D en aval de la restriction de l’orifice, distance à laquelle la pression doit être relevée pour calculer le coefficient de perte de pression. La figure 31, qui reprend les champs de vitesse et de pression à l’instant t = 0.023s avec représentation des éléments de volumes tétraédriques du maillage, permet de localiser les mailles où la perturbation

CERFACS Rapport non confidentiel page 39 5 DESCRIPTION DU TRAVAIL RÉALISÉ a lieu. Par ailleurs, le graphe de la figure 32 confirme l’hypothèse de la perturbation de pression due au maillage utilisé, puisqu’un pic de chute de pression est relevé à la distance 6D en aval de la restriction de l’orifice.

(a) Champ de vitesse simulation 1

(b) Champ de pression simulation 1

Figure 31 – Visualisation en coupe longitudinale de la perturbation sur le maillage initial lors de la simulation 1

Figure 32 – Profil de pression de la dernière solution moyenne de la simulation 1

CERFACS Rapport non confidentiel page 40 5 DESCRIPTION DU TRAVAIL RÉALISÉ

Pour pallier à ce problème, une amélioration de la qualité du maillage initial a été réalisée afin de corriger les mailles défectueuses à 6D en aval de la restriction de l’orifice. L’outil HIP permet d’améliorer la qualité d’un maillage à l’aide de la librairie de remaillage des maillages tétraédriques MMG3D en tapant la commande suivante : mmg3d isofactor −f 1 . 0

En améliorant la qualité du maillage initial, on réduit le nombre de mailles tétraédriques tout en augmentant le nombre de noeuds du maillage. On passe alors d’un maillage à 207201 mailles et 45425 noeuds à un maillage de meilleure qualité à 206730 mailles et 45441 noeuds, comme le montre la figure 33 Le cadre rouge sur le maillage du haut montre les mailles où la perturbation a été detectée, et celui du bas la correction de mailles apportée par amélioration de la qualité du maillage initial.

Figure 33 – Amélioration de la qualité du maillage initial

Une fois que le maillage est amélioré, une nouvelle simulation qu’on appelera "simulation 1’" est lancé avec le même paramétrage que la simulation précédente, mais avec le maillage amélioré. Les champs de vitesse et de pression ne présentent plus de perturbation au bout de quelques itérations de calcul, comme le montre la figure 34.

(a) Champ de vitesse simulation 1’ (b) Champ de pression simulation 1’

Figure 34 – Champs de vitesse et de pression de la simulation 1’

CERFACS Rapport non confidentiel page 41 5 DESCRIPTION DU TRAVAIL RÉALISÉ

Le coefficient de perte de pression calculé à partir de la variation de pression ∆P dûe à l’accélération au voisinage de la restriction de l’orifice pour cette simulation est évalué à ξ10 = 7.81.

Figure 35 – Profil de pression de la dernière solution moyenne de la simulation 1 après amélioration de la qualité du maillage

Le coefficient de perte de pression ainsi calculé est inférieur au coefficient cible de l’expérience de l’article [Ben & al.] [7]. Cela peut s’expliquer du fait que le maillage utilisé pour cette simulation sur Code Saturne n’est pas idéal dans le sens où il ne résout pas toutes les échelles.

Paramètres de calcul Maillage amélioré Pas de temps ( ×10−5s) 1.0 Nombre de cellules 206730 Nombre de CPU cores 60 Nombre d’heures CPU 5.22 Nombre d’itérations 100000 Volume plus petite cellule ( ×10−10m3) 2.3236 Coefficient de perte de pression 7.81

Table 6 – Récapitulatif des paramètres de calcul de la simulation LES sur la plaque à orifice sur Code Saturne

5.2.4 Limitations et perspectives

Les aspects liés à l’adaptation de maillage sur Code Saturne ne sont malheureusement pas traités par HIP, puisque les formats de maillages lus par Code Saturne ne sont pas reconnus par l’outil HIP. Dés lors que notre maillage initial pour la simulation sur Code Saturne est au format MED, HIP est incapable de faire appel à son module d’adaptation pour lire et adapter le maillage au format MED. Pour remédier à ce problème, l’idée serait de reprendre le code source de l’outil HIP et d’apporter les modifications nécessaires pour qu’il soit en mesure de lire le maillage au format MED, de calculer la nouvelle métrique à partir de ce maillage et générer un nouveau maillage adapté au même format. Faute de temps, cette partie ne sera pas traitée durant ce stage.

CERFACS Rapport non confidentiel page 42 5 DESCRIPTION DU TRAVAIL RÉALISÉ

5.3 Simulation d’un écoulement 3D non réactif

Cette dernière partie s’intéresse à l’application des acquis en Code AVBP à un cas réel, celui de la configuration"Labscale" du projet européen PRECCINSTA. C’est une configuration complexe composée d’un tourbilloneur ou "swirler" permettant l’injection du fluide et d’une chambre de com- bustion. Elle a servi à valider expérimentalement les outils numériques tels que le Code AVBP pour la prédiction des instabilités de combustion dans les turbines à gaz, et ce grâce à leur implémen- tation de la LES réactive et compressible qui permet de résoudre simultanément et de façon très précise l’écoulement turbulent, la flamme et l’acoustique dans ce genre de géométries.

Figure 36 – Coupe longitudinale de la configuration PRECCINSTA

5.3.1 Maillage initial et conditions aux limites

La configuration du PRECCINSTA [4] ne contient que 3 zones limites. Le patch WALL regroupe en un seul patch toutes les surfaces définissant la géométrie du graveur. La géométrie complète est présentée à la figure 36, le burner est encapsulé dans une boîte qui représente l’atmosphère à éviter pour spécifier une condition limite à la sortie du burner. Les faces de la boîte sont également rassemblées dans le patch WALL, sauf pour le côté droit qui est la sortie et qui est dans le patch OUTLET. Sur le patch d’entrée INLET, les valeurs cibles des vitesses, de la température et des fractions massiques des espèces sont assouplies et sur la surface de sortie, la pression cible est relâchée. Tous les murs rassemblés dans le patch WALL sont définis comme des murs imperméables adiabatiques avec une vitesse tangentielle nulle au niveau du mur. Quant au maillage initial de la figure 37 ci-dessous, la table 7 reprend les différentes informations relatives au maillage :

Nombre de mailles tétraédriques 13698714 Nombre de noeuds 2349963 Longueur minimale d’une cellule hmin [m] 0.000114158 Longueur maximale d’une cellule hmax [m] 0.00274131 3 −13 Elément de volume minimal Vmin [m ] 5.13425e 3 −09 Elément de volume maximal Vmax [m ] 1.24e Volume total du maillage [m3] 0.00132274

Table 7 – Informations sur le maillage initial de la configuration PRECCINSTA

CERFACS Rapport non confidentiel page 43 5 DESCRIPTION DU TRAVAIL RÉALISÉ

(a) Coupe longitudinale maillage volumique (1)

(b) Coupe longitudinale maillage volumique (2)

(c) maillage surfacique

Figure 37 – Maillage initial de la configuration PRECCINSTA

CERFACS Rapport non confidentiel page 44 5 DESCRIPTION DU TRAVAIL RÉALISÉ

5.3.2 Mise en données sur AVBP

−13 3 Pour ce maillage, le plus petit élément de volume est Vmin = 5.13425e m . Ce volume minimal contrôle le pas de temps du calcul à travers la condition Courant. Une évaluation du pas de temps ∆t peut être faite en calculant l’expression mathématique (12). Avec CFL = 0.7 et c = 340m/s, ∆t = 0.64e−6s. Les conditions aux limites expérimentales pour cette simulation sont les conditions ambiantes : pression atmosphérique à 1bar et température de la pièce à 300K. Il n’y a donc ni préchauffage ni mise en pression. Le débit d’air d’entrée est d’environ 12g/s. Des calculs préliminaires ont montré qu’un profil de vitesse d’admission à plat de 26, 15m/s sur la zone de la limite d’entrée de la zone de 4, 9e−4m2 conduit à ce débit. Ces valeurs cibles sur les zones limites sont données à AVBP via le fichier d’entrée "*.solutBound.h5" pour chaque noeud appartenant à un zone limite. La table 8 reprend les conditions aux limites imposées pour ce calcul :

Entrée "INLET"

Vitesse axiale : 26.15 m/s Température : 300 K Fraction massique de l’azote : 1.0

Sortie "OUTLET"

Pression 101325 Pa

Table 8 – Valeurs cibles sur les zones limites d’entrée et de sortie du calcul PRECCINSTA

Une fois les fichiers d’entrée adaptés au cas, la solution initiale immobile est créée avec de l’azote à la pression ambiante et à la température de 300K.

5.3.3 Simulations sur le maillage initial

Deux calculs AVBP sur la même configuration PRECCINSTA sont réalisés. Le premier permet d’initialiser la simulation à l’aide du schéma numérique de Lax-Wendroff. L’exécution commence à partir d’un fichier de solution immobile. Peu d’itérations sont effectuées. Ce calcul peut être effectué sur quelques processeurs. Les fichiers de solution générés à la suite de la simulation sont enregistrés toutes les 100 itérations. Dans le second cas, le calcul est initialisé avec une solution avancée dans le temps jusqu’à la convergence, correspondant à 60ms de temps physique. Ce calcul quant à lui est exécuté sur un nombre assez important de processeurs et pour une longue durée (quelques heures). Les fichiers de solution générés sont enregistrés toutes les 0.5ms. En ce qui concerne les modèles de calculs utilisés lors de ces deux simuilations, les équations de Navier-Stokes compressibles sont résolues en utilisant un modèle de viscosité sous-grille de WALE. Le capteur de viscosité artificielle est un capteur Colin. Le calcul est instationnaire, ce qui signifie que le pas de temps global est évalué à chaque itération.

CERFACS Rapport non confidentiel page 45 5 DESCRIPTION DU TRAVAIL RÉALISÉ

(a) champ de pression itération 0 (b) champ de pression itération 9

(c) champ de vitesse itération 0 (d) champ de vitesse itération 9

Figure 38 – Visualisation champs de pression et de vitesse à différents instants simulation 1

(a) champ de pression itération 0 (b) champ de pression itération 11

(c) champ de vitesse itération 0 (d) champ de vitesse itération 11

Figure 39 – Visualisation champs de pression et de vitesse à différents instants simulation 2

Sur les quelques itérations effectuées lors de la simulation 1, les champs de vitesse et de pression représentés sur figure 38 montrent que le fluide ne s’est pas encore propagé le long du domaine de la configuration, puisqu’il se trouve encore dans la partie d’injection. En avançant la simulation dans le temps jusqu’à convergence, un temps physique assez large est simulé, permettant ainsi au fluide de se propager sur tout le domaine, comme le montrent les figure 39b et 39d.

CERFACS Rapport non confidentiel page 46 5 DESCRIPTION DU TRAVAIL RÉALISÉ

Paramètres de calcul Simulation 2 Pas de temps ( ×10−6s) 0.15421 Nombre de cellules 13698714 Nombre de CPU cores 48 Nombre d’heures CPU 3.03 Temps physique de la simulation ( ×10−2s) 0.4 Volume plus petite cellule ( ×10−13m3) 5.13425

Table 9 – Récapitulatif des caractéristiques de la simulation 2 LES sur le PRECCINSTA

5.3.4 Post-traitement temporel

Le suivi des variables de Navier-Stokes montre qu’au cours de l’initialisation, comme indiqué sur les graphes de la figure 40, toutes les valeurs maximales des variables augmentent. La pression moyenne, la température et la masse volumique restent constantes car c’est la valeur initiale dans l’atmosphère.

Figure 40 – Evolution temporelle des variables de Navier Stokes après la simulation 1

Les graphes de la figure 41 montrent l’évolution des variables de Navier-Stokes sur la simulation complète, le calcul n’ayant toujours pas atteint un état de convergence. Certaines quantites, comme l’énergie cinétique, le flux de masse, oscillent à cause des mouvements de grands tourbillons. Du fait que cette partie du PRECCINSTA a été traitée à la fin du stage et par manque de temps, les calculs menés n’ont pas pu converger.

CERFACS Rapport non confidentiel page 47 5 DESCRIPTION DU TRAVAIL RÉALISÉ

Figure 41 – Evolution temporelle des variables de Navier Stokes sur la simulation complète

CERFACS Rapport non confidentiel page 48 6 CONCLUSION GÉNÉRALE

6 Conclusion générale

La réalisation de ce travail d’adaptation de maillage en mécanique des fluides et sa mise en pratique dans un contexte industriel par l’intermédiaire d’une collaboration avec EDF s’est étalée sur une période de six mois au sein de l’équipe CFD du CERFACS de Toulouse.

Au cours de cette période, j’ai pu intégrer un milieu de recherche et développement au vrai sens du terme. Cette intégration m’a été très bénéfique, dans la mesure où elle m’a permis d’acquérir une expérience tant sur le plan théorique que sur le plan pratique, suite à l’acquisition et la maîtrise de codes de calculs parallèles CFD pour la simulation numérique de fluides instationnaires et turbulent en LES et l’adaptation de maillages non structurés. Ces codes de calculs se trouvent être essentiels aussi bien dans la recherche que dans le secteur industriel de plus en plus sensible à la qualité de la simulation numérique.

Après avoir été formé aux différents outils et codes de calculs nécessaires à l’élaboration de ce travail, j’ai été amené à créer des configurations géométriques, à faire du maillage non structuré sur ces configurations, à paramétrer des simulations sur les codes de calcul et à faire de l’adaptation de maillages, tout en rendant compte chaque quinzaine de mon avancement et des travaux réalisés à l’équipe MFEE de l’agence EDF R&D.

Le CERFACS étant un centre de recherche avec une très grande notoriété au sein de la commu- nauté scientifique européene et internationale, j’ai pu assister à des séminaires et des conférences scientifiques assurées par des chercheurs de renommée. De plus, l’autonomie d’action offerte par le CERFACS est importante. Tout le monde fonctionne avec peu de niveaux hiérarchiques, y compris les stagiaires. Ce qui nous permet, bien sûr, d’être très réactifs. Mais cela autorise aussi un vé- ritable échange avec les doctorants et les chercheurs qui ont tous un grand sens du partage du savoir.

Malgré les quelques contretemps liés à des problèmes d’installation que j’ai pu rencontrer durant cette période, je reste convaincu que la réalisation de ce travail est une expérience très fructueuse pour ma formation pratique et académique. Les connaissances théoriques et pratiques que j’ai pu acquérir tout au long de ma formation de Master (CHiPS) ont été parfaitement consolidées lors de ce stage. Par la même occasion, ce stage constitue une très bonne expérience humaine et sociale à travers le contact avec les doctorants et chercheurs du CERFACS, ainsi que les stagiaires, qui, fort de leurs compétences et leurs savoir-faire de haute qualité, ont su rendre de ce stage un moment très profitable.

CERFACS Rapport non confidentiel page 49 7 ANNEXES

7 Annexes

CARTE DE SOUMISSION D’UN JOB SUR UN CALCULATEUR AU CERFACS

#!/bin/bash

# Nom queue : NOMQUEUE #BATCH −−p a r t i t i o n = NOMQUEUE

# Nom du j o b : NOMJOB #SBATCH −J NOMJOB

# Nombre de noeud : NBNODE #SBATCH −N NBNODE

# Nombre de processus MPI par noeud : ntaskpernode #SBATCH −−ntasks −per−node = ntaskpernode

# Mettre adresse email #SBATCH −−mail−user=login@cerfacs. fr

cd $SLURM_SUBMIT_DIR

# Remplacer a.out par le nom de l’executable MPI

# SLURM_NTASKS = NBNODE ∗ ntaskpernode (or SLURM_NPROCS for backwards compatibility)

mpirun −np $SLURM_NTASKS . / a . out

Listing 2 – Exemple de carte batch de soumission de job sur NEMO

CERFACS Rapport non confidentiel page 50 7 ANNEXES

FICHIER ASCII DE DEFINITION DES CONDITIONS AUX LIMITES

$BOUNDARY−PATCHES !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− patch_name = inlet boundary_condition = INLET_RELAX_UVW_T_Y_TURB target_origin = solutbound wave_type = temporal relax_type = local relax_coeff_Un = 0.100000D+03 relax_coeff_Ut = 0.100000D+03 relax_coeff_T = 0.100000D+03 relax_coeff_Y = 0.100000D+03 turb_injection_method = CERFACS turb_signal_type = isotrop turb_modes_number = 200 turb_Le = 4.6D−03 turb_Lcutoff = 2.4D−02 turb_Ubulk = 0.466D+00 turb_Lt_to_Le = 1.0D+00 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− patch_name = outlet boundary_condition = OUTLET_RELAX_P_3D wave_type = normal_FE target_origin = solutbound relax_type = mean relax_coeff_P = 0.100000D+05 damping_type = mean !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− patch_name = wall_1 boundary_condition = WALL_NOSLIP_ADIAB !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− patch_name = wall_2 boundary_condition = WALL_NOSLIP_ADIAB !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− patch_name = orifice boundary_condition = WALL_NOSLIP_ADIAB !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− $end_BOUNDARY−PATCHES

Listing 3 – Définition des conditions aux limites dans le fichier (*.asciiBound)

CERFACS Rapport non confidentiel page 51 7 ANNEXES

FICHIER PRINCIPAL DE REGLES D’AVBP

!−−−−−−− Only to specify input file name −−−−−−−! $input_filename optional ! !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−! run.params character required ! !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−! $end_input_filename optional ! !−−−−−−− End only to specify input file name −−−!

$BLOCK block_status keyword1 keyword_type keyword_status keyword2 keyword_type keyword_status keyword3 keyword_type keyword_status $end_BLOCK block_status

Listing 4 – Fichier "keywords.in" de règles

CERFACS Rapport non confidentiel page 52 7 ANNEXES

FICHIER D’ENTREES PRINCIPALES D’AVBP $RUN−CONTROL solver_type = ns diffusion_scheme = FE_2delta simulation_end_iteration = 300000 mixture_name = AIR reactive_flow = no equation_of_state = pg LES_model = smago prandtl_turb = 0.60000000D+00 schmidt_turb = 0.60000000D+00 convection_scheme = LW CFL = 0.70000000D+00 Fourier = 0.10000000D+00 artificial_viscosity_model = Jameson artificial_viscosity_2nd_order = 0.50000000D−01 artificial_viscosity_4th_order = 0.50000000D−02 $end_RUN−CONTROL

$INPUT−CONTROL mesh_file = ../MESH/mesh.mesh.h5 asciibound_file = ../MESH/mesh.asciiBound solutbound_file = ../SOLUTBOUND/mesh. solutBound .h5 initial_solution_file = ../INIT/init_turb.h5 probe_file = ./record.dat species_database = species_database.dat mixture_database = mixture_database.dat $end_INPUT−CONTROL

$OUTPUT−CONTROL save_solution = yes save_solution.iteration = 10000 save_solution .name = ./SOLUT/solut save_solution. additional = minimum save_temporal = yes save_temporal.balance = yes save_temporal. iteration = 10 save_temporal . dirname = ./TEMPORAL/ save_average = yes save_average. iteration = 10000 save_average.freq_averaging. iteration = 100 save_average .name = ./AVERAGE/avg save_average.mode = full $end_OUTPUT−CONTROL

$HPC−DEBUG ncell_group = 40 debug_level = 0 debug_processor = master auto_reorder_boundary_patch = no reordering_method = natural use_el2part = yes check_el2part_consistency = yes partitioner = parmetis $end_HPC−DEBUG

Listing 5 – Fichier "run.params" d’entrées principales

CERFACS Rapport non confidentiel page 53 7 ANNEXES

FICHIER DE PARAMETRAGE DE LA SOLUTION INITIALE DU CALCUL AVBP

’../MESH/mesh.mesh.h5’ ! fichier maillage dans MESH ’./init_turb.h5’ ! fichier solution initiale dans INIT 1.01325d5 !P 300.0 d0 ! T 8.54 d0 ! U 0 . 0 d0 ! V 0 . 0 d0 ! W 1 . 0 d0 ! Y

Listing 6 – Fichier "makesolution.choices" de paramétrage

CERFACS Rapport non confidentiel page 54 7 ANNEXES

FICHIER DE PARAMETRAGE DES CONDITIONS AUX LIMITES

’../MESH/mesh.mesh.h5’ ! fichier maillage ’../MESH/mesh.asciiBound’ ! fichier asciiBound ’./mesh.solutBound.h5’ ! fichier BC (format HDF5) !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− ! PATCHS DU FICHIER mesh . asciiBound ! constant ; genprofile ; externalhdf5 genprofile > Patch 1 : inlet constant > Patch 2 : outlet constant > Patch 3 : wall_1 constant > Patch 4 : wall_2 constant > Patch 5 : orifice !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− ! boundary data !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− Patch 1 : inlet BCtype : INLET_RELAX_UVW_T_Y_TURB genprofile ! mass flow will override velocity magnitude VOL FLOW(m3/ s ) 0.017 d0 EXPONENT (1/n) (2−>Poiseuille , 7−>Turbulent , 10−>Flat ) 7 Temperature 300.0 d0 AIR 1 . 0 d0 Urms 0.427 d0 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− Patch 2 : outlet BCtype : OUTLET_RELAX_P_3D constant ! all components will be constant Pressure 101325.0 d0 !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− Patch 3 : wall_1 BCtype : WALL_NOSLIP_ADIAB constant ! all components will be constant !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− Patch 4 : wall_2 BCtype : WALL_NOSLIP_ADIAB constant ! all components will be constant !−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− Patch 5 : orifice BCtype : WALL_NOSLIP_ADIAB constant ! all components will be constant

Listing 7 – Fichier "gensolutbound.choices" de paramétrage

CERFACS Rapport non confidentiel page 55 7 ANNEXES

ETAPES D’ADAPTATION DE MAILLAGE SOUS HIP

# chargement du code AVBP et HIP $ module load avbp

# Calcul de la metrique d’adaptation $ compute_metric.py initial_mesh.h5 average_sol.h5

# Visualisation de la metrique calculee $ visu −m initial_mesh.h5 −s metric . h5

# lancement de l’outil HIP $ hip

# Lecture du maillage et de la metrique $ hip[0/0]> re hdf initial_mesh.h5 −s metric . h5

#affichage du numero, nom et categorie de variables $ hip[1/1]> var

#Mise a l’echelle isotrope en fonction de l’erreur d’interpolation $ hip[2/2]> mm isoVariable −v 2

# ecriture au format HDF5 et generation maillage adapte $ hip[0/0]> wr hdf −7 adapted_mesh

Listing 8 – Adaptation de maillage sous HIP

CERFACS Rapport non confidentiel page 56 RÉFÉRENCES

Références

[1] Frédéric Alauzet. “Adaptation de maillage anisotrope en trois dimensions. Application aux simulations instationnaires en Mécanique des fluides”. In : PhD thesis. Université de Montpellier II. 2003. [2] “Calcul de la perte charge dans un orifice”. In : Process’s Rubriques. Free. [3] Jean Céa. “Approximation variationnelle des problèmes aux limites, vol. 2, coll”. In : Annales de l’institut Fourier 14 », 345–444 p. Article original de J. Céa. 1964. [4] Guillaume Daviller. “A Mesh Adaptation Strategy to Predict Pressure Losses in LES of Swirled Flows”. In : Flow, Turbulence and Combustion. An International Journal published in association with ERCOFTAC. 2017. [5] Rémi Franzen. In : INCA colloquium. ONERA Toulouse. 2011. [6] Adrien Loseille. “Adaptation de maillage anisotrope 3D multi-échelles et ciblée à une fonc- tionnelle pour la mécanique des fluides.Application à la prédiction haute-fidélité du bang so- nique”. In : Mathématiques [math]. Université Pierre et Marie Curie - Paris VI. 2008. [7] W.J. Malouf S. Benhamadouche M. Arenas. “Wall-resolved Large Eddy Simulation of a flow through a square-edged orifice in a round pipe at Re = 25,000”. In : Nuclear Engineering and Design. Electricité de France, RD Division, 6, Quai Watier, 78401 Chatou, France. 2017.

CERFACS Rapport non confidentiel page 57