Welche Variablen werden benötigt, um einfache Hufeisenumlaufzeiten zu berechnen?

BEARBEITEN Dies war KEIN Duplikat der Horseshoe Orbit Cycle Times .

Aber diese andere Frage wurde trotzdem gelöscht . Meine ursprüngliche Frage fragte nach der Antwort auf die Gleichung (en) und liefert viele der Variablen. Aber da anscheinend niemand bereit / in der Lage war, sie zu beantworten, fragt diese neue Frage nur nach der Form der Gleichung (en) selbst und einer Liste der beteiligten Variablen, damit ich entweder mehr Informationen zu einer zukünftigen Frage geben oder es versuchen kann und die Gleichungen selbst lösen (obwohl ich meine mathematischen Fähigkeiten dazu bezweifle, daher die ursprüngliche Frage, wenn ich weiß, um welche Gleichungen und Variablen es geht, kann ich es zumindest selbst versuchen).

Welche Variablen müssen bekannt sein, um eine Hufeisenumlaufzykluszeit zu berechnen?

Mit anderen Worten: Was ist die Gleichung und was stellen die Variablen in dieser Gleichung dar (Geschwindigkeit? Masse? Halbe Hauptachsen? usw.), um die Zeit zu berechnen, die ein Objekt benötigt, um von Punkt A auf diesem Bild durchzugehen Punkte B, C, D und E und zurück zu A entlang der hellblauen Linie im Bild oben (Bild auch hier verfügbar )?

Zum Beispiel beenden Erde und Cruithne ihren Zyklus in 770 Jahren, während Janus und Epimetheus ihren in 8 Jahren abschließen. Ich bin zuversichtlich, dass große Halbachsen Schlüsselfaktoren in der Gleichung sind, aber ich weiß nicht, welche anderen Variablen enthalten sind oder wie sich die Variablen in der Berechnung zueinander verhalten.

Ich verstehe auch, dass diese Umlaufbahnen langfristig nicht stabil sind und dass mein Beispiel von Cruithne besonders komplex ist, da es tatsächlich periodisch den Umlaufbahntyp ändert und wahrscheinlich vollständig aus dem Sonnensystem ausgestoßen wird oder die Sonne beeinflusst oder Jupiter, irgendwann. Aber diese Komplexitäten gehören zu einer anderen Zeit. Für diese Frage möchte ich nur die Gleichung in ihrer einfachsten Form kennen.

