Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
ws2021:raketenbahn:berechnung [2021/04/07 17:04] konstantinflorian |
ws2021:raketenbahn:berechnung [2021/04/14 01:01] (aktuell) konstantinflorian [Schritte] |
||
---|---|---|---|
Zeile 15: | Zeile 15: | ||
Konstanten berechnen: | Konstanten berechnen: | ||
- | M = Masse des Zentralkörpers, in diesem Fall der Sonne\\ | + | $M$ = Masse des Zentralkörpers, in diesem Fall der Sonne\\ |
- | G = Gravitationskonstante\\ | + | $G$ = Gravitationskonstante\\ |
- | ra = Zielradius\\ | + | $ra$ = Zielradius\\ |
- | re = Anfangsradius\\ | + | $re$ = Anfangsradius\\ |
- | a = große Halbachse der Ellipse = (re+ra)/2\\ | + | $a$ = große Halbachse der Ellipse = $(re+ra)/2\\$ |
- | va = Anfangsgeschwindigkeit\\ | + | $va$ = Anfangsgeschwindigkeit\\ |
- | vz = Bahngeschwindigkeit des Zielorbits\\ | + | $vz$ = Bahngeschwindigkeit des Zielorbits\\ |
- | Die Formel für die erste Geschwindigkeitsänderung dv1 ist: | + | Die Formel für die erste Geschwindigkeitsänderung $dv1$ ist: |
- | dv1 = sqrt[(M*G*ra)/(re*a)] - va | + | $dv1 = sqrt[(M*G*ra)/(re*a)] - va$ |
- | Die Formel für die zweite Geschwindigkeitsänderung dv2 ist: | + | Die Formel für die zweite Geschwindigkeitsänderung $dv2$ ist: |
- | dv2 = vz - sprt[(M*G*re)/(ra*a)] | + | $dv2 = vz - sprt[(M*G*re)/(ra*a)]$ |
Zeile 57: | Zeile 57: | ||
In der Gravitationfunktion wird die Kraft aller Objekte auf ein Objekt errechnet. | In der Gravitationfunktion wird die Kraft aller Objekte auf ein Objekt errechnet. | ||
- | Dazu geht die for-Schleife alle Objekte durch und berechnet den Normalenvektor und die Beschleunigung zu diesem.\\ | + | Dazu geht die for-Schleife alle Objekte durch und berechnet einen genormten Vektor (Länge : 1) und die Beschleunigung zu diesem.\\ |
Der Wert wird jeden Durchgang der Schleife auf den Beschleunigungsvektor addiert, welcher dann am Ende zurückgegeben wird | Der Wert wird jeden Durchgang der Schleife auf den Beschleunigungsvektor addiert, welcher dann am Ende zurückgegeben wird | ||
Zeile 153: | Zeile 153: | ||
</file> | </file> | ||
- | Die Funktion get_data() dient zum aktualisieren und speichern der Schritte in dem Dictionary data. | + | Die Funktion get_data() dient zum Aktualisieren und Speichern der Schritte in dem Dictionary data. |
- | Um die Rechenzeit zu minimieren wird der tag in 864 Zeitschritte eingeteilt, wobei ein Zeitschritt 100 Sekunden umfasst.\\ | + | Um eine annährend genaue, aber auch relativ schnelle Berechnung zu erhalten haben wir uns für eine Einteilung von 864 Zeitschritten pro Tag à 100 Sekunden entschieden.\\ |
+ | Diese Aufteilung ist klein genug um auch schnelle Trabanten mit geringer Orbithöhe zuverlässig zu simulieren.\\ | ||
Das Programm geht die Tage und Zeitschritte der Tage durch und speichert den Zustand aller Objekte.\\ | Das Programm geht die Tage und Zeitschritte der Tage durch und speichert den Zustand aller Objekte.\\ | ||