Domino Chain Reaction (2D)
2D domino chain-reaction lab: each tile is a rigid physical pendulum toppling under gravity torque, with real energy-transfer collisions and the physically real critical-spacing effect that can stall the chain.
This 2D companion strips the chain reaction down to the physics that actually drives it: every tile is modelled as an independent rigid physical pendulum, hinged at its base edge, integrated from theta'' = (3g)/(2h)·sinθ — the same mass-independent law that governs any rod toppling about its end. A tile at rest (theta = 0) sits in unstable equilibrium, exactly like a real standing domino, so nothing falls until you push the first tile or click the stage. Contact between neighbours is computed from real geometry (a falling tile's top edge sweeps sideways by h·sinθ) and each collision hands over only a fraction η of the striking tile's kinetic energy, set by the Energy transfer slider, mimicking the friction and sound losses of a real tile-on-tile impact. Because a tile can never reach farther than its own height, spacing the chain wider than roughly 1.2× the tile height makes the reach geometrically impossible — push the Spacing slider that far and watch the chain physically stall partway through, the same critical-spacing limit that trips up real dominoes set too far apart. The live readout tracks wave speed directly from the simulated timing between consecutive tiles crossing their contact angle, not a scripted number.
Each domino integrates a real physical-pendulum ODE (theta'' = (3g)/(2h)·sinθ) with RK4, transfers a tunable fraction η of kinetic energy to its neighbour on contact, and can genuinely stall when spacing exceeds the critical height-based limit.
2D · HTML5 Canvas 2D · 60 FPS target · runs fully client-side, no install