Lesson 5 of 15

Relativistic Doppler Effect

The Relativistic Doppler Effect

The classical Doppler effect shifts sound frequencies when source and observer move relative to each other. Light has a similar effect, but with a crucial difference: because of time dilation, there is a frequency shift even for transverse (sideways) motion.

Longitudinal Doppler

For a source moving directly away from the observer at velocity vv (recession), the observed frequency is:

fobs=f01β1+βf_{\text{obs}} = f_0\sqrt{\frac{1 - \beta}{1 + \beta}}

For a source moving directly toward the observer (approach):

fobs=f01+β1βf_{\text{obs}} = f_0\sqrt{\frac{1 + \beta}{1 - \beta}}

where β=v/c\beta = v/c and f0f_0 is the emitted frequency.

Behaviour

β\betaReceding factorApproaching factor
0011 (no shift)11 (no shift)
0.60.60.50.5 (redshifted by half)22 (blueshifted double)
0.80.81/31/333

Notice that at β=0.6\beta = 0.6: 0.4/1.6=1/4=0.5\sqrt{0.4/1.6} = \sqrt{1/4} = 0.5, so the observed frequency is halved.

Symmetry Property

For any speed vv, the product of the receding and approaching factors equals 11:

frecede×fapproach=f01β1+β×f01+β1β=f02f_{\text{recede}} \times f_{\text{approach}} = f_0\sqrt{\frac{1-\beta}{1+\beta}} \times f_0\sqrt{\frac{1+\beta}{1-\beta}} = f_0^2

This is a useful sanity check.

Cosmological Redshift

Galaxies receding from us (due to cosmic expansion) have their light redshifted. The redshift parameter z=(f0fobs)/fobsz = (f_0 - f_{\text{obs}})/f_{\text{obs}} quantifies this. A galaxy at z=1z = 1 has its light frequency halved.

Your Task

Implement:

  • doppler_receding(f0, v) — observed frequency when source moves away
  • doppler_approaching(f0, v) — observed frequency when source moves toward observer

Use c=299792458.0c = 299792458.0 m/s, defined inside each function.

Python runtime loading...
Loading...
Click "Run" to execute your code.