• Aucun résultat trouvé

Modélisation du transfert radiatif

2.5 La vie d’un photon

Le traitement numérique de la propagation des paquets de pho-tons a pour objectif de résoudre de manière probabiliste l’équation du transfert radiatif. Sur leur chemin à travers le volume du modèle, les paquets de photons vont subir des absorptions et/ou diffusions jusqu’à ce qu’ils s’échappent éventuellement de l’environnement cir-cumstellaire et soient utilisés pour générer les quantités observables. Chaque évènement (origine, absorption, diffusion, traversée d’une cellule, ...) produit une certaine information qui est utilisée pour ré-soudre les équations du transfert et de l’équilibre radiatif. La marche au hasard des photons est déterminée par des quantités tirées aléa-toirement suivant des lois de probabilité fixées par les équations du système : point de départ, direction de propagation, longueur de vol, nature des interactions avec la poussière, compor-tement lors de ces interactions.

2.5.1 Génération des photons

Point d’émission sur l’étoile

Les étoiles sont, dans le cas général, assimilées à des sphères rayonnant uniformément. La position initiale du photon est donc exprimée en coordonnées sphériques (ici pour une étoile

42 2.5.1 Génération des photons x y z étoile marche au hasard environnement circumstellaire photon stellaire photon thermique émis par le disque limite

du modèle

Figure 2.2 – Représentation schématique de la propaga-tion des photons dans le mi-lieu circumstellaire. Les pho-tons réalisent une marche au hasard ponctuée de diffusions et absorptions et s’échappent éventuellement du milieu cir-cumstellaire. Le trait plein symbolise la trajectoire d’un photon stellaire et le trait en pointillé la trajectoire d’un photon émis par le disque. situé à l’origine) : − →r 0 = R   u v w  = R   sin θcos φ sin θsin φ cos θ   (2.5.1) avec θ ∈ [0, π] et φ

∈ [0, 2π]. Pour que le point d’émission −r0 soit distribué uniformément sur la surface stellaire, il faut que la probabilité fθ∗,φ∗ que θ soit choisi dans [θ, θ+ dθ] et φ dans [φ, φ+ dφ] soit proportionnelle à la surface de l’étoile sous-tendue par ces angles dA = R2

sin θ. La densité de probabilité fθ∗,φ∗ peut être factorisée fθ∗,φ∗ = fθfφ avec :

fθ ∝ R2sin θ (2.5.2)

f

φ ∝ 1 (2.5.3)

Les angles θ et φ sont choisis au moyen de deux nombres aléatoires répartis uniformément entre 0 et 1

cos θ = 1 − 2A (2.5.4)

φ = 2πA (2.5.5)

Direction d’émission depuis l’étoile

L’énergie émise dans un angle solide dΩ par l’élément de surface dA est donné par l’in-tensité spécifique : dE = Iλ d, φ d) cos θ ddA dt dλ sin θ d d d (2.5.6) où θ d et φ

d sont définis par rapport à la normale à la surface. La probabilité d’émettre dans dΩ est fθ d,φ∗ d ∝ dE dA dt dλ = Iλd, φd) cos θd sin θd d d (2.5.7)

Pour une sphère qui émet uniformément Iλ est isotrope, la direction d’émission −n0 depuis la surface stellaire est donc donnée par

fθ d ∝ Iλ cos θ d sin θ d (2.5.8) fφ d ∝ 1 (2.5.9)

La vie d’un photon 43 et les angles θ

d et φ

d sont obtenus par

cos θd = √

A (2.5.10)

φd = 2πA (2.5.11)

Des lois plus complexes d’irradiation stellaire ou d’assombrissement centre-bord peuvent être prises en compte directement si Iλ

d) est connu pour chaque longueur d’onde. Les angles θ

d et φ

d sont ici définis par rapport à la normale à la surface de l’étoile et nous devons les exprimer dans le système de coordonnées universel. Pour cela, on considère le vecteur : − →n 0 =   sin θ dcos φ d sin θ dsin φ d cos θ d   (2.5.12)

