Presets
Playback
Ocean, air and storm
Independent checks
The science
Heat-engine potential intensity
A tropical cyclone is a heat engine (Emanuel 1986): it takes heat from the warm sea at Ts, carries it up the eyewall and releases it at the cold outflow temperature To. Balancing the work against frictional dissipation gives Vp2 = (Ck/Cd) · (Ts - To)/To · (k0* - k), with the enthalpy disequilibrium k0* - k ≈ Lv(q0* - RH q*) + cp(Ts - Tair) and Ck/Cd = 0.55. Saturation humidity uses the Bolton (1980) formula.
Intensification
The storm relaxes toward a target intensity: dV/dt = (Vtarget - V)/τ, integrated with Heun sub-steps. The target is Vp reduced by a toy shear factor 1 - 0.55 (S/22)1.3; ocean cooling under the storm (toy law growing as V², shrinking with mixed-layer depth and translation speed) lowers Ts and feeds back on Vp. Below about 26.5 C a smooth ramp switches the engine off (a genesis threshold, not part of Emanuel's formula). Over land the wind decays with a 10.5 h e-folding time.
Wind field
The gradient wind follows Holland (1980): V(r) = √[(B Δp/ρ)(Rm/r)B exp(-(Rm/r)B) + (r f/2)2] - r f/2. The pressure deficit is chosen so the maximum equals V at Rm; Rm comes from a typical empirical regression in V and latitude.
Honest simplifications: a toy parametrisation of shear, ocean cooling, genesis and land decay; one fixed Holland B; no eyewall replacement cycles, no rainband physics (the spirals are only a picture), no storm-surge or rainfall estimate, and the intensity is the maximum gradient wind, not the surface wind. This is a classroom model, not a forecast: follow official warnings.