Julianisches Datum
aus Wikipedia, der freien Enzyklopädie
Das Julianische Datum gibt die Zeit in Tagen an, die seit dem 1. Januar −4712 12:00 Uhr TDT vergangen ist. Dem 1. Januar 2000 12:00 Uhr TDT entspricht zum Beispiel das Julianische Datum 2451545,0.
Das Julianische Datum darf nicht verwechselt werden mit einer Datumsangabe im Julianischen Kalender.
Als fortlaufende Tageszählung ist das Julianische Datum frei von Unregelmäßigkeiten wie Schalttagen, unterschiedlich langen Monaten usw., wie sie in den meisten Kalendern auftreten. Es wird daher vor allem in der Astronomie zur Beschreibung zeitabhängiger Größen verwendet, da mit ihm sehr leicht Zeitdifferenzen berechnet werden können.
Inhaltsverzeichnis |
[Bearbeiten] Astronomisches Julianisches Datum
[Bearbeiten] Eigenschaften
In der Astronomie wird das Julianische Datum als kontinuierliche Zeitzählung verwendet, die jedem beliebigen Zeitpunkt eine eindeutige Fließkommazahl zuordnet, mit der Anzahl der verflossenen Tage als ganzzahligem Anteil und dem verflossenen Tagesbruchteil in den Nachkommastellen. (Das diskrete Julianische Datum der Chronologie hingegen zählt nur ganze Tage, siehe unten.) Im internationalen Sprachgebrauch wird das Julianische Datum als „JD“ abgekürzt.
Die wissenschaftliche Zeitmessung benutzt mehrere verschiedene Zeitskalen nebeneinander, welche jeweils für bestimmte Zwecke besonders geeignet sind, z. B. Universal Time UT, Internationale Atomzeit TAI, Terrestrische Dynamische Zeit TDT, Baryzentrische Dynamische Zeit TDB usw. Auf jeder dieser Zeitskalen kann in Form eines Julianischen Datums eine kontinuierliche Zeitzählung eingeführt werden, wobei ein „Tag“ in der Regel 86400 Sekunden der betreffenden Zeitskala entspricht. Da die einzelnen Zeitskalen sich voneinander unterscheiden, sind auch die betreffenden Julianischen Daten für ein und dasselbe Ereignis verschieden. Es muss daher im Zweifelsfall angegeben werden, auf welcher Zeitskala das verwendete Julianische Datum gezählt wird, z. B. JD(UT1), JD(TDT) usw. Die IAU empfiehlt die Verwendung von Terrestrischer Dynamischer Zeit als zugrundeliegender Zeitskala, mit einem aus 86400 SI-Sekunden bestehenden Tag. Die oft anzutreffende Abkürzung JDE bezeichnet ein nach Ephemeridenzeit gezähltes Julianisches Datum, wird aber auch häufig für dessen Nachfolger JD(TDT) benutzt.
Wird ein Julianisches Datum verwendet, das auf einer ungleichförmigen Zeitskala beruht (z. B. UTC), so ist bei der Berechnung von Zeitdifferenzen gegebenenfalls eine Korrektur nötig (im Beispiel UTC: Berücksichtigung von Schaltsekunden).
Das Julianische Datum ist eine reine fortlaufende Tageszählung und weist keinerlei kalendarische Strukturen auf, wie z. B. eine Einteilung in Jahre, Monate usw. Es hat trotz der Namensähnlichkeit nichts mit dem Julianischen Kalender zu tun. Auch das englische „Julian Date“ leidet unter derselben Verwechslungsgefahr, weshalb z. B. J. Meeus als Autor einschlägiger Werke stattdessen die Bezeichnung „Julian Day Number“ oder einfach „Julian Day“ benutzt. Im Sprachgebrauch der IAU ist jedoch unter „Julian Day Number“ lediglich der ganzzahlige Teil des Julianischen Datums zu verstehen und das volle Datum nach wie vor das „Julian Date“. Im Deutschen haben sich Bezeichnungen wie „Julianische Tageszahl“ oder „Julianische Tageszählung“ ebenfalls bisher nicht durchgesetzt.
[Bearbeiten] Berechnung aus dem Kalenderdatum
Das astronomische Julianische Datum kann nach dem folgendem Algorithmus aus einem im Julianischen oder Gregorianischen Kalender gegebenen Datum berechnet werden (das Julianische Datum darf nicht negativ sein):
wenn Monat>2 dann Y = Jahr, M = Monat sonst Y = Jahr-1, M = Monat+12 D = Tag H = Stunde/24 + Minute/1440 + Sekunde/86400 wenn Gregorianischer_Kalender dann A = Int(Y/100), B = 2 - A + Int(A/4) // Gregorianisch sonst B = 0 // Julianisch JD = Int(365,25*(Y+4716)) + Int(30,6001*(M+1)) + D + H + B - 1524,5
Die Variablen Tag
, Monat
, Jahr
, Stunde
, Minute
und Sekunde
enthalten die Bestandteile des zu bearbeitenden Datums, das Ergebnis wird in JD
zurückgegeben. Die Funktion Int
schneidet die Nachkommastellen einer Zahl ab.
[Bearbeiten] Erläuterung
- Vor der eigentlichen Rechnung wird eine Umnummerierung der Monats- und Jahreszahlen vorgenommen, welche Januar und Februar als den 13. und 14. Monat des Vorjahres zählt. Ein eventueller Schalttag ist damit stets der letzte Tag des so entstandenen Jahres, und es muss für das zu behandelnde Datum nicht mehr unterschieden werden, ob es im (ursprünglichen) Jahr vor oder nach dem Schalttag liegt.
Außerdem entsteht so aus der unregelmäßigen Folge 31 28 31 30 31 30 31 31 30 31 30 31 der Monatslängen die regelmäßigere mit dem März beginnende Folge 31 30 31 30 31 31 30 31 30 31 31 28. Man beachte, dass der vor der 28 liegende Teil der Folge sich auffassen lässt als Ausschnitt aus der periodischen Folge ...30 31 31 30 31 30 31 31 30 31 30 31 31 30...
- Zunächst wird angenommen, der Julianische Kalender sei durchgehend vom 1. Januar −4712 bis in die Gegenwart verwendet worden. Die Anzahl der Tage in den seit dem Beginn des (umnummerierten) Jahres −4712 vollständig vergangenen Jahren ist
Int(365,25·(Y-(-4712)))
bzw.Int(365,25·(Y+4712))
. In dieser Formel wird durch den Nachkommateil des Faktors 365,25 automatisch der alle vier Jahre zusätzlich fällige Schalttag berücksichtigt. Sie erzeugt also fürY = -4712, -4711, -4710, -4709, -4708, ...
die korrekte Zahlenfolge0, 365, 730, 1095, 1461, ...
.
Wegen der eingangs vorgenommenen Umnummerierung der Jahreszahlen wird das Argument derInt
-Funktion für Januar und Februar des (ursprünglichen) Jahres −4712 allerdings negativ. Da dieInt
-Funktionen verschiedener Programmiersprachen auf negative Argumente unterschiedlich reagieren, wird die Formel umformuliert, um negative Argumente zu vermeiden:Int(365,25·(Y+4716)) - 1461
.
- Da das Jahr 1 v.Chr. das Jahr vor dem Jahr 1 bezeichnet wird, entsprechen die nicht positiven Jahreszahlen
Y = 0,-1,-2,...,-4712
den Jahren1,2,3,...4713
vor Christus. Für das JahrZ
v.Chr. ist umgekehrtY=1-Z
zu setzen.
- Dazu wird die Anzahl der Tage in den seit dem (umnummerierten) Jahresbeginn vollständig vergangenen Monaten addiert. Für
M = 3, 4, 5, ...
ist also die Zahlenfolge0, 31, 61, ...
zu erzeugen; sie entspricht den kumulierten Summen der zweiten oben angegebenen Folge der Monatslängen. Die 28 in jener Folge wird jedoch nie benötigt, da während des letzten Monats des umnummerierten Jahres der letzte Monat nie vollständig vergangen ist und im darauffolgenden Monat die hier zu berechnende Tagessumme wieder mit 0 beginnt (währendY
um 1 erhöht wurde). Es genügt daher, die ebenfalls oben erwähnte streng periodische Folge zu erzeugen und einen passenden Ausschnitt daraus zu wählen. Dies geschieht durch die FormelInt(30,6001·(M+1))-122
, welche fürM = 3 .. 14
die gewünschte Zahlenfolge liefert. Anstelle des Faktors30,6001
könnte in mathematischer Hinsicht der Zahlenwert30,6
verwendet werden. Rundungsfehler bei der numerischen Rechnung mit begrenzter Stellenzahl würden im Zusammenhang mit derInt
-Funktion jedoch in einigen Fällen zu fehlerhaften Ergebnissen führen. Dies wird durch die geringe Modifikation des Zahlenwerts verhindert (andere Möglichkeiten wären30,61
,30,601
etc.).
- Ist
D
das Datum des Tages, so ist die Anzahl der im betreffenden Monat bereits vollständig vergangenen TageD-1
. Dazu ist der aus der Uhrzeit berechnete bereits vergangene BruchteilH
des zu behandelnden Tages zu addieren. Ein halber Tag muss davon jedoch subtrahiert werden, da der Anfangszeitpunkt der Julianischen Tageszählung nicht wie beim heutigen Kalender auf Mitternacht liegt, sondern erst auf 12 Uhr mittags:D - 1 + H - 0,5 = D + H - 1,5
.
- Liegt das zu behandelnde Datum nach der (regional unterschiedlichen) Einführung des Gregorianischen Kalenders, so ist das bisherige Ergebnis zu korrigieren um die Anzahl
B
der Tage, um die sich Julianischer und Gregorianischer Kalender an jenem Datum unterscheiden. Der Unterschied begann am 15. Oktober 1582 mitB = -10
Tagen und wächst in allen nicht durch 400 teilbaren Hunderterjahren um-1
Tag, ist also insgesamt gegeben durchB = -10 -A + Int(A/4) + 12
bzw.B = 2 - A + Int(A/4)
, wobeiA = Int(Y/100)
.
Die Umstellung vom Julianischen auf den Gregorianischen Kalender erfolgte in zahlreichen Ländern im Jahre 1582: auf den 4. Oktober (Julianisch) folgte der 15. Oktober (Gregorianisch). Manche Länder stellten jedoch später um, in einigen Fällen erst im 20. Jahrhundert.
- Gerechnet ab Beginn des ursprünglichen, nicht umnummerierten Jahres sind für Januar und Februar −4712 zusätzliche
31+29 = 60
Tage zu zählen. Der Februar −4712 war ein Schaltmonat.
- Insgesamt ergibt sich als Anzahl der vergangenen Tage
Int(365,25·(Y+4716)) - 1461 + Int(30,6001·(M+1)) - 122 + D + H - 1,5 + B + 60 = Int(365,25·(Y+4716)) + Int(30,6001·(M+1)) + D + H + B - 1524,5
.
- Da die Zeitpunkte 4-10-1582 24:00 und 15-10-1582 00:00 zusammenfielen, haben sie dasselbe Julianische Datum (siehe Beispiele).
[Bearbeiten] Beispiele
Kalenderdatum | Julianisches Datum |
---|---|
27. Januar 333, 1200 UT (julianisch) | 1 842 713,0000 |
4. Oktober 1582, 2400 UT (julianisch) | 2 299 160,5000 |
15. Oktober 1582, 0000 UT (gregorianisch) | 2 299 160,5000 |
1. Januar 1990, 1200 UT (gregorianisch) | 2 447 893,0000 |
1. Januar 1990, 1800 UT (gregorianisch) | 2 447 893,2500 |
1. Januar 2000, 1200 UT (gregorianisch) | 2 451 545,0000 (Standardäquinoktium) |
14. Januar 2006, 1630 UT (gregorianisch) | 2 453 750,1875 |
[Bearbeiten] Berechnung des Kalenderdatums aus dem Julianischen Datum
Das Julianische bzw. Gregorianische Kalenderdatum kann nach dem folgendem Algorithmus aus einem gegebenen Julianischen Datum berechnet werden (das Julianische Datum darf nicht negativ sein). Es wird angenommen, dass bis zum 4. Oktober 1582 der Julianische Kalender und ab den 15. Oktober 1582 der Gregorianische Kalender zu verwenden ist.
Z = Int(JD + 0,5) F = Frac(JD + 0,5) wenn Z < 2299161 dann A = Z // Ergebnis Julianisch sonst g = Int((Z - 1867216,25) / 36524,25) // Ergebnis Gregorianisch A = Z + 1 + g - Int(g/4) B = A + 1524 C = Int((B-122,1) / 365,25) D = Int(365,25 * C) E = Int((B-D) / 30,6001) Tag = B - D - Int(30,6001*E) + F // Tag, inklusive Tagesbruchteil wenn E<14 dann Monat = E - 1 // Monat sonst Monat = E - 13 wenn Monat>2 dann Jahr = C - 4716 // Jahr sonst Jahr = C - 4715
Die Variable JD
enthält das zu bearbeitende Julianische Datum, die Variablen Tag
, Monat
, Jahr
die Bestandteile des resultierenden Kalenderdatums (der Tag auch den Tagesbruchteil). Die Funktion Int
schneidet die Nachkommastellen einer Zahl ab. Die Funktion Frac
liefert die Nachkommastellen einer Zahl.
[Bearbeiten] Chronologisches Julianisches Datum
Das chronologische Julianische Datum wird ebenfalls ab dem 1. Januar -4712 gezählt, aber nur in ganzzahligen Tagesschritten. Es entspricht dem astronomischen Julianischen Datum für 12h mittags.
[Bearbeiten] Berechnung
Der folgende Pseudocode berechnet aus einem Datum im gregorianischen Kalender das chronologische Julianische Datum:
y = Jahr + (Monat - 2.85) / 12 A = Int(367 * y) - 1.75 * Int(y) + Tag B = Int(A) - 0.75 * Int(y / 100) JD = Int(B) + 1721115
Die Variablen Tag
, Monat
und Jahr
enthalten die Bestandteile des zu bearbeitenden Datums, die Variablen y
, A
und B
sind Hilfsgrößen der Berechnung und das Ergebnis wird in JD
zurückgegeben. Int
steht für das Abschneiden der Nachkommastellen.
[Bearbeiten] Anmerkungen
- Die Berechnung ist stabil, wenn man beispielsweise den nichtexistenten 29. Februar 1999 eingibt, wird das gleiche Julianische Datum berechnet, wie für den 1. März 1999. Durch Rückrechnung lassen sich so Datumsangaben auf Richtigkeit prüfen.
- Ein beliebiges Datum mit einem „Nullten“ Tag des Monats (0. M. JJJJ) liefert das Julianische Tagesdatum des letzten Tages im Vormonat.
- Über den Rest der Division durch 7 des Julianischen Datums kann man den Wochentag ermitteln. Rest 0 ist Montag, Rest 1 ist Dienstag, ....
[Bearbeiten] Beispiele
Gregorianischer Kalender | Julianisches Datum |
---|---|
15. Oktober 1582 | 2 299 161 |
1. Januar 1583 | 2 299 239 |
1. Januar 1990 | 2 447 893 |
1. Januar 2000 | 2 451 545 |
[Bearbeiten] Weitere Julianische Daten
- Im Internationalen Geophysikalischen Jahr (1957/58) wurde ein modifiziertes Julianisches Datum (mJD oder MJD) eingeführt mit Nullpunkt am 17. November 1858 0:00 Uhr UT: MJD = JD - 2 400 000,5. Das MJD wird hauptsächlich in Geodäsie, Geophysik und Raumfahrt verwendet, konnte sich in der Astronomie jedoch nicht durchsetzen.
- Dubliner Julianisches Datum (DJD): Eine weitere Version eines Julianischen Datums beginnt die Zählung der Tage mit dem Beginn des Jahres 1900 (z.B. in Microsoft Excel, Lotus-123, Delphi) oder dem des Jahres 1904 (Microsoft Excel für Mac OS). Da die Zählung am 1. Januar nicht mit der Null, sondern mit dem Wert 1 beginnt, ist der korrekte Nullpunkt der Zählung der 31. Dezember 1899 0:00 Uhr. Für zusätzliche Verwirrung sorgt, dass einige Programme das Jahr 1900 fälschlicherweise als Schaltjahr ansehen und daher für Tage nach dem 28. Februar 1900 inkonsistente Daten liefern (Nullpunkt ist dann der 30. Dezember 1899 0:00 Uhr).
- Das ANSI-Datum legt den 1. Januar 1601 als Tag 1 fest. Es dient als Ursprung der Datumszählung in der Programmiersprache COBOL.
- In der EDV und im Fernmeldewesen wird als Julianisches Datum oft auch die Zahl der Tage bezeichnet, die seit dem 1. Januar eines Jahres vergangen sind (1. Januar = 0 Tage).
- Im militärischen Bereich ist das Julianische Datum eine vierstellige Zahl der Form JTTT, wobei J die letzte Ziffer des Jahres ist und TTT die Tagesnummer. Am 3. Februar 1997 wäre das Julianische Datum 7034 gewesen.
[Bearbeiten] Geschichte
Das Julianische Datum wurde 1583 von dem französischen Philologen und Geschichtsschreiber Joseph Justus Scaliger vorgeschlagen. Der Name leitet sich möglicherweise von dem damals verwendeten Julianischen Kalender ab. Andere Quellen berichten, Scaliger habe sein System nach seinem Vater Julius Caesar Scaliger benannt.
Die Zählung der Tage ist innerhalb eines Zeitraums von 7.980 Jahren, der so genannten Julianischen Periode, fortlaufend. Die Länge ergibt sich als kleinstes gemeinsames Vielfaches der Zyklen der Indiktion (15 Jahre), der Goldenen Zahl (19 Jahre) und dem Sonnenzyklus (28 Jahre, ergibt sich aus dem 4-jährigen Schaltjahrzyklus, multipliziert mit den 7 Wochentagen). Das letzte Zusammenfallen der drei Zyklen (also das letzte Mal, dass alle drei Zyklen zugleich die Jahresnummer "1" hatten) war im Jahr 4713 v. Chr.
Der britische Astronom John Herschel schlug 1849 in seinem Buch Outlines of Astronomy vor, das Scaliger'sche Schema zur Zeitmessung in der Astronomie zu verwenden. Dies beseitigte die Komplikationen, die bei der Verwendung verschiedener Kalender auftreten konnten. Er führte auch den gebrochenzahligen Anteil für die Uhrzeit ein. Der Tageswechsel erfolgt mittags, damit während der Nacht, in welcher die Astronomen beobachten, kein Datumswechsel stattfindet.
[Bearbeiten] Siehe auch
- Kalender, Zeitrechnung, Unixzeit
- Umrechnung zwischen Julianischem Datum und Gregorianischem Kalender
- Umrechnung zwischen Julianischem Datum und Julianischem Kalender
[Bearbeiten] Quellen
Berechnung des astronomischen JD: (Meeus 2000), S. 60; explizite Behandlung der Tageszeit ergänzt
Berechnung des Kalenderdatums aus dem astronomischen JD: (Meeus 2000), S. 63
- (Meeus 2000): Meeus, J.: Astronomical Algorithms, Willmann-Bell, Richmond 2000 (2nd ed., 2nd printing), ISBN 0-943396-61-1
[Bearbeiten] Weblinks
- Resolution B1 on the Use of Julian Dates Empfehlungen der IAU zum Gebrauch des Julianischen Datums (englisch)
- Julianisches Datum und andere Zeitangabe
- Umrechnung des Julianischen Datums in verschiedene Kalender