8.4 Atmospheric Chemistry

Atmospheric chemistry encompasses the study of chemical reactions that transform trace gases and aerosols in the atmosphere, governing the composition of the air we breathe, the radiative balance of the climate system, and the oxidizing capacity that cleanses the atmosphere. It integrates chemical kinetics, photochemistry, thermodynamics, and transport to explain the cycles of reactive species from sources to sinks.

Chemical Kinetics: Rate Laws and Temperature Dependence

The rate of a chemical reaction determines how quickly reactants are consumed and products formed. Atmospheric reactions are classified by their kinetic order.

First-Order Reactions

A unimolecular process where the rate depends linearly on one reactant concentration:

$$\frac{d[\text{A}]}{dt} = -k[\text{A}] \qquad \Rightarrow \qquad [\text{A}](t) = [\text{A}]_0\,e^{-kt} \qquad \tau = \frac{1}{k}$$

Photolysis is a first-order process: the rate is J[A] where J is the photolysis rate coefficient. The lifetime $\tau = 1/J$ gives the e-folding time for photochemical destruction.

Second-Order (Bimolecular) Reactions

Bimolecular reactions between two reactant molecules are the most common type in atmospheric chemistry:

$$\text{A} + \text{B} \xrightarrow{k} \text{products} \qquad \frac{d[\text{A}]}{dt} = -k[\text{A}][\text{B}]$$

Units: cm³ molecule⁻¹ s⁻¹. The pseudo-first-order lifetime of A when B is in large excess is $\tau_A = 1/(k[\text{B}])$.

Arrhenius Temperature Dependence

Most bimolecular rate constants follow the Arrhenius expression:

$$k(T) = A\,\exp\!\left(-\frac{E_a}{RT}\right)$$

where A is the pre-exponential factor, $E_a$ is the activation energy (J/mol), and R = 8.314 J/(mol K). In atmospheric chemistry, this is often written equivalently as $k(T) = A\,\exp(-B/T)$ where B = E_a/R. Reactions with positive $E_a$ speed up with temperature; some reactions (e.g., three-body recombinations) have negative effective activation energies and slow down with increasing temperature.

Three-Body Reactions and the Troe Formula

Termolecular (three-body) reactions require a third body M (typically N₂ or O₂) to carry away excess energy and stabilize the product. These reactions are pressure-dependent:

Low-Pressure Limit

$$k = k_0[M]$$

Rate proportional to pressure. k₀ units: cm⁶ molecule⁻² s⁻¹

High-Pressure Limit

$$k = k_\infty$$

Rate independent of pressure. k∞ units: cm³ molecule⁻¹ s⁻¹

The Troe formula provides a smooth interpolation between these limits in the falloff region:

$$k = \frac{k_0[M]}{1 + k_0[M]/k_\infty} \times F_c^{\left[1 + \left(\frac{\log_{10}(k_0[M]/k_\infty)}{N}\right)^2\right]^{-1}}$$

where $F_c$ is the broadening factor (typically 0.3--0.6) and N = 0.75 - 1.27 log₁₀(F_c). Both $k_0$ and $k_\infty$ have their own temperature dependence:

$$k_0(T) = k_0^{300}\left(\frac{T}{300}\right)^{-n} \qquad k_\infty(T) = k_\infty^{300}\left(\frac{T}{300}\right)^{-m}$$

Important three-body reactions: O + O₂ + M → O₃ + M (ozone formation), OH + NO₂ + M → HNO₃ + M (NOₓ removal), ClO + NO₂ + M → ClONO₂ + M (chlorine reservoir formation).

The Hydroxyl Radical: Detergent of the Atmosphere

The hydroxyl radical (OH) is the single most important oxidant in the troposphere. It initiates the degradation of nearly all reduced trace gases. The primary production pathway involves O(¹D) from ozone photolysis:

$$\text{O}_3 + h\nu \;\;(\lambda < 310\;\text{nm}) \rightarrow \text{O}(^1\text{D}) + \text{O}_2$$

$$\text{O}(^1\text{D}) + \text{H}_2\text{O} \rightarrow 2\text{OH} \qquad (k = 1.63\times10^{-10}\;\text{cm}^3\text{s}^{-1})$$

