Data sources
- NASA GISS GISTEMP v4 — global land–ocean temperature index, monthly from 1880, baseline 1951–1980.
- NOAA NCEI NOAAGlobalTemp (Climate at a Glance) — global land + ocean anomalies, monthly from 1850, baseline 1901–2000.
- NOAA GML — global marine-surface monthly means of CO₂ (from 1979), CH₄ (from 1983), N₂O (from 2001), SF₆ (from 1997), plus the Mauna Loa CO₂ record (from 1958).
- NOAA CPC — Oceanic Niño Index (ENSO), from 1950.
Raw files are cached in data/raw/; each sync replaces a dataset only if its content changed, so agency revisions flow through automatically. For model input, monthly values are averaged to calendar years, and only complete years are used.
Temperature baseline
To compare datasets and drive the model, temperatures are expressed relative to 1850–1900 (the IPCC's pre-industrial proxy). NOAAGlobalTemp is shifted by its own 1850–1900 mean; GISTEMP is shifted so its 1951–1980 mean matches rebased NOAA over the same years. The model's target is the average of both.
Radiative forcing
Two published equation sets are implemented (see the Forcing page for the full formulas): NOAA's AGGI expressions from Myhre et al. (1998), and the IPCC AR6 expressions of Meinshausen et al. (2020), which include CO₂ saturation and gas-overlap terms and are converted to effective radiative forcing with AR6 tropospheric adjustments. AR6 is the default for the model. Where no measurements exist (before ~1958–2001 depending on gas), bundled ice-core-based reconstructions are used.
Non-greenhouse forcings — aerosols, ozone, stratospheric water vapour, land use, black carbon on snow, contrails, volcanic eruptions and the solar cycle — come from a bundled, approximate representation of the AR6 assessed time series. These numbers are not live data. Aerosol forcing in particular is highly uncertain, so the model learns a scale factor for it rather than trusting the central value.
The model
A two-layer energy balance model, the same emulator form used in IPCC AR6 (Box 7.1; Held et al. 2010; Geoffroy et al. 2013):
with λ = F₂ₓ / ECS. Seven parameters are uncertain: ECS, the two heat capacities, γ, the efficacy ε, and scale factors on aerosol and greenhouse-gas forcing. Their prior distributions follow AR6 assessed ranges (ECS median 3 K, likely 2.5–4 K).
How it learns
Calibration is Bayesian, by adaptive importance sampling (population Monte Carlo). Each generation draws thousands of parameter sets, runs them from 1750 to the present, and weights each by how well it reproduces the observed temperature record. Residuals are modelled as an AR(1) process to represent internal variability such as ENSO; the noise level and autocorrelation are re-estimated every generation.
Each new generation proposes candidates from a kernel density fit to the previous generation's posterior, mixed with 25 % fresh draws from the AR6 prior. Because weights are always divided by the proposal density, the target is always the exact physics-plus-data posterior — the learning makes the search more efficient and sharper as data arrive without letting the model drift away from physics. The effective sample size (ESS) on the Model page measures that efficiency.
A new live generation is trained whenever sync_atmosphere finds that the observations have changed. The previous generation is never altered.
Scenarios
- Current trajectory — each greenhouse gas keeps growing at its observed mean rate over the last ten years; all other forcings frozen at their last value. It uses no information from after the cutoff, which makes it the fair yardstick for the Deviation page.
- SSP1-2.6, SSP2-4.5, SSP3-7.0, SSP5-8.5 — concentration pathways approximating the CMIP6 SSP projections (Meinshausen et al. 2020), blended smoothly from the latest observation. Aerosol, halocarbon and ozone forcing decline along scenario-specific paths.
Projection ranges combine parameter uncertainty with simulated year-to-year internal variability. No future volcanic eruptions are assumed.
Projection log & deviation
Every generation stores its full projection for each scenario. As observations arrive, the Deviation page scores each generation only on years after its cutoff: bias, RMSE, and how often observations fell inside the projected 66 % and 90 % ranges. Retrospective hindcasts (cutoffs 1990–2020) are trained only on data available at the time, giving an out-of-sample track record from the first day.
Limitations
- A two-layer global model has no regional detail, no carbon-cycle feedback (concentration-driven), and limited representation of pattern effects.
- Without ocean-heat-content data, the deep-ocean parameters are only weakly constrained. Adding NOAA ocean heat content is on the roadmap.
- The bundled non-GHG forcing and SSP anchors are rounded approximations; replace them with the official AR6 / CMIP6 files for publication-grade work.
Key references
- IPCC (2021) AR6 WG1, Chapter 7 and Supplementary Material 7.SM; Annex III.
- Meinshausen, M. et al. (2020) The shared socio-economic pathway greenhouse gas concentrations. Geosci. Model Dev. 13.
- Etminan, M. et al. (2016) Radiative forcing of CO₂, CH₄ and N₂O: a significant revision. GRL 43.
- Myhre, G. et al. (1998) New estimates of radiative forcing due to well mixed greenhouse gases. GRL 25.
- Held, I. et al. (2010) Probing the fast and slow components of global warming. J. Climate 23.
- Geoffroy, O. et al. (2013) Transient climate response in a two-layer energy-balance model. J. Climate 26.
- Cappé, O. et al. (2004) Population Monte Carlo. J. Comput. Graph. Stat. 13.
- Butler, J. & Montzka, S. The NOAA Annual Greenhouse Gas Index (AGGI). NOAA GML.