การคำนวณ ของ สงกรานต์

ปัจจุบันปฏิทินไทยกำหนดให้เทศกาลสงกรานต์ตรงกับวันที่ 13-15 เมษายนของทุกปี และเป็นวันหยุดราชการ อย่างไรก็ตาม ประกาศสงกรานต์อย่างเป็นทางการจะคำนวณตามหลักเกณฑ์ในคัมภีร์สุริยยาตร์ ซึ่งแต่โบราณมา กำหนดให้วันแรกของเทศกาลเป็นวันที่พระอาทิตย์ย้ายออกจากราศีมีนเข้าสู่ราศีเมษ เรียกว่า "วันมหาสงกรานต์" วันถัดมาเรียกว่า "วันเนา" (ภาษาเขมร แปลว่า "อยู่ ") และวันสุดท้าย เป็นวันเปลี่ยนจุลศักราชและเริ่มใช้กาลโยคประจำปีใหม่ เรียกว่า "วันเถลิงศก"

การคำนวณวันเถลิงศกนั้น ตามคัมภีร์สุริยยาตร์[5] จะต้องมีการหาหรคุณเถลิงศก และค่าอื่น ๆ สำหรับคำนวณตำแหน่งดาวในปีนั้น ๆ เรียกว่าอัตตาเถลิงศก ทุก ๆ ปี ค่าหรคุณเถลิงศกที่คำนวณได้จะเป็นตัวเลขนับ 1 ที่วันเถลิงศก จ.ศ. 0 ซึ่งตรงกับวันอาทิตย์ที่ 25 มีนาคม พ.ศ. 1181 ตามปฏิทินเกรกอเรียน มาจนถึงปีที่ต้องการ สำหรับกระบวนการหาหรคุณเถลิงศก มีดังต่อไปนี้

  • ตั้งเกณฑ์ 292207 ลง เอาจุลศักราชปีนั้นคูณ ได้เท่าใด เอา 373 บวก แล้วเอา 800 หาร ลัพธ์ (ส่วนที่เป็นคำตอบจำนวนเต็ม) เอา 1 บวก เป็นหรคุณเถลิงศก
  • เอา 800 ตั้ง เอาเศษจากข้อก่อนมาลบ ได้ กัมมัชพลเถลิงศก

จากขั้นตอนข้างต้น อธิบายได้ว่า ในหนึ่งปีสุริยคติมีเวลาทั้งหมดคิดเป็น 292207 กัมมัช (กัมมัชคือหน่วยย่อยของเวลาในคัมภีร์สุริยยาตร์ โดยที่ 1 กัมมัช = 108 วินาที และ 800 กัมมัช = 1 วัน) ดังนั้นเวลาเป็นกัมมัชนับจากจุดเถลิงศก จ.ศ. 0 มาหาจุดเถลิงศกปีที่ต้องการ ก็หาได้โดยเอา 292207 คูณกับจุลศักราชที่ต้องการทราบ แต่เนื่องจากวันเถลิงศก จ.ศ. 0 เวลาเถลิงศกตรงกับ 11:11:24 นาฬิกา หรือคิดเป็น 373 กัมมัช นับแต่เวลา 0 นาฬิกา จึงเอา 373 บวกเข้ากับผลคูณที่หาไว้แล้ว ผลทั้งหมดที่ได้นี้มีหน่วยเป็นกัมมัช เมื่อจะแปลงเป็นวัน ก็เอา 800 หาร

จากผลที่ได้ ถ้าหารแบบสมัยใหม่โดยติดทศนิยม จะได้ว่าส่วนที่เป็นจำนวนเต็ม นับ 0 ที่วันแรกของ จ.ศ. 0 ส่วนที่เป็นทศนิยม เป็นเศษส่วนของวันนับจาก 0 นาฬิกาของวันเถลิงศกไปหาเวลาเถลิงศก แต่ในสมัยโบราณการคำนวณด้วยทศนิยมเป็นการยากลำบาก ดังนั้น ถ้าหารแบบติดเศษ แล้วเอาส่วนที่เป็นจำนวนเต็มบวก 1 ก็จะได้หรคุณเถลิงศก ส่วนที่เป็นเศษนั้นบอกถึงเวลานับแต่ 0 นาฬิกาไปหาเวลาเถลิงศกในหน่วยกัมมัช หากเอาไปหักลบออกจาก 800 ก็จะได้กัมมัชพลเถลิงศก หรือเวลาเป็นกัมมัชที่เหลือจนสิ้นวันเถลิงศก

การแปลงหรคุณเถลิงศกออกเป็นวันที่ในปฏิทิน อาศัยความรู้ที่ว่า ตามปฏิทินก่อนเกรโกเรียน (proleptic Gregorian calendar) วันที่ 25 มีนาคม พ.ศ. 1181 เวลา 00:00 น. มีค่าหรคุณจูเลียน (Julian day number) เป็น 1954167.5 จึงสามารถบวกหรคุณตามแบบสุริยยาตร์เข้ากับเกณฑ์ข้างต้นก่อนแปลงให้เป็นวันที่ต่อไป ดังนั้น หรคุณจูเลียนของวันเถลิงศกจึงหาได้ตามสูตร

