Satellitenhöhe als Funktion der Zeit?

Um in dieser Frage eine genauere Strahlungsschätzung zu erhalten , versuche ich, die Höhe eines Satelliten als Funktion der Zeit zu approximieren und/oder zu bestimmen. Der Satellit hat ein Apogäum von 32190 km über der Erde und ein Perigäum von 320 km über der Erde.

Ich gehe der Einfachheit halber von folgenden Eigenschaften aus:

  • Keine Bahnneigung, also in der Äquatorebene,
  • Keine J2-Effekte.
  • Kein Luftwiderstand/andere Widerstandskräfte.

Wenn Sie Fehler sehen, lassen Sie es mich bitte wissen :)

Nähert sich:

  1. Finden Sie eine analytische Lösung in geschlossener Form
  2. Finden Sie eine iterative analytische Lösung
  3. Finden Sie Orbit-Simulationssoftware, um die Umlaufbahnhöhe abzurufen
  4. Finden Sie einen Datensatz von Umlaufbahnhöhen als Funktion der Zeit von äquivalenten Satelliten.

Zusammenfassung der Versuchsergebnisse:

  1. Nach diesem Versuch gibt es keine (einfache) geschlossene Form. Ich habe versucht, effektiv zu sein und das Rad nicht neu zu erfinden, also werde ich zu einer numerischen Methode wechseln, um eine Funktion der Umlaufbahnhöhe zu erhalten.

2. Ausgearbeitet in Antworten: Die Vorlesung Orbital Dynamics Part 18 – Formula for True Anomaly erklärt, wie die exzentrische Anomalie durch einen iterativen Versuch gefunden werden kann. Ich war neugierig, wie sich dies auf die differentielle Natur der Gleichung bezieht.

Diese Lösung wird in den Antworten ausgearbeitet.

  1. Ich habe es versucht:

https://www.thanassis.space/gravity.html

http://en.homasim.com/orbitsimulation.php

https://nl.mathworks.com/matlabcentral/fileexchange/57132-satellite-orbit-transfer-simulation

Die ersten 2 Seiten dieser Modelle:

http://www.winsite.com/satellite/satellite+simulator+orbit/

https://github.com/pytroll/pyorbital

Und sehr vielversprechend, aber nicht herunterladbar:

https://nl.mathworks.com/matlabcentral/fileexchange/57132-satellite-orbit-transfer-simulation

4. In Antworten ausgearbeitet: Hat funktioniert, obwohl Mitternacht zu einem Fehler führte, also habe ich es neu gestartet und eine halbe Umlaufbahn abgewartet (vom Apogäum zum Perigäum oder umgekehrt), da die Symmetrie die gesamte Umlaufbahn ergibt. Die Lösung wird in den Antworten erarbeitet.

Ich bin mir nicht sicher, ob das angemessen ist, aber ich danke allen für das kritische und unterstützende Feedback! :)

Neigung der Umlaufbahn? Benötigen Sie eine J2-Störung?
Danke @Prakhar, ich habe die Frage angepasst, um Ihre Kommentare anzusprechen.
Könnten Sie einen Link zu der anderen Frage bereitstellen? Jetzt heißt es nur [1]ohne Link.
@barrycarter ja natürlich, danke für den Hinweis. Ich wusste nicht, dass die Referenz brechen würde, nachdem man Antwort und Frage getrennt hat, jetzt bin ich mir dessen bewusst.
Ich stimme dafür, diese Frage als nicht zum Thema gehörend zu schließen, da es ein extrem langwieriger Weg ist, herauszufinden, dass es keine Lösung in geschlossener Form für die mittlere Anomalie M gibt (... ist das eine mittlere Anomalie? Ich vergesse). versteht auch nicht, dass man E(t) nicht einfach ersetzen kann, was man will.
@ErinAnne Vielen Dank, dass Sie auf die Verwechslung zwischen der mittleren Anomalie M und der exzentrischen Anomalie E hingewiesen haben. Ich habe den analytischen Lösungsansatz angepasst. Was das Off-Topic betrifft, denke ich, dass die Bestimmung der Satellitenhöhe im "Weltraum" ziemlich relevant ist. Ich war überrascht, wie wenig Ansätze mit geringer Genauigkeit gut dokumentiert und leicht zu verwenden sind, daher denke ich, dass ein gründlicher Versuch denen zugute kommt, die dasselbe tun möchten. am selben Punkt beginnen.
@at Ich kann sehen, dass Sie ziemlich viel Arbeit und vorherige Recherchen in diese Frage stecken! Es wird jetzt ziemlich groß und wird immer schwieriger zu lesen. Ich schlage vor, Sie vereinfachen es. Um die Gesamtdosis pro Orbit mit einem gegebenen 1D-Dosis-gegen-Höhen-Profil zu erhalten, brauchen Sie mit anderen Worten nur die Verteilung der Zeit, die auf jeder Höhe verbracht wird d t / d r . Das könnte etwas einfacher sein, und ich denke, die Mathematik ist interessant.

