aidoesscience
aidoesscience › Adiabatic invariant · J=E/ω
Validating · validations

Adiabatic invariant · J = E/ω

Slowly tighten the spring under a swinging mass and both its energy and its frequency climb. Is ANYTHING conserved — and is it the same quantity Bohr quantized?

Adiabatic invariant · J = E/ω simulation running in the browser

▶ Run the simulationSee the measured result

Known value
1

Units: dimensionless (R = J_final/J_initial, the ratio of the action J=E/ω before and after a slow change of the potential; the adiabatic theorem predicts R→1. Independent of mass, amplitude, and starting phase)

How the lab tests it

Integrate a from-scratch 1-D oscillator H = ½p² + ½k(t)x² (unit mass, ω=√k) with velocity Verlet (symplectic), and SLOWLY ramp the stiffness k from k₀=1 to k₁=4. Read the action J = E/ω — equivalently the phase-space area (1/2π)∮p dq — straight off the trajectory's energy and frequency, and track the ratio R = J_final/J_initial. Compare four ways of changing the well: a slow linear ramp, a scan of ramp durations τ, an instantaneous SUDDEN step, and a smooth ramp; plus a geometric shoelace measurement of the enclosed phase-space area and a slow up-then-down round trip. ?world=adiabatic.

What it checks

the adiabatic invariance of the action (Ehrenfest 1916): J = (1/2π)∮p dq is conserved to all orders in the slowness when the potential is changed slowly, even though E and ω individually change. SLOW RAMP: R = J_final/J_initial = 1.000 to ≤5e-4 — while the energy RISES by the full frequency ratio E_final/E_initial = √(k₁/k₀) = 2.0 (the oscillator gains energy as the well tightens), so the conserved quantity is manifestly NOT the energy but the phase-space AREA. PERTURBATION: |R−1| falls monotonically with the ramp duration τ as a clean power law ~τ⁻² (the slowest ramp is >1000× more invariant than the fastest) — slower ⇒ more adiabatic. DECISIVE CONTROL: an instantaneous SUDDEN step of the same endpoints does NOT conserve J — phase-averaged R = (k₀+k₁)/(2k₀)/√(k₁/k₀) = 1.25 ≠ 1, a deviation 10⁵× the slow ramp's — so slowness is essential, not incidental. GEOMETRIC: the action read as the shoelace phase-space area ∮p dx/2π equals E/ω to 2e-8 — the invariant IS the enclosed area, exactly the ∮p dq that Bohr and Sommerfeld quantized (∮p dq = nh), which is why quantum numbers survive slow perturbations (the quantum adiabatic theorem). The classical-mechanics bridge from the oscillator (?world=resonance, ?world=coupled) and the virial theorem (?world=virial) to old quantum theory (?world=qwell, ?world=hydrogen); R=1 is never plugged in — only E(t), ω(t) are measured.

Adiabatic invariant calculator: the action J = E/ω, slow vs sudden, and the mirror loss cone

Tighten the spring under a swinging mass slowly and the mass gains energy — the well does work on it — so energy is not what survives the change. Something else does. The action J = E/ω, which is the area the orbit encloses in phase space divided by 2π, holds fixed while E and ω each climb, and that is Ehrenfest's theorem: J is an adiabatic invariant. This page computes it, and every number in it is assembled from what you type. The frequency is a Math.sqrt of the stiffness over the mass, correctly rounded by IEEE-754; the ellipse's two semi-axes are square roots of the energy; and the invariance is never asserted — the action ratio is built out of a MEASURED energy ratio, and the value it is supposed to land on is assembled rather than typed, so the page reports how many ulps from one it actually arrives. Fed this lab's own executed run it arrives at 0.9980961675062209, which is the screen's number and not a tidy one. The rival rides the same expression as a dial: R_s = (E₁/E₀)/(ω₁/ω₀)^s, and its two ends are the whole argument — s = 1 is the action and returns the invariant, s = 0 is the naive guess that ENERGY is conserved and returns 1.9961923350124418 instead, off by the full frequency ratio, and both endpoints branch away from Math.pow so they are exact rather than merely close. Slowness is then priced rather than assumed: ε = (k₁−k₀)/(ω₀²τ) says how fast the change is compared with the orbit, the residual falls as τ⁻² and the page tests that as a RATIO of two measured deviations against (τ_B/τ_A)² — 1454 measured against 1024 predicted across five doublings, a real disagreement the page reports rather than smooths — and inverts it with a square root to say what τ a target invariance demands. The sudden step is the falsification, and it is computed from the module's own x and v at the instant it fires rather than quoted: position and momentum are continuous across an instantaneous change, so the energy jumps by ½(k₁−k₀)x² and the action jumps with it, phase-averaging to (k₀+k₁)/(2k₀)/√(k₁/k₀) = 1.25 — an expression with no mass in it at all, which the page checks by moving the mass. Two more directions take the same invariant somewhere else. In a magnetic mirror it is μ = E⊥/B, the first adiabatic invariant of plasma physics, and it gives the loss cone: sin θ_c = 1/√R_m, with the trapped fraction 1 − √(1−1/R_m), both pure arithmetic — only the angle in degrees passes through an arcsine, and rather than assert that Math.asin is implementation-approximated the page measures it on itself: it sends the angle back through Math.sin, reports how far the round trip moved as a bucketed verdict rather than as digits, and prints the degrees only to the figures they are stable at — because that round trip lands on different doubles in a hot and a cold run of the same engine, while 1/√R_m does not move at all. And in the old quantum theory the same ∮p dq is the quantized thing, ∮p dq = nh, so J = nħ and the adiabatic theorem becomes the statement that a quantum number survives a slow change of the trap — which is why the energy tracks the frequency. Four things this page will NOT do. It will not compute the harmonic oscillator's SPECTRUM: E_n = ℏω(n+½) and the zero-point half belong to another page on this site, and the ½ is precisely what the action quantization above misses. It is not the thermodynamic adiabat — no heat exchange, γ, or compression ratio appears here, and a different page owns those. It offers no lab comparison for the magnetic mirror, because this lab simulated a spring and has never run one. And it will not correct the screen: the module's R sits 1.90e-3 below unity, the oracle's sits 1.4e-6 above it, and the last direction prices that gap against the two systematics the finding discloses instead of editing either number to agree.

J = E/ω = (1/2π)∮p dq, ω = √(k/m) · R = (E₁/ω₁)/(E₀/ω₀), and the dial R_s = (E₁/E₀)/(ω₁/ω₀)^s · slow limit: E₁/E₀ = ω₁/ω₀, amplitude ratio (k₀/k₁)^¼ · sudden step: ⟨R⟩ = (k₀+k₁)/(2k₀)/√(k₁/k₀) · ε = (k₁−k₀)/(ω₀²τ), |R−1| ∝ τ⁻² · mirror: μ = E⊥/B, sin θ_c = 1/√R_m, lost fraction 1 − √(1−1/R_m) · ∮p dq = nh ⇒ J = nħ

—
This simulation has a catalogued, oracle-checked result: The adiabatic invariant.