Roterende massa#

In de vorige notebooks was de massa altijd niet-roterend. In dit notebook voegen we rotatie toe: eerst de klassieke beschrijving van afgeplatte massa’s, dan de ORT-uitbreiding die leidt tot het meesleepeffect, en tenslotte de vergelijking met de ART.

import sys, pathlib
sys.path.insert(0, str(pathlib.Path().resolve().parent / 'shared'))
from ort_core import (C, G, GravityModel, M_SUN, M_EARTH, R_EARTH,
                      GPB_ORBIT_RADIUS)
from ort_plots import kerr_geometry_plot, isco_comparison_plot
import math
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline

1 Roterende massa (klassiek)#

1.1 Impulsmoment en afplatting#

Een roterende massa heeft impulsmoment \(J = I \cdot \omega\) [1], met \(I\) het traagheidsmoment en \(\omega\) de hoeksnelheid. Door de rotatie wordt de massa afgeplat [2]: de middellijn op de evenaar is groter dan die op de pool.

1.2 Afgeplatte coördinaten#

Voor een niet-roterende massa volstaat de afstand \(r\) — alles is bolsymmetrisch. Een roterende massa is afgeplat: de zwaartekracht hangt af van de poolhoek \(\theta\).

De afstandsmaat \(\Sigma\)#

Afgeplatte massa’s kunnen worden beschreven in sferoidale coördinaten [3]:

\[x = \sqrt{r^2 + a^2} \cdot \sin\theta \cdot \cos\varphi\]
\[y = \sqrt{r^2 + a^2} \cdot \sin\theta \cdot \sin\varphi\]
\[z = r \cdot \cos\theta\]

met \(a\) de mate van afplatting. De natuurlijke afstandsmaat in deze coördinaten is:

\[\Sigma = r^2 + a^2\cos^2\theta \qquad (1)\]

De \(\theta\)-afhankelijkheid#

Op de evenaar (\(\theta = \pi/2\)): \(\Sigma = r^2\).

Op de pool (\(\theta = 0\)): \(\Sigma = r^2 + a^2\) — effectief verder van de massa, dus zwakkere zwaartekracht.


2 Rotatie in de ORT#

2.1 De spinparameter#

De spinparameter drukt het impulsmoment uit in meters [4]:

\[a = \frac{J}{Mc} \qquad (2)\]

Uitgedrukt als fractie van de gravitatiestraal \(r_s/2 = GM/c^2\):

\[a_* = \frac{a}{r_s/2} = \frac{Jc}{GM^2}\]

met \(a_*\) ∈ [0, 1) — bij \(a_* = 1\) is \(a = r_s/2\) en valt de horizon samen tot een punt.

2.2 Het meesleepeffect#

In de ORT veroorzaakt elke massa ruimtelijke uitrekking (\(c_{local} < c\)). In het riviermodel stroomt de ruimte radiaal naar de massa toe. Als de massa roteert, heeft die impulsmoment \(J\). Het impulsmoment moet behouden zijn — de stroom wordt een draaikolk: radiaal naar binnen én tangentieel mee met de rotatie.

Het resultaat: een object zonder impulsmoment draait vanzelf mee met de massa. Een gyroscoop precesseert in de rotatierichting.

Dit werkt voor elke roterende massa — de aarde, sterren, en zwarte gaten.

2.3 \(c_{local}\) met rotatie#

Voor een niet-roterende massa in bolcoördinaten (afstandsmaat \(r^2\)):

\[v_{stroom}^2 = c^2 \cdot \frac{r_s \cdot r}{r^2} = \frac{c^2 \cdot r_s}{r}\]

Voor een roterende massa verandert alleen het coördinatenstelsel: van bolcoördinaten (afstandsmaat \(r^2\)) naar sferoidale coördinaten (afstandsmaat \(\Sigma\)). De teller \(r_s \cdot r\) blijft dezelfde:

\[v_{stroom}^2 = c^2 \cdot \frac{r_s \cdot r}{\Sigma} \qquad (3)\]

De lokale lichtsnelheid volgt uit \(c_{local}^2 = c^2 - v_{stroom}^2\):

\[c_{local}(r,\theta) = c \cdot \sqrt{1 - \frac{r_s \cdot r}{\Sigma}} \qquad (4)\]

Dit is dezelfde ORT-formule als voor Schwarzschild — alleen de afstandsmaat verandert van \(r^2\) naar \(\Sigma\).

2.4 De horizon#