qui donne la direction de vol dans le système de coordonnées attaché au point d’émission. Il s’agit alors de calculer les coordonnées de ce vecteur dans le système universel. La transfor-mation du système de coordonnées universel vers le système de coordonnées locales se fait au moyen d’une rotation d’angle θ autour de l’axe y suivie d’une rotation d’angle φ autour de l’axe z, avec θ et φ définis dans le sens trigonométrique. Ces transformations peuvent s’écrire sous forme matricielle :

Ry) =   cos θ 0 sin θ 0 1 0 − sin θ 0 cos θ   (2.5.13) et Rz) =   cos φ − sin φ 0 sin φ cos φ 0 0 0 1   (2.5.14)

La rotation globale qui peut s’écrire, d’après le théorème d’Euler, comme la combinaison des deux rotations devient ainsi :

R(θ, φ) = Rz) × Ry) = 

cos θcos φ

− sin φ sin θcos φ

cos θsin φ cos φ sin θsin φ

− sin θ 0 cos θ

 (2.5.15)

et le vecteur de propagation est donné par : − →n 0 =   cos θcos φ

− sin φ sin θcos φ

cos θsin φ cos φ sin θsin φ

− sin θ 0 cos θ  ×   sin θ dcos φ d sin θ dsin φ d cos θ d   (2.5.16)

Les éléments de la matrice de rotation peuvent s’écrire en fonction des coordonnées du vecteur −

r

0 (dans le cas où w est différent de 1) :

cos θ = w (2.5.17) sin θ = p1 − w∗2 (2.5.18) cos φ = u sin θ = √ u 1 − w∗2 (2.5.19) sin φ = v sin θ = √ v 1 − w∗2 (2.5.20)

44 2.5.1 Génération des photons On obtient alors les coordonnées du vecteur propagation :

− →n 0=        uw √ 1 − w∗2 sin θ dcos φ d − √ v 1 − w∗2 sin θ dsin φ d + u cos θ d vw √ 1 − w∗2 sin θ dcos φ d + √ u 1 − w∗2 sin θ dsin φ d + v cos θ d1 − w∗2 sin θ dcos φ + w cos θ d        (2.5.21)

Dans le cas où w = 1, les deux systèmes de coordonnées sont confondus, aucune rotation n’est nécessaire et le vecteur propagation est simplement :

− →n 0 =   sin θ dcos φ d sin θ dsin φ d cos θ d   (2.5.22)

Point d’émission dans une cellule

Suivant l’hypothèse que la température et l’opacité sont constantes dans la cellule, l’émis-sion est uniforme dans une cellule. De ce fait, la probabilité de choisir les coordonnées cy-lindriques rc dans [rc, rc + drc], zc dans [zc, zc + dzc] et φc dans [φc, φc + dφc] est donné par :

frc,zc,φc ∝ Bλ(T(−→r )) κabs

λ (−→r ) rc sin φcdrccdzc (2.5.23)

∝ r sin φcdrccdzc (2.5.24)

La fonction de probabilité peut se factoriser frc,zc,φc = frcfzcfφc avec

frc ∝ rc (2.5.25)

fzc ∝ 1 (2.5.26)

fφc ∝ 1 (2.5.27)

Les relations qui nous donnent la position d’émission des photons sont donc : rc = q r2n−1+ A(r2 n− r2n−1) (2.5.28) zc = zn−1+ A(zn− zn−1) (2.5.29) φc = 2πA (2.5.30)

Direction d’émission depuis une cellule

L’émission dans une cellule est supposée isotrope, la probabilité d’émettre dans un angle solide donné dΩ est directement proportionnelle à cet angle solide et fθc

d,φc d ∝ sin θdcc dc d et en décomposant : fθc d ∝ sin θcd (2.5.31) fφc d ∝ 1 (2.5.32)

La direction d’émission est ainsi donnée par − →n 0 =   sin θcdcos φcd sin θcdsin φcd cos θc d   (2.5.33) avec cos θdc = 1 − 2A (2.5.34) φcd = 2πA (2.5.35)

