Source-linked AI summary

petitRADTRANS: a Python radiative transfer package for exoplanet characterization and retrieval

P. Mollière, J. P. Wardenier, R. van Boekel, Th. Henning, K. Molaverdikhani, I. A. G. Snellen

arXiv:1904.11504v2astro-ph.EP

TL;DR

Exoplanet atmospheric characterization needs a fast, accurate, and versatile tool for retrieval across spectral resolutions, cloud treatments, and transmission or emission geometries. The paper presents petitRADTRANS, a Python radiative-transfer package using correlated-k and line-by-line methods, and reports close agreement between its modes and with petitCODE. Its applicability is bounded by the available temperature range and by neglected emission scattering where clouds make scattering important.

  • Problem

    Exoplanet retrieval requires easy-to-use spectral-synthesis tools that remain versatile, fast, and accurate across clouds, resolutions, and transmission or emission spectra.

  • Method

    petitRADTRANS calculates transmission and emission spectra with correlated-k radiative transfer at λ/∆λ = 1000 and line-by-line transfer at λ/∆λ = 10^6, including cloud treatments.

  • Results

    Differences between low- and high-resolution modes are usually below 1%, while differences from petitCODE are usually below 1% and can reach about 5% in appreciable-flux regions.

  • Takeaways & Limitations

    petitRADTRANS provides publicly available spectral synthesis for exoplanet retrievals, including both transmission and emission spectra and cloud modeling.

Abstract

from arXiv · show

We present the easy-to-use, publicly available, Python package petitRADTRANS, built for the spectral characterization of exoplanet atmospheres. The code is fast, accurate, and versatile; it can calculate both transmission and emission spectra within a few seconds at low resolution ($λ/Δλ$ = 1000; correlated-k method) and high resolution ($λ/Δλ= 10^6$; line-by-line method), using only a few lines of input instruction. The somewhat slower correlated-k method is used at low resolution because it is more accurate than methods such as opacity sampling. Clouds can be included and treated using wavelength-dependent power law opacities, or by using optical constants of real condensates, specifying either the cloud particle size, or the atmospheric mixing and particle settling strength. Opacities of amorphous or crystalline, spherical or irregularly-shaped cloud particles are available. The line opacity database spans temperatures between 80 and 3000 K, allowing to model fluxes of objects such as terrestrial planets, super-Earths, Neptunes, or hot Jupiters, if their atmospheres are hydrogen-dominated. Higher temperature points and species will be added in the future, allowing to also model the class of ultra hot-Jupiters, with equilibrium temperatures $T_{\rm eq} \gtrsim 2000$ K. Radiative transfer results were tested by cross-verifying the low- and high-resolution implementation of petitRADTRANS, and benchmarked with the petitCODE, which itself is also benchmarked to the ATMO and Exo-REM codes. We successfully carried out test retrievals of synthetic JWST emission and transmission spectra (for the hot Jupiter TrES-4b, which has a $T_{\rm eq}$ of $\sim$ 1800 K). The code is publicly available at http://gitlab.com/mauricemolli/petitRADTRANS, and its documentation can be found at https://petitradtrans.readthedocs.io.

1. Introduction

Exoplanet spectral retrieval requires versatile, accurate, and fast tools spanning atmospheric conditions, clouds, resolutions, and transmission or emission geometries. petitRADTRANS is introduced to meet these needs as a publicly available Python spectral-synthesis package.

  • Retrieval infers atmospheric temperature, abundance, cloud, coverage, and sometimes stellar parameters from exoplanet spectra.
  • High-resolution spectra can constrain wind speeds, spin rates, cloud maps, and isotopologue abundance ratios beyond low-resolution retrievals.
  • petitRADTRANS combines clear or cloudy spectra, transmission or emission geometries, and low- or high-resolution calculations in one retrieval-oriented tool.
  • The package uses correlated-k calculations at λ/∆λ = 1000 and line-by-line calculations at λ/∆λ = 10^6, producing spectra within a few seconds.
  • Its publicly available Python implementation includes retrieval support using petitRADTRANS and emcee, with documentation provided online.

2. Code description

