Blau ist Erde, Rot ist Mars, Orange ist Jupiter und alle Weißen sind Flugbahnen von der Erde zum Mars. Die ungeraden Bahnlinien in der Mitte sind das Problem, das ich zu lösen versuche.
Wie Sie im Bild sehen können, habe ich einen guten Kepler-Löser (tatsächlich habe ich 3 implementiert, während ich dieses Trajektorienproblem debuggte, um sicherzustellen, dass das Problem nicht dort lag). Aber bei der Verwendung des Gauß-Problems/der Gauß-Methode zur Berechnung von Flugbahnen unter Berücksichtigung der Position der Erde zum Zeitpunkt des Starts, der Position des Mars zur Ankunftszeit und der Reisedauer gibt es Zeiten, in denen die Lösung zu einer großen Halbachse mit einem negativen Wert führt .
Meine Hauptressource für den Gauß-Algorithmus war diese Seite: http://www.braeunig.us/space/interpl.htm .
Beim Lesen von http://www.braeunig.us/space/orbmech.htm scheint es, dass die große Halbachse für Hyperbeln negativ ist und dass Hyperbeln verwendet werden, wenn die Schiffsgeschwindigkeit stark genug ist, um der Schwerkraft ihrer Primärachse zu entkommen. Vielleicht ist mein Problem also nicht, dass mein Gauß-Löser und Kepler zu kartesisch falsch sind, sondern dass die Flugbahn, die ich zu lösen versuche, eine andere Art von Lösung erfordert?
Ich denke, es kommt wirklich auf die Frage an: Was mache ich, wenn die große Halbachse negativ ist? Gibt es einen anderen Satz von Gleichungen, um die Orbitalmechanik für hyperbolische Übertragungen zu erhalten (und dann in kartesische Koordinaten umzuwandeln)?
Gibt es einen anderen Satz von Gleichungen, um die Orbitalmechanik zu erhalten?
Die allgemeine Formulierung ist ein Satz gekoppelter ODEs, gewöhnlicher Differentialgleichungen. Diese Gleichungen funktionieren gut. Der von Ihnen zitierte Gauß-Algorithmus ist nur eine Möglichkeit, sich ihrer Lösung zu nähern.
Meine Empfehlung ist das Erlernen numerischer Lösungsverfahren zur Integration der ODEs. In einer Dimension geht das etwa so: initialisiere Geschwindigkeit v0 und Position x0 deiner Masse m, summiere alle wirkenden Gravitationskräfte F, berechne Beschleunigung a = F/m, erhöhe Zeit um dt, erhöhe Geschwindigkeit um v = v0 + a dt, Position um x = x0 + v dt erhöhen. Wiederholen Sie, bis Sie dort angekommen sind, wo Sie hinwollen. ACHTUNG, dies ist keine effiziente numerische Methode, sondern nur die einfachste. Es erfordert einen sehr kleinen Wert von dt, um genaue Lösungen zu erhalten.
Sie finden zuverlässige und genaue ODE-Integratoren, die in Hochsprachen wie MATLAB und sogar in MathCAD integriert sind.
Bei numerischen Methoden müssen Sie keine geschlossene Funktion annehmen, die Ihre Trajektorie beschreibt.
Methoden, die auf der Annahme exakter Lösungen in geschlossener Form beruhen, wie Hyperbeln, beruhen immer auf Annahmen. Die von Ihnen angegebene Website veranschaulicht die Komplexität der Begründung der Anwendbarkeit der Annahmen, die ihrer Methode zugrunde liegen. Sie verlangen, dass Sie schätzen, „wie hoch oben ist“, dh wo der Punkt ist, hinter dem Sie die Erde, den Mars oder den Mond ignorieren können.
Karl Witthöft
Lanzew
Karl Witthöft
Lanzew
äh
Peterh
Lanzew
DrBunny
DrBunny
notovny
äh