Antworten (2)

Ansatz 4 (Erfolgreicher Ansatz)

Da ich zum jetzigen Zeitpunkt den analytischen Ansatz nicht weiter verfolgen kann, habe ich über http://stuffin.space/?intldes=2012-008N einen Satelliten (Debris) gefunden , der eine ähnliche Umlaufbahn hatte wie ich versuche herauszufinden, habe ein kleines Excel-Skript geschrieben, das die Daten von http://www.satview.org/forec.php?sat_id=43273U jede Minute durchsucht, damit ich morgen die Daten sortieren und die ungefähre Höhe erhalten kann als Funktion der Zeit.

Das Skript lautet:

Sub absorb_data_from_vdb()
Application.Wait (Now + TimeValue("0:00:10")) 'H:MM:SS
'source: https://plus.google.com/105053415343007690451/posts/1pjy2PFVwN5
Dim ie As Object
Dim objelement As Object
Dim c As Integer
Dim i
Dim strCaptcha As String
Dim strImageSource As String
Dim img As HTMLhtmlElement 'tools =>reference Microsoft Html Object Library
Set ie = CreateObject("InternetExplorer.Application")

Dim click_changed_additions  As Integer
Dim electric_bullet_count As Integer
Dim gas_bullet_count As Integer


With ie
    .Visible = True
    .navigate "http://www.satview.org/forec.php?sat_id=43273U"
    'wait until first page loads
    Do Until .readyState = 4
        DoEvents
    Loop
    Application.Wait (Now + TimeValue("0:00:02")) 'H:MM:SS
    whole_day = 2
    Do While whole_day < 10
        .Refresh
        Do Until .readyState = 4
            DoEvents
        Loop
        Application.Wait (Now + TimeValue("0:00:02")) 'H:MM:SS

        Set elements0e = ie.document.getElementsByClassName("link_mudar") 'Get innertext to get value
        If elements0e.Length <> 0 Then
            'MsgBox (elements0e.item(2).innerText)
            elements0e.item(2).Focus
            elements0e.item(2).Click
            'MsgBox ("clicked link")
        End If

        If ThisWorkbook.Worksheets("Sheet1").Range("A1").Value - 2 < 2 Then
            ThisWorkbook.Worksheets("Sheet1").Range("A1").Value = 2
        End If
        For Iteration = ThisWorkbook.Worksheets("Sheet1").Range("A1").Value - 2 To ThisWorkbook.Worksheets("Sheet1").Range("A1").Value - 2 + 100
            Set elements0e = ie.document.getElementsByClassName("texto_track2") 'Get innertext to get value
            If elements0e.Length <> 0 Then
                ThisWorkbook.Worksheets("Sheet1").Range("A" & 2 + Iteration).Value = elements0e.item(0).innerHTML
                ThisWorkbook.Worksheets("Sheet1").Range("F" & 2 + Iteration).Value = Now()
                'MsgBox ("found from")
            End If
        Next Iteration
        For Iteration = ThisWorkbook.Worksheets("Sheet1").Range("A1").Value - 2 To ThisWorkbook.Worksheets("Sheet1").Range("A1").Value - 2 + 100
            Set elements0e = ie.document.getElementsByClassName("texto_track2") 'Get innertext to get value
            If elements0e.Length <> 0 Then
                ThisWorkbook.Worksheets("Sheet1").Range("G" & 2 + Iteration).Value = elements0e.item(1).innerHTML
                'MsgBox ("found from")
            End If
            If ThisWorkbook.Worksheets("Sheet1").Range("A1").Value < Iteration + 2 Then
                ThisWorkbook.Worksheets("Sheet1").Range("A1").Value = Iteration + 2
            End If

        Next Iteration

        proceed_boolean = False
        Do While proceed_boolean = False
        If Left(Right(Now(), 5), 2) <> Left(Right(ThisWorkbook.Worksheets("Sheet1").Range("F" & 2 + Iteration - 1).Value, 5), 2) Then
            'MsgBox ("A minute has passed")
            'MsgBox (Left(Right(Now(), 5), 2))
            'MsgBox (Left(Right(ThisWorkbook.Worksheets("Sheet1").Range("F" & 2 + Iteration - 1).Value, 5), 2))
            proceed_boolean = True
            Application.Wait Now + #12:00:02 AM# 'This waits for 5 seconds
        End If
        Loop


    Loop
