Difference between revisions of "Rayleigh scattering"

From Planets
Jump to: navigation, search
 
(20 intermediate revisions by one other user not shown)
Line 33: Line 33:
 
== Formalism ==
 
== Formalism ==
  
We consider a layer K & the channel NW.
+
We consider a layer.
  
 
dP 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.
  
 
dN is the number of  molecules per m2 & 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
 +
 +
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
 
<math>m_{molecule}</math> is the mass of one molecule of the considered gas
Line 43: Line 45:
 
g is the gravity
 
g is the gravity
  
dTau is the optical depth for a given wavelength
+
sigma_mol is the Rayleigh scattering cross section of the molecule
 
 
sigma_mol is the Rayleigh scattering cross section
 
  
 
=== LMDZ formalism ===
 
=== LMDZ formalism ===
  
In LMDZ0 we have :
+
dTau = (tauconsti * tauvari) * dP
 
 
dTau = scalep * (tauconsti * tauvari) * dP
 
  
tauvari = tauvari(wavelength in micron)
+
tauvari = tauvari(wavelength in microns)
  
scalep = 100 because P is in mBar in optcv.F90
+
dP here is in mBar
  
 
=== exo_k formalism ===
 
=== exo_k formalism ===
Line 61: Line 59:
 
dTau = sigma_mol * dN
 
dTau = sigma_mol * dN
  
sigma_mo = sigma_mol(wavenumber in cm-1)
+
sigma_mol = sigma_mol(wavenumber in cm-1)
  
 
which gives : dTau = sigma_mol <math> \displaystyle \frac{dm}{m_{molecule}} </math>
 
which gives : dTau = sigma_mol <math> \displaystyle \frac{dm}{m_{molecule}} </math>
  
 
and then : dTau <math> \displaystyle = \frac{\text{sigma_mol}}{g * m_{molecule}} dP</math>
 
and then : dTau <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 73: Line 73:
 
<math> \displaystyle \text{(tauconsti * tauvari)} = \frac{\text{sigma_mol}}{g * m_{molecule}} * \text{scalep}</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, not to forget the ''scalep'' factor in LMDZ)
+
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 ===  
 
=== 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