Quantum sensorsEdit on GitHubSource: docs/QUANTUM.md

Quantum inertial-sensor physics (cold-atom interferometer)

Most of Kshana drives its quantum sensors from published Allan/noise coefficients — datasheet lookups (see QUANTUM-MODELS.md and PROVENANCE.md). This document covers the one place where the engine instead computes sensor performance from first principles: the cold-atom interferometer (CAI) accelerometer model in src/inertial/quantum_imu.rs.

It is deliberately a minimal, honest physics layer — the quantum-projection-noise floor and the interferometer scale factor — not a full instrument simulator. The sections below state exactly what is and is not modelled.

What is modelled#

A three-pulse (π/2–π–π/2) Mach–Zehnder atom interferometer (Kasevich & Chu 1991; Peters, Chung & Chu 2001), the standard cold-atom accelerometer geometry:

Quantity Formula Notes
Effective wavevector k_eff = 4π/λ Two-photon Raman; Rb-87 D2 (780.241 nm) → k_eff ≈ 1.611×10⁷ rad/m.
Interferometer phase Φ = k_eff · a · T² Uniform specific force a along k_eff, pulse separation T. The T² scaling is the dominant sensitivity lever (microgravity buys long T).
Quantum projection noise σ_Φ = 1/(C·√N) Per shot, fringe contrast C, atom number N — the shot-noise limit of a two-port population readout.
Per-shot acceleration sensitivity σ_a = σ_Φ / (k_eff·T²) Phase noise referred to acceleration.
Shot-noise-limited ASD (amplitude spectral density) n_a = σ_a·√T_c Sampling every cycle time T_c; units (m/s²)/√Hz.
Velocity-random-walk PSD (power spectral density) q_va = n_a² The coefficient the classical AccelModel consumes — now derived, not supplied.
Contrast decay C(t) = C₀·exp(−t/τ_c) Decoherence over the interrogation.
Vibration transfer function |H(ω)| = (4/ω²)·sin²(ωT/2) Acceleration→phase response of the ideal three-pulse geometry (Cheinet et al. 2008); DC (zero-frequency) limit T².
Vibration-limited phase σ_Φ² = k_eff²·S_a·T³/3 Flat acceleration PSD S_a along the Raman axis; ∫₀^∞|H|²dω = (2π/3)T³.
Vibration-limited accel σ_a = √(S_a/(3T)) Per shot; note k_eff cancels — set only by the platform PSD and interrogation time.
Fringe ambiguity a_max = π/(k_eff·T²), range in cells a_max/σ_a = π/σ_Φ The fringe phase is read modulo 2π, so a single reading is unambiguous only inside ±a_max and aliases every 2·a_max outside it; the cell count does not depend on k_eff or T.
Axis projection a_∥ = k̂_eff · a First-order coupling is rank-1: only the along-beam component enters the phase.
Coriolis / rotation phase Φ_cor = 2·k_eff·v_⊥·Ω·T² Rotation systematic for a moving vehicle (Lan et al. 2012); equivalent bias 2·v_⊥·Ω = the classical Coriolis term.
AC-Stark (light-shift) phase (AC: alternating current) Φ_LS = (δ_LS,1 − δ_LS,3)/Ω_eff One-photon light shift; a constant shift cancels by π/2–π–π/2 symmetry (Peters 2001; Gauguet 2008).

The closing of the loop is the point: CaiAccelerometer::q_va() produces exactly the white-acceleration PSD that the rest of the inertial stack already integrates into a velocity/position error — so a quantum sensor's noise can be traced to its atom number, interrogation time, and contrast rather than to a datasheet line.

A worked figure (Rb-87, T = 10 ms, N = 10⁶, C = 0.5, T_c = 0.5 s): Φ(1 g) ≈ 1.58×10⁴ rad, σ_Φ = 2×10⁻³ rad, σ_a ≈ 1.24×10⁻⁶ m/s² (≈ 0.13 µg) per shot, and a shot-noise floor n_a ≈ 0.09 µg/√Hz. With a modest platform vibration PSD S_a = 10⁻¹⁰ (m/s²)²/Hz the vibration-limited per-shot floor is σ_a ≈ 5.8×10⁻⁵ m/s² (≈ 5.9 µg) — about 46× the shot-noise floor, showing why real devices are vibration-, not projection-, limited. The same interferometer reads specific force unambiguously only within a_max ≈ 1.95×10⁻³ m/s² (≈ 199 µg), about 1 571 resolution cells: Φ(1 g) is thousands of fringes, so a single reading of 1 g is aliased.

What is NOT modelled (and why the floor is optimistic)#

