Benutzer-Werkzeuge

Webseiten-Werkzeuge


gravitation_-_planetenbahnen

Gravitation - Planetenbahnen

In diesem Abschnitt wollen wir die Bewegung eines Planeten unter den Einfluss eines Zentralgestirns (der Sonne) modellieren. Die Kräfte, die die beiden Körper aufeinander ausüben, werden durch Newtons Gravitationsgesetz beschrieben. Wir betrachten ein vereinfachtes Modell, bei dem z.B. die große Masse M der Sonne ruht, dennoch sind wir in der Lage anhand dieses Modells z.B. das zweite Keplersche Gesetz zu überprüfen.

Der Abschnitt Einführung in die Numerik sollte bereits behandelt worden sein, um diesen Abschnitt verstehen zu können. Des Weiteren sollte die Behandlung des Inhaltes Java Applet nicht zu lange zurückliegen.

Physikalische Grundlagen

Das Gravitationsgesetz - Kräfte sind Vektoren

Das Newtonsche Gravitationsgesetz beschreibt die Wechselwirkungskraft zwischen zwei Massenpunkten (hier $m_a$ und $m_b$). Der vektorielle Charakter der Kraft muss in der Modellierung berücksichtigt werden. Mit $\overrightarrow{F}_{ab} $ bezeichnen wir die Kraft, die von der Masse $m_a$ auf $m_b$ ausgeübt wird. Dann gilt nach Newton:

\begin{equation} \overrightarrow{F_{ab}} = G\; m_a\; m_b \frac{\overrightarrow{r_a} - \overrightarrow{r_b}}{ | \overrightarrow{r}_a - \overrightarrow{r_b} |^3} \end{equation}

Hier bezeichnet $G =6.67 \cdot 10^{-11} m^3 kg^{-1} s^{-2}$ die Gravitationskonstante. Wir erwähnen noch, dass die Kraft proportional zum Quadrat des Abstandes (~ 1/r²) ist und dass sie entlang der Verbindungsgeraden der beiden Massen gerichtet ist (das ist eine Eigenschaft, die sogenannte Zentralkräfte aufweisen).

Die obige Gleichung (Gl. 1) lässt sich ein wenig vereinfachen, wenn man davon ausgeht, dass sich die Masse $m_a$ im Nullpunkt des Koordinatensystems befindet (dann ist nämlich $r_a = 0$ ). Außerdem lassen wir die Indizes weg:

\begin{equation} \overrightarrow{F} = -G\; \frac{m_a\; m_b}{r^2} \cdot \frac{\overrightarrow{r}}{r}\end{equation}

Dabei ist $\frac{\overrightarrow{r}}{r}$ der Einheitsvektor in Richtung von $\overrightarrow{r}$. In dieser Form begegnet man dem Gravitationsgesetz häufig.

Das 2. Newtonsche Axion

Vollständigkeitshalber notieren wir noch kurz das 2. Newtonsche Axiom. Es besagt, dass Kraft gleich Masse mal Beschleunigung ist. $$\overrightarrow{F}= m \cdot \overrightarrow{a} $$

Implementierung in Java

Wir wollen die Bewegung eines Planeten, der um die Sonne kreist, mit Java modellieren. Dafür brauchen wir im Grunde lediglich eine Tabelle, in der die Position (X- und Y-Koordinaten) für verschiedene Zeitpunkte eingetragen ist. Jedes Koordinatenpaar (x|y) wird dann graphisch dargestellt.

X PositionY PositionZeitpunkt
$x(t_0$) $y(t_0)$ $t_0$
$x(t_1$) $y(t_1)$ $t_1$
$x(t_2$) $y(t_2)$ $t_2$
….. ….. … weitere simulierte Datenpunkte
$x(t_n$) $y(t_n)$ $t_n$
Tabelle 1: Fiktive Tabelle zur Darstellung der Planetenbahn

Es stellt sich also die Frage, wie wir die benötigten Koordinaten erzeugen können.