Das ist nicht wirklich eine Darstellung einer Hufeisenbahn, sondern eine Äquipotentiallinie für ein Pseudopotential in einem rotierenden Rahmen für ein Objekt mit einer Geschwindigkeit von Null in diesem Rahmen. Wenn sich das Objekt in einer echten Hufeisenbahn befinden würde, würden sich diese Potentiallinien ändern. Ich frage mich, ob Sie ein Bild einer tatsächlichen Hufeisenbahn finden können?
Siehe auch Horseshoe Orbit Cycle Times , die dieses Bild ebenfalls fälschlicherweise verwendet und derzeit keine Antwort hat. Ebenfalls unbeantwortet sind Hufeisenbahnen und die Integration in C
Warten Sie, die Zykluszeiten der Hufeisenumlaufbahn ist Ihre Frage, die Sie auch in Physics SE gepostet haben . Wie unterscheidet sich diese Frage von diesen?
@uhoh Meine ursprüngliche Frage fragt nach der Antwort auf die Gleichung mit vielen der bereits bereitgestellten Variablen. Dieser fragt nur nach den Gleichungen, um sicherzustellen, dass ich alles weiß, was ich zu meiner ursprünglichen Frage liefern muss, oder vielleicht einen Versuch mache, sie selbst zu lösen (obwohl ich meine mathematischen Fähigkeiten bezweifle, die Berechnung selbst durchzuführen, da nein jemand willens/in der Lage ist, meine ursprüngliche Frage zu beantworten, dachte ich, dies wäre meine beste Chance, der Antwort selbst näher zu kommen).
@uhoh Ich verstehe auch, dass das Bild nicht (genau) eine "Hufeisen" -Umlaufbahn ist, aber es ist eine perfekte Darstellung dessen, was ich eigentlich wissen möchte. Ich möchte wissen, wie man die Zeit für den gesamten abgebildeten Zyklus berechnet, wie lange es dauert, bis eines der umlaufenden Objekte zwei Annäherungen (eine von jeder Seite) an das andere umlaufende Objekt macht, wie lange es dauert, eine davon abzuschließen Fahrräder.
Das macht Sinn. Ich finde das Problem der Zykluszeit von Hufeisenumläufen wirklich interessant. Ich möchte eine Vorgehensweise vorschlagen. Warum löschen Sie Ihre andere Frage nicht vorübergehend , um Bedenken hinsichtlich der Duplizierung auszuräumen, und lassen Sie mich diese Frage etwas umschreiben. Dann werde ich für die Wiedereröffnung stimmen. Ich habe vor, morgen die Bibliothek zu besuchen, und ich kann danach suchen und sehen, welche analytischen Modelle dort veröffentlicht wurden.
Wenn Sie einen Beitrag löschen, wird er nie wirklich gelöscht. In den ersten Monaten taucht es noch auf Ihrer Fragenliste auf. Hier ist meins, und Sie können den Link unten für kürzlich gelöschte sehen i.stack.imgur.com/G3Wh9.png Sie können sie jederzeit wiederherstellen. Wenn Sie den Link zu Ihrer Frage kopieren und irgendwo speichern, können Sie in Zukunft jederzeit darauf zugreifen.
Das sind alles instabile Umlaufbahnen ...
@uhoh gelöscht. Ich mache mir keine Sorgen, diese andere Frage zu verlieren, ich habe Notizen, um sie bei Bedarf erneut stellen zu können.
@peterh Wenn / wenn ich herausfinde, wie diese Berechnungen durchgeführt werden, verwende ich diese Informationen auf eine Weise, die keine langfristige Stabilität in geologischen Zeitskalen erfordert. Ich bin mir ihrer inhärenten Instabilität bewusst und habe dies bei meinen endgültigen Zielen berücksichtigt. Aber danke für die Sorge und den Hinweis.
@Dalila Ich bin fast fertig, werde später heute posten. Dies stellt sich als ein wirklich interessantes Problem heraus!
@Dalila Antwort gepostet, bitte lassen Sie es mich wissen, wenn Sie weitere Fragen haben.

Antworten (2)

Das hängt von der Genauigkeit ab, mit der Sie arbeiten möchten. In nullter Ordnung, wie in Murray & Dermott, "Solar System dynamics", Kap. 3. beschrieben, können Sie Folgendes tun:

  • Die Nullgeschwindigkeitskonturen, die in Ihrem Bild gezeichnet sind, werden nicht mit Teilchenumlaufbahnen mit unendlicher Genauigkeit übereinstimmen, aber sie sind eine gute Annäherung nullter Ordnung für Objekte mit geringer Exzentrizität in Bezug auf den Stern ( v R / v θ 1 )
  • Ein Teilchen auf diesen Bahnen befindet sich auf einer regulären Keplerbahn mit Radius R H , außerhalb der Reichweite des Gravitationseinflusses des Planeten bei R P . Um also den größten "Bruch" der Reisezeit eines Teils der Hufeisenbahn zu erhalten, entweder des inneren oder des äußeren Teils, können Sie mit relativen Geschwindigkeiten und der Annahme von keplerschen Geschwindigkeiten arbeiten.
  • Vorsicht ist geboten, an welcher Umlaufzeit Sie interessiert sind: Wenn A ist die Entfernung der Erde von der Sonne, und das Hufeisen ist D weg von einer perfekt kreisförmigen Umlaufbahn, wodurch zwischen den Entfernungen gewechselt wird A ± D , dann ist die Umlaufzeit im Ruhesystem der Sonne v = G M A D , für eine große Anzahl von Umlaufbahnen bis zur engen Begegnung und danach v + = G M A + D .
  • Daher gilt für die meiste Zeit der vereinfachte Fall, dass sich der Satellit auf einer eigenen Keplerbahn befindet. Mit diesem Wissen bewaffnet, können wir die planetozentrische Wiederkehrzeit annähern als T R e C = 2 π A v K v als einfache Aufholzeit zwischen Objekten auf unterschiedlichen Umlaufbahnen.
  • Die Relativgeschwindigkeit v R e l = v K v = G M A G M A D kann in der Grenze von erweitert werden D / A 1 hinein v R e l 1 2 G M A D A und so leite ich daraus ab T R e C 4 π G M A 5 / 2 D . Wie erwartet divergiert die Zykluszeit für D = 0 , da im Fall der gemeinsamen Umlaufbahn mit der Erde diese Zeit unendlich sein muss. Eine Obergrenze an D daraus nicht abgeleitet werden kann, müsste man sich dafür der vollständigen Lösung zuwenden.