De horizon ligt waar \(c_{local} = 0\). Met de hulpfunctie:

\[\Delta = r^2 - r_s \cdot r + a^2 \qquad (5)\]

De horizon ligt waar \(\Delta = 0\):

\[r_{\pm} = \frac{r_s}{2}\left(1 \pm \sqrt{1 - a_*^2}\right) \qquad (6)\]

Net als bij lading (notebook 07) zijn er twee oplossingen. De buitenste (\(r_+\)) is de eventhorizon. Bij \(a_* = 1\) valt \(r_+\) samen tot \(r_s/2\).

2.5 De ergosfeer#

Er is een groter gebied waar het meesleepeffect zo sterk is dat niets kan stilstaan: de ergosfeer. De buitengrens:

\[r_{ergo}(\theta) = \frac{r_s}{2}\left(1 + \sqrt{1 - a_*^2 \cos^2\theta}\right) \qquad (7)\]

Op de evenaar: \(r_{ergo} = r_s\) (onafhankelijk van spin). Op de pool: \(r_{ergo} = r_+\) (valt samen met de horizon).

Binnen de ergosfeer wordt alles meegesleept in de rotatierichting. Je kunt nog ontsnappen (je bent buiten de horizon), maar je kunt niet stilstaan.


3 Vergelijking met de ART#

3.1 De Kerr-metriek#

De ART komt tot dezelfde formules als onderdeel van de Kerr-metriek [5].

3.2 Frame-dragging#

Het meesleepeffect wordt in de ART frame-dragging genoemd [6].

De roterende massa sleept de ruimte mee met hoeksnelheid:

\[\omega(r,\theta) = \frac{2GMar}{c\left[(r^2+a^2)^2 - a^2\Delta\sin^2\theta\right]} \qquad (8)\]

Ver van de massa (\(r \gg r_s\)) vereenvoudigt dit tot de Lense-Thirring precessie:

\[\Omega_{LT} = \frac{2GJ}{c^2 r^3} \qquad (9)\]

De ORT en ART geven dezelfde Lense-Thirring formule in het zwakke veld.

1.3 De horizon#

De horizon ligt waar \(c_{local} = 0\), dus waar \(r_s \cdot r = \Sigma\). Met de hulpfunctie:

\[\Delta = r^2 - r_s \cdot r + a^2 \qquad (4)\]

De horizon ligt waar \(\Delta = 0\):

\[r_{\pm} = \frac{r_s}{2}\left(1 \pm \sqrt{1 - a_*^2}\right) \qquad (5)\]

Net als bij lading (notebook 07) zijn er twee oplossingen. De buitenste (\(r_+\)) is de eventhorizon. Bij maximale spin (\(a_* \to 1\)) krimpt \(r_+\) tot \(r_s/2\) — dezelfde limiet als bij extremale lading.

1.4 De ergosfeer#

Er is een groter gebied waar \(c_{local} < c\) niet volstaat om stil te staan: de ergosfeer. De buitengrens:

\[r_{ergo}(\theta) = \frac{r_s}{2}\left(1 + \sqrt{1 - a_*^2 \cos^2\theta}\right) \qquad (6)\]

Op de evenaar: \(r_{ergo} = r_s\) (onafhankelijk van spin). Op de pool: \(r_{ergo} = r_+\) (valt samen met de horizon).

Binnen de ergosfeer wordt alles meegesleept in de rotatierichting. Je kunt nog ontsnappen (je bent buiten de horizon), maar je kunt niet stilstaan.

1.5 Vergelijking met de ART#

De ART leidt de Kerr-metriek af als de unieke axiaalsymmetrische oplossing van de Einstein-vergelijkingen in vacuüm (Kerr, 1963).

De ORT reproduceert \(c_{local}\) en de horizonstructuur vanuit het principe dat rotatie de effectieve afstand \(\Sigma\) hoekafhankelijk maakt. De ergosfeer en het meesleepeffect volgen uit het feit dat de ruimte zelf meedraait met de massa.


2 Frame-dragging#

2.1 De Lense-Thirring precessie#

De roterende massa sleept de ruimte mee met hoeksnelheid:

\[\omega(r,\theta) = \frac{2GMar}{c\left[(r^2+a^2)^2 - a^2\Delta\sin^2\theta\right]} \qquad (7)\]

Ver van de massa (\(r \gg r_s\)) vereenvoudigt dit tot de Lense-Thirring precessie:

