On s'intéresse ici à l'évolution d'un gaz de Knudsen (suffisamment raréfié pour que les collisions entre molécules puissent être négligées) dans lequel évoluent des particules rondes ou en forme d'ellipse.
On se ramène à un problème avec conditions aux limites (de type réflection diffuse) en domaine mouvant, simulé par une méthode particulaire (voir ici
et ici).
Les simulations suivantes sont faites avec un code 2d-2v en Python+fortran que j'ai réalisé.
On considère dans cette simulation deux particules (de taille de l'ordre de 10microns) évoluant dans un gaz de vitesse macroscopique (a*Ma,0) -en m/s-, où a est la vitesse du son et Ma le nombre de Mach, pris égal à 0.1. Les particules ont des vitesses de translation opposées égales à (0,2a*Ma) et
(0,-2a*Ma) et pas de vitesse de rotation.
Accident de perte de vide mobilisant des particules de poussière
Ces simulations correspondent au travail décrit dans l'article
ici, dans lequel on considère un mélange gaz-particules modélisé par le couplage de deux équations de type Boltzmann ou le couplage d'une équation de conservation et d'une équation de type Boltzmann (modèle asymptotique lorsque le rapport de masse entre une molécule et une particule tend vers 0). Plus de détails sur le modèle
ici.
J'ai utilisé un code DSMC 3d-3v du CEA que j'ai modifié et qui a ensuite été parrallélisé par Pierre Berthelet (stagiaire au CEA).
Les simulations décrivent une entrée d'air accidentelle dans une enceinte d'atmosphère rarifiée (accident de perte de vide) par un trou de l'enceinte.
On considère dans cette simulation une enceinte cubique (de 1cm de côté), dont le côté supérieur est muni d'une condition d'absorbtion. L'air, de densité 1E21 molécules/m^3 (molécules rouges) arrive dans l'enceinte par le trou bleu avec une vitesse u=(300,0) m/s, et mobilise les particules de poussières (en vert), de rayon 5 microns, de densité en nombre 1E15 particules/m^3. Le modèle constitué du couplage de deux équations de type Boltzmann est simulé en utilisant une méthode de Nanbu.
On considère dans cette simulation une enceinte torique fermée (de hauteur 10cm). Le modèle constitué du couplage d'une équation de conservation et d'une équation de type Boltzmann est simulé en utilisant le couplage d'une méthode Particle-In-Cell et une méthode de Nanbu.
Simulations par méthodes particulaires LTP et FBL
Flot tourbillonnant par méthode LTP
On discrétise ici l'équation d'advection
,
avec
et une condition initiale
.
On utilise la méthode Linearly Transformed Particle (voir
ici) qui est une méthode particulaire avec déformation des fonctions de formes (ici des B3-splines), et une discrétisation en temps avec un schéma RK4 pour le transport des particules. Paramètres numériques : 251x251 particules, pas de temps = 0.5,
période de remapping = 3.
Flot tournant réversible par méthode FBL
On discrétise ici l'équation d'advection
,
avec .
On utilise ici la méthode FBL (voir
ici) qui est hybride entre une méthode particulaire et une méthode semi-Lagrangienne, et une discrétisation en temps avec un schéma RK4 pour le transport des particules avec un pas de temps = 0.05. On ne fait pas de remapping.
Condition initiale régulière.
On considère ici la condition initiale
et T=5.
On utilise 201x201 particules.
Condition initiale indicatrice.
On considère la condition initiale et T=12.
On utilise ici 301x301 particules.
Equation de Vlasov-Poisson
On résout ici l'équation de Vlasov-Poisson 1d-1v pour des électrons
avec une condition initiale correspondant à la simulation d'un amortissement Landau fort :
.
La simulation est faite par méthode LTP ; avec M. Campos-Pinto nous avons montré dans l'article ici
la convergence forte de la densité reconstruite par cette méthode pour cette équation.
Paramètres numériques de la simulation : 501x501 particules,
= 1/8, période de remapping =2.
Interpolation par polynôme positif
Ces simulations (réalisées avec un code Python) illustrent l'algorithme d'interpolation positive introduit dans l'article ici.
On s'intéresse ici à la question suivante : étant donnée une fonction f positive, comment l'approcher sur un intervalle borné par un polynôme de degré arbitraire, lui-même positif?
L'algorithme que nous proposons est basé sur la recherche d'un polynôme interpolant en n+1 points une fonction f donnée,
de degré inférieur ou égal à n, positif sur l'intervalle [0,1], et s'écrivant sous la forme
, avec
si n est impair (n=2p+1) :
, a et b deux polynômes de degrés inférieurs ou égaux à p,
si n est pair (n=2p) :
, a un polynôme de degré inférieur ou égal à p, et b un polynôme de degré inférieur ou égal à p-1.
Nous proposons un algorithme de type point Newton-Raphson modifié permettant de construire une suite de points d'interpolation glissants et entrelacés,
à partir de laquelle on obtient une suite de polynômes positifs.
.
Exemple pour la fonction de Runge
Evolution de la suite lorsque le nombre d'itération m augmente, pour n=14.
Evolution de la suite lorsque le degré n du polynôme augmente, après m=15 itérations.
Evolution de la suite de polynômes a et b lorsque le nombre d'itération m augmente, pour n=14.