• Aucun résultat trouvé

Performances du code AVIP

L’impl´ementation de MAPHYS dans le code AVIP est d´etaill´ee dans l’Annexe C. Une attention particuli`ere a ´et´e port´ee sur les conditions limites de l’´equation de Pois- son, d´ecrites dans l’Annexe D. Une fois le syst`eme r´esolu, le potentiel φ dans tout le domaine de calcul est connu et le champ ´electrique ~Epeut ˆetre calcul´e avec un op´erateur gradient.

3.6

Performances du code AVIP

Pour un code tel qu’AVIP dont l’objectif est de simuler des configurations r´ealistes complexes, le temps de calcul est un param`etre cl´e. Les performances des diff´erentes parties du code, en particulier leur efficacit´e parall`ele, doivent donc ˆetre ´evalu´ees afin d’identifier les op´erateurs les plus coˆuteux et susceptibles d’ˆetre am´elior´es.

3.6.1 Les diff´erents op´erateurs d’AVIP

Les performances des diff´erents op´erateurs d’AVIP ont ´et´e ´evalu´ees sur la simulation du chapitre 7 dans laquelle le plasma dans un moteur `a effet Hall est mod´elis´e dans un plan r-z. Cette simulation est consid´er´ee comme le calcul de r´ef´erence du code AVIP fluide pour cette th`ese. Dans cette simulation, tous les op´erateurs impl´ement´es dans AVIP et pr´esent´es dans ce chapitre sont utilis´es. Pour rappel, le solveur implicite dans le code r´esout les diff´erents termes sources de collision ainsi que la force de Lorentz. Le calcul a ´et´e r´ealis´e sur la machine Kraken du CERFACS (cluster LENOVO avec processeurs Intel Skylake) en utilisant diff´erents nombres de processeurs (jusqu’`a 360 processeurs). Le maillage utilis´e dans la simulation contient environ 2.2M de cellules et la mesure du temps de calcul est faite sur 100 it´erations.

Sur la Fig. 3.22, le temps par it´eration pass´e dans chaque ´etape de la boucle tem- porelle d’AVIP-Fluide est trac´e en fonction du nombre de processeurs. Pour toutes les ´etapes, le temps par it´eration diminue bien lorsqu’on augmente le nombre de proces- seurs. Le temps de calcul est majoritairement consacr´e `a la convection et au solveur implicite pour les termes sources. Pour un faible nombre de processeurs, les trois ´etapes ont un coˆut ´equivalent. Lorsque le nombre de processeurs augmente, la contribution du solveur de Poisson diminue sensiblement. Le pourcentage du temps total pris par chaque ´etape est repr´esent´e sur la Fig. 3.23. Comme observ´e sur la figure pr´ec´edente, le temps pass´e pour chaque ´etape est ´equivalent `a faible nombre de processeurs (environ 33% du temps). Entre 50 et 100 processeurs, le temps pass´e dans le solveur de Poisson d´ecroit jusqu’`a environ 15% du temps total. Cependant cette tendance s’inverse lorsque

Figure 3.22: Temps par it´eration de la boucle temporelle du code AVIP-Fluide et d´ecomposition pour les diff´erentes ´etapes, en fonction du nombre de proces- seurs pour le cas r − z (Chap. 7).

le nombre de processeurs augmente encore (sup´erieur `a 100 processeurs). Ceci montre que la limite d’efficacit´e parall`ele du solveur de Poisson risque d’ˆetre atteinte en des- sous de 6000 cellules par processeur (valeur pour 360 processeurs). Dans l’annexe E, la limite d’efficacit´e parall`ele du solveur MAPHYS est estim´ee `a environ 2000 cellules par processeur.

En ce qui concerne la convection et le solveur implicite, aucune limite d’effica- cit´e parall`ele n’est observ´ee jusqu’`a 360 processeurs (limite de la machine Kraken du CERFACS). Le solveur implicite n’utilisant aucune communication entre processeur reste parfaitement efficace quel que soit le nombre de cellules par processeur. Pour l’op´erateur de convection, l’´echange entre processeur pour le calcul des gradients pour la m´ethodologie MUSCL induit en principe une nette perte d’efficacit´e pour de grand nombre de processeurs. De bonnes performances sont observ´ees jusqu’au nombre de processeur maximum test´e.

Il est `a noter qu’une comparaison entre plusieurs solveurs de Poisson est d´etaill´ee dans l’annexe E afin de justifier le choix de la librairie MAPHYS utilis´ee dans AVIP.

Influence sur le temps de calcul de la tol´erance relative pour le solveur implicite Pour le cas avec 180 processeurs, la tol´erance du solveur implicite est

3.6 Performances du code AVIP

Figure 3.23: Pourcentage du temps pass´e dans la boucle temporelle pour chacun des principaux op´erateurs d’AVIP-Fluide pour le cas r − z.

diminu´ee afin d’estimer son influence sur le temps de calcul. Les temps de calcul obtenus pour diff´erentes tol´erances relatives sont r´epertori´es dans le tableau 3.3.

Tableau 3.3: Temps de calcul par it´eration par cellule sur 180 processeurs de la simulation r-z pour diff´erentes tol´erances du solveur implicite.

tol´erance temps/it´eration/cellule

10−5 0.092s

10−7 0.12s

10−9 0.15s

10−11 0.224s

Augmenter la tol´erance du solveur implicite accroit le nombre d’it´erations n´ecessaires `

a la convergence du solveur ainsi que le temps de calcul. Une tol´erance relative sur l’er- reur de convergence du solveur implicite de 10−9apparait ˆetre un bon compromis entre pr´ecision et temps de calcul.

Influence de la tol´erance du solveur de Poisson sur le temps de calcul Pour le cas avec 180 processeurs, la tol´erance du solveur de Poisson est modifi´ee afin de v´erifier la r´epercussion sur le temps de calcul. Diff´erentes tol´erances relatives sont test´ees et les temps de calcul par it´eration par cellule sont list´es dans le tableau 3.4.

r − z en fonction de la tol´erance relative du solveur Maphys.

Tol´erance du Temps Temps pris par le

solveur de Poisson par it´eration[s] solveur de Poisson [%]

10−12 0.389 18.3

10−10 0.383 17.6

10−8 0.375 16.3

10−6 0.366 14.5

Le temps par it´eration du solveur de Poisson augmente l´eg`erement lorsque la pr´ecision demand´ee est plus importante. Cependant, la perte de temps de calcul occasionn´ee pour obtenir une solution plus pr´ecise reste n´egligeable et il est conseill´e de fixer la tol´erance du solveur de Poisson `a 10−12 (seulement 3.8% suppl´ementaire sur le coˆut de calcul total).

3.7

Conclusion

Le code AVIP a ´et´e cr´e´e pour discr´etiser le mod`ele fluide d´evelopp´e dans le cha- pitre pr´ec´edent et s’appuie sur une s´eparation des diff´erentes contributions du syst`eme. Les termes de convection sont trait´es avec des solveurs de Riemann en volumes fi- nis et sont coupl´es `a une approche MUSCL pour atteindre un ordre de convergence sup´erieur sur des maillages triangles non-structur´es. Les termes de collision et les forces ´electromagn´etiques sont int´egr´es avec un solveur implicite et l’´equation de Poisson est r´esolue avec le logiciel MAPHYS. Les diff´erents op´erateurs permettent d’obtenir des performances relativement bonnes sur un grand nombre de processeurs d´emontrant l’efficacit´e parall`ele d’AVIP. Le couplage des diff´erents sch´emas num´eriques doit par la suite ˆetre valid´e sur des cas simples avant de pouvoir utiliser le code sur des cas `a complexit´e grandissante.

Chapitre 4

Le traitement des conditions

limites

Plan

4.1 Les conditions limites pour le mod`ele fluide . . . 113 4.1.1 Les conditions utilis´ees dans AVIP . . . 113 4.1.2 Traitement num´erique des conditions limites . . . 114 4.2 Mod´elisation du circuit ´electrique . . . 115 4.3 Mod´elisation des gaines dans un moteur `a effet Hall . . . . 116

Il existe diverses conditions limites dans AVIP afin de traiter la fermeture des ´equations au niveau des limites du domaine. Pour les diff´erentes esp`eces dans le plasma, les conditions limites utilis´ees et leur traitement num´erique sont bri`evement expliqu´ees. Pour la fermeture de l’´equation de Poisson, les conditions limites d´evelopp´ees avec Ma- phys sont rappel´ees dans l’Annexe D. Afin de cr´eer le champ ´electrique dans la chambre, l’anode et la cathode sont reli´ees via un circuit ´electrique. Un flux d’´electrons `a la ca- thode permet ainsi de maintenir la d´echarge dans le moteur. Finalement, une attention plus particuli`ere est port´ee sur les conditions limites aux parois pour la mod´elisation des gaines dans les propulseurs de Hall. Ce dernier point a fait l’objet d’un papier de conf´erence AIAA [124].

4.1

Les conditions limites pour le mod`ele fluide

4.1.1 Les conditions utilis´ees dans AVIP

Dans la direction θ, la chambre du moteur peut ˆetre consid´er´ee comme p´eriodique. Des conditions de p´eriodicit´e et d’axi-p´eriodicit´e sont impl´ement´ees et g´er´ees comme des interfaces MPI dans AVIP. La g´eom´etrie du moteur `a effet Hall pr´esentant un axe de sym´etrie, des conditions de sym´etrie peuvent ˆetre utilis´ees afin de ne repr´esenter

qu’une partie du domaine physique.

Une condition d’injection permet d’injecter le X´enon `a l’anode `a une temp´erature et un d´ebit fix´e. Elle peut aussi ˆetre utilis´ee pour l’injection d’´electrons `a la cathode (voir section 4.2). Des conditions de sortie subsonique `a pression fixe et supersonique sont aussi cod´ees afin de mod´eliser les conditions de panache. Finalement, des conditions limites en paroi peuvent ˆetre utilis´ees afin de mod´eliser correctement les gaines sur les parois m´etalliques (voir section 4.3).

Le syst`eme d’´equations fluides d´evelopp´e dans le chapitre 2 mod´elise un ´ecoulement compressible qui transporte des ondes acoustiques dans le domaine. Sans traitement sp´ecifique, ces ondes peuvent ˆetre r´efl´echies aux conditions limites et entrainer des com- plications num´eriques. Des conditions limites caract´eristiques pour les ´ecoulements com- pressibles classiquement utilis´ees en CFD ont ´et´e adapt´ees pour AVIP. Ces conditions sont appel´ees NSCBC pour Navier-Stokes Characteristic Boundary Conditions [186] et permettent de traiter les conditions limites en fonction des grandeurs caract´eristiques de l’´ecoulement. En particulier, les ondes acoustiques sont correctement g´er´ees aux limites du domaine de calcul pour n’importe quelle condition.

4.1.2 Traitement num´erique des conditions limites

Pour les sch´emas centr´es (LW et Taylor-Galerkin), les conditions limites sont ex- prim´ees aux nœuds du domaine et la mˆeme impl´ementation que dans AVBP est utilis´ee. Avec les solveurs de Riemann en Volumes Finis avec une formulation centres-nœuds, les conditions limites du domaine doivent ˆetre exprim´ees sous la forme d’un flux `a la surface. Les conditions NSCBC ont donc dˆu ˆetre reformul´ees afin de les exprimer sous la forme d’un flux sortant. Pour les conditions de type Neumann, l’expression des flux `

a la surface est directe. Cependant, l’expression des conditions Dirichlet sous la forme de flux apparait beaucoup plus complexe est reste sujet `a discussion.

Par la suite, le flux au bord du domaine peut ˆetre utilis´e de deux fa¸cons possibles : — Le flux au bord est directement ajout´e au r´esidu du volume dual associ´e. Le flux est donc impos´e en dur sur la condition limite. Cette m´ethode est utile notamment lorsqu’un d´ebit connu doit ˆetre impos´e rigoureusement en condition d’entr´ee ;

— Le flux au bord correspond au flux `a droite de l’interface (i. e., dans la direction de la normale)pour le solveur de Riemann. Celui-ci peut ainsi ˆetre utilis´e pour calculer le nouveau flux avec l’´etat `a gauche pr´edit par le sch´ema num´erique. Cette m´ethode n’impose pas en dur les quantit´es exactes `a la condition limite