Liouvillian Flow on the Pendulum Phase Space
Drop a Gaussian blob of 256 tracers anywhere in the pendulum phase space $(\theta, p)$. Each tracer evolves under the Hamiltonian $H = p^2/2 - \cos(\theta)$ via velocity-Verlet. The cloud rotates, shears, and filaments, but its phase-space area is preserved (Liouville's theorem). The dashed curve is the separatrix $p = \pm 2\cos(\theta/2)$: below it orbits librate, above it they rotate. Drag the dashed circle (handle) to set the blob center.
shared/js/engine/symplectic.js, with the symplectic Jacobian preserving the phase-space
covariance determinant to within engine accuracy.
blob θ: 0.6000
blob p: 0.0000
A (cov): 0.0000
ΔA / A0: 0.0e+00
E (1st tracer): 0.0000
N tracers: 256
t (s): 0.00
WHAT TO TRY
- The blob starts on the separatrix, where it filaments fast: the cloud stretches into a thin thread wrapping the libration region while the bottom-right ellipse area races up, even though Liouville keeps the true area at 1.
- Drag the dashed circle deep inside the libration region: there the flow is nearly rigid, the blob barely distorts, and the covariance area hugs the dashed reference line.
- Drag it onto a rotation orbit above the separatrix: the cloud shears the other way as faster tracers outrun slower ones around the circle.