La vie d’un photon 45 2.5.2 Énergie et longueurs d’onde des paquets

Il ne nous reste plus qu’à déterminer l’énergie et la longueur d’onde que nous allons attribuer à nos paquets de photons. La méthode Monte Carlo offre une très grande flexibilité dans ces choix. Nous exploitons cette liberté dans l’échantillonage du champ de rayonnement afin d’améliorer les performances du code. Suivant l’objectif à atteindre, l’échantillonage en énergie et en longueur d’onde va varier et nous présentons les détails des calculs dans la partie 2.7.4.

D’une manière générale, on peut choisir une distribution quelconque pour échantillonner une propriété du champ de rayonnement (que ce soit sa distribution angulaire, en énergie, en longueur d’onde), il s’agit simplement de corriger en conséquence les propriétés des pa-quets pour s’assurer qu’en moyenne, on reproduit bien la distribution recherchée. En d’autres termes, si l’on doit produire une loi de distribution p(x), on peut tirer x aléatoirement suivant une autre loi q(x), dès lors que l’on applique un poids w(x) = p(x)/q(x) au paquet.

Dans tous les cas, l’énergie et la longueur d’onde d’un paquet sont fixées de manière à ce que la somme des énergies de tous les paquets reçus, pour chaque direction d’observation et chaque longueur d’onde, corresponde à ce que recevrait un observateur et ce indépendam-ment du nombre de paquets propagés. En particulier, l’intégration sur toutes les directions d’observations et sur toutes les longueurs d’onde doit redonner la luminosité bolométrique de l’étoile (dans le cas d’un disque passif).

2.5.3 Longueur de vol

Les photons se déplacent dans l’environnement circumstellaire en suivant une marche au hasard, ponctuée d’absorptions et/ou diffusions. La profondeur optique entre deux points d’interaction est déterminée de manière probabiliste. À partir de l’équation de transfert, nous savons que la fraction des photons qui subissent une interaction avec la matière entre τ et τ + dτ est donnée par fτdτ = e−τ− e−(τ +dτ ) = e−τdτ . La loi de probabilité de la profondeur optique est donc :

fτ = e−τ (2.5.36)

En considérant l’intervalle de profondeur optique [0, ∞[ et la formule 2.2.2, la profondeur optique jusqu’au prochain point d’interaction est obtenue par :

τ = − ln(A) (2.5.37)

où A est un nombre aléatoire réparti uniformément entre ]0, 1].

La longueur de vol l jusqu’au point d’interaction s’obtient en inversant l’intégrale : τ =

Z l 0

κ(s)ds (2.5.38)

où s désigne la distance le long de la direction de propagation du photon.

Pour la précision de la méthode Monte-Carlo, il est nécessaire de résoudre cette équation avec soin et en particulier en suivant les éventuelles discontinuités d’opacité. Si une certaine imprécision peut être acceptée pour les simulations d’images en lumière diffusée, elle ne peut l’être dans le cas du calcul de l’équilibre radiatif. En effet, si la précision n’est pas suffisante, l’inversion numérique de τ(s) près de la limite d’une cellule peut donner un point d’interaction situé dans la mauvaise cellule. Cela peut conduire à des erreurs importantes, par exemple une “fausse” absorption dans une cellule presque vide (avec une opacité très faible) doit être compensée par l’émission thermique d’une énergie identique ce qui implique une température très élevée en raison de l’opacité très faible. Ainsi une mauvaise détermination

46 2.5.3 Longueur de vol de la position d’interaction peut produire des erreurs sur la détermination des températures près des discontinuités d’opacité.

L’inversion de τ(s) est exécutée un très grand nombre de fois (au moins une fois par photon) et représente la partie la plus coûteuse en temps de calcul de la simulation Monte-Carlo. Nous nous sommes donc attachés à optimiser cette étape du calcul, en explorant plusieurs méthodes d’intégration et en testant leur efficacité.

