Jūlija dienas skaitlis (JDN) un Jūlija datums (JD) — definīcija un aprēķins
Pilnīgs ceļvedis Jūlija dienas skaitlim (JDN) un Jūlija datumam (JD) — definīcija, aprēķina formulas, praktiski piemēri un datumu konversijas starp kalendāriem.
Jūlija diena jeb Jūlija dienas skaitlis (JDN) ir dienu skaits, kas pagājis kopš sākotnējā laikmeta, kas pēc Jūlija kalendāra definēts pusdienlaikā pēc universālā laika (UT) 4713. gada 1. janvārī p.m.ē. (pēc Jūlija kalendāra). Jūlija dienas skaitlis ir veselais skaitlis, kas katrai dienai piešķir vienu vērtību; katra Jūlija diena tiek skaitīta no pusdienlaika līdz nākamās dienas pusdienlaikam, tādēļ JDN mainās pulksten 12:00 UT. JDN 0 atbilst šim sākotnējam laikam un dienai.
Jūlija datums (JD) — definīcija un interpretācija
Jūlija datums (JD) ir nepārtraukts dienu un dienas daļu skaits, kas pagājušas kopš tās pašas sākotnējās epohas. JD var saturēt arī daļskaitliskās vērtības — integrālā daļa ir Jūlija dienas skaitlis (JDN), bet daļskaitlis norāda laiku kopš UT pusdienlaika kā vienas dienas decimāldaļu. Piemēram, daļskaitlis 0,5 nozīmē UT pusnakti (12 stundas pēc JD sākuma), bet 0,25 nozīmē pulksten 18:00 UT.
Parasti ierastos skaitļošanas rīkus — piemēram, 64 bitu mainīgo ar peldošu komatu (dubultā precizitāte) — pietiek, lai JD attēlotu laiku ar aptuveni 1 milisekundes precizitāti, ja nav nepieciešama daudz lielāka precizitāte. JD integrālā daļa (apaļota uz leju) dod JDN, bet daļskaitlis dod dienas laiku.
Laika daļu interpretācija — decimālfrakcijas
Džūlija datuma decimāldaļas atbilst stundām, minūtēm un sekundēm šādi (viena diena = 24 stundas = 1440 minūtes = 86 400 sekundes):
- 0,1 = 2,4 stundas = 144 minūtes = 8 640 sekundes
- 0,01 = 0,24 stundas = 14,4 minūtes = 864 sekundes
- 0,001 = 0,024 stundas = 1,44 minūtes = 86,4 sekundes
- 0,0001 = 0,0024 stundas = 0,144 minūtes = 8,64 sekundes
- 0,00001 = 0,00024 stundas = 0,0144 minūtes = 0,864 sekundes
Nedēļas diena no JDN
JDN atlikums, dalīts ar 7 (t. i., JDN mod 7), dod nedēļas dienu kā veselu skaitli, ja pieņem, ka 0 attiecina uz pirmdienu. Tātad:
- 0 = pirmdiena
- 1 = otrdiena
- 2 = trešdiena
- 3 = ceturtdiena
- 4 = piektdiena
- 5 = sestdiena
- 6 = svētdiena
Aprēķins — kā iegūt JDN un JD no kalendāra datuma
Bieži lietotā un precīzā formula (Gregoŗiāna kalendāra datumiem) ir šāda:
a = floor((14 − mēnesis) / 12)
y = gads + 4800 − a
m = mēnesis + 12·a − 3
JDN = diena + floor((153·m + 2)/5) + 365·y + floor(y/4) − floor(y/100) + floor(y/400) − 32045
Ja datums ir pēc Jūlija kalendāra (pirms Gregorijas reformas vai ja izmanto proleptisku Jūlija kalendāru), jālieto Jūlija versija bez 100/400 korekcijas:
JDN = diena + floor((153·m + 2)/5) + 365·y + floor(y/4) − 32083
Pēc JDN iegūšanas JD pulksteņa laiku var pievienot kā dienas daļu:
JD = JDN + (stundas − 12)/24 + minūtes/1440 + sekundes/86400
Šeit atcerieties, ka JD un JDN sākas pulksten 12:00 UT (tāpēc atņemam 12 stundas, ja laiku norāda pēc pulksten 0:00 UT).
Piemēri
Jau esošais piemērs tekstā: Jūlija datums 2454115.05486 nozīmē, ka ir svētdiena, 2007. gada 14. janvāris, pulksten 13:18:59.9 (apmēram). Šeit integrālā daļa 2454115 ir JDN, bet 0,05486 ir dienas daļa, kas pārveidota stundās un sekundēs dod norādīto laiku.
Vēsture, lietojums un priekšrocības
Kopš sākotnējā laikmeta ir pagājuši gandrīz 2,5 miljoni Jūlija dienu. Piemēram, JDN 2 400 000 atbilst 1858. gada 16. novembrim, un JD 2 500 000.0 iestāsies 2132. gada 31. augustā pusdienlaikā UT. (Šie skaitļi parāda tikai etalonlaikus — konkrētas konversijas var prasīt precīzus aprēķinus).
Jūlija dienas skaitli var uzskatīt par vienkāršu kalendāru, kurā kalendāra datums ir tikai vesels skaitlis. Tas ir ļoti noderīgs atsaucei, aprēķiniem un konversijām starp dažādiem kalendāriem, jo laiku starp diviem datumiem iegūst ar vienkāršu atņemšanu. Jūlija dienu sistēmu ieviesa astronomi, lai izveidotu vienotu datumu sistēmu darbam ar dažādiem kalendāriem un vēsturiskajām hronoloģijām. Izņemot nulles punkta un nosaukuma izvēli, šī Jūlija diena un Jūlija datums nav tieši saistīti ar Jūlija kalendāru; jebkuru datumu var konvertēt no viena kalendāra uz otru, izmantojot JDN kā starpnieku.
Praktiskie padomi
- Rēķinot programmatūrā, labi apdomājiet, vai izmantojat Gregorija vai Jūlija kalendāru attiecīgajam datumam (sevišķi vēsturiskos datumos).
- Ja nepieciešama augsta precizitāte (lielāka par milisekundi), izmantojiet iebūvētas datuma/laika bibliotēkas vai plašākas precizitātes skaitļus (piem., vairākas zīmes aiz komata).
- Atcerieties, ka JD sākas pulksten 12:00 UT; daudzas cilvēku datu un sistēmu konvencijas sākas pusnaktī, tādēļ nepieciešama atbilstoša pārvērtēšana.
Jautājumi un atbildes
J: Kas ir Jūlija diena jeb Jūlija dienas numurs (JDN)?
A: Jūlija diena jeb Jūlija dienas skaitlis (JDN) ir dienu skaits, kas pagājušas kopš sākotnējā laikmeta, kas pēc Jūlija kalendāra definēts pirmdienas pusdienlaikā pēc universālā laika (UT) 4713. gada 1. janvārī pirms mūsu ēras.
J: Kā JDN var izmantot, lai noteiktu nedēļas dienu?
A: Visi JDN, kas ir vienādi dalāmi ar 7, ir pirmdienas. Var izmantot arī negatīvas vērtības, taču tās ir senāk reģistrētas. Piemēram, tagad, 2022. gada 10. novembrī, ceturtdien, plkst. 15:38 (UTC) JDN ir 2459894 (atjauninājums). Ja šo JDN dala ar 7, atlikums ir 3, kas ir nedēļas dienas veselskaitliska izteiksme, kurā 0 ir pirmdiena.
J: Kas ir Jūlija datums?
A: Jūlija datums (JD) ir nepārtraukts dienu un daļu skaits, kas pagājušas kopš vienas un tās pašas sākotnējās epohas. Pašlaik JD ir 2459894.1513889. Integrālā daļa (tās apakšdaļa) norāda Juliāna dienas skaitli, bet frakcionālā daļa norāda diennakts laiku kopš UT pusdienlaika kā vienas dienas vai frakcionālās dienas decimāldaļu, kur 0,5 ir UT pusnakts.
Jautājums: Cik precīzi 64 bitu mainīgais ar peldošo komata skaitli var attēlot laikmetu, kas izteikts kā Jūlija diena?
A: 64 bitu mainīgais ar peldošo komatsverti parasti var attēlot laikmetu, kas izteikts kā Jūlija datums, ar aptuveni 1 milisekundes precizitāti.
J: Ko nozīmē, kad mēs sakām "Jūlija datuma decimāldaļas"?
A: Julian datuma decimāldaļas norāda, cik daudz laika ir pagājis kopš UT pusdienlaika jebkurā konkrētā datumā, kas izteikts kā daļskaitļi, piemēram, 0,1 = 2,4 stundas jeb 144 minūtes jeb 8640 sekundes; 0,01 = 0,24 stundas jeb 14,4 minūtes jeb 864 sekundes; 0,001 = 0
Meklēt