Nur aus Neugier habe ich ein paar Werte in diese Formel eingefügt und schnell etwas in Python geschrieben:

import numpy as np

#Basic physics quantities
G      = 6.678e-8 #cgs units
pi     = 3.141592
navo   = 6e23 # particles per mole
sigma  = 5.67e-5   #erg cm-2 s-1 K-4
kb     = 1.38e-16  #erg/K
km     = 1e5 #kilometers in cm
mearth = 5.98e27  #g
msun   = 2.0e33   #g
au     = 1.49e13  #cm
yr   = 365*24*3600
rearth   = 6370e5
rjupiter = 74000*km

#
# Returns the approximate horseshoe-cycle time in the reduced 3body problem
# Masses of bodies: m0>>m1>>m2
# Semimajor axis distance is from m0 to m1, radial distance is a(m0->m1)-a(m0->m2)
#
def hs_cycle(mcentral, semimajor_axis, radial_distance):
    return 4*pi/np.sqrt(G*mcentral)*semimajor_axis**(5./2.)/radial_distance/yr

#
# https://en.wikipedia.org/wiki/(419624)_2010_SO16 around the Sun
#
# Quoted cycle time ~350 years, with d=0.004 AU
#
print("Predicted 2010_SO16 cycletime [years] = ", hs_cycle(msun, 1*au,0.004*au), " predicted = 350 yrs")

#
# Janus/Epimetheus around Saturn
#
# a = 151410 km, d = 25 km, as stated in https://en.wikipedia.org/wiki/Epimetheus_(moon)
# Quoted cycle time = 8 years (from comments)
#
print("Predicted Janus/Epimetheus cycletime [years] = ", hs_cycle(95*mearth, 151410*km,50*km), " predicted = 4 yrs")


#
# 3753 Cruithne
#
# a = 1 AU and semimajor axis difference from https://en.wikipedia.org/wiki/3753_Cruithne
# Quoted cycle time = 770 years
#
print("Predicted 3753 Cruithne cycletime [years] = ",hs_cycle(msun, 1*au, (1.0-0.99774)*au), " predicted = 770 yrs")

und die Ergebnisse, die ich bekomme, sind

Predicted 2010_SO16 cycletime [years] =  495.7747141830971  predicted = 350 yrs
Predicted Janus/Epimetheus cycletime [years] =  11.542076781209305  predicted = 8 yrs
Predicted 3753 Cruithne cycletime [years] =  877.4773702355546  predicted = 770 yrs

Die Formel kann also bis zu einem Faktor von ~2 abweichen. Dies liegt sicherlich einfach daran, dass die Realität komplexer ist als eine einfache Kreisbahnnäherung, aber auch an der Qualität der verwendeten Werte. Wikipedia ist nicht dafür bekannt, bestimmte Werte gut zu recherchieren. Ich nahm die, die ich dort fand. Für SO16 war die Auswahl besonders verwirrend, also nahm ich die beiden, die in derselben Textzeile erwähnt wurden, in der Hoffnung, dass sie aus derselben Quelle stammen würden.

Wer konsistentere Werte findet, kann gerne kommentieren.

