• Aucun résultat trouvé

5.2 Parallélisme à mémoire distribuée et schémas compacts

5.2.2 Extrapolation des dérivées manquantes

Une fois encore, on considère un sous-domaine d'indice p comportant Np points numérotés de 1 à Np. L'approche par extrapolation consiste à éviter l'utilisation d'un schéma aux limites diérent de celui employé pour le reste du sous-domaine en estimant les dérivées aux points extérieurs (points [0, -1, ...] et [Np, Np + 1, ...]) par extrapolation. Cette astuce permet de fermer le système d'équations associé au schéma : celui-ci ne comporte plus que Np inconnues (les dérivées aux points du sous-domaine) et Np équations.

Par exemple, si on considère le schéma compact suivant : βfi−20 + αfi−10 + fi0+ αfi+10 + βfi+20 =

3

X

n=1

an(fi+n− fi−n) (2.75)

Le système de Np équations associé à ce schéma fait intervenir Np+ 4 inconnues, les quatre inconnues de trop étant les dérivées aux points {−1, 0} et {Np+1, Np+2}. Une fermeture du système peut être eectuée en eectuant l'extrapolation suivante, proposée par [27] :

58 5. PROBLÉMATIQUES LIÉES À L'UTILISATION DE SCHÉMAS À HAUTE PRÉCISION

Fi = NA X n=0 pnin+ NB X n=1 qncos(iΦn) + rnsin(iΦn) Fi0 = 1 h NA X n=1 npnin−1+ NB X n=1 qnsin(iΦn) − rncos(iΦn) ! (2.76) Dans ces équations, la quantité F correspond à l'estimation de f fournie par l'extrapolation. Dans le cas où NA = 4 et NB = 3, les équations 2.76 impliquent 1 + NA+ 2NB = 11 inconnues que l'on peut résoudre en imposant les contraintes suivantes :

Fi = fipour i = (−2, −1, 0, ..., 5)

Fi0 = fi0 pour i = (1, 2, 3) (2.77) On peut alors, moyennant les dérivées extrapolées aux points -1 et 0, appliquer le même schéma aux points 1 et 2 que pour les points intérieurs du sous-domaine :

βF−10 + αF00 + f10 + αf20 + βf30 = 3 X n=1 an(f1+n− f1−n) βF00+ αf10 + f20 + αf30 + βf40 = 3 X n=1 an(f2+n− f2−n) (2.78)

La force de cette approche réside dans sa consistance (le schéma appliqué aux limites étant identique aux schémas intérieur) qui permet, a priori, d'obtenir une précision satisfaisante quelque soit le point considéré. Elle ne nécessite donc pas d'élargir le sous-domaine comme l'aurait imposé l'utilisation de schémas aux limites décentrés et n'induit aucun coût numérique supplémentaire.

Enn, il est important de préciser que les dérivées extrapolées doivent être ex-primées en fonction des valeurs connues et des dérivées du sous-domaine an que le schéma puisse être appliqué. L'utilisation de la relation2.76 pour F0

0 et F0

−1 permet

5. PROBLÉMATIQUES LIÉES À L'UTILISATION DE SCHÉMAS À HAUTE

d'obtenir : f10 + γ02f20 + γ03f30 = 4 X n=−2,6=1 b0n(fn− f1) γ11f10 + f20 + γ13f30 + γ14f40 = 4 X n=−2,6=2 b1n(fn− f2) (2.79)

où les valeurs des coecients γ et b sont données dans [27]. On remarquera notamment que les côtés gauches de l'équation 2.79, lorsqu'ils sont retranscrits sous forme matricielle, conservent la largeur de bande de la matrice A et n'induisent donc, une fois encore, aucun surcoût numérique.

La gure 2.18 tirée de [27] montre le nombre d'onde modié multiplié par h (κ = k(1)h) en diérents points du sous-domaine (le cas i = 0 de la gure correspond à i = 1 selon nos conventions). Les prols de la partie réelle de κ montrent une excellente résolution spectrale, y compris pour les points situés à proximité des interfaces (points 0 et 1). Cependant, la partie imaginaire signicative observée pour ces mêmes points peut induire une modication de la dissipation pouvant compromettre la stabilité du schéma. Ce problème peut être résolu, selon les auteurs, par l'utilisation d'un ltre à chaque itération temporelle. Le nombre Np de points sur lequel le ltre est appliqué fournit alors une assez bonne estimation du coût numérique induit à chaque itération temporelle.

