2014年4月16日 星期三

復活節日子計算法


快到復活節了,在香港復活節會有三天假期,包括「耶穌受難節、耶穌受難節翌日、復活節」。因為跟香港農曆新年假期天數是一樣,但香港人農曆新年一般都會選擇在香港或出外探親。所以要去旅行的話,多數是選在復活節。

復活節是紀念耶穌為世人釘十字架受難,三天後復活的日子,相信大家知道。但大家有沒有發現,每年的復活節日期差異可以很大,由3月去到4月都有機會是復活節?其實這是因為復活節計算方法有很多種,而香港跟隨的西羅馬教會傳統計算法,需要計算陽曆及陰曆,所以每年復活節日期都有差異!

復活節傳統計算法

復活節的計算方式分為西羅馬教會的傳統和希臘東正教會的傳統。前者是西羅馬教會為要破除迷信,在主後325年尼西亞會議上通過以紀念基督復活的「復活節」(Easter),取代那慶祝Eostre女神的春節,並訂於每年的春分或春分後第一個月圓後的第一個星期日舉行的傳統。後者是希臘東正教會採納來自猶太人的逾越節(Pascha)傳統,那是猶太人在猶太曆正月十四日晚上慶祝的節日,以紀念耶和華領他們祖先離開埃及為奴之家時讓他們避過殺長子的災禍。現時歐美和香港都跟隨西羅馬教會的傳統,採用那綜合陽曆和陰曆計算方式的復活節日作慶祝基督耶穌的復活,並以復活節前的星期五為耶穌受難節。每年復活節日期都不同,是因為復活節的計算要以陽曆的「春分」日(一般是陽曆3月21日)為起點,再參看陰曆的「月圓」日(一般是陰曆的15日)而決定。

春分與月圓

陽曆的一年是根據地球環繞太陽公轉一周所需的365日約數而定(每4年要有1閏年,在2月加上第29日以補回約數的差別)。由於地球的自轉軸和環繞太陽的公轉軸是有傾斜的,所以當地球環繞太陽公轉時,地球面向太陽的角度每天不同,因而每天白晝的長度和黑夜的長度也有差別。每年4月至9月的北半球,會「日長夜短」;而10月至翌年的3月卻「日短夜長」。在這變化過程裡,日照時間最長的那一天稱為「夏至」(通常是6月21日),而日照時間最短的那一天稱為「冬至」(通常是12月22日)。在這兩個轉換之間,每年有兩天的白晝和黑夜的長度剛好相等,天文學稱為「春分」(約於3月21日)和「秋分」(約於9月23日)。

由於當年教會決定以復活節取代那迷信Eostre女神於「春分」舉行的春節,所以復活節的舉行便以每年的3月21日為第一個基準日。又因為耶穌受難釘十字架是在猶太人的逾越節日發生的,而逾越節是在猶太曆(陰曆)正月十四日黃昏開始舉行,極接近月圓日,而耶穌的復活是在其後的星期日,所以早年教會便把復活節定於春分後首個月圓日後的首個星期日舉行。這樣,如果某年的3月21日剛是月圓日,又是星期六,復活節便會在3月22日舉行了。但如果月圓日是在春分的前一天(3月20日)的話,30日後才再有月圓(4月19日),如剛巧當年4月19日又是星期日,復活節便要在4月26日舉行了。因此,每年的復活節便會在介乎3月22日至4月26日之間舉行。


復活節計算(學術篇)

一. 高斯演算法

這個方法由以數學家高斯命名。

用Y表示年份,mod運算指整數除法的餘數。

東正教會所用的儒略曆取M=15,N=6,西方教會所用的公曆的取法參見下列資料:


 年份      M   N
1583-1699  22   2
1700-1799  23   3
1800-1899  23   4
1900-2099  24   5
2100-2199  24   6
2200-2299  25   0

a = Y mod 19
b = Y mod 4
c = Y mod 7
d = (19a + M) mod 30
e = (2b + 4c + 6d + N) mod 7
若d+e < 10則復活節在3月(d+e+22)日,反則在4月(d+e-9)日,除了兩個特殊情況:

若公式算出的日期是4月26日,復活節在4月19日;
若公式算出的日期是4月25日,同時d=28、e=6和a>10,復活節應在4月18日。


二. Meeus/Jones/Butcher演算法(公曆)

Jean Meeus在他的書《天文演算法》(Astronomical Algorithms,1991年)記載了這個計算公曆中的復活節日期的方法,並指這個方法是來自Spencer Jones的書《一般天文學》(General Astronomy,1922年)和《英國天文學會期刊》(Journal of the Brithish Astronomical Association,1977年),後者指方法是來自Butcher's Ecclesiastical Calendar(1876年)。

這個方法的優點是不用任何錶也沒有例外的情況。注意這裡用的是整數除法,7/2=3非3.5。

a = Y mod 19
b = Y / 100
c = Y mod 100
d = b / 4
e = b mod 4
f = (b + 8) / 25
g = (b - f + 1) / 3
h = (19 * a + b - d - g + 15) mod 30
i = c / 4
k = c mod 4
L = (32 + 2 * e + 2 * i - h - k) mod 7
m = (a + 11 * h + 22 * L) / 451
month = (h + L - 7 * m + 114) / 31
day = ((h + L - 7 * m + 114) mod 31) + 1

以2000年去計算得出來的結果,復活節是在2000年4月23日


三. Meeus演算法(儒略曆)

在《天文演算法》,使用了以下公式計算儒略曆中的復活節日期:(注意這裡用的是整數除法,7/2=3非3.5。)

a = Y mod 4
b = Y mod 7
c = Y mod 19
d = (19*c + 15) mod 30
e = (2*a + 4*b - d + 34) mod 7
月 = (d+e+114) / 31
日 = ((d+e+114) mod 31) + 1


萊利:復活節的計算方法眾多,而香港跟隨的西羅馬教會傳統計算法,需要計算陽曆及陰曆,所以每年復活節日期都有差異!

資料來源:

維基百科、EZONE、設計素材網、各知識分享網
________________________________________________

非一般的知識 非一般的見識

FaceBook搜尋:萊利非常識

www.facebook.com/roycommonsense

沒有留言:

張貼留言