Instructor notes: Doppler Shift of Light

Public notes (v0.2 policy). Not linked from primary navigation.

Exhibit: /cosmic-playground/exhibits/doppler-shift/

Overview

Navigation

This guide is instructor-facing Student demo: /play/doppler-shift/
Main code: apps/demos/src/demos/doppler-shift/main.ts
UI logic: apps/demos/src/demos/doppler-shift/logic.ts
Physics model: packages/physics/src/dopplerShiftModel.ts

Why this demo exists

This instrument helps students connect one measurable observable (spectral line shift) to one hidden physical quantity (radial velocity).

It is intentionally dual-view:

  • wave-spacing mechanism (uniform observer-side spacing), and
  • lab-vs-observed spectral line comparator with connectors.

Learning goals

  • Distinguish redshift and blueshift with sign-correct velocity language.
  • Convert among $\lambda$, $\nu$, $z$, and $v_r$ with unit-safe readouts.
  • Explain when non-relativistic Doppler is acceptable and when relativistic Doppler is required.
  • Separate kinematic Doppler shift from cosmological and gravitational redshift mechanisms.
  1. Start at rest and establish line-matching baseline.
  2. Move to $\pm 300\ \text{km/s}$ and narrate direction + magnitude in both wavelength and frequency.
  3. Trigger preset 7 ($z=0.158$) and compare formula outputs.
  4. Trigger preset 8 ($z=2$) and ask why non-rel now fails.
  5. Use one mystery round as a quick inferential check.

Misconceptions to target

  • “Light should bunch up like sound ripples in air.”
  • “All redshift is cosmological redshift.”
  • “If wavelength goes up by x%, frequency always goes down by exactly x%.”

Activities

Navigation

MW Quick (5-7 min)

Goal: establish direction + sign convention quickly.

  1. Use H at rest, then set $+300\ \text{km/s}$.
  2. Ask: “What changed in $\lambda$ and $\nu$?”
  3. Set $-300\ \text{km/s}$ and contrast.
  4. Debrief with sign language: receding/redshift, approaching/blueshift.

MW Short (8-12 min)

Goal: identify non-rel breakdown threshold.

  1. Keep one element fixed.
  2. Run presets 5, 6, 7, 8.
  3. Record divergence (%) each time.
  4. Ask for a threshold sentence: “non-rel is safe up to about _____.”

Friday Lab (20-30 min)

Goal: inference workflow like real spectroscopy.

  1. Teams run one mystery challenge each.
  2. Each team must justify its guess with at least two spectral features.
  3. Teams compare non-rel and relativistic inferred velocities for the same case.
  4. Exit claim: which formula they would publish and why.

Station version (10-12 min)

Use apps/site/src/content/stations/doppler-shift.md as the printable student artifact.

Assessment

Navigation

Clicker prompts

  1. If H-alpha shifts from 656.3 nm to 668.5 nm, the source is:
    A. Approaching
    B. Receding
    C. At rest
    D. Cannot tell
    Correct: B

  2. Which statement is correct for non-rel Doppler formulas?
    A. $\Delta\nu/\nu_0 = -\Delta\lambda/\lambda_0$ exactly at all speeds
    B. Wavelength and frequency formulas are exact reciprocals
    C. Wavelength uses a multiplier and frequency uses a divisor
    D. Frequency does not change with velocity
    Correct: C

  3. When should relativistic Doppler be used?
    A. Only for $z<0$
    B. Only for UV lines
    C. When $|v_r|/c$ is no longer small and NR error is non-negligible
    D. Never
    Correct: C

Short-answer checks

  • Explain the difference between kinematic Doppler redshift and cosmological redshift in two sentences.
  • Why does this demo show uniform crest spacing at the observer for light?
  • Describe one classroom-safe criterion for switching from non-rel to relativistic analysis.

Exit ticket

  1. Give one real or simulated case where NR and relativistic predictions noticeably differ.
  2. State the sign convention for $v_r$ used in this demo.
  3. Write one sentence: what evidence in the comparator canvas supports your velocity claim?

Model notes (deeper)

Navigation

Core model

Non-relativistic: $$ \lambda_{\rm obs} = \lambda_0\left(1 + \frac{v_r}{c}\right),\qquad \nu_{\rm obs} = \frac{\nu_0}{1 + v_r/c},\qquad z_{\rm nonrel} = \frac{v_r}{c} $$

Relativistic: $$ \lambda_{\rm obs} = \lambda_0\sqrt{\frac{1+\beta}{1-\beta}},\qquad \nu_{\rm obs} = \nu_0\sqrt{\frac{1-\beta}{1+\beta}},\qquad \beta = \frac{v_r}{c} $$

Inverse relation: $$ \beta = \frac{(1+z)^2-1}{(1+z)^2+1} $$

Implementation notes

  • Shared physics API: packages/physics/src/dopplerShiftModel.ts
  • Demo state coupling is relativistic for $v_r \leftrightarrow z$ synchronization.
  • Formula toggle chooses prediction/readout rendering mode.
  • The redshift slider includes two regime markers at the 5% NR-divergence boundary (blue side and red side) because the $z(v_r)$ mapping is asymmetric.
  • Spectrum lines come from SpectralLineModel; Fe uses a dense catalog path and defaults to strongest-8 view for readability.
  • Representative-line readouts use visible-first anchoring (strongest line in $380$-$750\ \text{nm}$) with fallback to strongest-overall when no visible line exists.
  • Mystery workflow now includes a post-check Copy challenge evidence helper for debrief artifacts.

Pedagogical clarifications

  • Uniform light-wave spacing in this demo: The observer receives crests at one steady spacing $\lambda_{\rm obs}$ for a fixed source velocity; the diagram intentionally rejects sound-style ripple intuition.
  • Non-rel asymmetry: the wavelength relation is multiplicative while the frequency relation is divisive; they agree to first order, not exactly at finite speed.
  • Divergence interpretation: the readout reports percent difference between $z_{\rm nonrel}$ and $z_{\rm rel}$ so students can quantify approximation quality.
  • Regime markers: slider markers make the 5% NR-error boundary visible in both blue and red directions, with text cue for non-color accessibility.
  • Mechanism boundaries: kinematic Doppler is modeled; cosmological and gravitational redshift are conceptually noted but not simulated.

Instructor sanity checks

  • H-alpha at rest near $656.3\ \text{nm}$.
  • +300 km/s shifts redward by about $0.66\ \text{nm}$ (non-rel close to rel).
  • Preset 7 ($z=0.158$) shows visible NR-vs-rel divergence.
  • Preset 8 ($z=2$) clearly invalidates the non-rel approximation.

Backlog

Navigation

P0 (blocking for launch-ready)

  • Attach classroom validation notes (timing, confusion points, misconception outcomes).
  • Attach manual screen-reader smoke notes (VoiceOver + NVDA) for controls, challenge flow, and live-region announcements.

P1 (candidate-friendly improvements)

  • Add optional uncertainty overlays for measured wavelength and inferred velocity.
  • Add projector-optimized annotation scale preset for large classroom display.

P2 (nice to have)

  • Add optional CSV worksheet export from station-mode rows.
  • Add side-by-side challenge history panel for rapid repeated practice rounds.

P3 (optional polish from post-push audit)

  • Completed on 2026-02-23:
    • Redshift-slider regime markers at the 5% NR-error threshold (blue/red sides).
    • Why this line? helper chip with mystery-safe lock behavior.
    • Copy challenge evidence helper for post-check debrief capture.