La méthode choisie est de déterminer pour chaque cellule traversée par le photon, la position à laquelle le photon va sortir de la cellule. Il s’agit donc de déterminer les distances (le long de la direction de vol) entre le photon et chaque limite de la cellule puis de choisir la distance minimale, qui correspond à la limite que le photon va franchir. Cette distance minimale est la longueur de vol du photon dans la cellule, elle est sauvegardée au cours du calcul car elle permet en outre le calcul du champ de rayonnement (cf section 2.7.2).

Deux méthodes ont été implémentées pour calculer la longueur de vol parcouru par un photon dans chaque cellule. La première, spécifique à la grille cylindrique, est particulièrement efficace car elle minimise les calculs en faisant intervenir des informations sur l’organisation de la grille. La seconde, basée sur la méthode de dichotomie, est plus universelle et serait très facilement adaptable à une grille autre que cylindrique mais est en revanche moins rapide, d’un facteur de l’ordre de 2.

Méthode 1

Pour un disque axisymétrique, un photon quittera la cellule (n, k) en franchissant une des limites rn, rn+1, zk, zk+1, φl, φl+1 de la cellule. Le calcul de la distance parcourue par le photon pour atteindre une limite radiale donnée revient au calcul du point d’intersection entre une droite et un cercle en géométrie à deux dimensions, soit à résoudre une équation du second degré. En effet, les coordonnées du paquet de photons, après qu’il ait parcouru une distance s, sont :

x = x0+ s.u (2.5.39)

y = y0+ s.v (2.5.40)

z = z0+ s.w (2.5.41)

et la distance ∆sr correspondant à la distance radiale r est donnée par :

∆sr2(u2+ v2) + 2∆sr(x0u + y0v) + x02+ y02− r2 = 0 (2.5.42) La distance jusqu’au bord de la cellule est donnée par la plus petite solution positive de l’équation. Pour réduire le temps de calcul, des tests sur la direction de propagation du photon sont effectués. Le signe du produit scalaire entre le vecteur position du photon et le vecteur de propagation, projetés sur le plan équatorial du disque, permet de déterminer si le photon se rapproche ou s’éloigne de l’objet central. Si le photon s’éloigne, il ne franchira jamais la limite inférieure de la cellule et l’équation 2.5.42 n’est résolue que pour la limite supérieure r = rn+1. Si le photon se rapproche de l’objet central, il peut franchir les limites supérieures et inférieures, mais s’il franchit les deux, il franchira nécessairement la limite inférieure en premier (Fig. 2.3). L’équation 2.5.42 est donc résolue pour la limite inférieure r = rnet si elle n’a pas de solution positive, elle est résolue pour la limite supérieure r = rn+1

de la cellule.

Le calcul de la distance du photon à une limite verticale donnée (Fig. 2.4) revient quant-à-lui au calcul du point d’intersection entre deux droites (toujours en géométrie à deux dimensions), soit à résoudre une équation du premier degré. Comme précédemment, on sé-lectionne la limite que le photon peut franchir (supérieure ou inférieure) à l’aide du signe du

La vie d’un photon 47

rn rn

rn+1

rn+1

Figure 2.3 – Détermination du point de sortie radial d’un photon. La limite verticale de la cellule que le photon va franchir est fonction de la direction de propagation du photon. Si cette direction forme un angle aigu avec le vecteur position du photon (figure de gauche), le photon s’éloigne de l’objet central et franchira la limite externe de la cellule. Si l’angle est obtus (figure de droite), le photon se rapproche de l’objet central et peut alors franchir les limites interne et externe : le point d’intersection éventuel avec la limite inférieure est calculé ; s’il n’existe pas, le point d’intersection avec la limite supérieure est calculé.

produit scalaire du vecteur position et du vecteur position, projetés sur l’axe vertical, pour déterminer si le photon s’éloigne (et franchira donc la limite supérieure de la cellule z = zk+1) ou se rapproche du plan équatorial (et franchira donc la limite inférieure de la cellule z = zk). Une fois la limite z que le photon peut franchir déterminée, il reste à résoudre l’équation suivante : z0+ ∆sz.w = z (2.5.43) zk+1 zk+1 zk zk