The code implements emission and transmission radiative transfer through separate correlated-k and line-by-line formulations. It computes atmospheric transmission, effective planetary area, and contribution functions numerically from layered atmospheric structures.

  • The correlated-k mode uses λ/∆λ = 1000, while the line-by-line mode uses λ/∆λ = 10^6 directly in wavelength space.
  • Emission transfer assumes a plane-parallel LTE atmosphere and neglects scattering to accelerate retrieval calculations.
  • Emission intensity combines layer Planck functions with atmospheric transmissions; high-resolution calculations evaluate the same expression at every wavelength.
  • In correlated-k calculations, species transmissions are multiplied, avoiding expensive combined opacity-table construction and accelerating retrievals.
  • Transmission spectra convert pressure-temperature structures to radius-temperature profiles under hydrostatic equilibrium and integrate grazing-ray optical depths.
  • Transmission contribution functions quantify each layer’s importance by comparing the nominal radius with the radius recalculated after removing that layer’s opacity.

3. Opacities

petitRADTRANS provides molecular, atomic, cloud, Rayleigh, and quasi-continuum opacities across configurable spectral resolutions, atmospheric conditions, and cloud treatments.

  • Opacity sources: The package publishes molecular and atomic line opacities, cloud absorption and scattering, Rayleigh cross-sections, and quasi-continuum opacities.Quasi-continuum sources include collision-induced absorption and H− bound-free and free-free absorption.
  • Line opacities: The package includes line opacities for numerous atoms and molecules, with secondary isotopologues available for some species at high resolution and ExoCross support for additional species.In low resolution, only main isotopologues are generally used except for CO and TiO.
  • Line opacities: Line opacities cover 110 nm–250 µm, 80–3000 K, and 10^-6–10^3 bar, while high-resolution opacities span 0.3–28 µm.The pressure-temperature grid contains 10×13 points spaced equidistantly in log-space.
  • Spectral resolution: At λ/Δλ = 1000, petitRADTRANS uses correlated-k opacity calculations with a 16-point Gaussian quadrature grid; at λ/Δλ = 10^6, it uses line-by-line opacities.The low-resolution g-grid is divided into two eight-point ranges, from 0 to 0.9 and from 0.9 to 1.
  • Verification: Radiative-transfer verification compares high- and low-resolution emission and transmission spectra for a clear TrES-4b-like atmosphere, with residuals scattering around zero.The reported discrepancies are in the low, single-digit percentage range.
  • Cloud opacities: Clouds can be represented by a gray cloud deck, scaled Rayleigh scattering, a two-parameter scattering cross-section, or optical constants for specified condensates.These modes can be used independently or in combination; emission spectra use only the absorption component of the relevant cloud options.
  • Cloud opacities: Cloud opacity calculations support spherical and irregular particles, including Mie and Distribution of Hollow Spheres treatments, with particle sizes from 1 nm to 10 cm.Requested particle sizes outside this interval return zero opacity for the corresponding cloud species.

4. Code verification

petitRADTRANS was verified against its own high-resolution mode and benchmarked against petitCODE for clear and cloudy TrES-4b-like atmospheres. Agreement is generally good, with discrepancies linked to scattering, gravity treatment, opacity-combination accuracy, and cloud thickness.

  • Internal verification: Low- and high-resolution petitRADTRANS emission and transmission spectra agree very well, with errors in the low, single-digit percentage range.This cross-check verifies the correlated-k implementation against line-by-line results.
  • Clear atmospheres: Agreement between petitRADTRANS and petitCODE emission spectra is usually 1% or less, with deviations up to 4% near CO bands.The larger differences vanish when CO is omitted from both calculations.
  • Clear atmospheres: Clear-atmosphere emission differences reach up to 4%, corresponding to 4–40 ppm for typical hot-Jupiter planet-to-star contrasts of 10^-3–10^-4.The ppm range follows from the reported comparison and typical contrast values.
  • Clear atmospheres: Transmission spectra from petitRADTRANS with constant gravity agree with petitCODE similarly to the emission comparison, while optical wavelengths are better reproduced because scattering is included.Variable gravity produces the largest deviations where opacity is high and lower pressures are probed.
  • Cloudy atmospheres: For cloud Model 6, emission agreement remains good at longer wavelengths, while cloud scattering becomes important below 0.8 µm and strongly affects transmission spectra.The model includes Na2S, KCl, Mg2SiO4, and MgAl2O4 clouds with particle radii of 0.08 µm.
  • Cloudy atmospheres: With even thicker clouds capped at 10^-2 · ZP, transmission agreement remains good but emission spectra disagree out to 4.5 µm because cloud-particle scattering is strong.The comparison shows that cloud thickness limits the wavelength range over which emission calculations agree.

