Zeit, UTC, Julianisches Datum, TLE-Epoche - wie hängen sie quantitativ zusammen?

Ich versuche, die Beziehung (quantitativ) zwischen JulianDate, UTC und der Epoche von Two Line Elements zu verstehen. Es ist ein tiefgründiges Thema, besonders wenn man die Relativitätstheorie mit einbezieht, und ein langes Thema – es gibt viel Geschichte. Aber was ich hier brauche, ist nur ein grobes Verständnis dafür, wie diese drei Dinge quantitativ auf der Erde, plus/minus in ein paar Jahren, mit Millisekunden-Genauigkeit zusammenhängen.

Ich verstehe ungefähr, dass UTC jede Sekunde um 1 Sekunde zunimmt , mit den üblichen Regeln für Stunden, Minuten, Tage, Jahre, Schaltjahre und Schaltsekunden .

Ich verstehe JulianDate nicht . Das verlinkt auf einen langen Artikel, der viele Fakten enthält, aber nach dem Lesen verstehe ich immer noch nicht, was es quantitativ ist. Wenn ich UTC gegen Julian Day ausrichte, sind sie parallel (mit Ausnahme der Schaltjahre / -sekunden von UTC)? Gibt es eine Zuordnung, die ich verstehen kann, oder muss ich ein Computerprogramm oder eine Website oder eine andere Blackbox verwenden, um zwischen den beiden zu konvertieren?

Hier sind zwei Beispiele für Situationen, in denen ich mich verloren fühle. Ich drucke zusätzliche Informationen aus, um sicherzustellen, dass ich einige Dinge verstehe - die Fragen sind fett gedruckt :

Beispiel 1 – Zeit auf meinem Computer und in Skyfield :

from skyfield.api import now, JulianDate, load
import time
def test():
    a, b =  now(), time.gmtime()   # check the times
    print a.tt_tuple()
    print time.asctime(b)
test()

(2016.0, 1.0, 31.0, 11, 45, 28.927114605903625)
Sun Jan 31 11:44:20 2016

Beide werden von der Systemzeit meines Computers abgeleitet (glaube ich!), die aktuell ist. Es gibt einen Unterschied von etwa 69 Sekunden. Was ist das?

Beispiel 2 TLE- Epoche:

from skyfield.api import now, JulianDate, load
import math

data = load('de421.bsp')
earth = data['earth']

TLE = """
1 25544U 98067A   16031.25992506  .00006019  00000-0  97324-4 0  9994
2 25544  51.6430  25.8646 0006733  62.5910  66.7566 15.54344726983528
"""

ISS = earth.satellite(TLE)

print ISS._sgp4_satellite.satnum, "  NORAD satellite number of ISS in the TLE"
print ISS._sgp4_satellite.epoch,  "  The epoch of the TLE"

frac = 0.25992506                 #  fraction of day in the epoch of the TLE"

print round((((frac*24.-6.)*60.-14.)*60.-17.)*1E+06), "  the microseconds of the epoch"

print ISS._sgp4_satellite.mo*(180./math.pi),    "  TLE Mean Anomaly - of ISS *at* epoch?"

print JulianDate(utc=(2016, 1, 31, 6, 14, 17.525184)).tt,  "  What is this number??"

Ausgang:

25544   NORAD satellite number of ISS in the TLE
2016-01-31 06:14:17.525184   The epoch of the TLE
525184.0   the microseconds of the epoch
66.7566   TLE Mean Anomaly - of ISS *at* epoch?
2457418.76071   What is this number??

Was ist die genaue Bedeutung der letzten Zahl und wie kann ich den Wert dieser Epoche in UTC umwandeln (wenn ich wollte)?

Antworten (2)

JulianDate zählt grundsätzlich die Anzahl der Tage seit dem 1. Januar 4713 v. Chr. 12:00 UTC im julianischen Kalender. Das ist allerdings etwas schwer nachzuvollziehen, da es schon so lange her ist, einen anderen Kalender verwendet und man den Übergang von BC nach AD berücksichtigen muss.

