**วันจูเลียน** (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 คือ ปี (ตามค.ศ.) เดือน และวันในเดือน ตามลำดับ

อีกวิธีหนึ่ง ให้ดำเนินการตามขั้นตอนต่อไปนี้

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

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

วันที่ 6 เดือนธันวาคม พ.ศ. 2566 หรือ ค.ศ. 2023 คำนวณได้ดังนี้
**Y** = 2023, **M** = 12, **D** = 6

#### วิธีที่ 1

* JDN = ปัดลง((1461 × (**2023** + 4800 + ปัดลง( (**12** − 14) / 12 ) )) / 4) = 2491735
* + ปัดลง( (367 × (**12** − 2 − 12 × ปัดลง( (**12** − 14) / 12) )) / 12) = + 672
* − ปัดลง( 3 × (ปัดลง ( (**2023** + 4900 + ปัดลง( (**12** − 14) / 12 ) ) / 100 ) )/4) = − 51
* + **6** − 32076 = + -32071

ดังนั้น JDN = 2460285

#### วิธีที่ 2

* **M** มากกว่าหรือเท่ากับ 3 คง **M** ไว้ตามเดิม
* **M** มากกว่าหรือเท่ากับ 3 คง **Y** ไว้ตามเดิม
* A = ปัดลง(**2023**/100) = 20
* B = 2 − A + ปัดลง(168/4) = -13
* **JDN** = ปัดลง(365.25 × (**2023** + 4716)) + ปัดลง(30.6001 × (**12**+1)) + **6** + (-13) - 1525 = 2460285

### วันที่ในปฏิทินจูเลียน

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

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

การคำนวณค่าวันจูเลียน ณ เวลาอื่นนอกเหนือจาก 12 นาฬิกา
-----------------------------------------------------

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

{\displaystyle {\begin{matrix}J\!D&=&J\!D\!N+{\frac {{\text{hour}}-12}{24}}+{\frac {\text{minute}}{1440}}+{\frac {\text{second}}{86400}}\end{matrix}}}

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

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

การคำนวณวันในสัปดาห์จากค่าวันจูเลียน
------------------------------------

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

**W1** = mod(*J* + 1, 7)

|  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- |
| **W1 (เศษการหาร)** | 0 | 1 | 2 | 3 | 4 | 5 | 6 |
| **วันในสัปดาห์** | อาทิตย์ (อา/อ) | จันทร์ (จ) | อังคาร (อ/ภ) | พุธ (พ/ว) | พฤหัสบดี (พฤ/ช) | ศุกร์ (ศ) | เสาร์ (ส) |

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

การคำนวณวันที่ในปฏิทินจูเลียนหรือเกรโกเรียนจากค่าวันจูเลียน
-----------------------------------------------------------

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

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

### ขั้นตอนวิธี

ขั้นตอนวิธีสำหรับปฏิทินเกรโกเรียน| ตัวแปร | ค่า | ตัวแปร | ค่า |
| --- | --- | --- | --- |
| *y* | 4716 | *v* | 3 |
| *j* | 1401 | *u* | 5 |
| *m* | 2 | *s* | 153 |
| *n* | 12 | *w* | 2 |
| *r* | 4 | *B* | 274277 |
| *p* | 1461 | *C* | −38 |

สำหรับปฏิทินจูเลียน:

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** แทนวันที่ ลำดับเดือน และปีตามลำดับ

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

ค่าวันจูเลียน 2460285 แปลงกลับคืนเป็นวันที่ในปฏิทินเกรโกเรียนได้ตามขั้นตอนต่อไปนี้

1. f = **2460285** + 1401 + ปัดลง((ปัดลง((4\***2460285** + 274277) / 146097)\*3) / 4) -38 = 2461699
2. e = 4 × f + 3 = 4\**2461699* + 3 = 9846799
3. g = ปัดลง(เศษ(e, 1461) / 4) = ปัดลง(เศษ(*9846799*, 1461) / 4) = 280
4. h = 5 × g + 2 = 5 × *280* + 2 = 1402
5. **D** = ปัดลง((เศษ(h, 153)) / 5) + 1 = ปัดลง((เศษ(*1402*, 153)) / 5) + 1 = 6
6. **M** = เศษ(ปัดลง(h / 153) + 2, 12) + 1 = เศษ(ปัดลง(*1402* / 153) + 2, 12) + 1 = 12
7. **Y** = ปัดลง(e / 1461) - 4716 + ปัดลง((12 + 2 - M) / 12) = ปัดลง(*9846799* / 1461) - 4716 + ปัดลง((12 + 2 - *12*) / 12) = 2023
สรุปผลการคำนวณ วันที่ 6 เดือน 12 (ธันวาคม) ค.ศ. 2023 (พ.ศ. 2566)

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

### หมายเหตุ

1. ↑  ตามคัมภีร์สุริยยาตร์และมานัต คำว่า หรคุณ หมายถึง ลำดับวันซึ่งนับจากวันที่คงตัวมาจนถึงปัจจุบัน เช่น วันที่ 24 มีนาคม พ.ศ. 1181 (วันสถาปนาจุลศักราช) โดยไม่ขาดสาย จึงอาจปรับใช้คำว่า หรคุณ ในบริบทนี้โดยถูกต้องและไม่ผิดเพี้ยน โดยเรียกว่าหรคุณจูเลียน เช่นเดียวกับการปรับคำว่า ดิถี ซึ่งเป็นวันที่ทางจันทรคติเข้ากับปรากฏการณ์ขึ้นและแรมของดวงจันทร์

### เชิงอรรถ

1. ↑  Dershowitz & Reingold 2008, 15.
2. ↑  Seidelman 2013, 15.
3. ↑  "Astronomical Almanac Online" 2016, Glossary, s.v. Julian date. Various timescales may be used with Julian date, such as Terrestrial Time (TT) or Universal Time (UT); in precise work the timescale should be specified.
4. ↑  "Resolution B1" 1997.
5. ↑  US Naval Observatory
6. ↑  McCarthy & Guinot 2013, 91–2, 2005
7. ↑  จาก *Astronomical Almanac for the year 2017* หน้า B4 ระบุว่าปี พ.ศ. 2566 ตรงกับปี 6736 6730 ของยุคจูเลียน
8. ↑  USDA c. 1963.
9. ↑  L. E. Doggett, Ch. 12, "Calendars", p. 604, in Seidelmann 1992
10. ↑  Meeus, Jean (1998). *Astronomical Algorithms*. Richmond, VA: Willman Bell. pp. 60–61.
11. ↑  L. E. Doggett, Ch. 12, "Calendars", p. 606, in Seidelmann 1992
12. ↑  Richards 2013, pp. 592, 618.
13. ↑  Richards 2013, 617–9
14. ↑  Richards 1998, 316

### บรรณานุกรม

* *Astronomical almanac for the year 2001*. (2000). U.S. Nautical Almanac Office and Her Majesty's Nautical Almanac Office. ISBN 9780117728431.
* *Astronomical almanac for the year 2017*. (2016). U.S. Naval Observatory and Her Majesty's Nautical Almanac Office. ISBN 978-0-7077-41666.
* *Astronomical Almanac Online* เก็บถาวร 2016-12-24 ที่ เวย์แบ็กแมชชีน. (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." เก็บถาวร 2020-12-03 ที่ เวย์แบ็กแมชชีน (2011). Computer Science Department, University of Texas at San Antonio.
* Dershowitz, N. & Reingold, E. M. (2008). *Calendrical Calculations* 3rd ed. Cambridge University Press. ISBN 978-0-521-70238-6.
* 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* เก็บถาวร 2007-10-06 ที่ เวย์แบ็กแมชชีน (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. ISBN 978-1-89138-985-6
* Meeus Jean. *Astronomical Algorithms* (1998), 2nd ed, ISBN 0-943396-61-1
* 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* เก็บถาวร 2020-09-28 ที่ เวย์แบ็กแมชชีน. 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, ISBN 9781107470620
* 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. ISBN 978-1-89138-985-6
* Richards, E. G. (1998). *Mapping Time: The Calendar and its History*. Oxford University Press. ISBN 978-0192862051
* 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, ISBN 0-943396-84-0.
* Winkler, M. R. (n. d.). "Modified Julian Date". US Naval Observatory. Retrieved April 24, 2015.