170 likes | 277 Views
Proposition de club autour des codes particulaires pour l’étude des plasmas astrophysiques. Fabrice Mottez CETP. Codes particulaires. Simuler le plasma comme une assemblée de particules dans un champ électromagnétique calculé sur une grille.
E N D
Proposition de club autour des codes particulaires pour l’étude des plasmas astrophysiques Fabrice Mottez CETP
Codes particulaires • Simuler le plasma comme une assemblée de particules dans un champ électromagnétique calculé sur une grille. • L’algorithme PIC (= PM) élimine les collisions binaires, et garde les interactions collectives. • Cousins des codes de simulation de gaz d’étoiles (galaxies).
Domaine d’intérêt des codes particulaires • Plasmas non/peu collisionnels (hors ETL). Il faut une infinité d’équations fluides, ou une équation de fermeture crédible (rare). Les équations cinétiques (codes Vlasov et PIC) : une description complète avec peu d’équations. • Permettent de simuler des phénomènes que le choix des variables fluides ne permet même pas d’envisager : création de faisceaux de particules, « trous » dans l’espace des phases (turbulence), etc. • Ont (à part ça) des qualités et des défauts différents des codes fluides ou MHD, en termes de diffusion, échelles caractéristiques, niveau de bruit .
Quelques axes de développement des codes PIC • Simuler des systèmes plus grands, des phénomènes plus lents. Agir sur les équations Agir sur le schéma numérique Agir sur la géométrie • S’affranchir du niveau de bruit élevé des codes particulaires.
Vers des grands systèmes :les équations (1) • Dynamique complète des électrons et des ions. Petits systèmes, temps caractéristiques courts. • Dynamique des centre guide des électrons : codes centre guide (on néglige leur rayon de Larmor). • Dynamique centre guide des ions : codes gyrocinétiques (on tient compte des effets de rayon de Larmor fini des ions).
Vers des grands systèmes :les équations (2) • Prise en compte des collisions échanges de charges avec les neutres…. • Prise en compte de la gravitation exosphères des planètes et des étoiles
Vers des grands systèmes :schéma numérique • Codes PM explicites : décrivent tout. Coûtent cher en CPU et en mémoire. Petits systèmes, temps caractéristiques courts. • Codes implicites : amortissent les hautes fréquences, justes sur les basses fréquences. Plus complexes. Codes méso-échelle. • Code hybrides : eq. fluides sur les électrons, PIC sur les ions. Un compromis intéressant. Le problème de l’équation de fermeture demeure. Codes méso-échelle ou grande échelle (comme les codes MHD).
Vers des grands systèmes :la géométrie • En général, équations aux différences finies, à maille régulière. • Géométrie cartésienne ou cylindrique. • Mailles variables, autres géométries (orthogonales si possible).
Le niveau de bruit • Codes PIC classiques : Du fait du nombre réduit des particules (macroparticules), niveau de bruit plus élevé que dans la nature. Mais la plupart des particules des codes PM servent à décrire des parties de la fonction de distribution qui n’évoluent pas. • Codes PIC perturbatifs : F(x,v,t)= F0(x,v) + dF(x,v,t) F0 : état d’équilibre, non recalculé dans la simulation. dF : la partie que l’on recalcule dans la simulation. Niveau de bruit réaliste avec peu de particules. Très adapté à l’étude de la stabilité et à la turbulence faible.
Les codes PIC en France (ceux dont j’ai entendu parler) • Codes PIC classiques : tout le monde • Codes PIC implicites wp : CPHT (X), LESIA, (CETP en cours) • Codes PIC centre guide : CETP, CESR • Codes hybrides : LESIA, CETP • Codes perturbatifs : CETP (explicite) • Codes exosphériques : LESIA, CETP (hybride, Mars)
Les problèmes techniques • Problèmes liés aux schémas numériques : stabilité, justesse, estimation de la diffusion… • Problèmes liés aux conditions aux limites : problèmes fondamentaux et difficultés pratiques de mise en œuvre. • Problèmes d’analyse numérique liés à la résolution des équations du champ électrique. • Difficultés de mise en oeuvre du codage des matrices creuses pour des équations un peu « longues ». • Problèmes liés à l’optimisation, parallélisation. • Problèmes de gestion de gros fichiers (3D) • Problèmes liés aux diagnostics (3D) • …
Intérêt d’un club de développeurs de codes PIC • Les domaines d’expertises sont inégalement répartis. Chaque simulateur s’est attaqué sérieusement à au moins un des problèmes énoncés ci-dessus. Aucun (presque) ne les maîtrise tous. Un club permettrait aux développeurs de codes de se rencontrer et de partager leur savoir faire pour la résolution des difficultés techniques. • Des codes sont sous-employés, car les développeurs ne sont pas nécessairement conscients de tous les domaines d’application possibles.
Fonctionnement possible d’un « club codes particulaires » Affaires intérieures : Développement de codes • Eviter que chaque membre se ré-attaque à un problème déjà réglé par d’autres. • Gain de temps : trouver le mode d’échange le plus économique possible. • Pour chaque participant : équilibre entre le don et le bénéfice Affaires extérieures : veille technologique, valorisation scientifique • Suivre ce qui se fait dans d’autres communautés • Faire connaître les codes que l’on maîtrise : autres simulateurs et utilisateurs potentiels (qui ne connaissent pas nécessairement la simulation).
Fonctionnement possible d’un « club codes particulaires » Don : pot commun et ateliers • Chaque participant met au moins un code (documenté et ayant donné lieu à une publication récente) à la disposition des autres membres. Il reste le propriétaire du code, mais les autres sont libres de s’inspirer de ce qu’il y a dedans pour leurs propres développements. • Il participe à des ateliers où il explique comment il a abordé/résolu certains problèmes rencontrés par d’autres membres.
Fonctionnement possible d’un « club codes particulaires » Bénéfice : • Il peut mettre son nez dans les listings d’autres codes (ceux du pot commun) y trouver des idées, des solutions. • Il participe à des ateliers où il peut se permettre de poser des questions techniques aux autres, et espérer un exposé utile de leur part. • Ouverture vers de nouvelles collaborations, toujours stimulées par ce genre d’interactions.
Fonctionnement possible d’un « club codes particulaires » Charte : • Les codes mis au pot commun restent la propriété de leur concepteur. Si on s’en inspire, on doit citer l’auteur dans les publications. Si on s’en inspire « beaucoup », on coopère et cosigne les publications. Si on fait tourner un code mis au pot commun, c’est dans le cadre d’une coopération, avec demande d’avis et co-signature des publications (sauf avis explicite de l’auteur du code mis au pot commun). • Le code mis au pot commun doit être récent (présenter un intérêt par rapport aux problèmes actuels), mais pas une ultime version. Plutôt un code ayant déjà donné lieu à une/des publications.
Fonctionnement possible d’un « club codes particulaires » Affaires extérieures : • Nous faire connaître auprès des utilisateurs potentiels (ceux qui veulent expliquer le monde réel à l’aide d’observations ou de théories analytiques) • Interagir (invitations aux ateliers) avec des simulateurs d’autres communautés : communauté des plasmas de fusion et industriels communauté des codes PIC gravitationnels astrophysiciens adeptes des codes fluides etc.