\[\Omega_{LT} = \frac{2GJ}{c^2 r^3} \qquad (8)\]

2.2 ORT-afleiding#

In de ART volgt frame-dragging uit de Einstein-vergelijkingen. In de ORT volgt het uit twee ingrediënten:

  1. Ruimtelijke uitrekking: elke massa veroorzaakt \(c_{local} < c\)

  2. Behoud van impulsmoment: de uitgerekte ruimte respecteert \(J\)

De combinatie geeft frame-dragging: de uitgerekte ruimte draait mee in de rotatierichting. De grootte (\(\propto J/r^3\)) volgt uit het dipool-karakter van het impulsmoment (analoog aan het magnetisch veld van een stroomlus).

De ORT en ART geven dezelfde Lense-Thirring formule in het zwakke veld. Het verschil zit in de afleiding, niet in het resultaat.

3.3 Experimentele verificatie#

# Frame-dragging: experimentele verificatie
I_earth = 8.04e37  # kg·m²
omega_earth = 7.292e-5  # rad/s
J_earth = I_earth * omega_earth  # kg·m²/s
a_star_earth = J_earth * C / (G * M_EARTH**2)

# Gravity Probe B: gyroscoop-precessie
r_gpb = GPB_ORBIT_RADIUS
Omega_FD = G * J_earth / (2 * C**2 * r_gpb**3)
mas_yr_gpb = Omega_FD * 365.25 * 86400 * (180/math.pi) * 3600 * 1000

print(f'=== Frame-dragging ===')
print(f'Aarde: J = {J_earth:.3e} kg·m²/s, a* = {a_star_earth:.3e}')
print()
print(f'--- Gravity Probe B (2011) ---')
print(f'  ORT:       {mas_yr_gpb:.1f} mas/jr')
print(f'  ART:       39.2 mas/jr')
print(f'  Gemeten:   37.2 ± 7.2 mas/jr')
print(f'  ORT = ART (zelfde formule, zelfde resultaat)')
print()

# LAGEOS: baanknoop-precessie (andere formule: 2GJ/c²r³)
r_lageos = 1.227e7
Omega_LT_lageos = 2 * G * J_earth / (C**2 * r_lageos**3)
mas_yr_lageos = Omega_LT_lageos * 365.25 * 86400 * (180/math.pi) * 3600 * 1000
print(f'--- LAGEOS I+II ---')
print(f'  ORT: {mas_yr_lageos:.1f} mas/jr (baanknoop-precessie)')
print(f'  Ciufolini & Pavlis (2004): ~99% overeenkomst met ART')
=== Frame-dragging ===
Aarde: J = 5.863e+33 kg·m²/s, a* = 7.384e+02

--- Gravity Probe B (2011) ---
  ORT:       41.1 mas/jr
  ART:       39.2 mas/jr
  Gemeten:   37.2 ± 7.2 mas/jr
  ORT = ART (zelfde formule, zelfde resultaat)

--- LAGEOS I+II ---
  ORT: 30.7 mas/jr (baanknoop-precessie)
  Ciufolini & Pavlis (2004): ~99% overeenkomst met ART

3 Geometrie en banen#

3.1 Kerr-geometrie#

De horizon, ergosfeer en fotonsfeer voor een snel roterende massa (\(a_* = 0.9\)):

fig = kerr_geometry_plot(a_star=0.9, lang='nl')
plt.show()
_images/77b100b8f34e613a5de5989084995b611404fdc7614f8e0306910c31679bdede.png
# Kerr: horizonten, ergosfeer, ISCO voor verschillende spins
print(f'{"a*":>6s}  {"r+/rs":>8s}  {"r-/rs":>8s}  {"r_ergo/rs":>10s}  {"ISCO_pro/rs":>12s}  {"ISCO_ret/rs":>12s}')
print('-' * 64)

M_kerr = 10 * M_SUN
for a_star in [0.0, 0.1, 0.3, 0.5, 0.7, 0.9, 0.95, 0.99]:
    km = GravityModel(M_kerr, spin=a_star)
    r_plus = km.rs/2 * (1 + math.sqrt(1 - a_star**2))
    r_minus = km.rs/2 * (1 - math.sqrt(1 - a_star**2))
    r_ergo = km.kerr_ergosphere(0)
    isco_pro = km.kerr_isco(prograde=True)
    isco_retro = km.kerr_isco(prograde=False)
    print(f'{a_star:6.2f}  {r_plus/km.rs:8.4f}  {r_minus/km.rs:8.4f}  {r_ergo/km.rs:10.4f}  {isco_pro/km.rs:12.4f}  {isco_retro/km.rs:12.4f}')
    a*     r+/rs     r-/rs   r_ergo/rs   ISCO_pro/rs   ISCO_ret/rs
