loading...
Press Play or choose a preset.
running...
The science
The bob has two coupled degrees of freedom: the vertical stretch z (positive downwards) and the twist theta. A helical spring that stretches also winds slightly, which couples them with the constant epsilon.
m z'' = -k z - (eps/2) theta - c_z z'I theta'' = -delta theta - (eps/2) z - c_t theta'
Energy is E = m z'^2/2 + k z^2/2 + I theta'^2/2 + delta theta^2/2 + eps z theta /2 and is conserved when the damping constants are zero. The moment of inertia is set by the two nuts: I = I0 + 2 m_n r^2, so turning the nuts out or in tunes the twist frequency w_theta = sqrt(delta/I) to the bobbing frequency w_z = sqrt(k/m).
w+-^2 = (w_z^2 + w_theta^2)/2 +- sqrt( ((w_z^2 - w_theta^2)/2)^2 + eps^2/(4 m I) )
These are the two normal modes. Started in one of them the pendulum oscillates at a single frequency. Started in a mix (for example pulled straight down) the two frequencies beat: at resonance the energy moves completely from stretch to twist in a time pi/(w+ - w-) and back again. Away from resonance the transfer is only partial, and the modes never cross (an avoided crossing, the same mathematics as coupled quantum levels).
Honest simplifications. The coupling is taken as linear and constant, the spring mass and its own inertia are ignored, and damping is plain linear drag and friction. Real Wilberforce springs have small non-linear and frequency-dependent corrections. The default parameters are plausible for a lab pendulum but are not measurements of a particular instrument. In the 3D view the spring twist is drawn as a linear gradient of the bob angle along its length.
In-page checks: (1) energy drift over 60 s of undamped motion, (2) the first full transfer time against pi/(w+ - w-), (3) the measured zero-crossing frequency of each normal mode against its analytic frequency.