JD วันเถลิงศก = [(292207* (พ.ศ.-1181) + 373)/800] + 1954167.5

สำหรับวันมหาสงกรานต์นั้น ปกติให้ใช้วิธีการคำนวณตำแหน่งที่สังเกตได้จริงของดวงอาทิตย์ว่าเข้าสู่ราศีเมษ ณ วันเวลาใด แต่วิธีการข้างต้นเสียเวลามากและต้องทำตารางขนาดใหญ่ ไม่สะดวกนัก การแก้ปัญหาทำได้โดยการประมาณ โดยถอยหรคุณเถลิงศกไป 2 วัน 3 ชั่วโมง 57 นาที 36 วินาที (2.165 วัน หรือ 1732 กัมมัช) ดังนั้น สูตรหาหรคุณจูเลียนของวันมหาสงกรานต์ (โดยประมาณ) เป็นดังนี้

JD วันมหาสงกรานต์ = [(292207* (พ.ศ.-1181) - 1359)/800] + 1954167.5

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

จากขั้นตอนโดยสรุปข้างบน และความรู้ที่ว่าหรคุณจูเลียนแปลงเป็นวันที่ได้ (และในทางกลับกันวันที่ก็แปลงเป็นหรคุณจูเลียนได้) สามารถแสดงวิธีการคำนวณวันมหาสงกรานต์และวันเถลิงศกของปีถัดไปได้ ดังนี้

วันมหาสงกรานต์
ขั้นตอนที่คำอธิบายการคำนวณ
1.หาหรคุณตามสูตรJD = [(292207 × (2564-1181) - 1359)/800] + 1954167.5= 2459318.6525

พิจารณาเศษทศนิยม 0.652 ได้ว่าเวลาอยู่ระหว่างเที่ยงคืนถึงรุ่งสาง (0.5 - 0.75) เป็นวันสุริยคติใหม่แต่เป็นวันจันทรคติเดิม วันในสัปดาห์ทางสุริยคติคิดได้ตามสูตร เศษ[JD + 1,7] ได้ผลเป็น 3 คือวันพุธ แต่ยังคงเป็นวันอังคารตามแบบจันทรคติ เศษเวลาที่ได้ต้องลบออกเสีย 0.5 แล้วแยกออกเป็นเวลา หรคุณส่วนที่เป็นจำนวนเต็มต้องเลื่อนไป 1 ก่อนคิดเป็นวันที่ในขั้นต่อไป จากเศษเวลาที่ได้คิดเวลาได้ดังนี้

  • 0.152 × 24 = 3.66 (3 นาฬิกา)
  • 0.66 × 60 = 39.6 (39 นาที)
  • 0.6 × 60 = 36 (36 วินาที)

JD = 2459319

2.หาวันที่จากหรคุณจูเลียนที่ได้
f = JD + 1401 + ปัดลง((ปัดลง((4 × JD + 274277)/146097)×3)/4) -38

f = 2459319 + 1401 + ปัดลง((ปัดลง((4*2459319 + 274277)/146097)*3)/4) -38 = 3384

e = 4 × f + 3

e = 4 × 3384 + 3 = 9842935

g = ปัดลง(เศษ(e, 1461)/4)

g = ปัดลง(เศษ(9842935, 1461)/4) = 44

h = 5 × g + 2

h = 5 × 44 + 2 = 222

D = ปัดลง((เศษ(h, 153))/5) + 1

D = ปัดลง((เศษ(222, 153))/5) + 1 = 14

M = เศษ(ปัดลง(h/153) + 2, 12) + 1

M = เศษ(ปัดลง(222/153) + 2, 12) + 1 = 4

Y = ปัดลง(e/1461) - 4716 + ปัดลง((12 + 2 - M)/12)

Y = ปัดลง(9842935/1461) - 4716 + ปัดลง((12 + 2 - 4)/12) = 2021

3.สรุปผลการคำนวณD = 14, M = 4, Y = 2021 สรุปว่า วันมหาสงกรานต์ ตรงกับวันพุธ ที่ 13 เมษายน พ.ศ. 2564 เวลา 03:39:36 น.
วันเถลิงศก
ขั้นตอนที่คำอธิบายการคำนวณ
1.หาหรคุณตามสูตรJD = [(292207 × (2564-1181) + 373)/800] + 1954167.5= 2459320.8175

พิจารณาเศษทศนิยม 0.817 ได้ว่าเวลาอยู่ระหว่างรุ่งสางถึงเที่ยง (0.75 - 0.99) เป็นวันใหม่ทั้งสุริยคติและจันทรคติ วันในสัปดาห์คิดได้ตามสูตร เศษ[JD + 1,7] ได้ผลเป็น 5 คือวันพฤหัสบดี เศษเวลาที่ได้ต้องลบออกเสีย 0.5 แล้วแยกออกเป็นเวลา หรคุณส่วนที่เป็นจำนวนเต็มต้องเลื่อนไป 1 ก่อนคิดเป็นวันที่ในขั้นต่อไป จากเศษเวลาที่ได้คิดเวลาได้ดังนี้

  • 0.317 × 24 = 7.62 (7 นาฬิกา)
  • 0.62 × 60 = 37.2 (37 นาที)
  • 0.2 × 60 = 12 (11 วินาที)

