💧 Global Water Cycle Visualization
Simulate the global water cycle: evaporation driven by the Clausius–Clapeyron relation, condensation, precipitation, runoff, infiltration and groundwater flow — with real mass conservation across five reservoirs.
About this simulation
The global water cycle moves the same, fixed quantity of water between five reservoirs — ocean, atmosphere, ice, groundwater and surface water — forever. This simulator tracks each reservoir as a real numerical stock and computes every flux between them from driving physics each frame, so the total never drifts.
🔬 What it shows
A 3D landscape — ocean, mountains with an ice cap, a forest, drifting clouds and an underground cross-section — where individual water-molecule particles are reassigned between reservoir arrays in exact proportion to the computed evaporation, condensation, precipitation, runoff, infiltration and baseflow fluxes.
🎮 How to use
Raise Global Temperature to watch saturation vapour pressure — and evaporation — climb via the Clausius–Clapeyron relation. Slide Vegetation Cover to shift the runoff/infiltration balance and transpiration rate. Adjust Simulation Speed to compress or stretch the reservoirs' very different residence times.
💡 Did you know?
Each +1 °C of warming lets the atmosphere hold about 7% more moisture (Clausius–Clapeyron) — the same relation used to explain why a warmer climate produces heavier downpours even where average rainfall changes little.
Real-world residence times
| Reservoir | Typical residence time |
|---|---|
| Atmosphere (water vapour) | ≈ 9 days |
| Rivers / surface water | ≈ 2–6 months |
| Shallow groundwater | years to decades |
| Ocean & deep groundwater | centuries to millennia |
| Glacial ice | millennia |
Observe a dynamic representation of the Earth's water cycle, adjusting parameters like temperature and vegetation to see how evaporation, condensation, precipitation, and runoff interact in this interactive simulation. Users can control key aspects for detailed observation.
2D · HTML5 Canvas 2D · 60 FPS target · runs fully client-side, no install