วันจูเลียน

วันจูเลียน (Julian day หรือ Julian date) บ้างเรียก จำนวนวันจูเลียน หรือ เลขวันจูเลียน (Julian day number) หมายถึง หมายเลขประจำวันซึ่งเริ่มนับเลขวัน 0 ตั้งแต่วันจันทร์ที่ 1 มกราคม ก่อนคริสต์ศักราช 4713 ปี (ค.ศ. -4712) ตามปฏิทินจูเลียน หรือวันที่ 22 พฤศจิกายน ก่อนคริสต์ศักราช 4714 ปี (ค.ศ. -4713) ตามปฏิทินก่อนเกรโกเรียน เวลา 12 นาฬิกาตรง จนถึงปัจจุบันหรือเวลาที่ต้องการ เหตุที่กำหนดให้เริ่มวันที่ดังกล่าวนั้น เป็นเพราะต้องการให้ครอบคลุมถึงเหตุการณ์ทางประวัติศาสตร์ต่าง ๆ นอกจากการที่วันที่ดังกล่าวเป็นวันเริ่มวัฏจักรสิบห้าปี (indiction) วัฏจักรสุริยะ และวัฏจักรเมตอน ค่าวันจูเลียนหากคำนวณตามสูตรจากปฏิทินต่างระบบ หากเป็นวันที่เดียวกัน จะได้เลขเดียวกันเสมอไปไม่มีผิดเพี้ยน

ค่าวันจูเลียน ณ วันเวลาใด ๆ มีค่าเท่ากับค่าวันจูเลียน ลดลงเสีย 0.5 (เพราะนับที่เที่ยงวันเป็นหลักต้องถอยไปที่เที่ยงคืน) แล้วจึงเอาเวลาเป็นทศนิยมนับแต่เริ่มวันนั้นบวกเข้า ยกตัวอย่างวันที่ 1 มกราคม พ.ศ. 2543 เวลา 0 นาฬิกา ค่าวันจูเลียนกำหนดที่ 2451544.5 และ ณ เวลา 12 นาฬิกา กำหนดที่ 2451545 อนึ่งเวลาที่ใช้นี้ ในอดีตใช้เวลามาตรฐานกรีนิชหรือเวลาปูมดาราศาสตร์ (ephemeris time) แต่ปัจจุบันแนะนำให้ใช้เวลาพื้นโลก (terrestrial time) เนื่องจากเวลามาตรฐานกรีนิชถือการหมุนรอบตัวของโลกเป็นหลักทำให้ไม่สม่ำเสมอ และบ่อยครั้งที่ต้องเติมอธิกวินาทีลงไปในเวลากรีนิชด้วย

ยุคจูเลียน เป็นช่วงเวลาทั้งสิ้น 7980 ปี นับปีแรกที่ก่อนคริสต์ศักราช 4713 ปี

ในภาษาอังกฤษมีการใช้ Julian date เรียกสิ่งอื่นด้วยนอกเหนือจากค่าวันหรือลำดับวัน อาทิ ลำดับวันในหนึ่งปีนับแต่วันที่ 1 มกราคมสำหรับใช้ในการโปรแกรมคอมพิวเตอร์ การบริหารรัฐกิจ การทหาร และอุตสาหกรรมอาหาร และวันที่ในปฏิทินจูเลียน

วิธีการคำนวณค่าวันจูเลียน ณ เที่ยงวัน จากวันที่ 
ขั้นตอนที่แสดงต่อไปนี้เป็นขั้นตอนสำหรับการคำนวณค่าวันจูเลียนจากวันที่ ปีที่ใช้ในการคำนวณให้ใช้คริสต์ศักราช (ไม่ใช่พุทธศักราช ซึ่งแปลงให้เป็นคริสต์ศักราชได้โดยเอา 543 ลบ) และให้นับอย่างนักดาราศาสตร์และโหราศาสตร์ ไม่ใช่อย่างนักประวัติศาสตร์ คือ ก่อนคริสต์ศักราช 100 ปี แบบนักประวัติศาสตร์ ตรงกับคริสต์ศักราช -99 แบบนักดาราศาสตร์ อีกนัยหนึ่งคือ ถ้ามีเอกสารสำคัญทางประวัติศาสตร์ระบุปีมา ให้ลดลง 1 แล้วใส่เครื่องหมายลบ ส่วนเดือนที่ใช้ในการคำนวณ นับ 1 ที่เดือนมกราคม นับ 2 ที่เดือนกุมภาพันธ์ ไปจนถึง 12 ที่เดือนธันวาคม

