Cross Sections¶
This page shows the full list of cross sections (also named
opacities) that can be included in Pyrat Bay runs.
Sampled cross sections¶
Sampled cross sections are 3D arrays that provide the cross section
for a given species (in cm2 molecule-1 units),
sampled over a grid of temperature (K), pressure (bar), and wavenumber
(cm-1) arrays. Sampled cross sections in Pyrat Bay are Numpy
.npz files, see write_opacity() in the API for more details.
The Zenodo repositories doi.org/10.5281/zenodo.16965390 and doi.org/10.5281/zenodo.17060936 provide pre-computed cross-section files, intended for a broad range of applications. See the list below for direct links to the files for each molecule.
These cross sections have been computed assuming an H₂/He-dominated atmosphere, and terrestrial isotopic ratios. The lines have Voigt profiles with a wing cut-off at 300 HWHM and at 25 cm-1. The grids sampling are:
Wavelength: \(0.15-33\) μm, at a constant resolution of \(R=25.000\)
Temperature: \(200-5000\) K, with \(\Delta T = 150\) K
Pressure: \(1.0^{-9}-1.0^{3}\) bar, equally sampled in log(p) with 4 samples per dex.
Species |
Source |
References |
|---|---|---|
Exomol, mollist |
||
Exomol, acety |
||
Exomol, mm |
||
Exomol, xab |
||
HITEMP, li |
||
ames, ai3000k |
||
Exomol, jnk |
||
HITRAN, 2020 |
||
Exomol, mollist |
||
Exomol, hitran |
||
Exomol, pokazatel |
||
Exomol, ayt2 |
||
Exomol, harris larner |
||
Exomol, coxon-hajig |
||
Exomol, barton |
||
Exomol, oyt4 |
||
Exomol, barton |
||
Exomol, rivlin |
||
Exomol, coyute |
||
Exomol, oyt8 |
||
HITEMP, 2022 |
||
Exomol, laty |
||
Exomol, salty |
||
Exomol, pain |
||
Exomol, pops |
||
Exomol, gyt |
||
Exomol, sightly |
||
Exomol, oy2t |
||
Exomol, siouvenir |
||
Exomol, ucty |
||
Exomol, solis |
||
Exomol, exoames |
||
Exomol, toto |
||
Exomol, hyvo |
Other sources¶
If this sampling (e.g., different ranges or higher resolution) is not suitable for a project or if cross sections for other species are needed, users can compute their own cross sections from line lists from Exomol or HITRAN/HITEMP. More details in this section: line sampling.
Alternatively,
Pyrat Bayis also compatible with petitRADTRANS cross-section files [Molliere2019].
Usage¶
In a configuration file, use the sampled_cross_sec key to list the
cross sections to be included in a run:
# Line-sampled cross sections
sampled_cross_sec =
inputs/cross_section_0.15-33.0um_0200-5000K_R025K_H2O_exomol_pokazatel.npz
inputs/cross_section_0.15-33.0um_0200-5000K_R025K_CO_hitemp_2019.npz
inputs/cross_section_0.15-33.0um_0200-5000K_R025K_CO2_ames_ai3000k.npz
inputs/cross_section_0.15-33.0um_0200-5000K_R025K_CH4_exomol_mm.npz
inputs/cross_section_0.15-33.0um_0200-5000K_R025K_SO2_exomol_exoames.npz
inputs/cross_section_0.15-33.0um_0200-5000K_R025K_H2S_exomol_ayt2.npz
Whenever sampled cross sections are used in Pyrat Bay, output
spectra will be computed at the given wavelength sampling of the cross
sections. This samping can be trimmed down or down sampled (if
desired) with the following keys:
# Wavelength sampling (keep every second point between boundaries)
wl_low = 1.0 um
wl_high = 12.0 um
wl_thinning = 2
Lastly, cross sections can also be used in stand-alone scripts. See the following notebook for details:
Continuum cross sections¶
This input is intended for continuum cross sections that vary slowly with wavelength and temperature (and no dependency on pressure). In practice, continuum cross sections are used for collision induced absorptions (CIA).
Pyrat Bay provides CIA continuum opacities for the H₂–H₂ and
H₂–He pairs, the two most relevant CIA sources for primary
atmospheres:
CIA |
T range (K) |
\(\lambda\) range (μm) |
References |
|---|---|---|---|
60 – 7000 |
0.6 – 500.0 |
||
50 – 7000 |
0.5 – 31.0 |
Usage
In a configuration file, use the continuum_cross_sec key to list
the CIA files to be included:
# CIA cross sections
continuum_cross_sec =
{ROOT}pyratbay/data/CIA/CIA_Borysow_H2H2_0060-7000K_0.6-500um.dat
{ROOT}pyratbay/data/CIA/CIA_Borysow_H2He_0050-7000K_0.5-031um.dat
Note the {ROOT} in the path indicates the code to find the CIA file
provided by Pyrat Bay (so, no need to ever edit this path).
For other CIA pairs, e.g., from HITRAN
[Karman2019], Pyrat Bay provides these shell commands to
re-format the downloaded CIA files. Here’s one example (to run from
the prompt):
# Download and format HITRAN H2-H2 CIA file for Pyrat Bay:
wget https://hitran.org/data/CIA/main/H2-H2_2011.cia
pbay -cs hitran H2-H2_2011.cia
Lastly, cross sections can also be created and used in stand-alone scripts. See the following notebook for details: CIA cross sections notebook
Alkali¶
For the sodium and potasium alkali resonant doublets, Pyrat Bay
provides the line-profile models from [Burrows2000].
Models |
Species |
References |
|---|---|---|
|
Na |
|
|
K |
These profiles are based on van der Waals and statistical theory, adopting the line parameters from VALD [Piskunov1995] and collisional-broadening half-width from [Iro2005].
Usage
In a configuration file, use the alkali key to list the cross
sections to be included in a run. the optional alkali_cutoff key
sets a cutoff from the line centers (in cm-1 units) at which to
stop computing the profiles:
# Alkali cross sections [sodium_vdw potassium_vdw]
alkali =
sodium_vdw
potassium_vdw
# Alkali profile cutoff (defaulted to 4500 cm-1)
alkali_cutoff = 4500.0
Lastly, alkali cross sections can also be used in stand-alone scripts. See the following notebook for details: Alkali cross sections notebook.
Rayleigh¶
The rayleigh key sets Rayleigh opacity models. The following
table lists the available Rayleigh model names:
Models |
Species |
References |
|---|---|---|
|
H |
|
|
He |
|
|
H₂ |
These models are tailored for H, He, and H₂ species, and thus req
Usage
In a configuration file, use the
rayleighkey to list the cross sections to be included in a run:
# Rayleigh cross sections
rayleigh =
rayleigh_H2
rayleigh_He
rayleigh_H
Lastly, Rayleigh cross sections can also be used in stand-alone scripts. See the following notebook for details: Rayleigh cross sections notebook
H⁻ opacity¶
H⁻ absorption becomes significant at the high temperatures expected
for ultra Hot Jupiters, where molecular hydrogen dissociates to give
way to atomic and ionic hydrogen as the most abundant species.
Pyrat Bay implements the H⁻ cross-section model from
[John1988], which accounts for bound-free photo-ionization and
free-free scattering.
Usage
In a configuration file, use the
h_ionkey to include the H⁻ cross section:
# H- bound-free and free-free opacity
h_ion = h_ion_john1988
Lastly, H⁻ cross sections can also be used in stand-alone scripts. See the following notebook for details: H bound-free and free-free cross sections notebook
Clouds¶
The clouds key sets cloud opacity models. The table below lists
the available models:
Model |
Parameter names |
Comments |
|---|---|---|
|
|
|
|
|
Opaque gray cloud deck |
|
|
Constant gray cross-section |
The lecavelier model implements a parametric power-law cross
section (i.e., non-gray), allowing users to simulate
Rayleigh-like absorption:
Two model parameters modify the strength (log_k_ray =
\(\log_{10}(\kappa_{\rm ray})\)) and slope (alpha_ray =
\(\alpha_{\rm ray}\)) of the cross section. Given the
constants \(\lambda_0=0.35\) um and \(\kappa_0=5.31
\times 10^{-27}\) cm2 molecule-1, evaluating at
log_k_ray = 0.0 and alpha_ray = -4.0 results in a cross
section similar to H₂ Rayleigh for a primary atmosphere.
The deck model imposes an opaque gray cloud deck at a
pressure defined by the model parameter log_p_cl =
\(\log(p_{\rm cl}/{\rm bar})\).
Note
A technical note. To avoid computing spectra that
depend on the pressure sampling, this cloud model does not
simply apply a large opacity at the atmospheric layer
closest to log_p_cl. Rather, the code interpolates the
atmospheric profile, to define a ‘surface’ located exactly
at log_p_cl.
The ccsgray model creates a constant cross-section opacity
(\(k = \kappa_{\rm gray}\ \kappa_0\)) between two pressures,
with \(\kappa_0=5.31 \times 10^{-27}\) cm2
molecule-1 a constant.
Three model parametes define the cross section, log_k_gray =
\(\log10 (\kappa_{\rm gray})\), and the log-pressure ranges:
log_p_top and log_p_bot (in bar units).
Usage
In a configuration file, use the clouds key to include
cloud-opacity models. Each row includes the name of the model,
followed by their parameters.
# Cloud cross sections and parameters [lecavelier deck ccsgray]
clouds =
lecavelier 1.0 -4.0
deck -2.0
Some cloud cross sections can also be used in stand-alone scripts. See the following notebook for details: Lecavelier cross sections notebook.
Patchy cloud fraction¶
The optional fpatchy key will produce spectra from a linear
combination of a clear and cloudy spectrum (i.e., spectra including
and excluding the cloud opacities listed above). For example, for a
40% cloudy / 60% clear atmosphere, set:
# Patchy fraction, value between [0--1]:
fpatchy = 0.4