Most O(¹D) is collisionally deactivated (quenched) back to ground-state O(³P) by N₂ and O₂ before reacting with H₂O. The steady-state OH concentration balances production against loss by reaction with CO, CH₄, VOCs, and NO₂:

$$[\text{OH}]_{ss} = \frac{2\,f_{\text{H}_2\text{O}}\,J(\text{O}^1\text{D})\,[\text{O}_3] + \text{other sources}}{k_{\text{CO}}[\text{CO}] + k_{\text{CH}_4}[\text{CH}_4] + \sum_i k_i[\text{VOC}_i] + k_{\text{NO}_2}[\text{NO}_2]}$$

where $f_{\text{H}_2\text{O}} = k_{\text{O}^1\text{D+H}_2\text{O}}[\text{H}_2\text{O}] / (k_{\text{O}^1\text{D+H}_2\text{O}}[\text{H}_2\text{O}] + k_q[M])$ is the fraction of O(¹D) reacting with water (~10%). Global mean tropospheric OH is approximately 10⁶ molecules/cm³ with a lifetime of ~1 second.

Oxidation Capacity Constraint

Global OH is constrained using methyl chloroform (CH₃CCl₃), whose atmospheric lifetime (~5 years) is controlled entirely by OH. Measurements of its decline after production ceased in 1996 give a global mean OH of (9.7 ± 0.6) × 10⁵ cm⁻³.

Methane Oxidation Chain

Methane oxidation by OH proceeds through a multi-step radical chain. In NOₓ-rich conditions, each HO₂ + NO → OH + NO₂ step followed by NO₂ photolysis produces one ozone molecule:

Step 1: H-abstraction

$$\text{CH}_4 + \text{OH} \rightarrow \text{CH}_3 + \text{H}_2\text{O} \qquad (k = 6.3\times10^{-15}\;\text{cm}^3\text{s}^{-1})$$

Step 2: Peroxy radical formation

$$\text{CH}_3 + \text{O}_2 + M \rightarrow \text{CH}_3\text{O}_2 + M$$

Step 3: NO oxidation (high-NOₓ pathway)

$$\text{CH}_3\text{O}_2 + \text{NO} \rightarrow \text{CH}_3\text{O} + \text{NO}_2$$

Step 4: Formaldehyde production

$$\text{CH}_3\text{O} + \text{O}_2 \rightarrow \text{CH}_2\text{O} + \text{HO}_2$$

Step 5: Formaldehyde photolysis

$$\text{CH}_2\text{O} + h\nu \rightarrow \text{H} + \text{HCO} \rightarrow 2\text{HO}_2 + \text{CO}$$

Step 6: CO to CO₂

$$\text{CO} + \text{OH} \rightarrow \text{CO}_2 + \text{H} \quad \rightarrow \quad \text{CO}_2 + \text{HO}_2$$

In the low-NOₓ pathway, CH₃O₂ reacts with HO₂ instead of NO, terminating the chain without ozone production:

$$\text{CH}_3\text{O}_2 + \text{HO}_2 \rightarrow \text{CH}_3\text{OOH} + \text{O}_2 \quad \text{(chain termination, no O}_3\text{)}$$

The crossover NOₓ level is approximately 10--50 ppt. Above this, methane oxidation is a net ozone source (~3--5 O₃ per CH₄); below it, ozone is consumed.

NOx-VOC-O₃ Chemistry: Photostationary State and Isopleths

In the sunlit troposphere, NO, NO₂, and O₃ reach a rapid photochemical equilibrium. The Leighton ratio describes this photostationary state:

$$\text{NO}_2 + h\nu \xrightarrow{J_{\text{NO}_2}} \text{NO} + \text{O} \quad;\quad \text{O} + \text{O}_2 + M \rightarrow \text{O}_3 + M$$

$$\text{NO} + \text{O}_3 \xrightarrow{k_1} \text{NO}_2 + \text{O}_2$$

$$[\text{O}_3]_{PSS} = \frac{J_{\text{NO}_2}\,[\text{NO}_2]}{k_1\,[\text{NO}]} \qquad \text{(Leighton ratio)}$$