End With
MsgBox ("Done")

End Sub

Nach zwei Läufen wird die folgende Grafik für die äquivalente Umlaufbahn gezeichnet:

Satellitenhöhe vs. Zeit Satellitengeschwindigkeit gegen Zeit

Die visuelle Inspektion ergibt eine klare Bahnfunktion, nachdem die Ausreißer entfernt wurden. Folgende Plausibilitätsprüfungen werden durchgeführt:

  1. die Geschwindigkeit am Perigäum (niedrigste Höhe), die am höchsten sein sollte, was bedeutet, dass der Gradient der Bahnhöhenfunktion am höchsten sein sollte.
  2. Die Geschwindigkeit am Apogäum (höchste Höhe) sollte am niedrigsten sein, was bedeutet, dass der Gradient der Bahnhöhe nahe dem Perigäum am niedrigsten sein sollte.
  3. Der Gradient der Umlaufbahnhöhe sollte gleich 0 sein (eine horizontale Linie am Apogäum).
  4. Das Geschwindigkeitsprofil wird separat gezeichnet und auf Kontinuität geprüft.
  5. Das Geschwindigkeitsprofil wird separat aufgezeichnet und visuell auf Übereinstimmung mit dem Bahnhöhengradienten überprüft.

Alle 5 Überprüfungen sind abgeschlossen und erfolgreich, was bedeutet, dass bei diesem Ansatz keine Fehler gefunden wurden.

Da die Umlaufbahn eine Symmetrieachse hat, wird nur das halbe Geschwindigkeitsprofil benötigt. Wie man sieht, wurden zwei Aufnahmen gemacht, die rechte Aufnahme enthält eine komplette halbsymmetrische Umlaufbahn, ergibt also nach kurzer Datenmanipulation die komplette Bahnhöhenfunktion. Dies sind die Umlaufbahndaten, die die Umlaufbahnhöhe als Funktion der Zeit für die Zwecke der Strahlungsschätzung darstellen.

Als nächstes wurden die Daten manuell gefiltert (indem die Größe der Unterschiede zwischen den Höhendatenpunkten farblich markiert und die größten Unterschiede entfernt wurden, bis ich mit den Unterschieden zufrieden war).Gefilterte Satellitenhöhenmessungen

Nach dem Filtern habe ich die folgende Software/Excel-Tabelle verwendet, um die kleinsten Quadrate anzupassen: http://www.jkp-ads.com/articles/leastsquares.asp

Zur Annäherung an die Funktion** wurde folgende Polynomfunktion verwendet:

j = a x 4 + b x 3 + c ( x f ) 2 + d x + e

wobei x die Zeit in Minuten darstellt und y berechnet und verglichen wird j a c t u a l . Die Differenz zwischen den beiden y's wurde quadriert und für alle Datenpunkte (Zeiten und Höhen) summiert, die vom ersten Excel geschabt wurden). Die Randbedingungen (bc) wurden zunächst für den Evolutionären Algorithmus bestimmt, indem der Maximalwert, für den die höchste Höhe erhalten werden konnte, nur durch diesen 1 Koeffizienten multipliziert mit seinem x ausgewählt und dieser Wert dann mit 10 multipliziert wurde. Dies wurde getan, um sicherzustellen Die Lösung war verfügbar, begrenzte jedoch den Optionsraum.

Die Übersicht der Bahnregression excel

Es ergab die folgende Funktion**:

c Ö n s t a = 4.52765 E 06 c Ö n s t b = 0,002389915 c Ö n s t c = 0,074298946 c Ö n s t d = 252.5709003 c Ö n s t e = 260.8620904 c Ö n s t f = 108.1781644

h ( t ) eingerechnet wird k m

h = C Ö n s t a x v a l u e s 4 + C Ö n s t b x v a l u e s 3 + C Ö n s t c ( x v a l u e s C Ö n s t f ) 2 + C Ö n s t d x v a l u e s + C Ö n s t e

Das Excel-Skript kann weiter verbessert werden, indem ein Errorhandler hinzugefügt wird, der den ieBrowser schließt und das Skript neu startet, um einen höheren Automatisierungsgrad zu gewährleisten, wobei das Risiko größerer Datenfehler besteht.

