Difference between revisions of "Rayleigh scattering"

From Planets
Jump to: navigation, search
 
(33 intermediate revisions by one other user not shown)
Line 33: Line 33:
 
== Formalism ==
 
== Formalism ==
  
We consider a layer .
+
We consider a layer.
  
DPR(K) is the difference of pressure between the two levels that define the layer.
+
dP is the difference of pressure between the two levels that define the layer.
  
dm is the mass per m2 of the layer
+
dN is the number of  molecules per m2 & dm is the mass per m2 of the layer
  
We consider the channel NW
+
dTau is the optical depth for a given wavelength (or wavenumber)
 +
 
 +
<math>m_{molecule}</math> is the mass of one molecule of the considered gas
 +
 
 +
g is the gravity
 +
 
 +
sigma_mol is the Rayleigh scattering cross section of the molecule
  
 
=== LMDZ formalism ===
 
=== LMDZ formalism ===
  
In LMDZ, in optcv.F90 we have :
+
dTau = (tauconsti * tauvari) * dP
 +
 
 +
tauvari = tauvari(wavelength in microns)
  
TRAY(K,NW)  = TAURAY(NW) * DPR(K)
+
dP here is in mBar
  
 
=== exo_k formalism ===
 
=== exo_k formalism ===
  
TRAY = sigma_mol dN with sigma_mol the cross section and dN in molecules/m2
+
dTau = sigma_mol * dN
 +
 
 +
sigma_mol = sigma_mol(wavenumber in cm-1)
 +
 
 +
which gives : dTau = sigma_mol <math> \displaystyle \frac{dm}{m_{molecule}} </math>
  
which gives : TRAY = sigma_mol <math> \displaystyle \frac{dm}{m_{molecule}} </math> with dm in kg/m2
+
and then : dTau <math> \displaystyle = \frac{\text{sigma_mol}}{g * m_{molecule}} dP</math>
  
and then : TRAY <math> \displaystyle = \frac{\text{sigma_mol}}{g * m_{molecule}} dP</math>
+
dP here is in Pascal
  
 
=== Relations between LMDZ & Exo_k formalisms ===
 
=== Relations between LMDZ & Exo_k formalisms ===
Line 59: Line 71:
 
LMDZ & exo_k formalism are linked as following :
 
LMDZ & exo_k formalism are linked as following :
  
<math> \displaystyle \text{TAURAY} = \frac{\text{sigma_mol}}}{g * m_{molecule}} </math>
+
<math> \displaystyle \text{(tauconsti * tauvari)} = \frac{\text{sigma_mol}}{g * m_{molecule}} * \text{scalep}</math>
 +
 
 +
Be careful with units !!! (cm-1 for wavenumbers in exo_k, microns for wavelengths in LMDZ)
  
Be careful with units !!! (cm-1 for wavenumbers in exo_k, microns for wavelengths in LMDZ, not to forget the ''scalep'' factor in LMDZ)
+
Last but not least : not to forget the ''scalep'' factor in LMDZ !
 +
scalep = 100, because P is in mBar in optcv.F90 .
 +
So we move from Pascal to mBar
  
 
=== To be noticed ===  
 
=== To be noticed ===  
  
TAURAY(NW) is calculated in calc_rayleigh.F90.
+
TAURAY(NW) is calculated in calc_rayleigh.F90 for a given channel NW.
  
It is in fact TAUVAR which calculated, and then averaged by the black body function for each channel to give TAURAY :  
+
TAUVAR is first calculated, and then averaged by the black body function for each channel to give TAURAY :  
  
 
<math> \text{TAURAY(NW)} = \frac{\int_{\lambda' \in \text{channel}} \text{TAUVAR} (\lambda') B_{\lambda} \, \mathrm{d}\lambda'}{\int B_{\lambda} \, \mathrm{d}\lambda'} </math>
 