Net ozone production requires peroxy radicals (RO₂, HO₂) from VOC oxidation to convert NO to NO₂ without consuming O₃:

$$P(\text{O}_3) = (k_{\text{HO}_2\text{+NO}}[\text{HO}_2] + \sum_i k_{\text{RO}_{2,i}\text{+NO}}[\text{RO}_{2,i}])\,[\text{NO}]$$

NOₓ-Limited Regime

In rural areas with low NOₓ, ozone production increases with added NOₓ but is insensitive to VOCs. Peroxy radicals react with HO₂ instead of NO, terminating the chain. O₃ increases nearly linearly with NOₓ.

VOC-Limited (NOₓ-Saturated) Regime

In urban centers with abundant NOₓ, excess NO titrates O₃. Ozone production increases with added VOCs but decreases with added NOₓ. Reducing NOₓ alone can paradoxically increase O₃.

Ozone isopleth diagrams (EKMA diagrams) plot O₃ as a function of initial NOₓ and VOC concentrations, showing the ridge line that separates the two regimes. Effective ozone control strategies depend critically on which regime an area falls in.

Tropospheric Ozone Budget

The tropospheric ozone budget balances chemical production and stratospheric influx against chemical loss and dry deposition:

$$\frac{d[\text{O}_3]_{\text{trop}}}{dt} = P_{\text{chem}} + F_{\text{STE}} - L_{\text{chem}} - D_{\text{dep}}$$

Sources

  • Chemical production: ~5000 Tg/yr from NOₓ+VOC photochemistry
  • Stratospheric influx (STE): ~550 Tg/yr via tropopause folds and Brewer-Dobson circulation

Sinks

  • Chemical loss: ~4600 Tg/yr (O₃ + HO₂, O₃ + OH, O(¹D) + H₂O)
  • Dry deposition: ~950 Tg/yr to vegetation and surfaces (v_d ~ 0.5 cm/s)

Tropospheric burden: ~340 Tg, mean mixing ratio 30--40 ppb. Background ozone has increased from ~10--15 ppb in pre-industrial times to present values.

Sulfur and Nitrogen Cycles

Sulfur Cycle and Acid Rain

The atmospheric sulfur cycle converts DMS and SO₂ to sulfuric acid and sulfate aerosol:

DMS + OH → SO₂ + products

SO₂ + OH + M → HSO₃ + M → SO₃ + HO₂

SO₃ + H₂O → H₂SO₄ (sulfuric acid)

Aqueous: S(IV) + H₂O₂ → S(VI) (in cloud droplets)

H₂SO₄ nucleates new particles and condenses on existing aerosol, forming sulfate that scatters sunlight and serves as CCN.

Nitrogen Cycle

NOₓ enters the atmosphere through three combustion mechanisms:

Thermal NOₓ: N₂ + O₂ → 2NO at T > 1800 K (Zeldovich)

Prompt NOₓ: CH + N₂ → HCN + N in fuel-rich flames

Fuel NOₓ: Oxidation of N in coal/biomass

NH₃ from agriculture reacts with acids to form ammonium nitrate and ammonium sulfate aerosol, major PM₂.₅ components.

Photolysis Rates and Actinic Flux

Photolysis rate coefficients J (s⁻¹) are computed by integrating the product of absorption cross-section, quantum yield, and actinic flux:

$$J = \int_{\lambda_1}^{\lambda_2} \sigma(\lambda,T)\;\phi(\lambda,T)\;F(\lambda)\;d\lambda$$

The actinic flux $F(\lambda)$ depends on solar zenith angle, altitude, ozone column, aerosol loading, surface albedo, and cloud cover. For clear-sky conditions, the direct beam is attenuated by the Beer-Lambert law and supplemented by scattered radiation.

O₃ → O(¹D) + O₂

$\lambda < 310$ nm. J ~ 3 × 10⁻⁵ s⁻¹. Key source of excited O atoms that produce OH.

NO₂ → NO + O

$\lambda < 420$ nm. J ~ 8 × 10⁻³ s⁻¹. Only significant tropospheric source of O atoms and thus O₃.