5. Retrieval examples, low resolution (‘c-k’) mode

The retrieval examples use a flexible parameterized atmospheric model with emcee to fit synthetic JWST emission and transmission spectra. The results recover key temperature and abundance properties where the spectra provide information, while unconstrained regions follow model assumptions or yield upper limits.

  • 5. Retrieval examples: The example implements a user-built retrieval with Python and emcee, using petitRADTRANS as the radiative-transfer engine.The model setup and commented retrieval implementation are documented for users.
  • 5.1. Retrieval setup: The retrieval model treats temperature, abundances, clouds, and reference pressure as potential parameters, although known planetary mass and radius can be fixed.For the transiting-planet example, g and RP are fixed from MP and Rwl, leaving P0 free.
  • 5.1. Retrieval setup: The six-parameter temperature model adds a term that permits non-isothermal high-altitude behavior beyond the standard Guillot model.The added term addresses the standard model’s tendency toward isothermal upper atmospheres under gray-opacity assumptions.
  • 5.2.1. Emission spectra: The emission fit is excellent, with residuals mostly within 2 σ, and retrieved temperature profiles follow the input between 10^-3 and 4 bar.Pressures larger than 4 bar cannot be probed, while low-pressure temperatures are poorly recovered where the contribution function is small.
  • 5.2.2. Transmission spectra: The transmission fit is also excellent; temperature profiles follow the input, and CO, H2O, CO2, Na, and K abundances fall within the retrieved 1-σ ranges.Pressures larger than 0.3 bar cannot be probed, and CH4, NH3, and H2S yield only upper limits.

6. Summary

The summary presents petitRADTRANS as a fast, versatile Python package for exoplanet spectral synthesis and retrieval. It supports multiple resolutions, radiative-transfer approaches, cloud treatments, and successful validation and synthetic JWST retrieval tests.

  • 6. Summary: petitRADTRANS computes emission and transmission spectra at λ/Δλ = 1000 and λ/Δλ = 10^6 using correlated-k and line-by-line methods.The two implementations agree closely, with flux differences usually below 1%.
  • 6. Summary: Clouds can be modeled with parametric opacity laws or condensate optical constants, including spherical or irregular and crystalline or amorphous particles.High-resolution opacities may also be provided for individual isotopologue species.
  • 6. Summary: Differences between petitCODE and petitRADTRANS are usually below 1%, reaching about 5% in regions of appreciable flux.For planet-to-star flux contrasts of 10^-3, these differences correspond to errors up to 50 ppm and are comparable to estimated JWST systematic-noise floors.
  • 6. Summary: The package successfully retrieves temperature structures and abundances from synthetic JWST emission and transmission spectra using cloud-free input models.The two retrievals each drew 10^6 samples.
  • 6. Summary: Spectra are calculated within a few seconds, while the authors retain correlated-k accuracy rather than using opacity sampling that would be at least 16 times faster but noisier.The example retrievals, each calculating 10^6 spectra, finished within a few days on 30 cores.
  • 6. Summary: The package is designed for retrieval studies, with documented emcee setups and straightforward extensions such as patchy clouds or the PHOENIX spectral library.The authors plan frequent updates to its capabilities and opacity database.

Appendix A: petitRADTRANS verification: very cloudy spectra

Appendix A compares petitRADTRANS and petitCODE for a very cloudy hot-Jupiter atmosphere. The case uses cloud mass fractions capped above 10^-2 · ZP.

  • Appendix A: The appendix compares petitCODE and petitRADTRANS for an even cloudier hot-Jupiter atmosphere than the analogous main-text case.The cloud mass fractions are capped only above 10^-2 · ZP.
  • Appendix A: Figure A.1 presents the same comparison as Figure 3 for the very cloudy case discussed in Section 4.2.2.The appendix figure is intended to be read alongside the corresponding main-text comparison.
Loading 1904.11504v2…