Photochem: 1D Photochemical and Climate Model
- Photochem is an open-source one-dimensional model for simulating coupled photochemistry and climate processes in diverse planetary atmospheres.
- It integrates atmospheric chemistry, vertical transport, and radiative-convective calculations using state-of-the-art kinetics, thermodynamics, and opacity data.
- Benchmark tests across Venus, Earth, Mars, Jupiter, Titan, and WASP-39b demonstrate its versatility while highlighting limitations in sulfur chemistry and aerosol microphysics.
Photochem is an open-source, one-dimensional photochemical and climate code for planetary atmospheres. It was introduced as a general chemical and climate model for interpreting planetary and exoplanet observations, and it couples atmospheric chemistry, vertical transport, and radiative-convective climate calculations within a single framework. The model was benchmarked against Venus, Earth, Mars, Jupiter, Titan, and the hot Jupiter WASP-39b using a single set of kinetics, thermodynamics, and opacities, with the stated goal of providing a comparatively general description of atmospheric chemistry and physics for both Solar System studies and telescope-based exoplanet interpretation (Wogan et al., 29 Sep 2025).
1. Scope, modeling tradition, and scientific role
Photochem belongs to the long-established class of one-dimensional atmospheric chemistry models, but it is explicitly framed as a combined chemical and climate model rather than as a chemistry solver alone. In its published formulation, it is intended to span a wide range of planetary atmospheres, and its benchmarks emphasize cross-planet portability rather than planet-specific tuning. The code is described as open-source and reproducible, and its benchmark suite is presented as part of the model itself rather than as an auxiliary validation exercise (Wogan et al., 29 Sep 2025).
Earlier one-dimensional photochemistry models established the broader methodological setting in which Photochem operates. A terrestrial-exoplanet model by Hu et al. was designed from the ground up to treat atmospheres ranging from oxidizing through reducing, and it included up to 800 chemical reactions, photochemical processes, dry and wet deposition, surface emission, thermal escape of O-, H-, C-, N-, and S-bearing species, and the formation and deposition of elemental sulfur and sulfuric acid aerosols (Hu et al., 2012). Photochem occupies the same general modeling space, but with a stronger emphasis on unifying photochemistry, climate, reproducibility, and cross-planet benchmarks in a single software distribution (Wogan et al., 29 Sep 2025).
This broad scope is directly connected to contemporary observing programs. The published motivation is that the James Webb Space Telescope has placed exoplanet atmosphere characterization in an era where interpreting spectra requires models that span a diverse atmospheric parameter space. In that context, Photochem is presented as a model for both Solar System worlds and exoplanets, rather than as a code specialized to a narrow atmospheric regime (Wogan et al., 29 Sep 2025).
2. Governing equations and physical framework
At its core, Photochem solves one-dimensional vertical continuity equations for each atmospheric species. The published formulation writes the continuity equation as
where is the number density, is the vertical flux, and is the net source term. The source term is decomposed as production, loss, rainout, and condensation/evaporation exchange,
The code treats vertical transport by combining eddy diffusion, molecular diffusion, and, for particulates, sedimentation (Wogan et al., 29 Sep 2025).
For gases, the total vertical flux is split into eddy and molecular components,
with the published forms
and
For particles of radius and density , the fall flux is written as 0, with a Stokes-law sedimentation velocity,
1
These fluxes are coupled to a radiative-convective energy-balance calculation, so chemistry and climate are treated as distinct but interacting modules within the same model (Wogan et al., 29 Sep 2025).
Boundary conditions are configurable. The lower boundary can be specified by fixed mixing ratios, fixed fluxes such as volcanic or biogenic emissions, or zero flux. Dry deposition velocities are applied to soluble species. The upper boundary is typically zero flux, but diffusion-limited escape can be imposed for H and H2; in gas-giant applications, specified downward influxes of meteoric H3O, CO, and CO4 are also available. Planet-specific inputs include the pressure-temperature profile, 5, gravity, surface pressure, planetary radius, obliquity, and stellar spectrum (Wogan et al., 29 Sep 2025).
3. Chemical kinetics, photolysis, and thermodynamic closure
The published chemical network contains 98 neutral gas-phase species composed of H, C, O, N, S, Cl, and He. It includes 610 forward reactions, all reversed via microscopic reversibility using Gibbs free energies, and 95 photolysis reactions with wavelength-dependent cross sections and quantum yields. The implementation is explicitly neutral chemistry only: ions are not included. In addition, the model contains 16 condensed species, including water, sulfuric acid, hydrocarbons, and nitriles, and approximates haze by polymerization of large hydrocarbon radicals (Wogan et al., 29 Sep 2025).
Rate coefficients are written in modified Arrhenius form,
6
with kinetic parameters taken from the NIST Kinetics Database or specialty literature. Three-body rates use designated third-body efficiencies. Thermodynamic data are taken from the NIST WebBook or JANAF and are used to compute reverse rates through Gibbs free energies. Photolysis inputs are drawn from PHIDRATES and Leiden database cross sections and yields for species such as O7, H8O, CH9, and SO0 (Wogan et al., 29 Sep 2025).
The thermodynamic side of the code includes an optional equilibrium chemistry module described as a modified easyCHEM/NASA CEA solver. That module minimizes Gibbs free energy at fixed 1 and 2, and it is used, for example, to set deep boundary conditions in gas-giant calculations. This makes the software capable of representing atmospheres in which deep regions are close to equilibrium while higher layers evolve kinetically under transport and photolysis. A plausible implication is that Photochem is intended to bridge the deep-atmosphere equilibrium regime and the upper-atmosphere disequilibrium regime within a single workflow (Wogan et al., 29 Sep 2025).
4. Radiative transfer, opacities, clouds, and hazes
Photochem’s climate component uses correlated-3 molecular opacities at moderate spectral resolution, with quoted 4-distribution resolving powers of 5–60. Line shapes are treated with Voigt profiles, including sub-Lorentzian wings for CO6 and cut-offs of approximately 25–500 cm7. Gas mixtures are combined with the resort-rebin method. The code also includes collision-induced absorption for pairs such as H8-H9, H0-He, N1-N2, and CO3-CO4, as well as wavelength-dependent Rayleigh scattering for major atmospheric gases (Wogan et al., 29 Sep 2025).
Radiative transfer is computed with a two-stream method following Toon et al. (1989), with separate shortwave and longwave bands that include absorption, scattering, and thermal emission. This places Photochem in the class of one-dimensional radiative-convective models designed for computational efficiency and coupling to chemistry rather than line-by-line spectral synthesis (Wogan et al., 29 Sep 2025).
Aerosols are treated differently in the photochemistry and climate modules. In the chemistry calculation, aerosols form by condensation and evaporation of supersaturated gases using a fixed monodisperse particle radius, then fall out and evaporate at lower levels. In the climate calculation, aerosol density-versus-pressure profiles are “painted” onto the atmosphere for radiative transfer. User-prescribed aerosol layers may represent H5SO6, H7O, dust, or haze, with Mie-scattering cross sections derived from published refractive indices (Wogan et al., 29 Sep 2025).
This treatment is functional but deliberately simplified. The published limitations are explicit: the code does not predict particle size distributions, full vertical cloud extent, or microphysical evolution, and it does not include radiative feedback on aerosol production. For Venus, Titan, Mars, and potentially habitable exoplanets, externally prescribed cloud optical properties remain necessary for realistic climate calculations. The authors also state that accurately predicting aerosols with Photochem is challenging (Wogan et al., 29 Sep 2025).
5. Numerical implementation, software architecture, and extensibility
The core code is written in Fortran 2008 and modern C, with a Python interface through Cython. It is organized into three main modules: photochemistry, climate, and equilibrium chemistry. The vertical grid is finite-volume in altitude or log pressure, with user-defined spacing; the published examples describe grids of roughly 50–200 layers. Finite-volume discretization is emphasized because it guarantees mass conservation (Wogan et al., 29 Sep 2025).
Discretization of transport and sources produces a large stiff ODE system. In the published notation, the semi-discrete form is
8
Time integration is performed with CVODE using backward differentiation formulas and adaptive time stepping. The transport Jacobian is analytical, while the chemistry Jacobian is obtained through automatic differentiation using Differentia. Climate equilibrium is solved not by time marching but by a Newton-based root finder, specifically hybrj from MINPACK, with convective constraints based on the Grahm and Heng (2021) pseudoadiabat including latent heating (Wogan et al., 29 Sep 2025).
Photochem is designed to be extensible by data files rather than source-code modification. Species, reactions, photolysis data, opacities, and boundary conditions are separated into YAML inputs. Dynamic array sizing is used throughout. To add a species, the published workflow is to append it to the species YAML file and supply thermodynamic and photolysis data; to add a reaction, one appends a forward-rate entry and allows the code to compute the reversal automatically. This architecture is closely aligned with the code’s stated emphasis on reproducibility and reuse (Wogan et al., 29 Sep 2025).
The software is distributed through Conda-Forge and GitHub, and the code, model data, and benchmark configurations are archived on Zenodo. The benchmark suite is explicitly described as open-source and reproducible. In practice, this places Photochem among atmospheric codes that treat software distribution and archival reproducibility as first-order scientific outputs rather than secondary implementation details (Wogan et al., 29 Sep 2025).
6. Benchmarks, validation strategy, and comparative performance
A central feature of Photochem is its cross-planet benchmark program. With a single unified network and opacity set, the code is reported to reproduce, to first order, the gas-phase chemistry and pressure-temperature profiles of Venus, Earth, Mars, Jupiter, Titan, and WASP-39b. The abstract identifies the largest model-data discrepancies in Venus sulfur chemistry, and states that clouds and hazes are important for the energy balance of Venus, Earth, Mars, and Titan (Wogan et al., 29 Sep 2025).
The published planet-by-planet validation is specific. For Venus, CO, HCl, H9SO0, H1S, and SO agree within factors of a few, while OCS, S2, S3, and SO4 remain discrepant. For Earth, CH5, CO, O6, and OH match standard reference atmospheres, with an ozone column of about 200 DU. For Mars, CO, O7, O8, H9, and H0O1 fall within observational scatter. For Titan, major hydrocarbons and nitriles such as C2H3, C4H5, and HCN are reproduced within factors of a few, while NH6 is underpredicted because ion chemistry is omitted. For Jupiter, CH7, C8H9 species, NH0, and CO set by deep quenching agree with Galileo and ground-based observations. For WASP-39b, Photochem predicts SO1 abundances of about 10–20 ppm at 2–3 bar, in agreement with JWST and prior models (Wogan et al., 29 Sep 2025).
The code was also benchmarked directly against the VULCAN photochemistry model and the HELIOS climate model. For identical chemistry inputs, the comparison with VULCAN is described as near-perfect agreement in mixing ratios, with Photochem approximately twice as fast on identical CPU hardware. For climate, a 50% CO4-H5O test atmosphere at 0.5 AU converged in about one-seventh of the wall time and with one-sixth the number of radiative-transfer calls relative to HELIOS’s time-marching method. The abstract summarizes these comparisons by stating that Photochem simulates atmospheres 2 to 100 time more efficiently (Wogan et al., 29 Sep 2025).
7. Applications, limitations, and unresolved problems
Photochem is intended for two closely related use cases: interpreting telescope observations of exoplanets and studying Solar System atmospheres with the same general model. The stated application to WASP-39b illustrates the former, while the multi-planet benchmark suite illustrates the latter. Because the code includes photochemistry, equilibrium chemistry, transport, radiative transfer, and configurable lower and upper boundary conditions, it can be used for terrestrial planets, giant planets, and hazy or sulfur-rich atmospheres within one software framework (Wogan et al., 29 Sep 2025).
The main published limitations are equally important. The chemistry is neutral only, so ion-driven environments are not modeled self-consistently; Titan’s underpredicted NH6 is cited as one consequence. Aerosol microphysics is simplified, with no interactive cloud microphysics and no predictive particle-size distributions. Venus remains the clearest chemistry shortcoming: unresolved discrepancies in OCS, S7, S8, and SO9 are presented as evidence that sulfur kinetics and cloud chemistry remain incomplete, and the abstract explicitly notes that the Venus mismatch motivates future experimental work on sulfur kinetics and spacecraft missions to Venus (Wogan et al., 29 Sep 2025).
In that sense, Photochem functions not only as an interpretive tool but also as a diagnostic instrument for missing atmospheric physics and chemistry. Where the code succeeds across multiple planets with one set of kinetics, thermodynamics, and opacities, it supports the generality of the underlying framework. Where it fails—most notably in Venus sulfur chemistry and in aerosol prediction—it delineates specific domains in which the present state of laboratory data, network completeness, or microphysical treatment is insufficient.