現代世界大部分國家的日曆與季節周期保持同步,這歸功於「閏年」這個曆法系統。今年就是閏年,因為 2 月 29 日,是個閏日。簡單說,2020 年是普通閏年。這個公曆年份恰好是 4 的倍數,並且不是 100 的倍數。這就是普通閏年。還有一種世紀閏年,其規定為,公曆的年份恰好是整百的倍數,且必須是400的倍數。這就很清楚了,2000 年是世紀閏年,1800 就不是世紀閏年。所以有個法則叫「四年一閏;百年不閏,四百年再閏」。
中國人常說閏月,但很少說閏年。那是因為,閏年這個概念是外國人提出來的。中國以前的曆法稱為農曆,是沒有閏年之說的,只有閏月。二者毫無關聯。清晰的對標如下:
公曆——閏年;
農曆——閏月。
其實不管公曆、農曆,閏年、閏月,設置「閏」的原因大體相似,都是為了解決曆法跟大自然時間表難以同步,為人類時間帶來混亂的問題。這兩個問題我們一一解決。
先說為什麼有閏年
我們知道公曆是按照地球繞太陽的周期來計算時間的,地球繞太陽一圈的時間為365.24219天,稱為一回歸年。但因為曆法的計算,不是這麼計算的,曆法年的算法的基礎單位是日,小數點後面的那5小時48分46秒不在此單位之中。所以,公曆的平年是只有 365 天的。也就是人們常說的一年 365 個日子,不可能說成一年 365 個日子零 5 個小時 46 秒。
所以,公曆所稱的「年」,跟「回歸年」比起來,每一年都少了0.24219天。我們按照約數算,這就約等於 0.25 天,那麼每過四年,恰好就是跟四個回歸年相差 1 天(0.25×4=1)。如此長期累積下去,曆法中一年的天數就跟回歸年的天數相差太多,導致混亂。比如,再過 400 年,那麼二者之間相差一百天的時間。100 天是三個月多呢,直接是一個 季度,在人們的時間觀念中,季節就完全亂了。
這問題困擾了人們很久。公曆是從羅馬人那裡改編過來的,已經比較精確,但是依然每年多算出來 0.0078 天。從公元前46年,到16世紀,十幾個世紀以來,人們一直在嘗試讓日曆與自然年同步,可惜事與願違,反而引發了很多混亂。
前面說過,太陽年大約是365.24219天,這種精確到小數點後面好幾位的時間單位,根本沒有任何一個日曆能跟這個天數完全匹配。但有不能忽略小數點後面這些數字,忽略了就出大問題。
所以,在 16 世紀,教皇格列高利十三世做了一個舉動——因為從公元前 46 年到 16 世紀,公曆年已經比太陽年多出 10 天了。格列高利便規定將1582年10月5日為10月15日。
這是個人為的舉動,直接給曆法上填了 10 天,以便追上太陽年的天數。此後,這位教皇做出了規定,就是閏年的規定。前文已述。邏輯很簡單,根據羅馬曆法改來的公曆,比回歸年跑得快(二者每年相差 0.0078 天),那麼,每過 4 年因為閏年的調整,會出現1 天的偏差。如果只按照每四年一個閏年來算,平均每年會多出 0.0078 天,那麼 400 年後,二者大約相差 3 天。所以,每 400 年要減去三個閏年。
這個計算,是非常精確的。格里高利曆系統通過偶爾減少閏日的方法,讓太陽年和閏年日曆的小數部分幾乎相等。而且也很簡單,沒人記得上一個被略過的閏日,但每400年減去3個閏日,這個就非常好算了,可以讓日曆變得準確。
所以,此後世界上大部分國家都採用格里高利曆和閏年系統。目的:
使日曆與季節周期保持同步。
一舉結束了此前的「混亂之年」的局面。大自然的時間表跟人類的時間表本來就很難完美匹配。人類再能計算,都無法完全跟不上大自然的這種精準而又「尷尬」的步子。
但這還是有問題。因為在格里高利曆系統裡,一年平均365.2425天,比太陽年長半分鐘。那麼,3300 年後,格里高利曆將與實際的季節周期相差1天。這種累積別看小,在很久以後,後世可能需要減少一個閏年才能打平,而不是減少一個閏日那麼簡單了。
實際上,大自然時間並非只給外國人或者教皇製造混亂,它對全世界的人一樣。
所以,中國人有閏月來解決這個問題。出發點跟教皇格裡高利的初衷完全是一樣的。只不過公曆和農曆有區別,一個採取閏年,一個採取閏月來解決。
農曆閏月的問題
農曆是中國的傳統曆法。有人把農曆叫陰曆,這是不對的。
因為農曆實際上是陰陽曆。
簡單來說,陽曆是以太陽變化為參考的;陰曆是以月相變化周期為參考的。
這兩者有很大的區別的。什麼叫月相變化周期呢?
提提古文就會明白,蘇東坡的名篇《赤壁賦》第一句就是「七月既望」。中國古代曆法裡的月相變化周期就是朔望月變化一個輪迴,就是一個月。朔望月,也叫「太陰月」,月球繞地球公轉相對於太陽的平均周期,就是一個朔望月。這是一個平均數。不是精確數。
中國古人非常聰明,觀察太陽費勁,比如刺眼,很難觀察,所以他們是觀察月亮變化的,完全見不到月亮的那一天,就是朔日,這一天就是陰曆的每月初一。月亮最圓的一天叫「望日」,這個日期一般是陰曆的每月十五或者十六,因為十五的月亮十六圓嘛。所以,蘇東坡「七月既望」的意思就是,七月十五或者七月十六這一天,月亮最圓的那一天。
從朔到望,是前半月;從望到朔,是後半月;從朔到望再到朔就是陰曆的一個月。
但朔望月的天數是 29天 12 小時44 分 3 秒。
這個時間我們知道,是跟地球繞太陽自轉的回歸年有很大差別的,因為沒考慮地球和太陽的問題嘛,很容易出現時間混亂。
如果我們讀古書,遇見什麼六月飛雪之類的問題,並非天象異常,而是曆法的問題。《春秋》《左傳》這些書裡說幾月幾月,根本跟我們現在所說的幾月幾月不一樣,比如《左傳》說「二年六月」,那絕對不是我們現在理解的六月。而且那時期的曆法五花八門,各國曆法並不同意。漢武帝之前,主流的曆法,實際上是以「十月」為每一年的第一個月的。《史記·高祖本紀》中便有這種記載。
那時的時間是比較混亂的。
所以,中國的古人在陰曆的基礎上,加入一種叫幹支歷的東西,也就是我們常說的二十四節氣,把其他自然變化的現象加進來作為參考。這種自然變化,是受太陽影響的,所以,這是參考了回歸年的精確長度的。
這兩個合起來,才叫農曆。農曆是陰陽曆合在一起的。這已經是漢代,主要是漢武帝時期做出的改變,所以,農曆也叫漢歷,但絕不能是陰曆。
但這還是有問題。
因為陰曆的天數本來就比陽曆的天數少。它是參考月亮的運動規律的,月球運行的軌道,叫「白道」,白道與黃道都是天體上的兩大圓,以五度九分而斜交,月球繞地球一周,出沒於黃道者兩次,歷二十七日七小時四十三分十一秒半,是月球公轉一周所需的時間。這種叫「恆星月」。
這就是為什麼中國人有「黃道吉日」之類的說法。
但當月球繞地球轉的時候,地球也在公轉呀,位置會發生變化的,一個月之中會前進二十七度多,月球每天是行十三度十五分。月球運行速度的兩倍就是二十七度了。這個就叫月球自合朔(月圓)。全球繞地球一周,還能到合朔位置,需要 29 天 12 小時 44 分 2 秒 8。這個叫「朔望月」,也就是俗稱的一個月。
這跟回歸年的時間相差還是蠻大的。公曆除了閏年的 2 月為 29 天,平常 28 天之外,其餘的月份都是 30 天或 31 天 。
這種差距累積下來,季節就完全亂了。陰曆反映潮汐現象比較準確,但反應季節變化就不準確了。尤其陰曆每年只有 354天或者355天,跟回歸年天數相差 11 天。三年後,累積起來,就相差超過一個月了,十年後,六月飛雪完全有可能。
所以,為了避免這種時間混亂,農曆加上了閏月法則。每2至3年增加的一個月,這就協調了回歸年與漢歷年的矛盾。當然,這個 算法還是比較複雜的。以朔望月長度29.5306日為基礎,大月為30日,小月為29日。每月初一必須是朔日,所以大小月的安排不固定,農曆中連續兩個月是大月或是小月的事是常有的,比如1990年三、四月是小月,九、十、十一、十二連續四個月是大月。
所以,無論是公曆的閏年,還是農曆的閏月,都是為了避免時間混亂,而尋求 與大自然的時間表同步的方法。
實際上曆法一直是變化的
因為月亮比較容易觀察,月有陰晴圓缺,一望而知。所以,世界上的文明古國,最初都是採用陰曆的,埃及、巴比倫、印度、希臘、羅馬和中國,都是如此。但後面出現了很多變化。
西方採取了羅馬人的一種陽曆法則,發展為公曆。愷撒與埃及豔后克利奧帕特拉的韻事盡人皆知,但那時羅馬的陰曆已經和實際季節差了大約三個月,雖然羅馬人不定期地增加天數或月份,試圖彌補。愷撒大帝甚至參考了埃及一年365天的曆法。早在公元前3世紀,埃及人就制定了有效的閏年系統,每四年修正一次。愷撒大帝覺得這個系統不錯,於是下令加入一個長達445天的「混亂之年」(公元前46年),以糾正多年累積的誤差。但這個計算不準確,前文敘述過,從公元前 46 年到 16 世紀,相差了10 天,這才有格裡高利的重修曆法,添置閏年規則。
中國則陰陽合曆,使用農曆。那是漢代的事情了。
也有些不變的,比如伊斯蘭曆,就是純太陰曆,一年只有354天。伊斯蘭曆也講究月亮圓缺的變化,也就是中國的朔望月。月亮圓了缺,缺了圓,重複十二次,就是一年。這個每年比格里高利曆少11天,有時會加入一個閏日。同時以30年為一個周期,每一周期的第2、5、7、10、13、16、18、21、24、26、29年,共11年為閏年,另19年為平年,平均每年為354日8小時48分,陽曆年平均天數為365日5小時49分,比陽曆少10日21小時1分。
這樣一來,每2.7個陽曆年,伊斯蘭曆就少1個月,每32.6個陽曆年,伊斯蘭曆就少1年。這就有點亂了。但他們對晝夜的計算跟別的曆法不一樣,伊斯蘭曆中,日落為一天的開始,到次日日落,就是一天。
所以我們常見到伊斯蘭的齋月和朝覲日期似乎經常在變化,去年是在七月(公曆),今年又可能就是在六月(公曆)。實際上齋月和朝覲日是固定的。