Presets
Playback
Parameters
Layers
Model check
The science
One domino
A domino of height h and thickness t rotates about its front bottom edge by an angle θ (zero when upright). Its centre of mass is at height y(θ) = (h/2) cosθ + (t/2) sinθ, so the energy ½ I ω² + m g y(θ) is conserved with I = m (h² + t²)/3. It has to be pushed past the tipping angle θ* = atan(t/h), where y is maximal, before gravity takes over: the minimum push is ω = sqrt(2 g (y(θ*) - h/2)/(I/m)).
Impact map
The top front corner reaches the next domino after θc = asin(d/h) (d = gap). The collision is treated as two identical rods with restitution e and the same lever arm: angular momentum balance gives the struck domino ω' = (1 + e)/2 ωc and the striker keeps (1 - e)/2 ωc. Iterating push, fall and impact converges to a fixed point: the steady toppling wave moves one pitch (d + t) per fall time, v = (d + t)/Tfall. Very small or very large gaps give slow waves, and the chain can die if the push cannot get a domino over θ*.
Checks
(1) Energy conservation of the single-domino ODE. (2) Fall time between two angles from the ODE against the quadrature T = ∫ dθ/ω(θ). (3) Full 40-domino simulation against the speed predicted by the map fixed point.
Simplifications
Dominoes are 2D rigid rods in a vertical plane, impacts are instantaneous at the top edge with a single restitution coefficient, there is no friction or sliding at the pivot, and a toppled domino rests on its neighbour without separate contact modelling. Real chains show lateral wobble, slipping and variable e, so measured speeds (typically 0.5 to 1 m/s for 48 mm dominoes) only agree roughly. The 3D lab is a scene viewer; here only the dominoes' rigid-body dynamics are modelled.
What to try
- Use the tight and wide gap presets and compare the wave speed graph.
- Lower the push below the minimum to see the chain die.
- Switch to Moon gravity: the wave slows by about sqrt(g).