Artificial Wasteland · research · shepard-tone

The height that never moves

The verification notebook behind The Note That Never Lands. The page makes a precise, checkable claim: a Shepard tone's pitch class (chroma) climbs without end while its pitch height — the loudness-weighted mean log-frequency of its partials, the spectral centroid — stays pinned. That is the entire mechanism of the illusion, and it is computable, not merely asserted.

verify.mjs

Run it: node research/shepard-tone/verify.mjs  →  PASS. The page in public/strata/shepard-tone/ synthesises the tone from the same model — octave-spaced partials under a fixed Gaussian bell — and shows the centroid holding live as you listen.

What is proved

  1. Height is pinned. Over a full chroma cycle the centroid varies by ~1.8×10⁻¹⁰ cents (max − min) — about 2.8×10¹⁰ times below the ~5–10 cent just-noticeable difference for pitch. For any ear, the height is constant.
  2. The octave loop closes. |height(θ) − height(θ+1)|5×10⁻¹⁰ cents: raising every partial one octave returns the tone to itself, so chroma C is chroma C an octave on — which is why the climb never arrives anywhere.
  3. The edges are seamless. The loudest partial outside the audible band [20 Hz, 20 kHz] sits at −63 dB, so partials enter at the bottom and leave at the top below audibility — no click, no seam.
  4. The tritone is level. Two Shepard tones a tritone (exactly half an octave) apart have identical height — difference ~4×10⁻¹² cents. Neither is acoustically "higher"; which one a listener hears ascend is the listener's, not the signal's (Deutsch's tritone paradox).

The model

Partials one octave apart: fk(θ) = 20 · 2(θ+k) Hz. Fixed Gaussian envelope over log₂-frequency, centre 640 Hz, width σ = 1.3 octaves. θ ∈ [0,1) is the chroma phase. A Gaussian (not a windowed bell) is used on purpose: the centroid's drift over a cycle is set by the envelope's Fourier content at the octave comb spacing, which a Gaussian this wide suppresses to nothing — a finite raised-cosine window instead leaks ~7 cents, right at the threshold of audibility. The verifier holds the residual to a hard 0.01-cent threshold.

Output

$ node research/shepard-tone/verify.mjs

Shepard tone — height-invariance check
--------------------------------------
envelope: Gaussian, centre 640 Hz (9.322 oct), width 1.3 oct
partial comb: octave-spaced, 23 slots, base 20 Hz

mean pitch height (centroid)      : 9.321928 oct = 640.0 Hz
height ripple over a full cycle   : 1.769e-10 cents (max−min)
  audible JND for pitch ≈ 5–10 cents; ripple is 2.83e+10× below it
octave-loop mismatch h(θ)−h(θ+1)  : 5.201e-10 cents (worst case)
loudest partial outside hearing   : -63.4 dB (re. envelope peak)
tritone pair height difference    : 4.263e-12 cents (= equal height)

PASS — height is pinned to within 1.77e-10 cents while chroma cycles a full octave; the loop closes; the tritone pair is exactly level.

Sources

  1. Shepard, R. N. (1964). "Circularity in judgments of relative pitch." J. Acoust. Soc. Am. 36(12): 2346–2353. doi:10.1121/1.1919362
  2. Risset, J.-C. (1969). "Pitch control and pitch paradoxes demonstrated with computer-synthesized sounds." J. Acoust. Soc. Am. 46(1A_Suppl): 88.
  3. Deutsch, D. (1986). "A musical paradox." Music Perception 3(3): 275–280.
  4. Deutsch, D. (1991). "The tritone paradox: an influence of language on music perception." Music Perception 8(4): 335–347.