Obwohl ich verstehe, dass Genauigkeit ein Problem ist, habe ich bis zu einem gewissen Grad Probleme, diese Gleichung mit den von mir bereitgestellten Beispielen von Erde + Cruithne und Janus + Epimetheus in Einklang zu bringen. Ich würde eine Abweichung von einigen Jahrzehnten in einem 770-Jahres-Zyklus oder mehrere Monate oder ein Jahr in einem 8-Jahres-Zyklus verstehen. Aber ich bekomme Werte von Hunderttausenden von Jahren auf dem einen und ein paar Wochen auf dem anderen. Was fehlt mir hier?
@Dalila: Ich bekomme diese Werte nicht. Meine scheinen viel vernünftiger zu sein, aber es ist immer noch eine Annäherung. Sie müssen vorsichtig sein, was die große Halbachse und der Wert d ist, der die Differenz der großen Halbachse und des 2. massiven Körpers ist. Das zentrale Objekt ist die Sonne für Cruithne und Saturn für JEpi. Aber ich habe meinen Code hinzugefügt, damit Sie es selbst überprüfen und natürlich in der Literatur stöbern können, wenn Sie möchten.
Ich denke, hier bin ich auf Probleme gestoßen: "Sie müssen vorsichtig sein, was die große Halbachse und der Wert d ist, der die Differenz zwischen der großen Halbachse und dem 2. massiven Körper ist." Können Sie diesen Wert verdeutlichen? Meinten Sie, es ist der Unterschied zwischen den großen Halbachsen der beiden koorbitalen Körper? Ich möchte nur sichergehen, dass ich den letzten Kommentar richtig verstanden habe
@Dalila: Wenn wir die Körper mit 0,1,2 bezeichnen und die Massen sind M 2 M 1   G G M 0 , dann ist d die Differenz der großen Halbachsen A 01 A 02 . Beachten Sie, dass dies Janus und Epimetheus nicht ausschließen sollte, da sie der gleichen Physik wie eine normale Hufeisenumlaufbahn gehorchen: Jeder Mond umkreist den Saturn für die meiste Zeit ungestört. Ich bin mir also nicht sicher, was an dem Wert, den ich für JEpi bekomme, falsch ist.
Danke für diese Klarstellung. Ich habe den JEpi-Zyklus als insgesamt 8 Jahre verstanden, nicht als 4. 4 Jahre war die Zeit zwischen den beiden Ansätzen im Zyklus, also ist 11 gegenüber 8 tatsächlich eine angemessene Fehlerspanne, zumindest für meine Zwecke, bei dieser Berechnung. Habe ich da noch was falsch verstanden?
@Dalila: Ich glaube nicht, dass du das falsch verstanden hast. Ich weiß nicht, wie hoch die tatsächliche Zykluszeit ist, ich habe nur schnell die Werte nachgeschlagen, die im Wiki korrekt erscheinen;) Also wahrscheinlich mein Fehler, wenn es tatsächlich 8 Jahre sind.

Ernest W. Browns On a New Family of Periodic Orbits in the Problem of Three Bodies: (Tafeln 6, 7.) in MNRAS, 71, (5), S. 438–454, veröffentlicht am 10. März 1911, scheint dort zu sein, wo Hufeisenbahnen waren zuerst vorgeschlagen. ( Auch hier erhältlich). Es beginnt:

Es gibt vier bekannte Asteroiden, die um den einen oder anderen Eckpunkt der beiden gleichseitigen Dreiecke zu oszillieren scheinen, deren Basis die Verbindungslinie zwischen Jupiter und Sonne ist. Diese Scheitelpunkte sind die wohlbekannten Positionen des relativen Gleichgewichts. Der heliozentrische Vektor eines dieser Asteroiden kann sich anscheinend bis zu 17° von seiner Gleichgewichtslage entfernen.* Die Schwingungen können daher nicht als sehr klein angesehen werden. Man fragt sich natürlich, ob Schwingungen dieser Art in noch grösseren Bögen möglich sind; und wenn ja, auf welche Weise kann er die Umlaufbahnen am bequemsten erhalten?

*LJ Linders, Arhivfor Mat., Ast. och Fys., So. Tierarzt. Ak. Ich Stockholm, Bd. 4, Nr. 20.



Ich werde einige Hufeisenbahnen im Circular Restricted Three-Body Problem-Formalismus erstellen und sie in Python darstellen und dann mit der Schätzung der synodischen Periode vergleichen, die in der Antwort von @AtmosphericPrisonEscape beschrieben wird .

tl;dr: Gute qualitative Übereinstimmung, keine Überraschungen!


Eine kurze Zusammenfassung der CR3BP-Mathematik in dimensionslosen Einheiten. Der Abstand zwischen den beiden Körpern ist gleich 1, ebenso die Gravitationskonstante. Sie umkreisen einen gemeinsamen Schwerpunkt auf Kreisbahnen mit einer Periode von 2 π . Es ist einfacher zu visualisieren und zu berechnen, wenn Sie es in einem rotierenden Rahmen tun, sodass die beiden Massen fest sind. Der dritte Körper an Position X , j , z wird angenommen, dass es keine Gravitationswirkung auf die ersten beiden hat,

μ = M 2 M 1 + M 2

X 1 = μ
X 2 = 1 μ

R 1 = ( X X 1 ) 2 + j 2 + z 2
R 2 = ( X X 2 ) 2 + j 2 + z 2

Die Jacobi-Energie C ist eine Erhaltungsgröße in diesem Rotationssystem:

C = X 2 + j 2 + 2 1 μ R 1 + 2 μ R 2 ( X ˙ 2 + j ˙ 2 + z ˙ 2 )

bei dem die X 2 + j 2 ist das Pseudopotential. Wenn Sie die geschwindigkeitsabhängigen Terme einstellen ( X ˙ 2 + j ˙ 2 + z ˙ 2 ) auf Null, erhalten Sie eine Oberfläche mit Nullgeschwindigkeit , diese Oberfläche, die in viele/die meisten Fragen zu drei Körperumlaufbahnen eingefügt wird. Diese Diagramme gelten nicht, wenn sich ein Objekt bewegt, und Sie können ihnen daher keine Umlaufbahnen überlagern!

zufällige Nullgeschwindigkeitskurve

Die Beschleunigung, die der dritte Körper in diesem rotierenden Rahmen spürt, hat beides, was erwartet wird 1 / R 2 Kräfte und eine geschwindigkeitsabhängige Pseudokraft , die nicht real ist, aber die Tatsache berücksichtigt, dass sich der Rahmen dreht und nicht träge ist.

X ¨ = X + 2 j ˙ ( 1 μ ) ( X + μ ) R 1 3 μ ( X 1 + μ ) R 2 3
j ¨ = j 2 X ˙ ( 1 μ ) j R 1 3 μ j R 2 3
z ¨ = ( 1 μ ) z R 1 3 μ z R 2 3


Hier sind einige Berechnungen. Ich entschied mich μ = 0,001 was der Situation Jupiter und Sonne ziemlich nahe kommt. Ich wählte eine Reihe von Startpunkten am gegenüberliegenden Punkt aus M 2 bei etwa X = 1 aber das habe ich wirklich nicht gemacht. Was ich wirklich getan habe, ist eine Reihe von Startgeschwindigkeiten zu wählen 0,08 < j ˙ < 0,08 und für jeden berechnete ich die Position auf der X Achse in der Nähe X = 1 wo die Beschleunigung in der X Richtung war Null.

Das gibt den Lösungen ein kleines bisschen Startsymmetrie, aber Halo-Orbits sind holprig und wackelig und nicht immer so stabil, also ist dieser Aufwand nicht wirklich notwendig.

Ich propagierte jede Umlaufbahn, bis sie in denselben Bereich zurückkehrte, und stoppte sie, als sie die x-Achse kreuzte, wodurch eine Familie von Halbzyklen erzeugt wurde.

Um es kurz zu machen, die in der Antwort von @AtmosphericPrisonEscape gezeigte Methode zur Schätzung der Zykluszeit durch Berechnung der synodischen Periode im Trägheitsrahmen stimmt ziemlich gut mit diesen Halo-Umlaufbahnen überein, und das sollte nicht sehr überraschend sein!

Geben Sie hier die Bildbeschreibung ein

oben: Halbzyklen einiger wackeliger Hufeisenbahnen

Geben Sie hier die Bildbeschreibung ein

oben: Zeiten bis zum ersten Kreuzen der x-Achse der gleichen wackeligen Hufeisenbahnen, die zur Berechnung der Halbzykluszeiten verwendet werden.

Geben Sie hier die Bildbeschreibung ein

oben: Zykluszeiten aus dieser Berechnung (schwarze Punkte) versus aus der Schätzmethode der synodischen Periode (rote Punkte). Gute qualitative Übereinstimmung. Auch die Startgeschwindigkeiten y an jedem Startpunkt in x.

unten: Python-Skript für diese Plots.

def x_acc(x, ydot):
    r1    = np.abs(x-x1)
    r2    = np.abs(x-x2)
    xddot = x + 2*ydot  -  ((1-mu)/r1**3)*(x+mu) - (mu/r2**3)*(x-(1-mu))
    return xddot

def C_calc(x, y, z, xdot, ydot, zdot):
    r1 = np.sqrt((x-x1)**2 + y**2 + z**2)
    r2 = np.sqrt((x-x2)**2 + y**2 + z**2)
    C = (x**2 + y**2 + 2.*(1-mu)/r1 + 2.*mu/r2 - (xdot**2 + ydot**2 + zdot**2))
    return C

