This is the pacemaker–accumulator (scalar-timing) model of subjective duration proposed by Treisman and formalised by Gibbon: an internal oscillator emits pulses, an attentional gate lets a fraction of them through, and an accumulator's running total is read out as "how long that felt".
raw pulse rate f_raw(t) = f_pacemaker(t) · a(t) [gamma-band oscillator × arousal]
gate g(t) ∈ [0,1] [attentional transmittance]
gated pulse rate f_eff(t) = f_raw(t) · g(t) [pulses actually reaching the accumulator]
accumulator N(t) = ∫ f_eff(t) dt [running pulse count]
perceived T_p(t) = N(t) / f_ref [read out against a calibrated reference rate]
- Pacemaker frequency — the internal gamma-band oscillator's tick rate; higher frequency floods the accumulator faster than real time passes.
- Attentional gate — how much of each pulse train reaches the accumulator; divided attention (low %) starves it and events feel shorter, as reported after distraction.
- Arousal / heart-rate multiplier — physiological arousal speeds the pacemaker itself (it multiplies the raw rate, before the gate), the mechanism proposed to explain why a racing heart makes time drag.
- The reference rate f_ref is the pacemaker's resting calibration (40 Hz, full attention, 1.00× arousal) — at those defaults perceived time tracks real time 1:1; any deviation shows up directly as the ratio above.
Top-left: the pacemaker core (pulses at the raw rate) inside its attentional iris, which opens and closes with the gate. Top-right: a scrolling strip chart contrasting every raw pulse the pacemaker fires against the thinned-out stream that actually survives the gate — the visible gap between the two rows is attention doing its filtering. Bottom-left: the accumulator ring, a comet of gated pulses chasing around a track you can drag to spin — its speed and trail length track the effective rate directly. Bottom-right: two bars racing on an 8-second loop, one at real speed and one at perceived speed, so you can watch subjective time visibly outrun or lag reality.