Modellbeschreibung

Die Planetenbahnen werden durch das Newtonsche Gesetz beschrieben.

Die Kraft F besitzt als Vektor drei Komponenten F=($F_x$,$F_y$,$F_z$). Da die Bewegung aber nur in der Ebene stattfindet, brauchen wir lediglich zwei der drei Komponenten berücksichtigen, d.h. wir setzen die Komponente $F_z = 0$. Mit $m_a = M$ bezeichnen wir ab jetzt die Masse der Sonne und mit $m_b=m$ die des Planeten.

Die beiden resultierenden Gleichungen für die X- und Y-Komponente der Gravitationskraft lauten dann: \begin{equation} m\cdot a_x = m\cdot\frac{dv_x}{dt} = - G\cdot m\cdot M\frac{x}{r^3}\end{equation} \begin{equation} m\cdot a_y = m\cdot\frac{dv_y}{dt} = - G\cdot m\cdot M\frac{y}{r^3}\end{equation}

Mit $a_x$ bezeichnen wir die X-Komponente der Beschleunigung und mit $v_x$ wird die X-Komponente der Geschwindigkeit bezeichnet. Dementsprechend ist x die erste Komponente des Vektors r. Entsprechendes gilt auch für die zweite Zeile mit y. Der Abstand des Planeten von der Sonne ist

\begin{equation} r=\sqrt{x^2 + y^2} \end{equation}

Diese Gleichung diskretisieren wir jetzt, um die Geschwindigkeiten im nächsten Iterationsschritt zu erhalten: \begin{equation} v_x(t + \Delta t) = v_x(t) - (G M \frac{x}{r^3}) \Delta t \end{equation} \begin{equation}v_y(t + \Delta t) = v_y(t) - (G M \frac{y}{r^3}) \Delta t \end{equation}

Für die Bahnkoordinaten verwenden wir den Euler-Cromer-Algorithmus \begin{equation} x(t + \Delta t) = x(t) + v_x(t + \Delta t) \Delta t \end{equation} \begin{equation} y(t + \Delta t) = y(t) + v_y(t + \Delta t) \Delta t \end{equation}

Heuristische Herleitung

Die Diskretisierung entspricht einem Übergang vom Differentialquotienten zum Differenzenquotienten. Die Schrittweite Δt darf dabei nicht zu groß gewählt werden.

Die letzten Gleichungen (Gl. 8 und Gl. 9) liefern uns die Positionen (x und y) in Abhängigkeit einer gewählten Schrittweite (Δt).

Diese Gleichungen benötigen, wie alle Differentialgleichungssysteme, genaue Anfangsbedingungen, um überhaupt mit der Berechnung starten zu können. Umgekehrt legen diese Anfangsbedingungen die Bahn des Planeten dann aber auch eindeutig fest. (siehe auch Abschnitt „Einführung in die Numerik“)



Die Anfangsbedingungen sind die Orte (Positionen x(0) und y(0)) zum Startzeitpunkt $t=0$ und die Geschwindigkeiten ($v_x(0)$,$v_y(0)$).

Algorithmus

Wir fassen alle benötigten Parameter und Gleichungen noch einmal zusammen, bevor wir einen Algorithmus zur Berechnung der Planetenbahnen angeben.

ParameterBedeutungBezeichnung in JavaTypische Anfangswerte
GGravitationskonstante $6.67\cdot 10^{-11} m^3 kg^{-1}s^{-2}$G11.802378240000001
MSonnenmasse M ≈ $2\cdot 10^{30}$ kgM1.0
rAbstand Sonne - Planeten (für die Erde 1AE = $150 \cdot 10^6$ km). AE ist die Abkürzung für Astronomische Einheitr1.0
$x_0$X-Komponenten zum Startzeitpunktx01.0
$y_0$Y-Komponenten zum Startzeitpunkty00.0
$v_{x_0}$X-Komponente der Geschwindigkeit zum Startzeitpunktvx00.0
$v_{y_0}$Y-Komponente der Geschwindigkeit zum Startzeitpunktvy03.43066 entspricht 29.78 km/s
ΔtSchrittweitetimeStep0.005 entspricht 1 Tag (d)
Tabelle: Parameter und deren Bedeutung

