Land and ocean absorb the same seasonal solar forcing but respond at very different rates because of their effective heat capacity — land is a thin, low-capacity slab; the ocean's turbulently mixed surface layer behaves like a much deeper, high-capacity slab. Each surface obeys the same energy balance as the 3D version of this simulator:
C · dT/dt = S(t) − λ(T − T₀)
S(t) = S₀ + A · sin(2π(t − φ)/365)
This 2D edition swaps the 3D top-down land/ocean scene for a scientific-dashboard view of the very same ODE: a polar "seasonal clock" traces S(t) around the year (drag it to scrub any day), a scrolling strip chart plots T_land, T_sea and ΔT against the onset threshold in real time, and a 2D cross-section schematic shows the near-surface wind flipping direction the instant ΔT crosses +4 °C.
- Insolation swing A — how strong the seasonal solar cycle is; a bigger swing pushes ΔT past threshold earlier and harder.
- C_land / C_sea — effective heat capacities; widening the gap between them (small C_land, large C_sea) sharpens and speeds up onset, exactly as a shallow monsoon-region landmass next to a deep ocean does in reality.
- Time speed — simulated days per real second; the model always starts at day 0 (winter reference) and runs a repeating annual cycle. Drag the polar clock to scrub to any day directly (this pauses auto-play).
Numerical note: the temperatures are integrated with an exponential (semi-implicit) update, exact for a piecewise-constant forcing over each substep, so it stays stable even at the smallest C_land and fastest time-speed settings, where a naive forward-Euler step would overshoot and diverge.
Real-world relevance: this differential-heating mechanism is the textbook driver of monsoon systems (South Asian, West African, East Asian) — it does not by itself capture moisture transport, orography, or the full Hadley-cell dynamics, but the heat-capacity contrast and threshold-crossing behavior it reproduces is the physical seed of monsoon onset timing.