Also verwenden wir Reduced JulianDate, was ein weiterer offizieller Standard ist, bezogen auf Reduzierte JD = JD 2400000 . Dies zählt die Anzahl der Tage seit dem 16. November 1858 12:00 TT (terrestrische Zeit) im (üblichen) gregorianischen Kalender.

Dann können wir 45,5 Tage hinzufügen, um den 1. Januar 1859 00:00 UTC zu erreichen. Wir können 51499 weitere Tage hinzufügen, um den 1. Januar 2000 00:00 (Erdzeit) zu erreichen, den Beginn eines neuen 400-Jahres-Zyklus.

Wir können jetzt berechnen:

JD = 2451544.5 + 365 Y + 0,25 Y 0,01 Y + 0,0025 Y + EIN + D + 1 24 H + 1 1440 M + 1 86400 S

Wo:

  • Y ist das aktuelle gregorianische Jahr minus 2000
  • x ist die Bodenfunktion, die größte ganze Zahl kleiner als x .
  • D gibt die Nummer des aktuellen Tages an. Dies ist 1 am 1. Januar, 32 am 1. Februar usw.
  • H ist die aktuelle Stunde in Erdzeit.
  • M ist die aktuelle Minute in Erdzeit.
  • S ist die aktuelle Sekunde in der Erdzeit, einschließlich Millisekunden usw.
  • EIN ist ein Korrekturfaktor. Wenn das Jahr ein Schaltjahr ist, ist es -1, andernfalls ist es null.

Das ist nur eine Formel, die funktioniert. Es gibt viele andere Formeln, die funktionieren würden, aber ich habe mich für diese entschieden, weil sie am einfachsten zu erklären war.

Die Differenz von 69 Sekunden wird durch die Differenz zwischen Terrestrial Time und UTC verursacht, derzeit 68,184 Sekunden. Dies liegt an einer Differenz von 36 Sekunden in Schaltsekunden und einem historischen Offset von 32,184 Sekunden.

Hmm ... gib mir ein wenig Zeit, das zu verdauen. Steigt JD also immer gleichmäßig und kontinuierlich jede Sekunde um 1/86400 ? Ich schaue mir an, was der Koeffizient vor Y (365.2425) zu sein scheint, und die Anzahl der Tage zwischen beispielsweise einem Jahr und Jan 1 00:00:00 dem nächsten, das ganze Tage sein sollte (außer Schaltsekunden), und ich verstehe nicht, wie es sein kann glatt. 365366
@uhoh Bitte beachten Sie die Bodenklammern um die Teile mit Y. (Die Bodenfunktion ist die größte ganze Zahl kleiner als die Eingabe). Ja, JD erhöht sich immer sanft und kontinuierlich jede Sekunde um 1/86400, mit Ausnahme von Schaltsekunden, die in UTC existieren, aber nicht in TT.
OK, es könnte gut sein, hinzuzufügen, dass die eckigen Klammern auch in der Antwort oben []bedeuten . floor()Jetzt kann ich verstehen, dass zum Beispiel [0.01Y]der fehlende 29. Februar jedes Jahr, das in '00 endet, kompensiert wird
@uhoh Das ist richtig. Ich habe es der Antwort hinzugefügt.
Der zweite Teil über die Satellit-Two-Line-Element-Epoche – ich glaube, es ist Julian Day, aber ich bin mir nicht sicher. Wenn Sie etwas dazu sagen können, kann ich dies als beantwortet markieren (ich bin jetzt offline, kehre in 0,5D zurück) Das ist eine große Hilfe, danke!!!
OK super - danke für deine Hilfe! Ich habe die TLE-Frage separat herausgebrochen .
Die Korrektur zwischen TT und UTC ist hier aber nur auf Millisekunden genau, oder?