Figure 2.4 – Détermination du point de sortie vertical d’un photon. La limite verticale de la cellule que le photon va franchir est fonction de la direction de propagation du photon. Si cette direction forme un angle aigu avec la normale au plan équatorial (figure de gauche), le photon monte vers la surface du disque et franchira la limite supérieure de la cellule. Si l’angle est obtus (figure de droite), le photon se rapproche du plan médian et franchira la limite inférieure.

Si le disque n’est pas axisymétrique, il faut en outre rechercher à quelle position le photon va franchir la limite azimutale de le cellule (Fig. 2.5). On recherche d’abord si le photon se déplace dans le sens trigonométrique ou antitrigonométrique pour déterminer quelle limite azimutale il peut franchir, en regardant le signe du produit scalaire du vecteur position avec le vecteur perpendiculaire au vecteur propagation, projetés sur le plan du disque, puis on

48 2.5.3 Longueur de vol résout l’équation du premier degré :

y0+ ∆sφv

x0+ ∆sφu = tan φ (2.5.44)

où φ est l’angle de position de la limite de la cellule à franchir. Si la solution est négative, elle est ignorée.

φl+1

φl+1 φl+1

φl

φl φl

Figure 2.5 – Détermination du point de sortie azimutal d’un photon. La limite azimutale de la cellule que le photon va franchir est fonction de la direction de propagation du photon. Si cette direction forme un angle aigu avec le vecteur perpendiculaire au vecteur position (figure de gauche), le photon tourne dans le sens trigonométrique et franchira la limite d’azimut le plus grand. Si l’angle est obtus (figure centrale), le photon tourne dans le sens anti-trigonométrique et franchira la limite d’azimut le plus faible. Si le photon se propage avec un angle compris entre les angles définis par les deux limites azimutales (figure de droite), il ne pourra franchir une des limites car il aurait déjà franchi la limite s’il avait toujours été sur cette trajectoire. La solution (qui correspond à un temps négatif) est donc ignorée.

Dans le cas non axisymétrique, la détermination des limites verticales est légèrement modifiée pour prendre en compte le fait que deux cellules symétriques par rapport au plan du disque ne sont maintenant plus équivalentes : un photon qui se dirige vers le plan médian va franchir une limite inférieure (comme précédemment) s’il a une altitude positive mais il va franchir une limite supérieure s’il a une altitude négative.

La distance jusqu’à la limite de la cellule i est finalement déterminée en prenant la distance minimale parmi les distances radiale, verticale et éventuellement azimutale :

∆si= Min(∆sr, ∆sz, ∆sφ) (2.5.45)

Comme la méthode nous permet de savoir exactement quelle interface nous avons franchie, nous savons sans avoir à le calculer quelle va être la cellule suivante. Par exemple, si le photon franchit la limite rn+1, nous n’aurons qu’à incrémenter l’indice radial pour trouver la nouvelle cellule.

Méthode 2

La limite à franchir par le photon est ici déterminée par une méthode dichotomique. On fait avancer le photon par des pas d’intégration ds successifs, de longueur une certaine fraction de la plus petite dimension de la cellule, jusqu’à ce que le photon sorte de la cellule. Dès que le photon est sorti de la cellule, les deux derniers points −rj et −rj+1, de part et d’autre de la limite (ou des limites), sont gardés en mémoire. Cette paire de points est ensuite redéfinie pour encadrer une unique limite avec un précision pre-déterminée. Cet encadrement est réalisé à l’aide d’une méthode dichotomique, initialisée par −r+= −→r

j+1∈ V et −r= −→r

La vie d’un photon 49 est le volume de la cellule où se trouve le point de départ du photon. Les paires successives sont données par :

 −→r + − →r  =                − →r + 1 2(−r ++ −→r ) ! si 1 2(−r++ −r) ∈ V 1 2(−r ++ −→r ) − →r ! si 1 2(−r ++ −→r ) /∈ V (2.5.46)