วันที่ในปฏิทินเกรโกเรียน 
ขั้นตอนวิธีต่อไปนี้ใช้ได้กับวันที่ในปฏิทินเกรโกเรียนและปฏิทินก่อนเกรโกเรียน นับแต่วันที่ 23 พฤศจิกายน ค.ศ. -4713

JDN = FLOOR(1461*(Y+4800+FLOOR((M-14)/12))/4)+FLOOR((367*(M-2-12*FLOOR((M-14)/12)  ))/12)-FLOOR(3*FLOOR((Y+4900+FLOOR((M-14)/12))/100,1)/4)+D-32077

โดยที่ FLOOR(x) คือ function ในการปัดเศษลง

Y ,M , D คือ ปี (ตามค.ศ.) เดือน และวันในเดือน ตามลำดับ

อีกวิธีหนึ่ง ให้ดำเนินการตามขั้นตอนต่อไปนี้
 ถ้าเดือนน้อยกว่าหรือเท่ากับ 2 (คือ มกราคม และกุมภาพันธ์; M <= 2) ทำขั้นตอนต่อไปนี้
 ลดปีลงเสีย 1 (Y = Y - 1)
 บวกเดือนขึ้น 12 (M = M + 12)
 คำนวณเกณฑ์ต่อไปนี้: A = ปัดลง(Y/100) 
 2 - A + ปัดลง(A/4)
 JDN = ปัดลง(365.25 × (Y + 4716)) + ปัดลง(30.6001 × (M+1)) + D + B - 1525

ตัวอย่างการคำนวณ 

วันที่  เดือน พ.ศ.  หรือ ค.ศ.  คำนวณได้ดังนี้
Y = , M = , D =

วิธีที่ 1 
 JDN = ปัดลง((1461 × ( + 4800 + ปัดลง( ( − 14) / 12 ) )) / 4)   = 
 + ปัดลง(   (367 × ( − 2 − 12 × ปัดลง(  ( − 14) / 12)    )) / 12)  = + 
 − ปัดลง(    3 × (ปัดลง   ( ( + 4900 + ปัดลง(   ( − 14) / 12   )    )      / 100  )  )/4) = − 
 +  − 32076 = + 
ดังนั้น JDN =

