Wie man neue Periapsis und Apoapsis nach Bahngeschwindigkeitsänderung berechnet

Ich arbeite an einer Möglichkeit, Umlaufbahnen für ein Videospiel zu simulieren, das ich mache. Es funktioniert, indem es die Apoapsis, Periapsis und die aktuelle Entfernung nimmt und daraus die Geschwindigkeit, Radialgeschwindigkeit, Periode usw. berechnet. Es sind keine Vektoren beteiligt, da kein 2D-Raum simuliert wird - nur die Zahlen selbst. Die Simulation funktioniert gut mit der auf Schienen gelegten Umlaufbahn, aber sobald ich die Umlaufgeschwindigkeit ändere, bekomme ich Probleme, weil ich dann die Apoapsis und Periapsis basierend auf dieser Änderung neu berechnen muss.

Ich habe einige Methoden ausprobiert, aber sie scheinen aufgrund des Mangels an Vektoren, die sie alle verwenden, nicht zu funktionieren. Was ist der richtige Weg, dies zu tun? Wenn wir sagen, dass ich ein Objekt umkreise, bei dem mu 10.000 ist, meine aktuelle Entfernung von dem Objekt 500 Meter beträgt, die Apoapsis 700 Meter beträgt, die Periapsis 300 Meter beträgt und ich mit 20 m/s beschleunige, was wäre eine neue Apoapsis und Periapsis sein? Bedenke, dass dies für Programmierzwecke gedacht ist, also wäre jeder Pseudocode ebenfalls willkommen.

Spielt es für Sie eine Rolle (in der realen Welt), wo in der Orbitalposition einer nach Ihrer Beschreibung elliptischen Umlaufbahn die Hohmann-Transferverbrennung mit ansteigender Umlaufbahn stattfindet und wie lange? Wenn dies nicht der Fall ist und Sie mit der Annäherung einverstanden sind, würde ich vorschlagen, mit der großen Halbachse (in Ihrem Fall r + 500 m) zu arbeiten und einen einfachen Algorithmus abzuleiten, um die neue Höhe mit der neuen Umlaufgeschwindigkeit unter Verwendung von vis- Leben . Würde das für dich funktionieren?
Sie sagen, dass Sie 20 m/s beschleunigen, aber das ist nicht genug Information, um das Problem zu lösen. Sie müssen die Richtung relativ zur Orbitalrichtung und relativ zur Richtung des Planeten kennen. Sie können das einen "Vektor" nennen oder nicht, aber Sie können die unabhängigen Freiheitsgrade nur so stark reduzieren.
Bitte lesen Sie Battins Buch ("Eine Einführung in die Mathematik und Methoden der Astrodynamik"); Das Fahrrad neu zu erfinden ist eine gute Sache, sobald Sie ein vorhandenes praktikables Design kennen.
"Es sind keine Vektoren beteiligt, da kein 2D-Raum simuliert wird - nur die Zahlen selbst" . Dann steckst du fest. Sie haben sich in ein Repräsentationsschema eingezwängt, das Sie das Problem nicht lösen lässt. Nehmen wir Ihr Beispiel: Zunächst einmal hat die Beschleunigung die Einheit Länge/Zeit². Ich nehme an, Sie meinten eine impulsive Geschwindigkeitsänderung, kurz Δv. In welche Richtung? Entlang des Geschwindigkeitsvektors, dagegen oder in eine andere Richtung? Ist dieses Δv während der Annäherung an Apoapsis oder Periapsis aufgetreten?
Betrachten Sie ein Punktobjekt mit unendlich kleiner Masse in Bezug auf einen Punktkörper, über den ein Bahnzustand bestimmt werden soll. Angesichts der Masse des Körpers, des Abstands zwischen den Massenschwerpunkten von Objekt und Körper und der Komponenten der Geschwindigkeit des Objekts (1) entlang der Verbindungslinie zwischen den Massenschwerpunkten und (2) senkrecht zu dieser Linie sollte es möglich sein, dies zu bestimmen wenn sich das Objekt in einer Umlaufbahn gegenüber einer Fluchtbahn befindet und wenn es sich in der Umlaufbahn befindet, berechnen Sie Periode, Periapsis und Apoapsis und die Beziehung zwischen der aktuellen Position des Objekts und den Punkten der Periapsis/Apoapsis.
Ich denke, die Frage betrifft eine Orbitalsimulation, bei der die Mathematik in einem Koordinatensystem der Polarebene arbeitet, das um den Massenmittelpunkt des "Planeten" zentriert ist.
ABanimationLtd, es würde helfen, wenn Sie Ihre Frage klären. Was meinst du mit "beschleunigen um 20 m/s"? Die Einheiten sind falsch (das ist eine Geschwindigkeit) und eine Geschwindigkeitsänderung von 20 m/s bei einem mu von 10.000 (welche Einheiten?? 10000 m 3 / s 2 ?) und eine große Halbachse von 500 Metern würde das Objekt auf eine hyperbolische Bahn bringen.
Ich verstehe nicht, warum die Frage abgelehnt wurde. Ich fand es interessant. +1

Antworten (1)

Es würde Ihnen wirklich helfen, dies als 3D-Vektor darzustellen. Es macht die Mathematik viel einfacher und ermöglicht einige interessante Effekte. Ich würde dies im Spiel auf die einfachere Darstellung der maximalen Höhe usw. übersetzen.

Bei gegebenem Positions- und Geschwindigkeitsvektor könnte man daraus die TLE-Elemente berechnen. Sie finden einfach die Position und Geschwindigkeit zu diesem Zeitpunkt, fügen die neue Geschwindigkeitskomponente hinzu und berechnen dann neu. Wir haben bereits eine hervorragende Antwort , die zeigt, wie Position und Geschwindigkeit in die Orbitalelemente umgewandelt werden.

Wenn Sie dies vereinfachen möchten, können Sie eine Umlaufbahn mit einer Neigung von 0 annehmen, wodurch Sie einen 2-D-Vektor verwenden können, und davon ausgehen, dass der gesamte Antrieb entweder prograd oder retrograd ist und die Geschwindigkeit erhöht oder verringert.

Viel Glück!