et l’algorithme s’arrête quand |−r++ −→r | < ε où ε est la précision souhaitée. La longueur de vol parcourue par le photon dans la cellule est finalement donnée par :

∆si = 1 2(−r ++ −→r ) − −r0 (2.5.47)

où −r0 est la position initiale du photon dans la cellule.

S’il la première méthode semble plus complexe, elle est cependant plus rapide. En effet, pour chaque cellule, le temps de calcul correspond principalement à la résolution d’une (ou de deux) équations du second degré, les équations de premier degré et différents tests étant beaucoup plus rapides à traiter. La seconde méthode, où très peu de calculs sont réalisés, fait intervenir un très grand nombre de tests logiques et se révèle finalement plus lente.

Le photon va-t-il interagir avec la matière ?

A l’intérieur d’une cellule, l’opacité est supposée constante et l’inversion est alors directe : l’épaisseur optique de la cellule i est τi= κi∆si.

Le calcul de la longueur de vol est répétée pour toutes les cellules traversées par le photon jusqu’à ce qu’il sorte du volume, auquel cas, il contribuera aux quantités observables ou jusqu’à ce que la profondeur optique τ soit atteinte : Pn

i κi∆si > τ , auquel cas le photon interagira avec la matière dans la cellule n. La longueur de vol ∆s

n dans la cellule n est alors déterminée de manière à ce que :

n−1

X

i=1

κi∆si+ κn∆sn= τ (2.5.48)

Si le photon est diffusé, ou absorbé puis réémis, il continue sa marche au hasard suivant une nouvelle direction, une nouvelle longueur optique τ est tirée et le calcul doit être répété pour déterminer la nouvelle longueur de vol jusqu’au point d’interaction suivant. La sélection de la nature de l’interaction, diffusion ou absorption, est elle aussi aléatoire. Nous tirons un nombre aléatoire uniformément entre 0 et 1, s’il est supérieur à l’albédo alors l’interaction est une absorption, sinon, il s’agit d’une diffusion.

2.5.4 Production des quantités observables

Quand les photons sortent du modèle, ils sont propagés jusqu’à l’observateur et classés suivant leur position, direction de vol et longueur d’onde. Les photons s’échappent dans toutes les directions et le code produit donc simultanément les images ou distributions spectrales d’énergie pour toutes les lignes de visée.

Si on suppose que l’observateur est situé à l’infini, il ne peut recevoir que les photons dont la direction de vol coïncide avec la ligne visée. Dans la pratique, l’observateur n’est pas à une distance infinie mais à une distance très grande devant la taille du récepteur et

50

l’angle sous-tendu par le récepteur est extrêmement faible. Du fait de la nature probabiliste du code Monte-Carlo, nous ne pouvons utiliser des angles aussi faibles et devons accepter de regrouper dans un même capteur centré en θ, l’ensemble des photons qui s’échappent avec une direction de vol comprise dans un intervalle autour de θ. L’intervalle peut être choisi aussi petit que nécessaire avec la limitation que plus l’intervalle sera petit, moins de photons s’échapperont avec une direction de vol comprise dans cet intervalle. Dans la pratique, la largeur des capteurs est fixée en fonction de la précision recherchée sur l’inclinaison. Les capteurs sont définis pour sous-tendre un même angle solide :

– en inclinaison, les capteurs sont répartis en intervalles égaux de cosinus de l’angle d’in-clinaison. Pour Nθ capteurs, le capteur n regroupera toutes les inclinaisons comprises dans l’intervalle : ∆θn=  cos1 n Nθ  , cos1 n − 1 Nθ  (2.5.49) Ceci assure que tous les capteurs interceptent le même angle solide.

– en azimut, les capteurs sont répartis en intervalles égaux d’angles . Pour Kφ capteurs, le capteur k regroupera tous les azimuts compris dans l’intervalle :