🌍 Climate Risk Model — Ensemble Projection Live
Watch an ensemble of stochastic climate-risk projections spread and converge over a simulated region, with a live probability band for extreme-weather exposure.
About the Climate Risk Model
Climate-risk modeling rarely relies on a single forecast — the underlying physical system is far too noisy and uncertain for any one trajectory to be trustworthy. Instead, real climate-risk assessments run large ensembles of independent stochastic realizations forward in time and read risk off the spread of the ensemble: what fraction of plausible futures cross a dangerous threshold, and how wide is the range of outcomes at any given year. This simulation builds a genuine ensemble of that kind. Every one of the N member paths is an independent Ornstein-Uhlenbeck process — a mean-reverting stochastic differential equation — pulled toward a linearly rising equilibrium anomaly that represents a deterministic warming-drift scenario, with random annual shocks layered on top representing natural climate variability.
At every simulated year, the live values of all ensemble members are sorted and the 10th, 50th and 90th percentiles are read directly out of that sorted array — a genuine empirical-percentile computation, recomputed every year, not a pre-baked shape. The lower panel bins the ensemble's current-year distribution into a real histogram and reports the empirical probability that a member's anomaly exceeds your chosen extreme-risk threshold. Adjust the ensemble size, warming drift, volatility and mean-reversion sliders and hit reset to resample an entirely fresh ensemble, or drag the threshold slider to watch the exceedance probability update instantly from the live distribution.
Frequently Asked Questions
What kind of model actually runs behind this simulation?
Each of the N ensemble members is an independent Ornstein-Uhlenbeck process: a mean-reverting stochastic differential equation, discretized to annual steps, of the form X(t+1) = X(t) + θ·(μ(t) − X(t)) + σ·Z, where Z is a fresh standard-normal random draw for every member at every year. The equilibrium μ(t) rises linearly over time according to the warming-drift slider, representing the deterministic forced-warming component of a climate scenario, while θ (mean reversion) and σ (volatility) control how strongly and how noisily each path tracks that moving target. This is a genuine multi-path Monte Carlo simulation computed live in JavaScript, not a pre-rendered animation.
How is the shaded percentile band computed?
At every simulated year, the current temperature-anomaly value of all N ensemble members is collected, sorted numerically, and the 10th and 90th percentile values are read directly out of that sorted array — exactly the same empirical-percentile method used in real ensemble climate projections (e.g. CMIP-style spread plots). The band is therefore recomputed from the live ensemble at every year of the projection, not interpolated from a fixed formula, so changing the ensemble size, drift, or volatility sliders and resampling immediately reshapes the band you see.
What does the extreme-risk exceedance probability represent?
The histogram panel bins the anomaly values of every ensemble member at the current projection year, then counts what fraction of members currently sit above your chosen extreme-risk threshold. That fraction, expressed as a percentage, is a direct empirical estimate of the probability that the region's climate risk exceeds the extreme threshold in that year — the same logic climate-risk models use to translate an ensemble spread into an exceedance probability for insurers, planners, or infrastructure engineers.
Why do individual paths look noisy while the band narrows and widens?
Each path is subject to independent random annual shocks (the volatility parameter), so no single path is a reliable forecast on its own — that is precisely why ensembles are used. The percentile band's width reflects the ensemble's collective uncertainty: higher volatility or weaker mean reversion widens it, since paths diverge more from the shared equilibrium trend, while a large ensemble size gives a more stable, less noisy estimate of where those percentiles actually sit.
How do the drift, volatility, and mean-reversion sliders interact?
Drift sets how fast the shared equilibrium anomaly rises per decade, representing the forced warming signal from greenhouse-gas scenarios. Volatility sets the size of each year's random shock, representing natural climate variability (ENSO-like swings, volcanic aerosols, weather noise). Mean reversion sets how strongly each path is pulled back toward the equilibrium after a shock — a higher value keeps paths tightly clustered around the trend, while a lower value lets shocks persist and paths wander further before correcting, producing a much wider ensemble spread over time.
Is this the same approach used by real climate-risk models?
The core methodology — running many stochastic realizations forward and reading empirical percentiles and exceedance probabilities off the live ensemble — mirrors how real climate-risk and financial-risk models quantify uncertainty (CMIP multi-model ensembles, catastrophe models, and Monte Carlo risk simulations all work this way). The specific process here (a single-variable Ornstein-Uhlenbeck anomaly with linear drift) is a simplified teaching model rather than a full coupled climate model with multiple physical variables, regional grids, and calibrated forcing scenarios, so treat it as a faithful illustration of ensemble-projection mechanics rather than an operational forecast.
N independent Ornstein-Uhlenbeck paths mean-revert toward a rising warming-drift equilibrium with random annual shocks; live sorting of the ensemble at every year yields real 10–90% percentile bands and a genuine empirical exceedance probability against your extreme-risk threshold.
3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install