Ich muss oft den Skyfield-Führer zu Daten und Zeiten lesen , um alles klar zu halten, aber kurz:

  • Ein julianisches Datum ist einfach eine konkurrierende Art, Momente zu benennen, die einfacher ist als unser übliches Datum-plus-Uhrzeit-System. Normalerweise erfordert die Angabe eines Datums und einer Uhrzeit sechs verschiedene Zahlen – Jahr, Monat, Tag, Stunde, Minute und Sekunden – und der Vergleich zweier Daten erfordert eine Menge Mathematik, bei der Sie 31 Tage von einigen Monaten ausleihen, aber 30 von andere, und den Schalttag im Kopf tragen müssen, wenn die Mathematik funktionieren soll. Nicht so bei Julian Dates: Sie weisen einfach jedem Datum plus Uhrzeit in unserem Kalender eine einfache Fließkommazahl zu und sind viel einfacher zu rechnen.

  • Die Frage, ob Sie Datums- und Zeitnamen für Momente mögen oder stattdessen julianische Datumszahlen für Momente lieben, ist völlig getrennt von der Frage der Zeitskalen – die Frage, in einem bestimmten Moment, „wie spät ist es“? Ob Sie für einen bestimmten Moment den Namen „2457418.5“ oder den Namen „2016 January 31 00:00:00.0“ verwenden (die beiden sind genau äquivalent) für einen bestimmten Moment, bleibt immer noch die Frage „aber wie einigen wir uns darauf, wann dieser Moment war? ”

  • Eine Zeitskala ist ein System zur Zuordnung von Namen zu Zeitpunkten. UT1, UTC, TAI, TT und TDB haben alle eine andere Antwort auf die Frage „Was ist der beste Name für JETZT?“. Ob Sie TT als Julianisches Datum ausdrücken, weil Sie große Zahlen mögen, die das Rechnen erleichtern, oder als Datum plus Uhrzeit, weil Ihnen die großen Zahlen nicht viel bedeuten, Sie drücken einfach auf zwei verschiedene Arten die Antwort auf die aus Frage „Wie nennt TT diesen besonderen Moment?“

Sie fragen sich vielleicht, warum wir für denselben Moment so viele verschiedene Namen haben (weil es tatsächlich noch einige mehr gibt als die fünf, die ich oben genannt habe). Knapp:

UT1 – weil wir uns fragen, wo die Sonne und die Sterne über unseren Köpfen stehen.

UTC – weil wir möchten, dass unsere Nebenuhren irgendwie mit Sonnenauf- und -untergang synchronisiert werden, aber es ist schwer, allen Uhren zu erklären, dass Sekunden schneller und langsamer werden müssen, um die Sonne zu verfolgen, also lassen Sie uns stattdessen Sekunden auf einer konstanten Länge halten und Fügen Sie eine Schaltsekunde hinzu, wenn wir anfangen, zurückzufallen.

TAI – vergiss einfach die Sonne. Atomuhren brauchen Sekunden, die ohne Sprungberechnungen immer geradeaus marschieren.

TT – tolle Idee, TAI-Leute! Nur hatten Astronomen diese Idee bereits vor Jahren und hatten bereits begonnen, Berechnungen gegen eine imaginäre Uhr durchzuführen, die sich mit der Verlangsamung der Erdrotation nicht verlangsamte, also ist es am besten, dass sie eine Zeitskala parallel zur TAI beibehalten, die aber 30+ Sekunden bleibt anders, damit sie nicht alle ihre Mathematik und Tabellen neu schreiben müssen.

TDB – aber wenn Sie sich für das himmlische Uhrwerk des Sonnensystems interessieren, sind all diese anderen Uhren nutzlos! Weil jede auf der Erde basierende Uhr jedes Jahr schneller und langsamer wird, wenn die Erde beschleunigt und verlangsamt, weil: Relativität. Wenn Sie Planetenbewegungen untersuchen wollen, müssen Sie eine imaginäre Uhr verwenden, die in der Mitte des Sonnensystems stationär ist, nicht die verrückten Mickey-Mouse-Uhren, die wir auf der Erde tragen, die SOWOHL mit unserer Umlaufbahn als auch mit unserer täglichen Rotation beschleunigen.

Weitere Informationen zu diesen Konzepten finden Sie in der oben verlinkten Skyfield-Dokumentation und im USNO-Rundschreiben 179 .

Vielen Dank! Das ist sehr hilfreich und natürlich auch die Seite in der Skyfield-Dokumentation. Aber im Moment möchte ich mich nur darauf konzentrieren, die Zahlen richtig zu verwenden und nicht unbedingt das Gesamtbild zu verstehen. Natürlich will ich das, aber der Reihe nach. Ich habe die TLE-Frage separat ausgebrochen .