Fehlerdiskussion: Wie in den Kommentaren darauf hingewiesen wurde, wird die Polynomanpassung 4. Grades die Genauigkeit der Umlaufbahnanpassung einschränken. (Dies ist sichtbar, wenn Sie sich den Beginn der tatsächlichen Umlaufbahnmessung ansehen, es krümmt sich in Richtung / um -t, wenn es nach unten geht, während das passende Polynom nur einen Krümmungsradius zu haben scheint (in Richtung / um + t). Dies hat die Anpassung gemacht ein wenig herausfordernd, da mehrere Iterationen erforderlich waren, bevor eine anständige Anpassung gefunden wurde. Dieser Grad an Genauigkeit wurde jedoch mittels visueller Inspektion als ausreichend angesehen. Das Verfahren kann durch eine Berechnung des tatsächlichen Fehlerquadrats verbessert werden.

** Ich denke, ein besserer Ansatz wäre tatsächlich, die elliptische Umlaufbahnhöhe als Funktion der Zeit mit einer Sinuskurve anzunähern.

"Als nächsten Lösungsversuch werde ich die Oberfläche der Ellipse und die Oberfläche der kreisförmigen Umlaufbahn berechnen und dann jeweils separat eine Sweep-Rate mit konstantem Winkelbereich anwenden." ...aber das geht nicht. Die Winkel-Sweep-Rate ist für die Ellipse absolut nicht konstant. Die Konstante ist nach Keplers Gesetz der gleichen Fläche die überstrichene Fläche pro Zeit.
Danke @ErinAnne Das habe ich in der Tat nicht klar formuliert, ich wollte Keplers 2. Gesetz anwenden. Ich habe die Vorgehensweise entsprechend angepasst.
Das ist keine Antwort auf die Frage. Obwohl es hilfreich erscheint, Antwortposts als Notizblöcke zu verwenden, um fehlgeschlagene Versuche anzuzeigen, ist dies in Stack Exchange nicht wirklich erlaubt.
Danke @uhoh, das Ergebnis wurde gepostet, damit es die Frage beantwortet. Ich werde die Ergebnisse nach Ablauf der Frist vereinfachen/bereinigen.
Wow! Okay, das sind tolle Neuigkeiten! Ja, du solltest das irgendwann aufräumen; Während es Spaß machen würde, wenn Stack Exchange Notizblock-Posts hätte, enthält es wirklich nur Fragen und Antworten. Ich werde mir das morgen mal durchlesen. In der Zwischenzeit kann ich meine Stimme auf nach oben stellen. Danke für deine Nachricht!
Ein Polynom ist wirklich nicht die richtige Lösung für dieses Problem. Die Höhe eines Satelliten ist eine Sinuskurve. Ich mache mir Sorgen, dass dies für andere, die darauf stoßen, irreführend ist. Sie haben die standardmäßige iterative Lösung zugunsten einer Lösung abgelehnt, die anscheinend nicht den von Ihnen ausgewählten Höhepunkt ergibt.
Danke für dein kritisches Feedback @ErinAnne! Aus theoretischer Sicht hast du vollkommen Recht. Dies war jedoch ein zeitlich begrenzter technischer Ansatz, bei dem eine begrenzte Genauigkeit ausreichte, was bedeutete, dass die Genauigkeit als akzeptabel angesehen wurde. Was den irreführenden Teil betrifft, stimme ich zu, also habe ich einen Haftungsausschluss hinzugefügt, der Ihren Kommentar enthält, und auch den Unterschied/Fehler erörtert, der aufgrund des unterschiedlichen Ansatzes zwischen der polynomischen Anpassung und der sinusförmigen Anpassung bei diesem Problem auftritt.

Ansatz 2 (Erfolgreicher Ansatz)

Die Umlaufbahn ist in der folgenden Abbildung beschrieben:

Analytische Bahnbeschreibung

Nach einer langen, mühsamen, aber wunderbaren Herleitung sind die folgenden 3 Gleichungen auf die elliptische Umlaufbahn anwendbar:

M = t T 2 π

M = E ϵ s ich n E

r = a ( 1 ϵ c Ö s E )

υ = θ = 2 a r c t a n ( 1 + ϵ 1 ϵ t a n E 2 )

T = 2 π a 3 μ mit μ e a r t h = 398600.4415 k m 3 s 2

r = a ( 1 e 2 ) 1 + e c Ö s θ = a ( 1 ϵ c Ö s E )

M ( t ) = Mittlere Anomalie (=Winkel zwischen grüner Linie, Ellipsenmittelpunkt, gestrichelte Linie zwischen Ellipsenmittelpunkt und Perigäum)

E ( t ) = Exzentrische Anomalie (=Winkel zwischen roter Linie, Ellipsenmittelpunkt, Linie zwischen Ellipsenmittelpunkt und Perigäum)

υ ( t ) = θ ( t ) = Wahre Anomalie (=Winkel zwischen schwarzer Linie, Ellipsenmittelpunkt, Linie zwischen Ellipsenmittelpunkt und Perigäum)

a = große Halbachse

r ( t ) = Höhe des Satelliten

ϵ = Exzentrizität

Die Anomalien werden in der folgenden Orbit-Animation visualisiert. Beachten Sie, dass, wie in den Kommentaren erwähnt, M(t) konstant und ungleich E(t) ist:

Außerdem muss die Umlaufzeit berechnet werden T , große Halbachse a und Bahnexzentrizität ϵ einmal.

Da die Perigäumshöhe = 320 km und die Apogäumshöhe 32190 km beträgt, wird die große Halbachse durch Verwendung gefunden r e = 6371 k m :

a = 320 + r e + 32190 + r e 2 = 25971.5 k m

Jetzt wird die Exzentrizität mit ermittelt θ = 0 r a d :

r = a ( 1 e 2 ) 1 + e c Ö s θ

r = a ( 1 e 2 ) 1 + e = a ( 1 e )

e = 1 r a = 1 r e + 320 a = 1 6371 + 320 25971.5 = 0,74237144562308

Die Umlaufzeit wird mit gefunden μ e a r t h = 398600.4415 k m 3 s 2 :

T = 2 π a 3 μ = 41685.4 s

Um also die Umlaufbahn zu einem Zeitpunkt t (zB 0,5 s ) werden für jeden Punkt t, an dem wir die Satellitenhöhe wissen wollen, folgende Rechenschritte durchgeführt:

Die mittlere Anomalie M(t) wird berechnet. M = t T 2 π

M = 0,5 41685.4 2 π = 0.0000753643.. r a d

Dann wird M eingesetzt in:

M = E ϵ s ich n E

Damit bleibt eine Unbekannte: die exzentrische Anomalie E . Dies wird mit einem iterativen Prozess gefunden (Nehmen Sie einfach ein erstes E an und sehen Sie dann, wofür Sie berechnen M , überprüfen Sie, ob es dem tatsächlich berechneten entspricht M (wahrscheinlich nicht), also senken oder erhöhen Sie Ihre Schätzung für E , und sehen Sie, ob Sie sich weiter davon entfernen M , oder nähern Sie sich ihm, bis Sie mit dem Genauigkeitsgrad von zufrieden sind M , (Was den Grad der Genauigkeit von impliziert E ).

Sobald E(t) mit ausreichender Genauigkeit bestimmt ist, wird es ersetzt durch:

r = a ( 1 ϵ c Ö s E ) finden r t .

Das ist die Bahnhöhe zum Zeitpunkt t = 0,5 s. Der Vorgang wird für eine weitere Zeit t wiederholt, indem $M(t) erneut berechnet wird.

Zusätzlich zur Höhe möchte man vielleicht auch die Position des Satelliten relativ zur Erde wissen, indem man die wahre Anomalie kennt. Um die wahre Anomalie zum Zeitpunkt t zu bestimmen, ersetzt man die iterativ gefundene E ( t ) in folgender Formel:

υ = θ = 2 a r c t a n ( 1 + ϵ 1 ϵ t a n E 2 )

Dies ist die Dokumentation des in 28:55 bis 30:16 erläuterten Verfahrens von:

.

(Ich habe kein Skript für diese {iterative Schleife des Bestimmens/Ratens geschrieben E } (noch) also nicht halbautomatisiert, im Gegensatz zur Antwort von Ansatz 4.)

Glückwunsch zu deinem Fortschritt! Es sieht so aus, als hätten Sie Ihre Bilder verloren. Auch können Sie irgendwann in Betracht ziehen, diese Antwort anstelle einer anderen zu akzeptieren, wenn Sie der Meinung sind, dass dies Ihre Frage besser beantwortet.
Ja, danke, ich muss sagen, es war ziemlich cool, die analytische iterative Lösung doch zu finden/zu verstehen. Wenn es mir gelingt, das Erraten der exzentrischen Anomalie E(t) zu automatisieren, werde ich diese Antwort akzeptieren, aber im Moment ist der geringste Aufwand die Verwendung von Lösung 4. Insbesondere mit der Konvertierung von gemessenen Datenpunkten zur Funktion mittels der enthaltenen kleinsten Quadrate.