<math> \text{TAURAY(NW)} = \frac{\int_{\lambda' \in \text{channel}} \text{TAUVAR} (\lambda') B_{\lambda} \, \mathrm{d}\lambda'}{\int B_{\lambda} \, \mathrm{d}\lambda'} </math>
  
TAUVAR is cut into two parts : TAUCONSTI et TAUVARI with TAUVAR = TAUCONSTI * TAUVARI
+
TAUVAR is cut into two parts : TAUCONSTI et TAUVARI (previously mentionned) with TAUVAR = TAUCONSTI * TAUVARI
  
 
The <math> \lambda </math> dependence is in the TAUVARI
 
The <math> \lambda </math> dependence is in the TAUVARI
 +
 +
[[Category:Generic-Model]]

Latest revision as of 11:17, 9 March 2023

About Rayleigh scattering

The following article gives a clear overview on Rayleigh scattering cross sections :

Bodhaine (1999) On Rayleigh Optical Depth Calculations : http://web.gps.caltech.edu/~vijay/Papers/Rayleigh_Scattering/Bodhaine-etal-99.pdf

Have a look especially on equations (2) and (9).

About Rayleigh scattering in LMDZ Generic

References

LMDZ

LMDZ uses formalism from :

Hansen (1974) Light scattering in planetary atmospheres : https://ui.adsabs.harvard.edu/link_gateway/1974SSRv...16..527H/ADS_PDF

Have a look on equations (2.29) to (2.32).

exo_k

Rayleigh routine in exo_k is avalaible here :

http://perso.astrophy.u-bordeaux.fr/~jleconte/exo_k-doc/_modules/exo_k/rayleigh.html#Rayleigh.sigma_mol

Exo_k uses formalism from :

Caldas (2019) Effects of a fully 3D atmospheric structure on exoplanet transmission spectra: retrieval biases due to day–night temperature gradients : https://hal.archives-ouvertes.fr/hal-02005332/document

Have a look on equation (12) & appendix D

Formalism

We consider a layer.

dP is the difference of pressure between the two levels that define the layer.

dN is the number of molecules per m2 & dm is the mass per m2 of the layer

dTau is the optical depth for a given wavelength (or wavenumber)

\(m_{molecule}\) is the mass of one molecule of the considered gas

g is the gravity

sigma_mol is the Rayleigh scattering cross section of the molecule

LMDZ formalism

dTau = (tauconsti * tauvari) * dP

tauvari = tauvari(wavelength in microns)

dP here is in mBar

exo_k formalism

dTau = sigma_mol * dN

sigma_mol = sigma_mol(wavenumber in cm-1)

which gives : dTau = sigma_mol \( \displaystyle \frac{dm}{m_{molecule}} \)

and then : dTau \( \displaystyle = \frac{\text{sigma_mol}}{g * m_{molecule}} dP\)

dP here is in Pascal

Relations between LMDZ & Exo_k formalisms

LMDZ & exo_k formalism are linked as following \[ \displaystyle \text{(tauconsti * tauvari)} = \frac{\text{sigma_mol}}{g * m_{molecule}} * \text{scalep}\]

Be careful with units !!! (cm-1 for wavenumbers in exo_k, microns for wavelengths in LMDZ)

Last but not least : not to forget the scalep factor in LMDZ ! scalep = 100, because P is in mBar in optcv.F90 . So we move from Pascal to mBar

To be noticed

TAURAY(NW) is calculated in calc_rayleigh.F90 for a given channel NW.

TAUVAR is first calculated, and then averaged by the black body function for each channel to give TAURAY \[ \text{TAURAY(NW)} = \frac{\int_{\lambda' \in \text{channel}} \text{TAUVAR} (\lambda') B_{\lambda} \, \mathrm{d}\lambda'}{\int B_{\lambda} \, \mathrm{d}\lambda'} \]

TAUVAR is cut into two parts : TAUCONSTI et TAUVARI (previously mentionned) with TAUVAR = TAUCONSTI * TAUVARI

The \( \lambda \) dependence is in the TAUVARI