def deriv(X, t): 
    x, y, z, xdot, ydot, zdot = X
    r1 = np.sqrt((x-x1)**2 + y**2 + z**2)
    r2 = np.sqrt((x-x2)**2 + y**2 + z**2)
    xddot = x + 2*ydot  -  ((1-mu)/r1**3)*(x+mu) - (mu/r2**3)*(x-(1-mu))
    yddot = y - 2*xdot  -  ((1-mu)/r1**3)*y      - (mu/r2**3)*y
    zddot =             -  ((1-mu)/r1**3)*z      - (mu/r2**3)*z
    return np.hstack((xdot, ydot, zdot, xddot, yddot, zddot))

# http://cosweb1.fau.edu/~jmirelesjames/hw4Notes.pdf

import numpy as np
import matplotlib.pyplot as plt
from scipy.integrate import odeint as ODEint
from scipy.optimize import brentq

halfpi, pi, twopi = [f*np.pi for f in (0.5, 1, 2)]

mu = 0.001

x1 = -mu
x2 = 1. - mu

x = np.linspace(-1.4, 1.4, 1201)
y = np.linspace(-1.4, 1.4, 1201)

Y, X = np.meshgrid(y, x, indexing='ij')
Z    = np.zeros_like(X)

xdot, ydot, zdot = [np.zeros_like(X) for i in range(3)]

C = C_calc(X, Y, Z, xdot, ydot, zdot)
C[C>8] = np.nan

if True:
    plt.figure()
    plt.imshow(C)
    plt.colorbar()
    levels = np.arange(2.9, 3.2, 0.04) 
    CS = plt.contour(C, levels,
                 origin='lower',
                 linewidths=2) 
    plt.show()

ydot0s   = np.linspace(-0.08, 0.08, 20)
x0ydot0s = []
for ydot0 in ydot0s:
    x0, infob =  brentq(x_acc, -1.5, -0.5, args=(ydot0), xtol=1E-11, rtol=1E-11,
                           maxiter=100, full_output=True, disp=True)
    x0ydot0s.append((x0, ydot0))

states = [np.array([x0, 0, 0, 0, ydot0, 0]) for (x0, ydot0) in x0ydot0s]

times  = np.arange(0, 150, 0.01)

results = []
for X0 in states:
    answer, info = ODEint(deriv, X0, times, atol = 1E-11, full_output=True)
    results.append(answer.T.copy())

resultz = []
for x0ydot0, thing in zip(x0ydot0s, results):
    y     = thing[1]
    check = y[2:]*y[1:-1] < 0
    zc    = np.argmax(y[2:]*y[1:-1] < 0) + 1
    if zc > 10:
        resultz.append((thing, zc, x0ydot0))

if True:
    plt.figure()
    hw = 1.6
    for j, (thing, zc, x0ydot0) in enumerate(resultz):
        x, y = thing[:2,:zc]
        plt.plot(x, y)
    plt.xlim(-hw, hw)
    plt.ylim(-hw, hw)
    plt.plot([x1], [0], 'ok')
    plt.plot([x2], [0], 'ok')
    plt.show()

if True:
    plt.figure()
    for j, (thing, zc, x0ydot0) in enumerate(resultz):
        x, y = thing[:2]
        plt.plot(times[:zc], y[:zc])
    plt.show()

if True:
    plt.figure()
    for j, (thing, zc, x0ydot0) in enumerate(resultz):
        x0, ydot0 = x0ydot0
        cycle_time = 2. * times[zc] / twopi
        ratio = abs(x0/x2)
        T_simple_model = twopi * abs(x0/x2)**1.5
        T_synodic_simple_model = 1. / (1. - twopi/T_simple_model) # https://astronomy.stackexchange.com/a/25002/7982
        plt.subplot(2, 1, 1)
        plt.plot(x0, cycle_time, 'ok')
        plt.plot(x0, abs(T_synodic_simple_model), 'or')
        plt.subplot(2, 1, 2)
        plt.plot(x0, ydot0, 'ok')
    plt.subplot(2, 1, 1)
    plt.xlabel('x0', fontsize=16)
    plt.ylabel('cycle times (periods)', fontsize=16)
    plt.subplot(2, 1, 2)
    plt.xlabel('x0', fontsize=16)
    plt.ylabel('ydot0', fontsize=16)
    plt.show()
Hach, das ist schön. Gestern habe ich auch an meinem eigenen Drei-Körper-Löser gearbeitet, um die Formel zu testen, aber Sie sind mir zuvorgekommen.
@AtmosphericPrisonEscape Ich habe mich sehr lange damit beschäftigt , aber ich habe noch einen langen Weg vor mir.