วิธีที่ 2 
 {{#ifexpr:<=2|M น้อยกว่าหรือเท่ากับ 2 ต้องเปลี่ยน M เป็น M + 12 = |M มากกว่าหรือเท่ากับ 3 คง M ไว้ตามเดิม}}
 {{#ifexpr:<=2|M น้อยกว่าหรือเท่ากับ 2 ต้องเปลี่ยน Y เป็น Y - 1 = |M มากกว่าหรือเท่ากับ 3 คง Y ไว้ตามเดิม}}
 A =  ปัดลง({{#ifexpr:<=2|-1|}}/100) = 
 B = 2 − A + ปัดลง({{#expr:floor({{#ifexpr:<=2|-1|}}/12)}}/4) = 
 JDN = ปัดลง(365.25 × ({{#ifexpr:<=2|-1|}} + 4716)) + ปัดลง(30.6001 × ({{#ifexpr:<=2|+12|}}+1)) +  + () - 1525 =

วันที่ในปฏิทินจูเลียน 
ขั้นตอนวิธีต่อไปนี้ใช้ได้กับวันที่ในปฏิทินจูเลียน นับแต่ ค.ศ. -4712 เป็นต้นมา

JDN = 367 × Y − (7 × (Y + 5001 + (M − 9)/7))/4 + (275 × M)/9 + D + 1729776

การคำนวณค่าวันจูเลียน ณ เวลาอื่นนอกเหนือจาก 12 นาฬิกา 
ค่าวันจูเลียนที่คิดเศษเวลา ณ เวลาอื่น ๆ นั้น คำนวณโดยใช้ใช้ความเข้าใจที่ว่า ค่าวันจูเลียนวัด ณ 12 นาฬิกา มีหน่วยเป็นวันเต็ม แต่เศษเวลาน้อยกว่า 1 วันเสมอไป ถ้าเวลาอยู่หลังเที่ยงวัน ก็ให้ทำให้เป็นเศษทศนิยมเอามาบวกกับค่าวันนั้นได้เลย แต่ถ้าเวลาอยู่ก่อนเที่ยงวัน ให้ลดค่าวันนั้นลงเสีย 0.5 แล้วเอาเศษเวลาบวก อีกวิธีหนึ่งคือใช้สูตรดังต่อไปนี้ กำหนด hour, minutes, second แทนชั่วโมง นาที วินาที ตามลำดับ จะได้

ถ้าชั่วโมงน้อยกว่า 12 สูตรจะลดค่าวันลงมา แต่ถ้าชั่วโมงมากกว่า 12 สูตรจะเพิ่มค่าวันขึ้นไป ตัวอย่างเช่น วันที่ 1 มกราคม พ.ศ. 2543 เวลา 18 นาฬิกา ตรงกับ  JD = 2451545.25

ถ้าเวลานั้นอยู่เลยเที่ยงคืนไป ให้บวก JDN ขึ้น 1 คือเปลี่ยนไปใช้วันถัดไป พจน์ hour-12 จะติดลบเอง

การคำนวณวันในสัปดาห์จากค่าวันจูเลียน 
เมื่อมีค่าวันจูเลียน ณ เวลาเที่ยงวันของวันใด จะคำนวณเป็นวันในสัปดาห์ ให้เอา 1 บวก แล้วเอา 7 หาร เศษเท่าใดพิจารณาตามตารางข้างล่าง หรือเขียนเป็นสมการคณิตศาสตร์ได้ว่า

W1 = mod(J + 1, 7)

ถ้าค่าวันนั้นติดเศษทศนิยมมากกว่า 0.5 แสดงว่าเวลาเลยเที่ยงคืนขึ้นวันใหม่แล้วให้ปัดขึ้น แต่ถ้าน้อยกว่า แสดงว่าเวลาเพิ่งเลยเที่ยงมา ให้ปัดลงก่อนการคำนวณ

การคำนวณวันที่ในปฏิทินจูเลียนหรือเกรโกเรียนจากค่าวันจูเลียน 
ขั้นตอนต่อไปนี้ใช้แปลงค่าวันจูเลียนเปํนวันที่ในปฏิทินเกรโกเรียนหรือก่อนเกรโกเรียน ใช้ได้กับค่าวัน 0 หรือมากกว่า ตัวแปรทุกตัวเป็นจำนวนเต็มทั้งหมด หากมีเศษตัดทิ้ง 

ตัวดำเนินการ ปัดลง(ตัวเลข) หมายถึงผลหารที่อยู่ในวงเล็บเมื่อคำนวณแล้วให้ยกเศษทศนิยมออก ตรงกับฟังก์ชัน floor ในภาษาโปรแกรมบางภาษา (อาทิ จาวาสคริปต์ ลูอา แมตแลบ) ส่วนตัวดำเนินการ เศษ(a,b คือการหารเอาเศษ เมื่อ a และ b แทนตัวตั้งและตัวหารตามลำดับ ตรงกับ mod หรือ fmod

ขั้นตอนวิธี 

สำหรับปฏิทินจูเลียน:
1. f =  J + j
สำหรับปฏิทินเกรโกเรียน:
1. f =  J + j + ปัดลง((ปัดลง((4 × J + B) / 146097) × 3) / 4) + C
คำนวณ f แล้ว ทำต่อดังนี้:
2. e = r × f + v
3. g = ปัดลง(เศษ(e, p) / r)
4. h = u × g + w
5. D = ปัดลง((เศษ(h, s)) / u) + 1
6. M = เศษ(ปัดลง(h / s) + m, n) + 1
7. Y = ปัดลง(e / p) - y + ปัดลง((n + m - M) / n)

กำหนดให้ D, M, และ Y แทนวันที่ ลำดับเดือน และปีตามลำดับ

ตัวอย่างการคำนวณ 
ค่าวันจูเลียน  แปลงกลับคืนเป็นวันที่ในปฏิทินเกรโกเรียนได้ตามขั้นตอนต่อไปนี้
1. f =  + 1401 + ปัดลง((ปัดลง((4* + 274277) / 146097)*3) / 4) -38 = 
2. e = 4 × f + 3 = 4* + 3 = 
3. g = ปัดลง(เศษ(e, 1461) / 4) = ปัดลง(เศษ(, 1461) / 4) = 
4. h = 5 × g + 2 = 5 ×  + 2 = 
5. D = ปัดลง((เศษ(h, 153)) / 5) + 1 = ปัดลง((เศษ(, 153)) / 5) + 1 = 
6. M = เศษ(ปัดลง(h / 153) + 2, 12) + 1 = เศษ(ปัดลง( / 153) + 2, 12) + 1 = 
7. Y = ปัดลง(e / 1461) - 4716 + ปัดลง((12 + 2 - M) / 12) = ปัดลง( / 1461) - 4716 + ปัดลง((12 + 2 - ) / 12) = 
สรุปผลการคำนวณ วันที่  เดือน  () ค.ศ.   (พ.ศ. )

อ้างอิงและหมายเหตุ

เชิงอรรถ

บรรณานุกรม 

 Astronomical almanac for the year 2001. (2000). U.S. Nautical Almanac Office and Her Majesty's Nautical Almanac Office. .
 Astronomical almanac for the year 2017. (2016). U.S. Naval Observatory and Her Majesty's Nautical Almanac Office. .
 Astronomical Almanac Online . (2016). U.S. Nautical Almanac Office and Her Majesty's Nautical Almanac Office.
Chi, A. R. (December 1979). "A Grouped Binary Time Code for Telemetry and Space Application" (NASA Technical Memorandum 80606). Retrieved from NASA Technical Reports Server April 24, 2015.
 "CS 1063 Introduction to Programming: Explanation of Julian Day Number Calculation." (2011). Computer Science Department, University of Texas at San Antonio.
 Dershowitz, N. & Reingold, E. M. (2008). Calendrical Calculations 3rd ed. Cambridge University Press.  .
 Digital Equipment Corporation. Why is Wednesday, November 17, 1858, the base time for VAX/VMS? Modified Julian Day explanation
 IBM 2004. "CEEDATE—convert Lilian date to character format". COBOL for AIX (2.0): Programming Guide.
 Information Bulletin No. 81. (January 1998). International Astronomical Union.
 Julian Date Converter  (March 20, 2013). US Naval Observatory. Retrieved September 16, 2013.
 Kempler, Steve. (2011). Day of Year Calendar. Goddard Earth Sciences Data and Information Services Center.
 McCarthy, D. & Guinot, B. (2013). Time. In S. E. Urban & P. K. Seidelmann, eds. Explanatory Supplement to the Astronomical Almanac, 3rd ed. (pp. 76–104). Mill Valley, Calif.: University Science Books. 
 Meeus Jean. Astronomical Algorithms (1998), 2nd ed, 
 Moyer, Gordon. (April 1981). "The Origin of the Julian Day System," Sky and Telescope 61 311−313.
 Noerdlinger, P. (April 1995 revised May 1996). Metadata Issues in the EOSDIS Science Data Processing Tools for Time Transformations and Geolocation . NASA Goddard Space Flight Center.
 Ohms, B. G. (1986). Computer processing of dates outside the twentieth century. IBM Systems Journal 25, 244–251. doi:10.1147/sj.252.0244
 Pallé, Pere L., Esteban, Cesar. (2014). Asteroseismology, p. 185, Cambridge University Press, 
 Ransom, D. H. Jr. (c. 1988) ASTROCLK Astronomical Clock and Celestial Tracking Program pages 69–143, "Dates and the Gregorian calendar" pages 106–111. Retrieved September 10, 2009. 
 "Resolution B1". (1997). XXIIIrd General Assembly (Kyoto, Japan). International Astronomical Union, p. 7.
 Richards, E. G. (2013). Calendars. In S. E. Urban & P. K. Seidelmann, eds. Explanatory Supplement to the Astronomical Almanac, 3rd ed. (pp. 585–624). Mill Valley, Calif.: University Science Books. 
 Richards, E. G. (1998). Mapping Time: The Calendar and its History. Oxford University Press. 
USDA. (c. 1963). Julian date calendar].
 US Naval Observatory. (2005, last updated July 2, 2011). Multiyear Interactive Computer Almanac 1800–2050 (ver. 2.2.2). Richmond VA: Willmann-Bell, .
 Winkler, M. R. (n. d.). "Modified Julian Date". US Naval Observatory. Retrieved April 24, 2015.

ปฏิทิน
กาลวิทยา
กลศาสตร์ท้องฟ้า
เวลาทางดาราศาสตร์