The shot-noise floor above is a fundamental lower bound. Real CAI instruments sit above it: a static laboratory gravimeter (Freier et al. 2016, 96 nm/s²/√Hz) about 60× above the floor computed for its parameters, and a fielded accelerometer triad much further (the Exail device cited in scenarios/imu-deadreckoning.toml quotes 22 µg/√Hz). The dominant term — vibration coupling — and the two leading deterministic systematics — Coriolis/rotation and the AC-Stark light shift — are modelled (the transfer-function, Coriolis and light-shift rows above), and so is the fringe-ambiguity dynamic range (max_unambiguous_accel, wrap_phase, accel_from_wrapped_phase, dynamic_range_cells). The remaining gap is what this layer still does not include:

  • Wavefront aberration and higher-order beam-pointing systematics — not modelled.
  • Fringe-ambiguity resolution — the model states the unambiguous range and returns the wrapped phase; it does not unwrap a reading outside ±a_max (for example with a classical accelerometer or several interrogation times), and it bounds the range for an ideal three-pulse fringe, with no wavefront or contrast-loss terms.

Mapping to the literature: Groves, Principles of GNSS, Inertial, and Multisensor Integrated Navigation Systems §12.5 (quantum technology; GNSS: global navigation satellite system); Cheinet et al., IEEE Trans. Instrum. Meas. 57 (2008) for the interferometer sensitivity/transfer function (IEEE: Institute of Electrical and Electronics Engineers); Freier et al., J. Phys.: Conf. Ser. 723 (2016) for the mobile-gravimeter error budget; CARIOQA-PMP (Cold Atom Rubidium Interferometer in Orbit for Quantum Accelerometry – Pathfinder Mission Preparation) for the space-accelerometer parameter regime.

Status#

This is the P2 quantum-physics-layer item from ROADMAP.md: the Mach–Zehnder phase, projection noise, scale factor, derived q_va, contrast decay, and the vibration-coupling transfer function / white-PSD variance are implemented and unit-tested against hand computation (including a numeric band-integral cross-check of the transfer function against its analytic T³ result).

The model is also wired into runnable scenarios: an accelerometer resolves to ImuKind::QuantumCai when it carries a cai table — [accel_quantum.cai] or [accel_classical.cai] in an inertial scenario, [accel.cai] in a hybrid-ukf scenario (scenarios/hybrid-ukf.toml ships one) — with the fields wavelength_m, pulse_sep_t (T), atom_number (N), contrast (C), cycle_time_s (T_c) and an optional platform vibration_psd. Its velocity-random-walk PSD q_va is then derived from the interferometer physics — the shot-noise floor plus, when a vibration PSD is given, the vibration-limited contribution in quadrature — rather than supplied as a datasheet coefficient. Scenarios without a [cai] block are classical and byte-unchanged.

The Coriolis (coriolis_phase / coriolis_accel_bias) and AC-Stark light-shift (ac_stark_phase) systematics are implemented and unit-tested (the Coriolis equivalent bias is checked against the classical 2·Ω×v; the AC-Stark phase against its symmetric cancellation). A cycle-time drift sweep (cai_drift_sweep) reports the quantum-CAI dead-reckoning position drift versus cycle time — the computational core of a quantum-vs-classical comparison. The quantum-gnss-free-nav kind reuses the same accelerometer through QuantumNavBudget, and src/inertial/cai_params.rs carries a bracketed (best, nominal, conservative) parameter sheet with a citation per figure.

What the external checks show. tests/quantum_inertial_sensor_reference.rs checks the transfer function against a numeric time-domain integral of Cheinet's sensitivity function, k_eff against published line wavelengths, and the Coriolis bias against |2Ω×v| — exact matches of the published forms. The shot-noise floor is a one-sided bracket: for the published parameters of the Peters et al. 2001 caesium gravimeter and the Freier et al. 2016 GAIN rubidium gravimeter (arXiv:1512.05660) the modelled floor lies at or below each device's achieved noise and within three orders of it (for GAIN the floor is 1.53×10⁻⁹ m/s²/√Hz against the achieved 9.6×10⁻⁸, a factor of about 63). That is consistent with real devices being vibration- or technically limited, but it is a bracket, not a validation of an instrument noise model, so the matrix row stays MODELLED.

The remaining follow-ons are wavefront/beam-pointing systematics, fringe-ambiguity resolution, a numerically exact reproduction of the CARIOQA-PMP Monte-Carlo and Boeing/AOSense GPS-denied (GPS: Global Positioning System) flight-test budgets (which need the published platform PSDs and per-shot SNR, the signal-to-noise ratio), and a quantum-vs-classical comparison preset in the browser playground on top of cai_drift_sweep.