Difference between revisions of "Rayleigh scattering"
Noe clement (talk | contribs) (→LMDZ formalism) |
|||
(12 intermediate revisions by one other user not shown) | |||
Line 52: | Line 52: | ||
tauvari = tauvari(wavelength in microns) | tauvari = tauvari(wavelength in microns) | ||
+ | |||
+ | dP here is in mBar | ||
=== exo_k formalism === | === exo_k formalism === | ||
Line 62: | Line 64: | ||
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 69: | 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 | + | 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 === | ||
Line 75: | Line 83: | ||
TAURAY(NW) is calculated in calc_rayleigh.F90 for a given channel NW. | 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 : | |
<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> | ||
Line 82: | Line 90: | ||
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
Contents
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 :
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