Vielleicht beunruhigt es den einen oder anderen, dass die Parameter in der Simulation scheinbar nicht mit denen in der Natur übereinstimmen, tatsächlich hängen aber die numerischen Werte dieser Parameter von der gewählten Maßeinheit ab. Für die Gravitationskonstante gilt, dass sie eine positive Konstante ist. Die Sonnenmasse wurde auf 1 skaliert, genau wie der Abstand Erde-Sonne. Der Wechsel zu anderen Einheiten kommt unabhängig von der Numerik auch in anderen Gebieten der Physik vor. So werden z.B. in der theoretischen Physik häufig ℏ=c=1 gesetzt (hier ist c die Lichtgeschwindigkeit und ℏ eine Naturkonstante, die in der Quantenphysik eine wichtige Rolle spielt). Unabhängig von diesen Parameterwerten muss wie immer ein geeigneter Maßstab von berechneten Koordinaten zu den Bildschirmkoordinaten in der Java Anwendung definiert werden.

Zeigen Sie, dass die Gravitationskonstante G in dem gewählten System (Tabelle) den Wert $11.802378240000001$ annimmt.

1 AE= $150\cdot 10^9$ m→ 1 m = $\frac{1}{150\cdot 10^9}$ AE
1 M= $2\cdot 10^{30}$ kg→ 1 kg = $\frac{1}{2\cdot 10^{30}}$ M
1d= 86400 s = 0.005 Δt→ 1 s =$\frac{0.005}{86400}$ Δt

Den neuen Zahlenwert erhalten wir durch Einsetzen: $G = 6.67 \cdot 10^{-11}\cdot \frac{ m^3}{ kg \cdot s^{2}} \rightarrow \\ 6.67\cdot10^{-11} \cdot(\frac{1}{150\cdot 10^9})^3(2\cdot 10^{30}) ( \frac{0.005}{86400})^{-2} = 11.802378240000001$

Welchen Zahlenwert nimmt in diesem System eine Geschwindigkeit von 42.1 km/s (das ist die sogenannte 3. kosmische Geschwindigkeit) an?
ghost solution4.84992


GleichungBedeutung
$r=\sqrt{x^2+y^2}$ Abstand Sonne-Planet
$v_x(t + \Delta t) = v_x(t) - (G M \frac{x}{r^3}) \Delta t$ x-Komponente der Geschwindigkeit
$v_y(t + \Delta t) = v_y(t) - (G M \frac{y}{r^3}) \Delta t$ y-Komponente der Geschwindigkeit
$x(t + \Delta t) = x(t) + v_x(t + \Delta t) \Delta t $ x-Komponente des Ortes
$y(t + \Delta t) = y(t) + v_y(t + \Delta t) \Delta t$ y-Komponente des Ortes
Tabelle: Gleichungen für die Simulation
Algorithmus
  1. Wähle geeignete Startbedingungen und initialisiere alle Parameter (insbesondere die Schrittweite Δt)
  2. Zeichne die Position x(0) und y(0) in ein geeignetes Koordinatensystem.
  3. Berechne den Abstand Sonne-Planet.
  4. Berechne die Geschwindigkeiten $v_x$ und $v_y$ für den nächsten Zeitschritt.
  5. Berechne mit dem Euler-Cromer-Algorithmus die Positionen von x und y zum nächsten Zeitschritt.
  6. Zeichne die ermittelten Positionen x und y in ein geeignetes Koordinatensystem
  7. Wiederhole ab Schritt 3. bis das Programm abgebrochen wird oder die gewünschte Zahl an Iterationen erreicht wurde.
gravitation_-_planetenbahnen.txt · Zuletzt geändert: 2024/01/13 17:37 von torsten.roehl