Figure 2.18  Prols du nombre d'onde modié en diérents point du sous-domaine

60 5. PROBLÉMATIQUES LIÉES À L'UTILISATION DE SCHÉMAS À HAUTE PRÉCISION

6 Approches utilisées

Les sections précédentes ont été l'occasion d'aborder un grand nombre d'ap-proches numériques envisageables pour la simulation d'écoulements turbulents in-compressibles. On se propose ici d'indiquer les approches retenues dans la suite de ce travail ainsi que le contexte dans lequel celles-ci seront utilisées.

Schémas de calcul

 Schémas explicites standards Des schémas explicites standards d'ordre 2 ont été implémentés dans le code DNS et seront utilisés pour la simulation d'é-coulements autour d'un corps immergé où l'utilisation de schémas plus précis est délicate (voir section 4.2 du chapitre 5)

 Schémas explicites optimisés Les schémas explicites optimisés permettent d'obtenir une très bonne précision tout en étant relativement peu coûteux à évaluer. Ce sont ces schémas qui seront utilisés pour les simulations d'écoule-ments en canal à nombres de Reynolds modérés présentées dans la troisième partie de cette thèse.

 Schémas compacts Les tests de performances eectués dans la section 5.3

du chapitre 4montrent que les schémas compacts sont moins ecaces que les schémas explicites optimisés, de précision équivalente, sur notre machine de travail (calculateur TURING). Les schémas compacts seront cependant util-isés pour la validation du code DNS (voir section 4.2 du chapitre 4) où les résultats de simulations à bas nombres de Reynolds obtenus avec les schémas explicites optimisés seront comparés à ceux de simulations utilisant des sché-mas compacts.

Élimination des oscillations factices

 Formulation skew-symmetric des termes non linéaires La formulation skew-symmetric permet de réduire fortement les oscillations factices dues aux modes situés à proximité de la plage de résolution, qui constituent l'essentiel des oscillations factices. Toutefois, cette approche ne sera pas utilisée du fait de son coût numérique élevé (estimation de deux dérivées supplémentaires pour chaque terme de convection).

 Schémas décentrés Cette approche a été utilisée avec succès dans la littéra-ture [18, 17] qui propose par ailleurs un grand nombre de schémas décentrés [22, 27]. L'approche décentrée est cependant relativement coûteuse du fait de

la décomposition des ux de vitesse et n'a pas été implémentée dans le code DNS.

 Schémas sur-dissipatifs Des schémas de dérivée seconde sur-dissipatifs pour les modes les plus élevés ont été implémentés. Cette approche s'est montrée peu ecace au cours des tests eectués et ne sera pas utilisée (voir section 4.1

du chapitre 4).

 Filtrage de la solution numérique Les tests réalisés dans la section 4.1

du chapitre 4 montrent que le ltrage de la solution numérique toutes les 100 itérations permet de trouver un bon compromis entre la réduction des oscilla-tions factices et la conservation de l'énergie. Cette approche sera utilisée pour les simulations eectuées sur des grilles grossières (par exemple, pour l'obten-tion d'un champ turbulent à partir d'un écoulement de Poiseuille, voir secl'obten-tion

2.2 du chapitre 7).

Parallélisme et schémas compacts

Les méthodes d'élargissement du sous-domaine (section 5.2.1) et d'extrapolation (5.2.2) sont fortement recommandées dans le cas d'une décomposition 3D du do-maine de calcul, où l'absence de direction globale pose le problème de l'accès aux valeurs de la fonction et de ses dérivées au-delà du sous-domaine de calcul. Dans notre cas, le choix d'une décomposition 2D permet d'utiliser les schémas compacts de manière séquentielle dans la direction non concernée par la décomposition. Ces stratégies ne seront donc pas utilisées par la suite.

Développement et optimisation du

code de simulation

