今天農歷是幾號,相信很多人不查日歷是不知道的。時至今日,對于遠離農耕的大多數中國人來說,農歷的意義可能更多的在于清明、端午、中秋和春節的假期是什么時候。而對于農歷究竟是個什么樣的歷法,為什么大月三十天小月二十九天,哪個月大哪個月小,為什么有閏月,為什么說“十年碰不上個閏臘月”,農歷如何置閏,二十四節氣又是什么,為什么有時候說“立了春就是新的一年了”等等,相信大多數人都不是全部很清楚。之前雖然樓主也有過疑問,但卻也從未深究過,直到不久前無意翻查資料,才發現農歷原來如此牛逼。 一、公歷是什么 說農歷就不得不先說一下公歷,說到公歷其實是有一堆規則要介紹的,但因為這些規則大家都太熟悉了,沒必要再廢話,所以這里就大概說一下公歷的起源吧。現行的公歷又稱《格里高歷》,是意大利一個名叫利里烏斯(Lilius)的哲學家在原歷法上進行改良,經由羅馬教皇格里高(Gregorius)在1582年(明神宗萬歷十年)正式頒行的一套歷法。而其在國內正式開始使用,則是在1912年辛亥革命之后。但辛亥革命后紀年仍采用民國紀年,1949年新中國成立后改為公元紀年,全面與世界接軌。 說起《格里高歷》這套歷法,則不得不提及它的前身《儒略歷》。《儒略歷》是由一位名索西琴尼的古希臘天文學家經過計算得出,并由古羅馬皇帝(實為獨裁者)儒略·凱撒(Julius Caesar,即著名的凱撒大帝,《舊約》中有“上帝的歸上帝,凱撒的歸凱撒。”即指這位凱撒大帝。)自公元前46年(西漢初元三年,漢元帝劉奭在位,即讓昭君出塞的那位親。)起頒行的一套歷法。這套歷法最初是規定一年共12個月,單月31天,雙月30天,2月平年29天,閏年30天,逢4年一閏。因為凱撒同學是7月生的,所以7月就以凱撒為名(拉丁文Julius,即現在英文的July)。凱撒死后,他的繼承人蓋烏斯·屋大維統一了羅馬帝國,受封“奧古斯都(Augustus)”,并自稱“第一公民”(實際上這些后來都成為皇帝的頭銜)。而“奧古斯都”死后,羅馬元老院為紀念其功績,將其列入“神”的行列,并將其逝世的8月改為“奧古斯都”(拉丁文Augustus,即現在英文的August)月。為了使其與凱撒等同,又在2月里抽了1天,將8月改成大月。后又為避免連續出現3個大月,便將大月往后各推一個月,這就形成了現在“一三五七八十臘,三十一天永不差。”的大小月份的規定。 如果大家熟知現在的公歷,就知道每逢百年如果年數可被400整除是不置閏的。但《儒略歷》沒有這個規定,因此到1582年(《儒略歷》已實行1600余年)的時候,兩至兩分就已經和正確日期相差了10天出來,歷法改革迫在眉睫。為了消除這個誤差,《格里高歷》將《儒略歷》四年一閏的制度,修正成現在的逢百年可被400整除則不置閏。并在實行后,由教皇下令將1582年10月4日星期四的次日,定義為1582年10月15日星期五,即中間有10天被強行抹除,這就是著名的“歷史上消失的十天”。修正后的《格里高歷》平均年長度為365.2425天,與地球公轉一回歸年365.2421天已相差無幾,而這就是我們現在所用的公歷。 二、農歷是什么 農歷是我國自殷商時代起到1912年中華民國成立,數千年中一直延用的一套歷法。其主要特點是以月相盈缺來確定一“月”的終始,并通過設置“閏月”來保證年的平均周期接近地球公轉的一個回歸年。農歷的一個平年是12個月,354或355天;閏年則是13個月,383天或384天。比如2012年的農歷是閏四月所以就有384天。 目前已知有記載的最早的農歷是春秋戰國至秦朝時期的“古六歷”(即黃帝、顓頊、夏、殷、周、魯共六種歷法,這幾種歷法的區別主要是歲首和四季的定位有所不同,因此下文統稱古六歷)。由于其定義一回歸年為365年又1/4年,因此又稱四分歷,是四分歷的一種。其精度大約等同于西方的《儒略歷》,但就算以最晚的秦統一六國的時間(公元前221年)來計算,也要比《儒略歷》早上百余年,而在這之前的春秋戰國時期,《周歷》就已經實行了數百年。 簡單介紹一下“古六歷”。“古六歷”的特點是以366年為一歲,在有閏月的時候通過“正閏余”來調整周期,另外閏月也同時用來確定四時和歲的終始。這里所謂“正閏余”是指:一年有366天,比起一回歸年的365又1/4天多出來約3/4天,把這3/4天稱之為“歲之余”,而在閏月的時候,要把這多出來的“歲之余”給抹掉,即有“閏余成歲”(《千字文》:閏余成歲,律呂調陽。)。這里“閏”的最早意思其實是“減掉”,而非現在的“額外、加多”。對于置閏的時間則幾朝各有不同(這也是古六歷的主要區別),以商為例是以十二月為歲首,將閏月放在十一月之后,而以秦為例則是以十月為歲首,將閏月放在九月之后。但閏月之后都是新一年的開始,即所謂“以閏月定四時成歲。”(《尚書·堯典》:“期三百有六旬有六日,以閏月定四時成歲。”)用閏月來確定一年的終始。 古六歷之后,中國農歷曾發生過一次比較大的變化,也稱為農歷的轉折點,這就是西漢時期頒行的著名的《太初歷》。《太初歷》是公元前104年(太初元年)漢武帝下令定改的一套的歷法,也是現存最早的有完整文字記載的歷法。《太初歷》之于古六歷最大的改動是加入了二十四節氣以定農時,并確定了以《夏歷》正月為歲首(這也是現在的農歷有時被稱為《夏歷》的原因)。同時由于二十四節氣的加入,又有了在“無中氣”的月份的置閏的規定,使得農歷的月份與四季的配合更為合理。再往后各朝各代雖然均有在時行歷法的基礎上進行修訂,但大多都是在《太初歷》的基礎上修修補補,再無太大的改動。盡管如此,在這之后還是出現了一些比較牛逼的歷法,比如大宋《統天歷》計算一回歸年為365.2425年,與《格里高歷》一致,但比《格里高歷》早了近400年。 三、陽歷陰歷是什么 可能在大多數人包括之前樓主的印象中,公歷就是陽歷,農歷就是陰歷。事實上并非這么簡單,人們所謂的陰歷指的是以月亮繞地球一圈為周期的歷法,即“月亮歷”,陰歷的一個周期就是一個“月”;而陽歷則指的是以地球繞太陽公轉一圈為周期的歷法,即“太陽歷”,陽歷的一個周期就是一“年”。這樣看起來既然公歷和農歷都有“年”有“月”,那似乎應該都是“陰陽歷”,但事實上卻并非如此。 我們現行的公歷可以說是嚴格按照地球繞太陽公轉周期置年的,所以首先可以肯定的是公歷是陽歷,但公歷的月份設置是不是也和月亮盈缺有關連呢?公歷是不是陰陽歷呢?從公歷那些大小月的規定以及皇帝亂改大小月的設定來看,肯定是沒有的了。事實上英語里month(月份),和moon(月亮)語出同源,并且一個月的長度也接近月亮繞地球一周的周期,所以公歷的“月份”確實也有“月”的意思,但由于其并不嚴格遵照月相盈缺,所以嚴格說公歷并不能算作是陰歷或陰陽歷,只能算作是單純的陽歷。 而我大農歷雖然經歷過很多版本,很多修正,但有一點從頭到尾一直都沒有變過。那就是農歷的置月。 農歷以月亮運行一個周期為一個“朔望月”。“朔”,月一日始蘇也,即新月始蘇的那天稱之為朔。而“望”,本意為月相之王,即滿月之時。所謂一個“朔望月”指的就是月相盈缺正好一個周期,即從一個“朔日” 到下一個“朔日”的一個周期,農歷將每個朔日定為每月的一號。而由于一個“朔望月”的周期大約是29.5天,所以農歷一個大月三十天,小月二十九天。農歷每個月的初一肯定看不到月亮,而十五肯定是月圓,所以農歷是陰歷相信大家都很清楚了。 而農歷的“二十四節氣”可以看作是一種特殊的“太陽歷”,因為“二十四節氣”對應了太陽在黃道面上每運行15°所在的時間點,而二十四節氣的一個周期正好就對應了一個太陽年。這也是為什么有的地方“立了春就是新的一年了”,因為立春是農歷二十四節氣中的第一個,所以也可以說是農歷中的“陽歷年”。所以我大農歷實際上是一種“陰陽歷”。就是同時兼顧到了太陽、月亮運行規律的一種歷法,簡單說,就是賊特么牛逼的一種歷法。 四、農歷的置月 農歷與公歷最大的區別就是其置月的方式。農歷是“嚴格”按照一個月相盈缺一個周期來置月的,即農歷的一個月其實是一個“朔望月”。可能有很多人都把“朔望月”簡單理解成月球繞地球公轉一個天文周期,但實際上月亮繞地球公轉的一個天文周期是27.32天,稱之為一個“恒星月”,而一個“朔望月”的平均周期是29.53天,那究竟什么才是“朔望月”呢?而“朔望月”又為什么會和“恒星月”有這大約2天左右的誤差呢? 其實在上文中有提到過,一個“朔望月”其實指的是月相變化一個周期,即從一個“朔日”到下一個“朔日”或從一個“望日”到下一個“望日”之間的時間間隔。而至于為什么一個“朔望月”不等于一個“恒星月”,那就要先大概說一下什么是“月相”了。 眾所周知,月亮是不會發光的。我們所觀測到的“月有陰晴圓缺”,其實都是從不同角度看到的太陽光的反射。當月亮運動到地球和太陽之間的時候,由于月亮面對太陽的一面正好背對地球,所以地球上的人看不到月亮的反光所以也看不到月亮,這就是“朔日”。而相反的,當月亮運動到太陽和地球的延長線上的時候,由于月亮面對太陽的一面就是面向地球的一面,所以地球上的人看到的月亮就是“滿月”,即“望日”。如果地球是靜止不動的,那么很顯然一個“朔望月”就等于一個“恒星月”。但由于地球繞太陽公轉的原因,每當月亮從一個“朔日”開始繞地球旋轉了360°之后,地球都已經往前走了一段距離,日月地三者的相對位置已有了變化,所以月亮要到達下一個“朔日”的時間點一般都要比一個“恒星月”稍長一兩天。 農歷之所以選擇一個“朔望月”而不是一個“恒星月”做為一個月的周期,并不是因為“朔望月”更容易觀測。而是因為“朔”、“望”等月相變化通常和地球上的一些諸如潮汐、甚至地震海嘯等都密切相關,對于人類的生產生活都更有指導意義。相反的其實如果以“恒星月”做為周期,那農歷就可以簡單的和公歷一樣了,算算最小公倍數就知道哪個月大哪個月小了。而農歷為了使這套歷法更科學、更具實際意義,才以“朔望月”做為月的周期,這大大的復雜化了農歷。為什么用“朔望月”就會使農歷復雜化,這就牽扯到農歷大小月份的設置了。 (P.S.:其實我國古代的天文學家早就觀察到了“恒星月”的存在。因為月亮繞地球旋轉一周約27.322天,天文學家觀測的時候發現月亮每天要經過一個星區,大約二十八天就正好是一個周期。而這每天的一個星區,就是著名的“二十八宿”,這里的“宿”,即意為“一夜”。想想“二十八宿”是有多早吧。 另外,有意思的是,歷法中常用的一個“回歸年”和一個“恒星年”,由于“歲差”的存在也略有不同。這里就不詳細解釋了,有興趣的同學可以自己研究一下。) 如果現在有人還記得高中地理學過的行星運動的“開普勒三大定律”,那么應該知道行星公轉的速度是不等恒的。簡單說就是地球在遠日點(北半球的夏季,南半球的冬季)的時候,轉的比較慢,而在近日點(北半球的冬季,南半球的夏季)的時候,轉的比較快。這也導致了一個“朔望月”的時間周期并不是一成不變的,實際觀測中一個“朔望月”的周期最長可達29.79天,而最短僅有29.25天,上文中提到的29.53天其實只是一“朔望月”長度的一個平均值。如果“朔望月”的長度是恒定不變的,那么農歷完全可以確定一套很簡單的規則(比如在連續的100個月中按排53個月做為大月、47個月做為小月,其順序可以任意安排,并以這100個月作為周期無限循環),來使得在一定的時間周期內其月的平均長度接近29.53天。但正是因為農歷注意到了“朔望月”長度變化的這么微小的一個細節,導致了農歷的大小月份的設定沒有一個像公歷那樣簡單的規律。那么,農歷的大小月份的設定究竟有沒有什么其它的規律呢? 可以肯定的一定是有。首先,總的來說,大月的數量要比小月的稍多一些,并且在一定長度的時間段內,其比例無限接近53:47。這是因為“朔望月”的平均周期正好是29.53天。(例:從2011年到2030年這20年中,一共有247個朔望月,其中131個大月116個小月,比例正好約為53:47。)其次,冬天的大月稍多,而夏天的小月稍多,春秋兩季大小月份的比例則接近平均值(仍然以2011年到2030年這20年為例,春秋兩季,即農歷的2~4、8~10月,大小月占比約為52.5:47.5,而夏季,即農歷的5~7月,大小月占比為48:52,而冬季,即農歷的11~1月,的大小月占比為60:40)。這正是因為上文中提到的地球公轉速度的不等恒所導致的“朔望月”長度變化,在農歷大小月份設定上的直接影響。 總之,可以看到農歷是一個嚴格按照天體運行規律所定制的歷法,并且其精確程度實在令人發指。 五、二十四節氣 地球繞太陽公轉一回歸年大約是365.2521天,如果我們以地球為中心,也可以認為是太陽繞地球旋轉了一周。在這樣一個周期中一共有四個特殊的時間點,那就是所謂的“兩至兩分”,即冬夏至和春秋分(貌似今天:2012年9月22日正好就是秋分唉~)。“兩至兩分”樓主我就不詳細介紹了,相信大家都很清楚。根據天文觀察以及日影測量,古代天文學家可以很容易的確定兩至兩分的時間。而這四個節氣,是最早也是最廣為人知的四個節氣。在西漢《太初歷》之后,我國農歷在原來兩至兩分的四個節氣中,又插入了其它二十個節氣,就形成了現在的“二十四節氣”。 如果說兩至兩分是把太陽運行一周的360°分成了每90°一個間隔。那么二十四節氣的出現,就進一步將這個間隔細化到了太陽運行每15°的一個間隔,大約每15天左右就是一個節氣(所謂“節氣”,節指時節,氣指氣候。古人稱五日為一候,三候為一氣,即一個節氣。例如秋分有三候:“一候雷始收聲;二候蟄蟲坯戶;三候水始涸”。)。如果從“立春”開始將二十四個節氣按順序編上號,那么人們稱單數號的節氣為“節氣”,雙數號的則為“中氣”。由于農歷正常一年是十二個月,所以正好每個月正好都有一個“節氣”和一個“中氣”。 二十四節氣由于其與地球繞太陽運行的位置強相關,所以其實是一種特殊的“陽歷”,并且這是一種比現行公歷還“準確”的陽歷。可能很多人注意到了,二十四節氣中的每個節氣都在公歷中有對應的兩到三天。比方說“秋分”肯定是在9月23號前后一天之內,而“清明”肯定是4月5日前后沒跑。造成這一兩天誤差的原因不是別的,正是由于地球公轉一個回歸年的非整以及公歷每四年一閏的設定。 如果說《太初歷》是農歷歷史上第一次,也是最大的一次歷法改革的話。那么1645年(清順治二年,大明最后一個皇帝明思宗朱由檢自縊的第二年)《時憲歷》的問世,就是農歷歷史上最后一次比較大的歷法改革。時至今日我們仍在使用的農歷就是《時憲歷》。而《時憲歷》對舊歷中最大的改動,就是關于二十四節氣的設定。 在《時憲歷》之前,我國的官方歷法中都采用“平氣法”來確定二十四節氣。取地球公轉一個回歸年的365.2425天除以24約等于15.22天的這15.22天,作為每兩個節氣之間間隔的平均值。這樣的設定其實是默認為地球繞太陽公轉是勻速的,所以多少有一些誤差。而《時憲歷》中則考慮了地球繞日公轉速度的不等恒,通過采用“定氣法”來確定二十四節氣,從而糾正了這一誤差,使得每兩個節氣之間太陽所運行過的角度更加接近15°。(其實早在公元600年,隋朝的劉焯就曾提出《皇極歷》,并在公元604年首次提出了“定氣法”來確定二十四節氣,只不過因為一些官場上的事,好吧你們都懂的,這本中國農歷歷史上極少數比較精準并且牛逼的《皇極歷》并沒有正式頒行。) 由于“定氣法”的出現,所以現在每兩個節氣之間的時長是不相等的。冬季(北半球)的時候,由于地球位于近日點,公轉速度較快,每兩個節氣之間、太陽位置每變化15°最短只需要14天;而夏季(北半球)的時候,由于地球位于遠日點,公轉速度較慢,每兩兩個節氣之間、太陽位置每變化15°最長需要甚至16天。這就導致了一個很有意思的現象,就是俗話說的:“十年碰不上個閏臘月。”至于為什么會有這樣一個說法,而這又和“定氣法”有什么聯系,那么請看下文。 六、農歷的置閏 由于農歷是按照“朔望月”來置月的,一個“朔望月”29.53天,那么12個月之后,平均一年是354.36天,這與一回歸年的365.25天相差了將近11天左右。如果不加閏月,那么用不了多久,就有可能出現“四季顛倒”、“六月飛雪”這樣的現象。由于農歷的月份都是嚴格按照月相“朔”、“望”來設定的,所以也不能像公歷那樣隨便就在某月后面加一天、減一天來補齊這個差值,所以就只能用采用插入“閏月”的方法來解決這個問題。比如每過三年,農歷與公歷就差了差不多33天左右,那這樣就可以在這一年中安插一個“閏月”,即,將這一年的農歷規定為13個月,從而就可以保證農歷的年平均周期與一回歸年的平均周期基本吻合。但僅僅保證“基本”吻合是遠遠不夠的,在農歷之中如何合理的安排閏月一直都是一個難題。當然,這也是一個很有意思的難題。 前文提到過,最早的時候農歷的置閏完全是人為規定的。比如秦始皇頒布的《顓頊歷》中就規定,閏月必須在九月之后,稱之為后九月,然后十月做為歲首即為一年的初始。但這就導致了一個很尷尬的問題,就是每當閏年出現的時候,每一個X月都與上一個X月相差了十三個月。比方說,去年我是三月播種的,但由于去年多了個后九月,那么今年可能我二月就要準備播種了。在那個還沒有二十四節氣的年代,這種人為強制的置閏方式就會給農業生產帶來這種不大不小的麻煩,并且這種置閏的方式也會使得月份與季節的對應也還是稍嫌紊亂。而這時,我們牛逼的《太初歷》就應運而生,乖巧的出現了。 《太初歷》對于古六歷有幾條比較大的改動,首先就是加入了二十四節氣,其次還規定了在“無中氣”月份置閏,這些前面都已經提到過。二十四節氣的出現,解決了農時的問題。而在“無中氣”的月份置閏,這實在是一個創舉。這個創舉是如此的犀利,以至于后來的兩千多年一直到今天,都沒有人能想出更科學、更合理的辦法。下文將會詳細解釋這個所謂的創舉究竟是怎么一回事,而這樣的設定又有什么意義。 首先,何為“無中氣”?為什么會有“無中氣”的月。前文提到過,我們把二十四節氣分為兩類,一種稱之為“節氣”,一種稱之為“中氣”,每種各十二個。如果看公歷的話,正好是每個月上旬對應一個“節氣”,而每個月中下旬對應一個“中氣”,十二個月正好對應二十四個節氣。而農歷的話,由于其每個月的長度略小于公歷,其12個月的長度是354天左右,一年相差11天,所以大概36個月之后就會與公歷差出一個月出來。這個時農歷經過了36個月,卻只經過了35個“節氣”和35個“中氣”,所以肯定至少有一個月是沒有“中氣”的。妙的是,這個時候,也正好是農歷該置閏的時候了。 其次,為何要選在“無中氣”的月份置閏?其實正常情況下,農歷一個月也是有兩個節氣的,一個“節氣”,一個“中氣”。由于二十四節氣是陽歷,所以其與太陽運行的角度強相關,也就是說二十四節氣與四時是有直接的對應關系的。所以選在“無中氣”的月份置閏,可以使得農歷的月份與四時有更強的對應關系。這一點用公歷來解釋可能簡單:首先,每個“中氣”都會對應一個固定的公歷月,然后農歷每個月都至少會有一個“中氣”,這樣農歷月和公歷月之間其實是有一個簡單的對應關系。但由于農歷中“無中氣月”的出現,其實是打破了這個規律。所以修復這個規律最好的辦法就是在農歷出現“無中氣月”的時候令其為上一個月的閏月。(比如一般“夏至”這個中氣都是在農歷的五月,但2012年由于四月之后有一個無中氣的月份,所以如果規定這個無中氣的月份為五月的話,那么“夏至”就會跑到在農歷的六月去,后面所有月份與中氣的對應關系都會亂掉。所以這時,只要我們把那個“無中氣”的月份定為上一個月的閏月,即閏四月,就可以消除這個混亂。)而這種置閏的方式就使得農歷的月份與“中氣”,乃至四時都能有一個相對穩定的一個對應關系。看似復雜的一個規定,其實科學的無以復加。 正是因為農歷這種犀利的置閏方式,保證了農歷的一年和一個回歸年之有一個相對穩定的對應關系,也使得農歷和公歷雖然完全是不同世界的產物,但兩者相差最多最多也就是一個多月左右。農歷的X月,永遠對應的是公歷的X月或者X+1月。比如農歷的正月就永遠對應公歷的1月或2月,而農歷哪怕再運轉上幾萬年,也不會出現在12月或者3月。 那么農歷究竟多少年就會有一個閏年呢?可能有些人知道,農歷和公歷大約每19年會重合一次,而這,正是因為農歷是按照的“十九年七閏法”來置閏的結果。所謂“十九年七閏”就是指,地球公轉19個回歸年約6939.6018天,而農歷235個“朔望月”的長度約6939.6887天,兩者基本相等。而在這19個回歸年中一共有235個“朔望月”,228個“中氣”,因此有7個“無中氣月”,正好就是7個閏月,即所謂的“十九年七閏”。(但正是由于這每19年約不到0.09天的誤差,導致了這個規律并非是一直都成立的。差不多每隔一個世紀可能就會出現一次20年7閏,緊接著再一個18年7閏。而BT的祖沖之同學還提出過391年144閏的說法,確實會比19年7閏更精確一些,但……這也太蛋疼了吧!) 前面還提到了一句俗語,就是“十年碰不上個閏臘月”。相信有耐心看到這里的同學也差不多明白了:臘月(北半球冬季)的時候,地球在近日點,節氣之間的長度較短,因此就算臘月是小月二十九天,也可以保證至少當月會有一個中氣。所以別說“十年碰不上個閏臘月”,一百年也未必碰得上(摔,看來樓主想過兩個農歷生日的愿望這輩子是不用想了)。同樣的道理,想要閏正月過兩個春節的也基本上不可能的(但有意思的是,從理論上講“閏臘月”、“閏正月”是完全有可能存在的,只不過機率真的非常非常非常小罷了。) 此外,上面有提到的“十九年七閏”,其實是十九年中“最少”會有七個“無中氣月”。但也有可能會出現多于七個的“無中氣月”,甚至一年中出現有兩個“無中氣月”。這時就會按照前后兩個“冬至”所在的月之間的一共有幾個“朔望月”來確定是否需要設置閏月,以及如果出現兩個“無中氣月”時以哪個為閏月。一般來說,如果兩個“冬至”之間(不含兩個“冬至”所在月),一共只有十一個月,那就算你這十一個月全都是“無中氣月”,也不會設置閏月;而如果這兩個“冬至”之間共有十二個月,那么就將第一個“無中氣”的月設置為閏月(因為兩個“冬至”之間肯定有十一個中氣,而十一個中氣有十二個月的話那么必然至少有一個“無中氣月”。) 以上就是農歷的置閏規則,以及按照這樣規則來置閏的原因。同時寫到這里樓主也不得不佩服我們老祖宗的智慧,創造出在這樣一套科學、完整歷法,這其中不知道凝聚了多少古人的心血。作為中國人,我為“農歷”而感到驕傲: 壯哉我大農歷! |
|