General Relativity

Einstein's Masterpiece: Gravity is the curvature of spacetime. Mass-energy tells spacetime how to curve, and spacetime tells mass-energy how to move.

Chapter 6: Geodesics

Geodesics are the straightest possible paths in curved spacetime. Free-falling particles follow timelike geodesics; light rays follow null geodesics. This is the essence of Einstein's equivalence principle: gravity is geometry.

The Geodesic Equation

A geodesic is a curve whose tangent vector is parallel transported along itself:

\( \frac{d^2x^\mu}{d\lambda^2} + \Gamma^\mu_{\nu\rho} \frac{dx^\nu}{d\lambda} \frac{dx^\rho}{d\lambda} = 0 \)

Second-order ODE for the worldline xμ(λ)

Timelike Geodesics

\( ds^2 < 0 \): massive particles, λ = proper time τ

Null Geodesics

\( ds^2 = 0 \): light rays, λ is affine parameter

Spacelike Geodesics

\( ds^2 > 0 \): tachyons (hypothetical), λ = proper length

Extremal Property

Geodesics extremize the action \( S = \int ds \)

Constants of Motion

Killing vectors generate symmetries that yield conserved quantities along geodesics:

Energy Conservation

Time translation symmetry ∂t gives \( E = -g_{t\mu} \frac{dx^\mu}{d\tau} = \left(1 - \frac{2M}{r}\right)\frac{dt}{d\tau} \)

Angular Momentum Conservation

Axial symmetry ∂φ gives \( L = g_{\phi\mu} \frac{dx^\mu}{d\tau} = r^2 \frac{d\phi}{d\tau} \)

Normalization

\( g_{\mu\nu} \frac{dx^\mu}{d\tau} \frac{dx^\nu}{d\tau} = -1 \) for timelike geodesics

Effective Potential Analysis

Using conserved quantities, radial motion reduces to a 1D problem with effective potential:

\( \frac{1}{2}\left(\frac{dr}{d\tau}\right)^2 + V_{eff}(r) = \frac{1}{2}(E^2 - 1) \)

where \( V_{eff} = -\frac{M}{r} + \frac{L^2}{2r^2} - \frac{ML^2}{r^3} \)

The last term (-ML²/r³) is the relativistic correction, responsible for:

  • Perihelion precession of Mercury
  • Unstable circular orbits at r = 3M (photon sphere)
  • Innermost stable circular orbit (ISCO) at r = 6M

Python: Geodesic Integration in Schwarzschild

Python
geodesics_schwarzschild.py162 lines

Click Run to execute the Python code

Code will be executed with Python 3 on the server

Fortran: Null Geodesics (Light Rays)

Fortran
null_geodesics.f90139 lines

Click Run to execute the Fortran code

Code will be compiled with gfortran and executed on the server