This 2D companion models the same physical illusion as the 3D utricle scene, but represents the sensory transduction stage itself as a population of directionally-tuned hair cells spread all the way around the macula, instead of a single 1-D shear axis. Real otolith afferents are known to be cosine-tuned (Fernandez & Goldberg): a hair cell whose bundle points along preferred direction φ fires in proportion to how much the specific-force vector projects onto φ, rectified (a bundle only depolarises for deflection toward its excitatory side):
f = a − g (specific force, identical to the 3D model)
r(φ) = max(0, f·(cos φ, sin φ) / g₀) for φ spread over the full circle
τ · dx/dt = f − x (same first-order viscous-gel lag)
The brain's estimate of "which way is down" is then reconstructed from this whole firing pattern by a population-vector decode — summing every active cell's preferred-direction vector, weighted by its firing rate:
P = Σ r(φᵢ)·(cos φᵢ, sin φᵢ)
θ_perceived = atan2(Pₓ, P_y)
Because gravity and linear acceleration enter f identically, the population's firing pattern — and therefore the decoded direction — cannot distinguish a tilted head from an accelerating one. This reproduces the exact same somatogravic illusion as the 3D model (a level head under steady 0.35 g reads back as ≈19° of false pitch), but the mechanism shown here is the actual sensory-coding scheme rather than a single shear number, and a rolling strip chart makes the lag between the true and perceived angle directly visible over time — something the 3D scene's static readouts don't show.
- Tilt slider — kinematic head tilt, applied instantly.
- Acceleration slider — forward linear acceleration in g, added into the specific-force vector.
- Gel viscosity — sets the lag time constant τ of the sensed (lagged) population response versus the instantaneous (unlagged) target, shown as two separate arrows on the ring.
- Aircraft Takeoff — ramps acceleration 0→0.35 g with tilt held at 0°, reproducing the classic in-flight illusion.