復活節的計算

一個來自瑞典的表，用來計算1140年至1671年的復活節日期
復活節的計算（computus，本詞即「計算」之意），是指對基督教重要節日復活節的日期算定方式，拉丁語全名為「computus paschalis」，東正教會則以「paschalion」稱之。其規則是復活節定於春分後第一次滿月之後的第一個星期日：這裡所說的「春分」是以3月21日作為固定近似值；而「第一次滿月」的日期並不完全依照實際天文現象、也不完全依照曆法，而是由教會使用特定數學公式推算。此使復活節成為教會年曆中的「moveable feast」，而有別於聖誕節等每年日期不變的「固定慶日」p=123。
基督教發展初期，各地教會對復活節的日期已有爭議，但大致依希伯來曆以猶太人的逾越節推算；為瞭解決此爭議，同時擺脫對希伯來曆的依賴，西曆325年召開的第一次尼西亞公會議決定另採機制來計算復活節的日期p=xxxvi。這套算法之所以如此複雜，是因為教會希望將復活節的日期與逾越節相連結——基督徒相信，耶穌正是在逾越節期間受難死亡並在三日後復活的。
由於歷史上數次的教會分裂，實際上復活節日期的計算，會隨著基督教各宗派採用的曆法而有所不同，東方教會主要依儒略曆、西方教會則主要依格里曆。格里曆的出現，便是因為採用儒略曆計算的春分日期愈來愈偏離3月21日，導致復活節的計算出現問題而改革制定的。

**歷史**
復活節定於何日的問題，自2世紀的初期教會就已出現。當時有兩個紀念耶穌復活的日期：以小亞細亞教會為主的東方教會，遵循耶穌的使徒的遺傳，在猶太人的逾越節、即希伯來曆尼散月十四日，紀念耶穌的受難和復活，表明逾越節羔羊預表耶穌（哥林多前書5:7）。至於以羅馬教會為代表的西方教會，就在逾越節後的星期日紀念耶穌的復活。這項分歧引致教會間很大紛爭。
後來在325年召開的第一次尼西亞公會議上，教會決定不按希伯來曆法，而按照春分月圓，自行計算出復活節日期（但是所謂「春分」是固定於西曆3月21日）。此後教會為了定出從西曆計算月亮週期的方法，不依賴於天文觀察，各地先後提出多種方法，歷時數個世紀，才定出各地教會共用的計算表冊和方法。即使以天主教會為首的西方教會陸續改採格里曆，大部分東方教會續用儒略曆，復活節的日期仍然不完全依照曆法制定。pp=xviii–xx 

**理論**
由於希伯來曆是陰陽合曆，教會捨棄依從希伯來曆的傳統時，便造出自己的陰曆取代。每29或30日合為一個陰曆月（如果包含2月29日則有31日），在3月結束的陰曆月有30日，在4月結束者有29日，如此長短相間。12個陰曆月比陽曆年短11日，兩者的差距稱為閏餘（epact），陽曆日期加上閏餘得出陰曆月的日期。閏餘每年增加11日，達到30日或以上則減去30，設一個30日的閏月。每19年的默冬週期應剛好等於235個陰曆月，閏餘應以19年為一週期，但是19年的閏餘累積為29日，於是在儒略曆中將最後一年7月1日開始的陰曆月由本來30日減去1日，又在19年中加入7個各30日的閏月，分別開始於在第2年12月3日，第5年9月2日，第8年3月6日，第10年12月4日，第13年11月2日，第16年8月2日，第19年3月5日。一年在默冬週期中的位置稱為黃金數，算式是年份除以19的餘數加1。陰曆月第14日定為形式上的望日。望日在3月21日或之後的第一個陰曆月是復活節月，復活節是此陰曆月第14日之後第一個週日。

**表列法**