----------------------------------------------------------------
  0.00    1.0000    0.0000      1.0000        3.0000        3.0000
  0.10    0.9975    0.0025      0.9975        2.8347        3.1614
  0.30    0.9770    0.0230      0.9770        2.4893        3.4746
  0.50    0.9330    0.0670      0.9330        2.1165        3.7773
  0.70    0.8571    0.1429      0.8571        1.6966        4.0715
  0.90    0.7179    0.2821      0.7179        1.1604        4.3587
  0.95    0.6561    0.3439      0.6561        0.9686        4.4295
  0.99    0.5705    0.4295      0.5705        0.7272        4.4859

3.2 ISCO: de binnenste stabiele baan#

De binnenste stabiele cirkelbaan (ISCO) hangt af van spin én draairichting:

  • Prograde (mee met de rotatie): ISCO krimpt van \(3r_s\) naar \(r_s/2\)

  • Retrograde (tegen de rotatie): ISCO groeit van \(3r_s\) naar \(4.5r_s\)

Dit heeft directe gevolgen voor accretieschijven: rond snel roterende zwarte gaten kan materie dichter spiralen, wat meer energie vrijmaakt.

fig = isco_comparison_plot(lang='nl')
plt.show()
_images/eb1ca4e5f23ef4f542eced4f36d1d47bdbf35167e7fa3452f74e1bb5c1849e7d.png

3.3 \(c_{local}\): evenaar vs pool#

# c_local: equator vs pool voor verschillende spins
print(f'{"a*":>6s}  {"c_local(eq)/c":>14s}  {"c_local(pool)/c":>16s}  {"verschil":>10s}')
print('-' * 52)

M_kerr = 10 * M_SUN
r_test = 5 * (2 * G * M_kerr / C**2)  # r = 5 rs

for a_star in [0.0, 0.1, 0.3, 0.5, 0.7, 0.9, 0.99]:
    km = GravityModel(M_kerr, spin=a_star)
    c_eq = km.c_local_kerr(r_test, math.pi/2) / C
    c_pole = km.c_local_kerr(r_test, 0) / C
    print(f'{a_star:6.2f}  {c_eq:14.6f}  {c_pole:16.6f}  {c_pole - c_eq:10.6f}')
    a*   c_local(eq)/c   c_local(pool)/c    verschil
----------------------------------------------------
  0.00        0.894427          0.894427    0.000000
  0.10        0.894427          0.894438    0.000011
  0.30        0.894427          0.894528    0.000101
  0.50        0.894427          0.894706    0.000279
  0.70        0.894427          0.894972    0.000545
  0.90        0.894427          0.895325    0.000898
  0.99        0.894427          0.895512    0.001084

4 Geometrie en banen#

Schwarzschild

Roterende massa

Stroming

Radiaal

Draaikolk (radiaal + tangentieel)

\(c_{local}\)

\(f(r)\)

\(f(r, \theta)\)

Horizon

1 (\(r_s\))

2 (\(r_+\) en \(r_-\))

Ergosfeer

\(r_+ < r < r_{ergo}\)

ISCO

\(3r_s\)

\(r_s/2\) tot \(4.5r_s\)

Symmetrie

Bolsymmetrisch

Axiaalsymmetrisch


5 Samenvatting#

Rotatie voegt twee effecten toe:

  1. Afplatting — de zwaartekracht wordt \(\theta\)-afhankelijk via \(\Sigma = r^2 + a^2\cos^2\theta\) (sferoidale coördinaten, Laplace)

  2. Meesleepeffect — behoud van impulsmoment in de uitgerekte ruimte maakt de stroom een draaikolk (in de ART: frame-dragging)

\(c_{local}\) volgt uit dezelfde ORT-formule als Schwarzschild, met alleen de afstandsmaat veranderd van \(r^2\) naar \(\Sigma\).

Net als bij lading (notebook 07) ontstaan er twee oplossingen voor \(c_{local} = 0\). De buitenste (\(r_+\)) is de eventhorizon. Bij de binnenste (\(r_-\)) is \(c_{local}\) weer positief.

Experimenteel bevestigd door Gravity Probe B en LAGEOS.