JD = 2459321

2.หาวันที่จากหรคุณจูเลียนที่ได้
f = JD + 1401 + ปัดลง((ปัดลง((4 × JD + 274277)/146097)×3)/4) -38

f = 2459321 + 1401 + ปัดลง((ปัดลง((4 × 2459321 + 274277)/146097)*3)/4) -38 = 13539

e = 4 × f + 3

e = 4 × 13539 + 3 = 9842943

g = ปัดลง(เศษ(e, 1461)/4)

g = ปัดลง(เศษ(9842943, 1461)/4) = 46

h = 5 × g + 2

h = 5 × 46 + 2 = 232

D = ปัดลง((เศษ(h, 153))/5) + 1

D = ปัดลง((เศษ(232, 153))/5) + 1 = 16

M = เศษ(ปัดลง(h/153) + 2, 12) + 1

M = เศษ(ปัดลง(232/153) + 2, 12) + 1 = 4

Y = ปัดลง(e/1461) - 4716 + ปัดลง((12 + 2 - M)/12)

Y = ปัดลง(9842943/1461) - 4716 + ปัดลง((12 + 2 - 4)/12) = 2021

3.สรุปผลการคำนวณD = 16, M = 4, Y = 2021

สรุปว่า วันเถลิงศก ตรงกับวันศุกร์ ที่ 16 เมษายน พ.ศ. 2564 เวลา 07:37:12 น.

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

ตารางวันมหาสงกรานต์และเถลิงศก

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

ตารางแสดงวันมหาสงกรานต์ (โดยประมาณ) และนางสงกรานต์ในแต่ละปี
พ.ศ.จ.ศ.วันที่เดือนเวลานามนางสงกรานต์ท่านางสงกรานต์
นาฬิกานาทีวินาที
25581377อังคาร14เมษายน142400รากษสเทวีเสด็จนั่ง
25591378พุธ13เมษายน203636มณฑาเทวีเสด็จไสยาสน์ลืมเนตร
25601379ศุกร์14เมษายน024912กิริณีเทวีเสด็จไสยาสน์หลับเนตร
25611380เสาร์14เมษายน090148มโหธรเทวีเสด็จยืน
25621381อาทิตย์14เมษายน151424ทุงษเทวีเสด็จนั่ง
25631382จันทร์13เมษายน212700โคราคเทวีเสด็จไสยาสน์ลืมเนตร
25641383พุธ14เมษายน033936รากษสเทวีเสด็จไสยาสน์หลับเนตร
25651384พฤหัสบดี14เมษายน095212กิริณีเทวีเสด็จยืน
25661385ศุกร์14เมษายน160448กิมิทาเทวีเสด็จนั่ง
25671386เสาร์13เมษายน221724มโหธรเทวีเสด็จไสยาสน์ลืมเนตร
25681387จันทร์14เมษายน043000ทุงษเทวีเสด็จไสยาสน์หลับเนตร
ตารางแสดงวันเถลิงศกในแต่ละปี[6]
พ.ศ.จ.ศ.วันที่เดือนเวลา
นาฬิกานาทีวินาที
25581377พฤหัสบดี16เมษายน182136
25591378เสาร์16เมษายน003412
25601379อาทิตย์16เมษายน064648
25611380จันทร์16เมษายน125924
25621381อังคาร16เมษายน191200
25631382พฤหัสบดี16เมษายน012436
25641383ศุกร์16เมษายน073712
25651384เสาร์16เมษายน134948
25661385อาทิตย์16เมษายน200224
25671386อังคาร16เมษายน021500
25681387พุธ16เมษายน082736

อนึ่ง วันในสัปดาห์ที่แสดงในตาราง จะยึดการเปลี่ยนวันแบบสุริยคติเป็นหลัก คือเปลี่ยนวันที่เวลา 0 นาฬิกา เพื่อความสะดวกในการตรวจสอบ แต่การกำหนดว่านางสงกรานต์องค์ใดจะเสด็จ (ดูรายละเอียดที่หัวข้อ ตำนานนางสงกรานต์) ต้องยึดการเปลี่ยนวันตามแบบจันทรคติ คือเปลี่ยนที่เวลารุ่งสาง (6 นาฬิกา) เสมอ

ตัวอย่างเช่น ปี พ.ศ. 2556 วันมหาสงกรานต์ตรงกับวันที่ 14 เมษายน เวลา 01:58:48 น. ตามสุริยคติถือว่าเข้าวันใหม่คือวันอาทิตย์แล้ว แต่เนื่องจากยังไม่ถึงรุ่งสาง ทางจันทรคติจึงถือว่ายังเป็นวันเสาร์อยู่ เพราะฉะนั้น นางสงกรานต์จึงเป็นนางมโหธรเทวี ไม่ใช่นางทุงษะเทวีแต่อย่างใด