**格里曆**
由於1582年格里曆改革主要原因，在於當時的復活節計算法已遠離真正的春分和滿月，在推出新曆法時也推行了新的復活節計算法。將全年365日列出，再用遞減的羅馬數字標記各日，1月1日標記為「*」（0或30），1月2日為「xxix」（29），直到「i」，然後再重複至年末，但每偶數週期只有29日，需將標記為「xxv」的日子也標為「xxiv」。最後每個30日週期中將標記為「xxv」的日子加上標記「25」，每個29日週期中將標為「xxvi」的日子加上標記「25」。然後用「A」至「G」為每日標記，一年第一個週日的字母是這年的主日字母，例如如果1月5日是星期日，這年的主日字母是「E」，但是閏年有兩個主日字母，第一個是1至2月，第二個（提前一字母）是3月以後。每個陰曆月的朔日是和閏餘相同的羅馬數字日子。然而，由於默冬週期中，相隔11年的兩個年份閏餘相差1日，如果這兩年閏餘分別是24和25，那麼這兩年的朔日都會一樣，顯得不太優美，因此黃金數大於11而閏餘是25的年份，朔日改在標記為「25」的日子。格里曆每400年減去3個閏年，但是為免影響默冬週期，因此這三年將閏餘減1以修正（solar equation，equation按古代意思解作修正差異）；不過，19個未改正的儒略年比235個朔望月略長，每310年差距累積到一日，故此每2500（格里）年中，須8次將閏餘加1以修正（lunar equation），修正在世紀年進行，每兩次修正相隔300年，但每8次修正後隔400年再開始，第一次在1800年，下一次在2100年。這兩種修正有時互相抵消，如1800年和2100年即是。格里曆改革後黃金數方法被閏餘方法取代，但可以編製出兩者關係的簡化表格，有效期由一至三個世紀不等。以下的閏餘表對1900年至2199年適用。黃金數的算法為年份除以19的餘數再加1，如2014年除以19的餘數為0，故此2014黃金數是1。
格里曆完整的5,700,000年週期復活節日期的分佈
舉例：2019年黃金數是6，閏餘是24，則標記為「xxiv」日子是朔日，3月7日和4月5日為朔日，而望日為朔日的13日後，即3月20日和4月18日。3月21日或之後的望日是4月18日。這一日之後（不包括當日）的週日是復活節。2019年的主日字母是「F」，所以4月21日是復活節。
第偶數個陰曆月只有29日，有一日需有兩個閏餘標記，而選擇移動「xxv/25」的理由可能是：在閏餘為24的年份，如果3月7日開始的陰曆月有30日，復活節月便在4月6日開始，望日在4月19日，又假設該日是週日，復活節便在下週日4月26日。但是教會規定復活節不晚於4月25日，所以4月5日便有兩個標記「xxv」「xxiv」。因此格里曆中復活節最多出現在4月19日，約3.87%，最少出現在3月22日，約0.48%。

**儒略曆**
格里曆改革前西方教會使用的方法，也是東方正教會現今使用的方法，採用未改正的默冬週期，每週期開始閏餘都是0日，因此復活節望日只可能有19個。因為儒略曆不作出像格里曆的改正，每過一千年，教會陰曆的望日日期會比實際的望日推遲三日多，故此現時約有一半東正教的復活節比西方教會晚了一週。又由於儒略曆在1900年至2099年間比格里曆落後13日，格里曆的復活節望日不時在儒略曆3月21日之前，使東正教的復活節比西方教會晚了四至五週。
各地教會從4世紀開始漸漸採用此方法，931年最後一個英格蘭修道院也採用。在採用此方法前各地用其他方法定出復活節日期，相差可以達至五週。
下表是自從931年起儒略曆的復活節望日日期：
例子：1573年的黃金數是16，查表得到復活節望日是3月21日。從星期表得到該日是週六，因此復活節是其後的週日3月22日。

**演算法**

**高斯演算法**
這個方法由以數學家高斯命名。
用Y表示年份，mod運算指整數除法的餘數（例如13 mod 5 = 3，詳細請參見同餘）。
東正教會所用的儒略曆取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，復活節應在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。

**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

**參考資料 ==