Chemical Transport Models (CTMs)

CTMs solve the continuity equation for each chemical species, coupling transport with chemistry:

$$\frac{\partial c_i}{\partial t} = -\nabla \cdot (\mathbf{u}\,c_i) + \nabla \cdot (K \nabla c_i) + P_i - L_i\,c_i + E_i - D_i$$

advection + diffusion + chemical production - loss + emissions - deposition

GEOS-Chem

Global 3D model driven by GEOS meteorology (NASA). ~300 species, full tropospheric-stratospheric chemistry. Widely used for satellite data interpretation.

MOZART / CAM-chem

Developed at NCAR for use with CESM climate model. Detailed VOC chemistry, widely used in climate-chemistry coupling studies.

Operator Splitting

Each timestep: (1) advection, (2) convection, (3) diffusion, (4) chemistry, (5) emissions/deposition. Chemistry uses stiff ODE solvers (Rosenbrock, LSODE).

Fortran: Stiff ODE Chemical Kinetics Integrator

This Fortran program implements a chemical kinetics integrator for a tropospheric box model with NOₓ-O₃-HOₓ-CO chemistry. It uses a backward Euler (implicit) method suitable for stiff systems where species lifetimes span many orders of magnitude (seconds for OH to years for CH₄).

program atm_chem_box_model
  ! Tropospheric chemistry box model: NOx-O3-HOx-CO
  ! Implicit backward Euler for stiff chemical kinetics
  ! Compile: gfortran -O2 -o chem_box atm_chem_box_model.f90
  implicit none

  integer, parameter :: dp = selected_real_kind(15, 307)
  integer, parameter :: nspec = 6  ! O3, NO, NO2, OH, HO2, CO

  real(dp) :: c(nspec)          ! concentrations (molec/cm^3)
  real(dp) :: P(nspec), L(nspec)! production and loss rates
  real(dp) :: dt, time_s, hour
  real(dp) :: M_air, H2O, O2_nd, T_kelvin
  integer  :: istep, nsteps

  ! Rate constants
  real(dp) :: J_NO2, J_O3_O1D
  real(dp) :: k_NO_O3, k_O1D_H2O, k_O1D_M
  real(dp) :: k_OH_CO, k_OH_CH4, k_HO2_NO, k_HO2_O3
  real(dp) :: k_OH_NO2, k_HO2_HO2
  real(dp) :: cos_sza, sza_factor, f_H2O

  ! Indices
  integer, parameter :: iO3=1, iNO=2, iNO2=3
  integer, parameter :: iOH=4, iHO2=5, iCO=6

  ! --- Initialization at surface ---
  T_kelvin = 298.0_dp
  M_air = 2.5d19           ! molecules/cm^3
  O2_nd = 0.21_dp * M_air
  H2O   = 4.0d17           ! ~1.5% mixing ratio

  ! Initial concentrations
  c(iO3)  = 40.0d-9 * M_air   ! 40 ppb
  c(iNO)  = 1.0d-9 * M_air    ! 1 ppb
  c(iNO2) = 5.0d-9 * M_air    ! 5 ppb
  c(iOH)  = 1.0d6
  c(iHO2) = 2.0d8
  c(iCO)  = 150.0d-9 * M_air  ! 150 ppb

  ! Rate constants at 298 K (cm^3 molecule^-1 s^-1)
  k_NO_O3   = 1.8d-14
  k_OH_CO   = 2.4d-13
  k_OH_CH4  = 6.3d-15
  k_HO2_NO  = 8.5d-12
  k_HO2_O3  = 2.0d-15
  k_OH_NO2  = 1.0d-11       ! effective 3-body
  k_HO2_HO2 = 2.9d-12
  k_O1D_H2O = 1.63d-10
  k_O1D_M   = 2.9d-11

  ! Fraction of O(1D) reacting with H2O
  f_H2O = k_O1D_H2O * H2O / (k_O1D_H2O * H2O + k_O1D_M * M_air)

  ! Time integration: 3 days with 10-second steps
  dt = 10.0_dp
  nsteps = 3 * 86400 / int(dt)

  write(*,'(A)') '  Hour   O3(ppb)  NO(ppb) NO2(ppb)   OH(cm-3)  HO2(cm-3)  CO(ppb)'
  write(*,'(A)') '----------------------------------------------------------------------'

  do istep = 1, nsteps
    time_s = real(istep, dp) * dt
    hour = mod(time_s / 3600.0_dp, 24.0_dp)

    ! Diurnal photolysis (30 deg N, summer)
    cos_sza = sin(0.52_dp)*sin(0.41_dp) + &
              cos(0.52_dp)*cos(0.41_dp)*cos((hour-12.0_dp)*0.2618_dp)
    sza_factor = max(cos_sza, 0.0_dp)

    J_NO2    = 8.0d-3 * sza_factor
    J_O3_O1D = 3.0d-5 * sza_factor

    ! --- Production and loss terms ---
    ! OH: source from O3 photolysis + HO2+NO recycling
    P(iOH) = 2.0_dp * J_O3_O1D * c(iO3) * f_H2O + k_HO2_NO*c(iHO2)*c(iNO)
    L(iOH) = k_OH_CO*c(iCO) + k_OH_CH4*1.8d13 + k_OH_NO2*c(iNO2)

    ! HO2
    P(iHO2) = k_OH_CO*c(iOH)*c(iCO) + k_OH_CH4*c(iOH)*1.8d13
    L(iHO2) = k_HO2_NO*c(iNO) + k_HO2_O3*c(iO3) + 2.0_dp*k_HO2_HO2*c(iHO2)

    ! O3
    P(iO3) = J_NO2 * c(iNO2)
    L(iO3) = k_NO_O3*c(iNO) + k_HO2_O3*c(iHO2) + J_O3_O1D

    ! NO / NO2
    P(iNO)  = J_NO2 * c(iNO2)
    L(iNO)  = k_NO_O3*c(iO3) + k_HO2_NO*c(iHO2)
    P(iNO2) = k_NO_O3*c(iNO)*c(iO3) + k_HO2_NO*c(iHO2)*c(iNO)
    L(iNO2) = J_NO2 + k_OH_NO2*c(iOH)

    ! CO (include constant emission)
    P(iCO) = 5.0d4     ! background emission rate
    L(iCO) = k_OH_CO * c(iOH)

    ! --- Backward Euler: c_new = (c + P*dt) / (1 + L*dt) ---
    c(iOH)  = (c(iOH)  + P(iOH)*dt)  / (1.0_dp + L(iOH)*dt)
    c(iHO2) = (c(iHO2) + P(iHO2)*dt) / (1.0_dp + L(iHO2)*dt)
    c(iO3)  = (c(iO3)  + P(iO3)*dt)  / (1.0_dp + L(iO3)*dt)
    c(iNO)  = (c(iNO)  + P(iNO)*dt)  / (1.0_dp + L(iNO)*dt)
    c(iNO2) = (c(iNO2) + P(iNO2)*dt) / (1.0_dp + L(iNO2)*dt)
    c(iCO)  = (c(iCO)  + P(iCO)*dt)  / (1.0_dp + L(iCO)*dt)
    c = max(c, 0.0_dp)

    ! Output every 3 hours
    if (mod(istep, nint(3.0_dp*3600.0_dp/dt)) == 0) then
      write(*,'(F6.1, 3F9.2, 2ES11.2, F9.2)') &
        hour, c(iO3)/M_air*1d9, c(iNO)/M_air*1d9, &
        c(iNO2)/M_air*1d9, c(iOH), c(iHO2), c(iCO)/M_air*1d9
    end if
  end do

  write(*,'(/,A)') 'Box model complete: 3-day tropospheric NOx-O3-HOx-CO.'

end program atm_chem_box_model

Interactive Simulation: Photochemical Reaction Rates

Python

Model the NOx-O3 photochemical cycle with diurnal sunlight variation. Solves coupled ODEs for NO, NO2, and O3 concentrations over 3 days, showing how photolysis drives the daytime-nighttime partitioning of nitrogen oxides and ozone production.

photochemical_nox_o3.py95 lines

Click Run to execute the Python code

Code will be executed with Python 3 on the server