Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Optimisation de méthodes numériques pour laphysique des plasmas.
Application aux faisceaux de particules chargées.
Anaïs Crestetto
Directeurs de thèse : Philippe Helluy et Éric Sonnendrücker.
Soutenance de thèse, le 4 octobre 2012.
1/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Plan de l’exposé
1 Généralités sur les plasmas et faisceaux de particules.
2 Couplage fluide-cinétique pour un plasma avec collisions.
3 Simulation d’un faisceau de particules sur GPU.
2/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
PrésentationMéthodes numériques
Plasmas et faisceaux de particules chargées
À quoi s’intéresse-t-on ?
Plasma : gaz globalement neutre mais constitué de particuleschargées : ions positifs et électrons.
Applications : projet ITER, écrans plasma, tubes à néon, etc.Faisceaux de particules : ions ou électrons extraits de certainsmétaux.
Applications : générateur de rayons X, accélérateur departicules, etc.
3/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
PrésentationMéthodes numériques
Particules représentées par une
fonction de distribution f (x , v , t)
avec x la position, v la vitesse et t le temps→ 7 variables en 3D.Charge q et masse m des particules.Densité de charge
ρ =
∫f dv ,
et densité de courant
J =
∫v f dv .
Interaction avec les champs électrique E (x , t) et magnétiqueB (x , t).
4/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
PrésentationMéthodes numériques
Équation de Vlasov (avec collisions) pour les particules
∂f∂t
+ v · ∇x f +qm
(E + v ∧ B) · ∇v f = Q (f ) .
Équations de Maxwell pour le champ électromagnétique
−∂E∂t
+ rot B = J ,
∂B∂t
+ rot E = 0,
div E = ρ, à t = 0,div B = 0, à t = 0.
Équation de Poisson dans un cas simplifié
∆φ = −ρ avec E = −∇φ,
et φ le potentiel scalaire.
5/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
PrésentationMéthodes numériques
Objectifs
1. Développer de nouvelles méthodes performantes pour leséquations de Vlasov-Maxwell ou de Vlasov-Poisson.
2. Simuler numériquement des cas tests réalistes.
6/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
PrésentationMéthodes numériques
Méthodes numériques pour VlasovModélisation cinétique : f : R3 × R3 × R+ → R.
→ Méthode Particle-In-Cell (PIC) : plus économique en mémoire.Soient Np macro-particules, de position xk , de vitesse vk et depoids ωk , f est approchée par
fNp (x , v , t) =
Np∑k=1
ωk (t) δ (x − xk (t)) δ (v − vk (t)) .
Les macro-particules vérifient les équations du mouvementdxdt
= v ,dvdt
=qm
(E + v ∧ B) .
Modélisation fluide : f (x , v , t) = Mα(x ,t) (v), inconnuesα : R3 × R+.
→ Méthodes sur grille.→ Exemples étudiés : modèle multi-water-bag, méthode des
moments.7/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
PrésentationMéthodes numériques
Obj. 1 : Développement de nouvelles méthodes
Idée : garder le meilleur des deux approches.→ Couplages fluide-cinétique : décomposer f en une partie
d’équilibre et une perturbation.
Exemples étudiés :méthode des moments couplée à une méthode PIC pourVlasov-Poisson 1D,décomposition micro-macro pour Vlasov avec collisions, enutilisant une méthode particulaire.
8/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
PrésentationMéthodes numériques
Obj. 2 : Simulation d’une diode à cathode hémisphérique
Objectif : simuler l’émission d’électrons dans une diode à cathodehémisphérique en géométrie 2D axisymétrique.
9/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
PrésentationMéthodes numériques
Couplage Vlasov-Maxwell pour simulations réalistes
→ Approche 1 : méthode PIC - éléments finis basée sur l’analyseisogéométrique.
→ Approche 2 : méthode PIC - Galerkin Discontinu sur GPU.
Problèmes soulevés parles conditions aux limites,la géométrie courbe,l’implémentation sur carte graphique.
10/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
Couplage fluide-cinétique pour unplasma avec collisions
en collaboration avec Nicolas Crouseilles 1 et Mohammed Lemou 2.
1. INRIA-Rennes Bretagne Atlantique, Projet IPSO & IRMAR (Université deRennes 1)
2. CNRS & IRMAR (Université de Rennes 1)11/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
Système de Vlasov-Poisson-BGKCollisions entre particules paramétrées par le nombre de Knudsen ε.
Équations de Vlasov-Poisson-BGK (sur [0, Lx ]× R× R+,Lx ∈ R+?)
∂t f + v∂x f + E∂v f =1εQ (f ) ,
∂xE = −1 +
∫f dv .
Conditions périodiques pour f et E .Condition de moyenne nulle de E et conditions initiales∫ Lx
0E (x , t) dx = 0, ∀ t ≥ 0,
f (x , v , 0) = f0 (x , v) , ∀ x ∈ [0, Lx ], v ∈ R.
12/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
Q (f ) opérateur de collisions de BGK (Bhatnagar-Gross-Krook) :
Q (f ) = M (U)− f ,
M (U) Maxwellienne dont les trois premiers moments sontégaux à ceux de f , notés U.
On note N (LQ) = SpanM, vM, |v |2M
, le noyau de
l’opérateur linéarisé LQ de Q.
13/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
Objectifs
Construire un schéma stable, de coût constant par rapport à εet consistant à la limite ε→ 0 : schéma préservantl’asymptotique 3 (AP).
Réduire le coût numérique : décomposition micro-macro avecparticules.Notamment à la limite ε→ 0 car les collisions ramènent f verssa Maxwellienne : f −M (U)→ 0 quand ε→ 0.
3. Jin, SIAM JSC 1999.14/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
Modèle micro-macro
Décomposition micro-macro 4 5 f = M (U) + g :
∂tM (U)+v∂xM (U)+E∂vM (U)+∂tg+v∂xg+E∂vg = −1εg .
Opérateur de transport T · = v∂x ·+E∂v · :
∂tM (U) + TM (U) + ∂tg + T g = −1εg .
Hypothèse : 3 premiers moments de g nuls
〈mg〉 :=
∫m (v) g (x , v , t) dv = 0, où m (v) :=
(1, v ,
|v |2
2
)T
.
Vrai au niveau numérique ? Sinon, il faut l’imposer.4. Lemou, Mieussens, SIAM JSC 2008.5. Liu, Yu, CMP 2004
15/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
Équations micro-macro
Soit ΠM la projection orthogonale dans L2 (M−1dv)sur N (LQ) :
ΠM(ϕ) = 1ρ
[〈ϕ〉+
(v − u)〈(v − u)ϕ〉T
+
(|v − u|2
2T− 1
2
)⟨(|v − u|2
T− 1)ϕ
⟩]M.
Propriétés : (I − ΠM)(∂tM) = ΠM(g) = ΠM(∂tg) = 0.En appliquant (I − ΠM) à Vlasov-BGK=⇒ équation micro sur g
∂tg + (I − ΠM)T (M + g) = −1εg .
16/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
En appliquant ΠM à Vlasov-BGK =⇒ équation macro surM (U)
∂tM + ΠMT (M + g) = 0.
Et en prenant ses 3 premiers moments
∂tU + ∂xF (U) + ∂x〈vm(v)g〉 = S(U) ,
avec F (U) le flux d’Euler et S (U) un terme source.
Système micro-macro 6
∂tg + (I − ΠM)T (M + g) = −1
εg∂tU + ∂xF (U) + ∂x〈vm(v)g〉 = S(U)
équivalent à Vlasov-BGK.6. Bennoune, Lemou, Mieussens, JCP 2008.
17/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
Méthode de résolution
Domaine discrétisé en Nx mailles [xi , xi+1], xi = i ×∆x ,i = 0, . . . ,Nx − 1.Discrétisation en temps : tn = n ×∆t, n ∈ N.
Algorithme1. Résoudre la partie micro par une méthode Particle-In-Cell
(PIC).2. Étape de projection pour annuler numériquement les 3
premiers moments de g .3. Résoudre la partie macro par un schéma de volumes finis
(maillage en x), avec un terme source dépendant de g .Couplage 1-3 : similarités avec la méthode δf 7 mais ici schéma AP.
7. Brunner, Valeo, Krommes, Phys. of Plasmas 1999.18/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
1. Méthode PIC sur g
Résoudre par une méthode PIC l’équation
∂tg + (I − ΠM)T (M + g) = −1εg .
Soient Np particules, de position xk , de vitesse vk et de poids ωk , gest approchée par
gNp (x , v , t) =
Np∑k=1
ωk (t) δ (x − xk (t)) δ (v − vk (t)) .
Équation avec terme source → splitting.
1. Résolution de la partie transport ∂tg + T g = 0.→ Particules avancées selon les équations du mouvement
dxk
dt(t) = vk (t) ,
dvk
dt(t) = E (xk (t) , t) .
Utilisation d’un schéma de Verlet d’ordre 2.19/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
2. Résolution de la partie source
∂tg = − (I − ΠM) (TM) + ΠM (T g)− 1εg .
→ Équation sur les poids du type
dωk
dt(t) = αk (t)− ωk (t)
ε
où αk est le poids « associé » à
− (I − ΠM) (TM) + ΠM (T g) .
→ Terme raide implicité pour obtenir un schéma stable parrapport à ε :
ωn+1k = ωn
k + ∆t αnk −∆t
ωn+1kε
.
20/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
2. Étape de projectionAu temps n + 1, on a
gn+1 (x , v) =
Np∑k=1
ωn+1k δ
(x − xn+1
k
)δ(v − vn+1
k
)≈ g
(x , v , tn+1) .
Structure micro-macro : 〈mg(x , v , tn+1)〉 = 0.
Pas vrai a priori pour gn+1 (x , v) → correction 8.
1. Calcul de Ug := 〈mgn+1〉 6= 0 sur chaque maille xi :
Ug (xi ) = 〈mgn+1〉 |xi =∑
k/xk∈[xi ,xi+1]
ωkm (vk) .
2. Recherche de h ∈ N (LQ)
h (x , v) = λ (x) ·m (v)M (x , v) t.q. Ug (xi ) = 〈mh (xi , v)〉.8. C., Crouseilles, Lemou, accepté à KRM.
21/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
→ Résolution de Nx systèmes linéaires 3× 3
Ug (xi ) = Aiλi
avec Ai matrice de moments de M et λi ≈ λ (xi ).→ Calcul des poids γk « associés » à h en chaque particule.
3. Correction des poids pour conserver la structure micro-macro
ωnewk ← ωk − γk .
→ Par construction : 〈mgn+1,new 〉 |xi = Ug (xi )−〈mh (xi , v)〉 = 0.
22/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
Résultats numériques : amortissement Landau
Fonction de distribution initiale :
f (x , v , 0) =1√2π
exp(−v2
2
)(1 + α cos (kx)) .
Initialisations micro-macro :
U (x) =
1 + α cos (kx)0
1 + α cos (kx)
et g (x , v , t = 0) = 0.
Paramètres : α = 0.01, k = 0.5, Lx = 2π/k .
Observations : énergie électrique E (t) =√∫
E (x , t)2 dx .
23/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
Schéma AP
Convergence vers Euler-Poisson à la limite ε→ 0 ?
E (t), comparaison avec Euler-Poisson.Nx = 128, Np = 5× 103, ε = 0.5 (gauche) et ε = 10−4 (droite).
→ Convergence ⇒ schéma AP.24/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
Importance de l’étape de projection
ρ (x) à t = 5, ε = 1, Np = 5× 105 avec et sans correction.
→ Création d’instabilités si on ne fait pas la correction.25/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
Réduction du bruit numériqueρ (x), comparaison avec une méthode PIC sur f totale.ε = 1, Nx = 128, Np = 5× 105, à t = 0.2.
→ Décomposition micro-macro ⇒ bruit inhérent à PIC réduit.26/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
Réduction du temps de calcul
E (t), comparaison avec une méthode PIC sur f totale.
ε = 10
Np DuréeMiMa 5× 105 768 s.
PIC-BGK 5× 106 1391 s.
ε = 10−4
Np DuréeMiMa 500 11 s.
PIC-BGK 106 230 s.
27/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionRésultats numériquesConclusions et perspectives
ConclusionsDécomposition micro-macro pour Vlasov-Poisson-BGKutilisant une méthode particulaire.Étape de projection pour conserver les moments de g nulsnumériquement.
→ Schéma AP.→ Réduction du bruit inhérent à la méthode PIC (car uniquement
sur g).→ Réduction du coût par rapport à une décomposition
micro-macro sur grille car peu de particules suffisent à la limiteε→ 0.Vrai aussi pour g (x , v , 0) 6= 0.
PerspectivesLimite de diffusion, problème de couche limite.Considérer une géométrie 2D.
28/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Simulation d’un faisceau de particulessur GPU
Objectif : simuler l’émission d’électrons dans une diode à cathodehémisphérique en géométrie 2D axisymétrique.
Problèmes soulevés parles conditions aux limites,la géométrie courbe,l’implémentation sur carte graphique.
29/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Système de Vlasov-Maxwell
Faisceau de particules soumises à un champ électromagnétique.
→ Système d’équations de Vlasov-Maxwell en 3D
∂f∂t
+ v · ∂f∂x− (E + v ∧ B) · ∂f
∂v= 0,
−∂E∂t
+ rot B = J ,
∂B∂t
+ rot E = 0,
div E = ρ, div B = 0, à t = 0.
30/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Correction de la divergence
Conservation de la charge ∂tρ+ div J = 0 non vérifiée au niveaunumérique ?
→ Système avec correction de la divergence 9 (χ ≥ 0 et χp > 0)
∂f∂t
+ v · ∂f∂x− (E + v ∧ B) · ∂f
∂v= 0,
−∂E∂t
+ rot B − χgrad φ = J ,
∂B∂t
+ rot E = 0,
div E = ρ, div B = 0, à t = 0,
∂tφ+ χdiv E = χρ− χ
χpφ.
9. Munz, Omnes, Schneider, Sonnendrücker, Voß, JCP 2000.31/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Mode 2D transverse électrique
On se place en géométrie cartésienne x = (x , y , z)T .Hypothèses : champs indépendants de la variable z , onconsidère le mode 2D transverse électrique (TE).
→ Système de Maxwell en mode 2D TE
∂tEx − ∂yBz + χ∂xφ = −Jx ,
∂tEy + ∂xBz + χ∂yφ = −Jy ,
∂tBz + ∂xEy − ∂yEx = 0,
∂tφ+ χ (∂xEx + ∂yEy ) = χρ− χ
χpφ.
avec E =
ExEy0
et B =
00Bz
.
32/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Notations
Soient les vecteurs inconnu et source
W =
ExEyBzφ
, S =
−Jx−Jy0
χρ− χχpφ
,
et les matrices
A1 =
0 0 0 χ0 0 1 00 1 0 0χ 0 0 0
et A2 =
0 0 −1 00 0 0 χ−1 0 0 00 χ 0 0
.
33/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Écriture matricielle
Étude sur un domaine 2D noté Ω, de bord ∂Ω jusqu’à l’instantT ∈ R+.
Écriture matricielle
∂tW + A1∂xW + A2∂yW = S , sur Ω× [0,T ] .
Conditions aux limites et initiales
W ∈ Ker M , sur ∂Ω× [0,T ] ,
W (x , 0) = W 0 (x) , à t = 0,
avec M une matrice de conditions aux bords.
34/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Méthode de Galerkin Discontinu
Découpage de Ω en un nombre fini d’ouverts disjoints
(Ω`)`∈I tels que Ω = ∪`Ω`.
∀ t, on cherche W (·, t) dans
H = W : Ω −→ R t.q. W |Ω`∈ (H1(Ω`))4.
NotationsDomaine de régularité de W : R = ∪`Ω`.Ensemble de discontinuités : D = ∪`∂Ω`.D orienté par un vecteur normal unitaire
n =
(nxny
)vers l’extérieur de Ω` sur ∂Ω`.W L valeur de W du côté −n et W R valeur du côté n.
35/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Ω maillé par N cellules L = Ω` respectant les discontinuités de W .
Dans chaque maille L, famille de Nb polynômes de degré ≤ 2linéairement indépendants ψL,j , j = 0, . . . ,Nb − 1.
Décomposition W L (x , t) 'Nb−1∑j=0
ψL,j (x) wL,j (t) ∀ x ∈ L.
Formulation faible :
∀ L et ∀ t, trouver W L (x , t) =∑ψL,j (x) wL,j (t) tel que
∀ψL = ψL,i , on ait∫LψL∂tW L −
∫L(A1∂xψL + A2∂yψL)W L +
∫∂L∩Ω
ψLf (W L,W R ,n)
+
∫∂L∩∂Ω
ψL((
M + A1nx + A2ny)W L
)=
∫LψLS .
avec f (W L,W R ,n) le flux numérique centré ou décentré.36/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
En pratique :→ système d’équations différentielles ordinaires sur les wL,j (t).
Matrices de masse à inverser :∫L ψL,jψL,i .
Intégrales sur les bords : sur chaque arête e de chaqueélément, 4 points de Gauss de position gk , associés aux poidsωk , k = 1, . . . , 4 : ∫
ef (x) =
4∑k=1
ωk f (gk) .
Intégrales surfaciques : 16 points de Gauss.
37/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Conditions aux bords
Implémentation de conditions aux limites (CL) deSilver-Müller,conducteur parfait,symétrie.
Trouver une matrice M imposant la CL et vérifiant 10 ∀ χ ≥ 0la condition d’unicité de la solution (⇒ stabilité du schéma) :
N =12Aini + M est positive,
la condition d’existence de la solution :
dim Ker Ain−i = dim Ker M .
10. Bourdel, Mazet, Helluy, Proc. 1992.38/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Condition de stabilité
Le schéma est stable donc théoriquement, les valeurs propresde l’opérateur spatial ont toutes une partie réelle ≤ 0.
Remarque 1 :à cause de l’intégration numérique, ce n’est pas tout à faitvrai...
39/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Stabilité et intégration numérique
Valeurs propres dans le plan complexe pour un schéma décentré(gauche) et centré (droite), maillage d’un disque.
→ Nécessité du flux décentré pour la stabilité du schéma surmaillage courbe car l’intégration numérique n’est pas exacte.
40/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Couplage de GD avec PIC
Méthode PIC en 2D pour Vlasov.Loi d’émission des particules.
Remarque 2 :importance du choix du paramètre χ de correction de ladivergence.
41/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Choix du paramètre de correction de la divergence
Solution analytique donnée par la loi de Child-Langmuir.Ex (x) calculé et théorique pour χ = 1 (gauche) et χ = 20 (droite).
→ Bonne convergence mais importance de pouvoir prendre χ > 1.
42/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Parallélisation sur GPU
Illustration d’un GPU contenant 2unités de calcul et 4 processeurs.
Langage OpenCLVirtuellement autantd’unités de calcul et deprocesseurs que l’on veut.Tâches mises dans une filed’attente, envoyées sur leGPU et distribuées auxprocesseurs.Portable : exécution sur unCPU, multi-cœurs ou pas,et sur un ou plusieursGPU.
43/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Galerkin Discontinu sur GPU
Initialisation et inversion des matrices de masse locales surCPU, on envoie les données sur le GPU.Première étape : un processeur associé à chaque point deGauss de chaque arête pour calculer le flux numérique et leterme de bord.Seconde étape : un processeur associé à chaque fonction debase de chaque élément pour calculer S et la dérivée en tempsde W .Schémas en temps RK2 et RK3 « low storage », exemple :
W n+1? = W n + ∆t∂tW n,
W n+1 =12(W n + W n+1? + ∆t∂tW n+1?) .
Un processeur associé à chaque composante de wL,j .
44/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Performances Galerkin Discontinu
Maxwell uniquement, onde entrante dans un disque, jusqu’à t = 1 :
Nb de Nb CPU CPU Nvidia GeForce CPU1/GPUmailles d’itér. 1 cœur 4 cœurs GTX 470 (Speedup)3072 329 185 s. 49 s. 1 s. 1853072 1644 925 s. 254 s. 7 s. 13212288 663 1581 s. 464 s. 9 s. 17612288 3312 8133 s. 2455 s. 46 s. 177
→ Accélération très élevée !
45/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Particules sur GPU
Déplacement : on associe un processeur à chaque particule, onutilise le même schéma en temps que pour Maxwell, puis oncherche leur nouvelle maille.Émission à t > 0 : on associe un processeur à chaque mailleémettrice, on calcule la quantité de charge à émettre, oninitialise les positions, vitesses et poids des particules de cetélément.Remarque : pour laisser agir la correction de la divergence, onne déplace les particules que tous les n (= 10 par exemple) pasde temps.
46/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Calcul du courant ou de la densité de charge
On doit éviter les conflits d’écriture en mémoire (⇒ perte dedonnées).
Tri des particules suivant leur maille (tri RADIX optimisé pourGPU).Un processeur associé à chaque maille L : boucle sur lesparticules de L pour calculer et ajouter leur contribution aucourant ou à la densité de charge :∫
LψLJ =
∑k∈L
ωkψL (xk) vk ,
∫LψLρ =
∑k∈L
ωkψL (xk) .
47/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Performances avec PIC
Avec particules, diode rectangulaire, jusqu’à t = 5 :
Nb de Nb Nb de CPU CPU Nvidia CPU4/GPUmailles d’itér. part. 1 cœur 4 cœurs GTX 470 (Speedup)1024 2530 46000 723 s. 446 s. 21 s. 21.21024 2530 92000 914 s. 611 s. 31 s. 19.74096 5060 70000 4450 s. 2319 s. 65 s. 35.74096 5060 110000 4809 s. 2652 s. 97 s. 27.3
→ Accélération satisfaisante !
48/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Diode axisymétrique relativiste
Er et particules aux temps t = 0.22, t = 0.33, t = 0.55 et t = 5.5(de gauche à droite et de haut en bas).
49/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
ConclusionsMéthode de Galerkin Discontinu d’ordre 3 en espace surmaillages courbes.Couplage avec méthode PIC sur GPU.Tri des particules.Géométries cartésienne et axisymétrique, cas relativiste ou non.Conditions aux limites assurant la stabilité du schéma ∀ χ ≥ 0.
→ Très bons speedups.Affichage OpenGL.
PerspectivesImplémenter un solveur de Poisson.Utiliser une méthode non particulaire pour Vlasov, mieuxparallélisable sur GPU.
50/51
Généralités sur les plasmas et faisceaux de particulesCouplage fluide-cinétique pour un plasma avec collisions
Simulation d’un faisceau de particules sur GPU
Mise en équationsMéthode de résolutionProgrammation sur GPUConclusions et perspectives
Merci de votre attention !
51/51
Top Related