每年翻開月曆時,總會發現農曆和西曆的對照年年不同。可是只要多看幾年的月曆,便會發現每隔 19 年,農曆和西曆的對照便會大致相同。
在 1984 年年尾至 1985 年年初出生的朋友,最近 19 歲生日時有沒有發現自己的農曆生日和西曆生日相差甚遠呢?我們探討這個問題的原因前,必須先知道兩種曆法的計算方式。
現時為世界普遍採用的西曆,正確名稱是「儒略曆」(Gregorian calendar)。這套曆法的雛形由古羅馬凱撒大帝 (Julius Caesar) 在公元前 46 年修訂當時的曆法制定,後來再在 1576 年由羅馬教皇再修訂成現代的曆法(因為 1576 年的修訂原因和本題目無關,這裏略過不談)。因為這套曆法的根據是地球環繞太陽公轉的周期(365.2422天),所以它可被歸類為「陽曆」(solar calendar)。曆法內容如下:
1. 閏年
當年份數字是 4 的倍數時,該年則為「閏年」,否則為「平年」;但若年份為 100 的倍數而不是 400 的倍數,該年則改回「平年」。
2. 每月的日數
平年每年共分為 365 天,閏年則為 366 天,這三百幾天約略平均分成 12 個月,其中 1、3、5、7、8、10 和 12 月有 31 天,4、6、9 和 11 月有 30 天,平年的 2 月有 28 天,閏年的 2 月則有 29 天。(這種分配方法有其歷史原因,但這裏不作深究。)
簡單來說,每 400 年共有 97 個閏年,即 365 ´ 400 + 97 = 146097 天,這和 400 年共有 365.2422 ´ 400 = 146096.88 天 只差 0.12 天,誤差很小。因此,它可以準確地量度地球公轉的活動。
我們指的農曆是中國農曆,應始用於中國夏朝。商朝時農曆已有相當準確的曆法計算規則,現代的農曆大部分規則亦建基於此。農曆的計算依據比儒略曆複雜。平日我們說它是陰曆 (lunar calendar),其實是一種誤解。它既考慮地球的公轉周期,亦考慮月亮環繞地球公轉的周期,因此它被稱為「陰陽曆」(lunisolar calendar)。實際上真正的陰曆不多,其中回教曆 (Islamic calendar) 即為陰曆。[1, 2]
1. 初一的位置
計算農曆時,我們首先計算每月的初一是在哪一天。眾所周知,初一時月球亮度最小,是新月開始的日子。因此,我們會將新月開始的一天定為初一(月份序號尚未確定)1。因為月亮的盈虧周期是 29.5306 日,所以農曆每個月都是 29 或 30 日。
2. 十一月的位置
決定月份的序號前,我們應先知道節氣和「歲」的概念。
我們將地球公轉軌道分為 24 份,每份為 15 度,代表一個節氣。當地球到達進入某份的軌道時,當天便屬於該份的節氣。二十四個節氣順序為
1. 立春 | 2. 雨水 | 3. 驚蟄 | 4. 春分 | 5. 清明 | 6. 穀雨 |
7. 立夏 | 8. 小滿 | 9. 芒種 | 10. 夏至 | 11. 小暑 | 12. 大暑 |
13. 立秋 | 14. 處暑 | 15. 白露 | 16. 秋分 | 17. 寒露 | 18. 霜降 |
19. 立冬 | 20. 小雪 | 21. 大雪 | 22. 冬至 | 23. 小寒 | 24. 大寒 |
表 1:二十四節氣表
其中第偶數個的節氣(如雨水、春分、……、冬至和大寒)都稱為「中氣」。
每個「歲」是由十一月開始,翌年十一月前的一個月結束。根據規定,冬至一定要在每個「歲」的首月。因此,我們會將包含冬至的那個月定為十一月。
為甚麼人們以十一月而不是正月為計算基礎,又以冬至為算法的準則呢?首先,對位於北半球的中國來說,冬至是全年影子最長的一天2。因此,古人只需利用垂直的竹竿測影便可得知哪天是冬至。至於以十一月為計算基礎則為古代的傳統。這種曆法安排始於夏朝,幾經改動後在西漢再度採用,並沿用至今3。另外,這亦和中國農民生活習慣有關。冬至是農民開始休息的日子。從冬至至立春,人們一般都會與家人準備團年,不會耕作,讓農地休養生息。因此,冬至對農民來說是重要的時間標記。這就是計算曆法的人以冬至作為算法準則的原因。「歲」的重要性亦可從中國古代計算年齡的方法得知。中國古代的人數算年份時,往往會以歲4為數算的基礎。例如,人們計算自己的出生年份時,他們會考慮自己是在哪一「歲」出生,而不是哪一「年」出生。
3. 節氣和閏月
其他的月份序號怎樣決定呢?在此之前,我們會先決定閏月。閏月的規則如下:
1. 如果某個歲有 13 個月,則該歲為閏歲。
2. 如果某歲不是閏歲,月份則按著十一月、十二月、一月、二月、……、十月順序編號。
3. 如果某歲是閏歲,我們便要將其中一個月定為閏月。決定閏月的規則和節氣有關:一年有 12 個中氣。因此,13 個月裏必定有最少一個月沒有中氣5。閏歲中第一個沒有中氣的月份是該歲的閏月。除了閏月的月份序號和前一個月一樣外,其他月份都按著十一月、十二月、一月、二月、……、十月順序編號。
由於 19 年共有 365.2422 ´ 19 = 6936.6018 日,而 19 ´ 12 + 7 = 235 個農曆月則有 235 ´ 29.5306 = 6936.6910 日,兩者僅相差約 0.08 天。故若 19 年置 7 閏,農曆便可以頗準確地描述地球公轉的情況。這便是人們常說「十九年七閏」的原因。這亦解釋了為何農曆和儒略曆的日期對照會每 19 年便「循環」一次6[1,4]。
按著上述的周期推斷,1984/1985 年的農曆對照應該和 2003/2004 年的差不多吧。可是它們的閏月位置卻不相同。問題在哪裏呢?原來問題是在 1984/85 年,不在 2003/04 年。1984 年(甲子)有閏十月,1985 年不閏;可是 2003 年卻沒有閏年,2004 年則有閏二月。為甚麼呢?這正和那些年份是否閏歲有關。我們先看看 1984、1985、2003 和 2004 部分節氣和新月的資料[3, 5]。
1984/85 年 | 2003/04 年 | ||||
節令 | 日期及時間 | 備註 | 節令 | 日期及時間 | 備註 |
小雪 | 22/11/1984 (11:11) | 十月 | 小雪 | 23/11/2003 (01:31) | 十月 |
新月 | 23/11/1984 (06:58) | 此月沒有中氣,故這是閏十月 | 新月 | 24/11/2003 (07:00) | 此月有冬至,故這是十一月 |
大雪 | 07/12/1984 (06:24) | 大雪 | 07/12/2003 (20:55) | ||
新月 | 22/12/1984 (19:47) | 此月有冬至,故這是十一月 | 冬至 | 22/12/2003 (14:44) | |
冬至 | 22/12/1984 (23:06) | 新月 | 23/12/2003 (17:44) | 十二月 | |
小寒 | 05/01/1985 (17:33) | 小寒 | 06/01/2004 (08:04) | ||
大寒 | 20/01/1985 (10:44) | 大寒 | 21/01/2004 (01:22) | ||
新月 | 21/01/1985 (10:29) | 十二月 | 新月 | 22/01/2004 (05:06) | 一月 |
立春 | 04/02/1985 (05:15) | 立春 | 04/02/2004 (19:46) | ||
雨水 | 19/02/1985 (00:14) | 雨水 | 19/02/2004 (15:39) | ||
新月 | 20/02/1985 (02:43) | 正月 | 新月 | 20/02/2004 (17:18) | 二月 |
驚蟄 | 05/03/1985 (23:25) | 驚蟄 | 05/03/2004 (13:56) | ||
新月 | 21/03/1985 (19:59) | 二月 | 春分 | 20/03/2004 (14:52) | |
春分 | 21/03/1985 (00:21) | 新月 | 21/03/2004 (06:42) | 此月沒有中氣,故這是閏二月 | |
清明 | 05/04/1985 (04:28) | 清明 | 04/04/2004 (18:44) | ||
新月 | 20/04/1985 (13:22) | 三月 | 新月 | 19/04/2004 (21:22) | 三月 |
穀雨 | 20/04/1985 (11:34) | 穀雨 | 20/04/2004 (02:11) |
表 2:1984/85 及 2003/04 年的部分節氣及新月資料(綠色的是中氣,藍色的不是中氣)
從表 2 得知,1984 年的冬至當天剛好是新月開始,所以 1984 年 12 月 22 日開始的那個月是十一月。但 2003 年的冬至卻在新月開始前一天。因此,2003 年 12 月 23 日開始的那個月是十二月。正因這個小差別,1984 年的歲有 13 個月,是閏歲;但 2003 年的歲卻只有 12 個月,不是閏歲。因此,1984 年便有閏十月,2003 年沒有閏月。相似地,1985 年的歲有 12 個月但 2004 年的歲卻有 13 個,所以 1985 年沒有閏月,2004 年有閏二月。
這個異常的閏月情況令 1984 年 11 月 23 日至 1985 年 4 月 19 日之間出生的人的 19 歲農曆生日和儒略曆生日相差甚遠,而且這兩個生日在未來一千年都不可能重疊。以三個在 1984 和 1985 年出生的人為例子,他們幾次生日的資料如下:
儒略曆生日時的農曆對照 | 1984 年 10 月 14 日 (農曆為九月二十日) |
1985 年 3 月 14 日 (農曆為正月二十三日) |
1985 年 9 月 10 日 (農曆為七月二十六日) |
19 歲生日 | 九月十九日 | 二月二十四日 | 七月二十六日 |
38 歲生日 | 九月十九日 | 二月二十三日 | 七月二十六日 |
57 歲生日 | 九月二十日 | 二月二十三日 | 七月二十六日 |
76 歲生日 | 九月二十一日 | 二月二十三日 | 七月二十七日 |
95 歲生日 | 九月二十日 | 二月二十三日 | 七月二十七日 |
表 3:三人的儒略曆生日的農曆對照
從表 3 可見,不在上述時段出生的人在 19、38、57、76 和 95 歲的生日中總有幾次是儒略曆生日及農曆生日重疊。可是 1985 年 3 月 14 日出生的人卻一次也沒有,這就是閏月不每 19 年出現的異常情況所致。事實上,這種異常情況並不常見。上一次發生這種情況是 1889/90 年,而下一次則在 2185/86 年(1890 年和 2186 年都有閏二月)。[1]
[1] Helmer Aslaksen, The Mathematics of the Chinese Calendar, 2000
[2] Helmer Aslaksen, An Introduction to the Chinese Calendar, 2000
[3] 鄧匡哲、渡森、觀龍、黎逢華合編,標準中西對照萬年曆,玄學出版社
[4] KUAN Shau Hong and TENG Keat Huat, The Chinese Calendar of The Later Han Period,1999