Comme mentionné précédemment, le code utilisé est une évolution du code de simulation numérique directe développé par Orlandi [9], basé sur une discrétisation des équations de Navier-Stokes selon la méthode des diérences nies. Une partie importante de cette thèse a été consacrée à la parallélisation du code ainsi qu'à l'implémentation de schémas à haute précision an d'augmenter les performances du code et de pouvoir accéder à des nombres de Reynolds plus élevés que ceux initialement considérés.

Cette partie est consacrée à la présentation du code de simulation numérique ainsi qu'à la validation des développements eectués. Le chapitre 3 se concentre essentiellement sur le noyau de la DNS, c'est à dire sur la résolution des équations de Navier-Stokes. Le chapitre4se propose d'appliquer les schémas à haute précision à la simulation d'un écoulement en canal à faible nombre de Reynolds (Reτ = 180) an de valider l'implémentation de ces schémas et de déterminer le gain de précision obtenu par rapport à l'utilisation de schémas d'ordre 2. Les performances parallèles du code seront également démontrées. Enn, le chapitre 5 présente les principaux développements eectués an d'améliorer la généricité du code et de permettre la simulation d'écoulements pour diérents jeux de conditions limites. Les changements apportés seront validés à travers la simulation d'un écoulement turbulent autour d'un corps chauant.

Présentation générale du code

1 Équations gouvernant la physique

Les écoulements turbulents considérés dans cette étude sont régis par les équa-tions de Navier-Stokes : ∂ui ∂t + ∂uiuj xj = − 1 ρ ∂p ∂xi + ν∆ui (3.1)

où ν et ρ représentent respectivement la viscosité cinématique et la masse volu-mique de l'écoulement. On notera également que, sauf indication explicite, la con-vention d'Einstein sur la sommation des indices répétés est appliquée ici ainsi que dans la suite de cette thèse.

Dans le code DNS, les variables de l'équation sont exprimées dans les échelles externes basées sur les grandeurs globales caractéristiques de l'écoulement. L'échelle externe utilisée pour la longueur est naturellement la demi-hauteur h du canal. Par ailleurs, l'état turbulent est obtenu par application d'un souage sur un écoule-ment de Poiseuille : la vitesse Ucp au centre de l'écoulement de Poiseuille initial est donc utilisée comme échelle de vitesse externe. L'équation de Navier-Stokes ainsi adimensionnalisée est alors :

∂ui ∂t +∂u iuj xj = − ∂p ∂xi + 1 ReP∆u i (3.2)

Cette forme fait intervenir le nombre de Reynolds ReP = Ucph

ν basé sur l'é-coulement de Poiseuille initial. Par la suite, le symbole  *  utilisé pour exprimer l'adimentionalisation selon les échelles du code sera volontairement oublié an de

ne pas alourdir l'écriture des équations à venir. Il convient cependant de garder à l'esprit que les quantités manipulées par le code sont exprimées dans les échelles de longueur et de vitesse (h, Ucp).

Du fait de l'incompressibilité de l'écoulement, l'équation de continuité se traduit par une condition de divergence nulle du champ de vitesse en tout point du domaine de calcul et à chaque itération :

∂ui ∂xi

= 0 (3.3)

Par ailleurs, la conservation de l'état turbulent nécessite l'ajout d'une contrainte de conservation du débit an d'éviter toute perte de charge :

∂Q ∂t =

Z ∂u

∂tdV = 0 (3.4)

La physique du système est donc régie par un ensemble de cinq équations consti-tué des équations de Navier-Stokes (trois équations) auxquelles s'ajoutent les con-traintes d'incompressibiltié et de conservation du débit :

∂ui ∂t + ∂uiuj xj = − ∂p ∂xi + 1 ReP∆ui ∂ui ∂xi = 0 Z ∂u1 ∂t dV = 0

Les contraintes d'incompressibilité et de conservation du débit peuvent être im-posées en décomposant le champ de pression instantanée p = P + p0 en sa valeur moyenne P = R pdV dans l'espace et sa composante uctuante p0. L'incompressibil-ité de l'écoulement est assurée à travers la composante uctuante p0 dans le cadre de l'approche du pas fractionné présentée plus loin dans ce chapitre. La condition de conservation du débit est imposée en ajustant le gradient de pression moyen an de corriger les déviations par rapport au débit moyen.

2 Description du domaine de calcul

Dans cette section, on désignera par x la direction de l'écoulement, z la direction transverse et y la direction normale aux parois.