หรคุณจูเลียน

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

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

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

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

วิธีการคำนวณหรคุณจูเลียน ณ เที่ยงวัน จากวันที่แก้ไข

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

วันที่ในปฏิทินเกรโกเรียนแก้ไข

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

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

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

  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

ตัวอย่างการคำนวณแก้ไข

วันที่ 10 เดือนมิถุนายน พ.ศ. 2566 หรือ ค.ศ. 2023 คำนวณได้ดังนี้ Y = 2023, M = 06, D = 10

วิธีที่ 1แก้ไข

  • JDN = ปัดลง((1461 × (2023 + 4800 + ปัดลง( (06 − 14) / 12 ) )) / 4) = 2491735
  • + ปัดลง( (367 × (06 − 2 − 12 × ปัดลง( (06 − 14) / 12) )) / 12) = + 489
  • − ปัดลง( 3 × (ปัดลง ( (2023 + 4900 + ปัดลง( (06 − 14) / 12 ) ) / 100 ) )/4) = − 51
  • + 10 − 32076 = + -32067

ดังนั้น JDN = 2460106

วิธีที่ 2แก้ไข

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

วันที่ในปฏิทินจูเลียนแก้ไข

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

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)[12]

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

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

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

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

ตัวดำเนินการ ปัดลง(ตัวเลข) หมายถึงผลหารที่อยู่ในวงเล็บเมื่อคำนวณแล้วให้ยกเศษทศนิยมออก ตรงกับฟังก์ชัน 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 แทนวันที่ ลำดับเดือน และปีตามลำดับ

ตัวอย่างการคำนวณแก้ไข

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

1. f = 2460106 + 1401 + ปัดลง((ปัดลง((4*2460106 + 274277) / 146097)*3) / 4) -38 = 2461520
2. e = 4 × f + 3 = 4*2461520 + 3 = 9846083
3. g = ปัดลง(เศษ(e, 1461) / 4) = ปัดลง(เศษ(9846083, 1461) / 4) = 101
4. h = 5 × g + 2 = 5 × 101 + 2 = 507
5. D = ปัดลง((เศษ(h, 153)) / 5) + 1 = ปัดลง((เศษ(507, 153)) / 5) + 1 = 10
6. M = เศษ(ปัดลง(h / 153) + 2, 12) + 1 = เศษ(ปัดลง(507 / 153) + 2, 12) + 1 = 6
7. Y = ปัดลง(e / 1461) - 4716 + ปัดลง((12 + 2 - M) / 12) = ปัดลง(9846083 / 1461) - 4716 + ปัดลง((12 + 2 - 6) / 12) = 2023

สรุปผลการคำนวณ วันที่ 10 เดือน 6 (มิถุนายน) ค.ศ. 2023 (พ.ศ. 2566)

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

เชิงอรรถแก้ไข

  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

บรรณานุกรมแก้ไข