二十四节气在农历中的日期很不固定;因为农历的一年比回归年少11天左右,结果同一个节气在某年的日期要比前一年晚11天左右。比如1978年清明节在2月28日,1979年的清明节却在3月初9了。遇到闰年时农历年长为384天左右,比回归年又长了19天左右,结果下一年节气的日期又要提前19天左右。比如1979年农历是闰年,1980年的清明节又提前到2月19了。可见在农历中不查日历就不会知道节气的日期,而每年节气的日期都必须经过复杂的计算才能确定。
三伏与九九
人们除掉注意与农业生产最有关的节气外,对于每年炎热和寒冷的季节也特别注意。其中三伏和九九就是这种被注意的特殊情况。苏东坡的诗中就有“算来九九无多日”的句子,是说九九快过去了。在《帝京景物略》一书中还有《九九消寒图》的记载。内容是冬至日画素梅1枝,有81个花瓣,1天染1瓣,染完时九九也就结束了。
九九是从冬至那天开始算起的,每个九有9天;九九八十一天过完了差不多就是3月12日(闰年3月11日),再过9天就是春分,所以有“九九加一九,耕牛遍地走”的说法。
“伏日”的说法至迟在春秋时就有了。《史记》有“德公二年(公元前676年)初伏”这样的话;唐代有一本叫《初学记》的书中对三伏讲得非常清楚,说从夏至后第三庚为初伏,第四庚为中伏,立秋后初庚为后伏,谓之三伏。伏日的推算不如九九那么单纯,它有些变化,所以常常有人提出这样的问题,即三伏是怎样推定的?为什么有些年份中伏20天,有些年份只有10天?其实伏日的推算并不难,古代是以干支记日的,在历史上早就作出了规定,夏至后第三个庚日为头伏,第四个庚日为中伏,立秋后第一个庚日为末伏。这样,头伏、末伏都是10天,中伏则有时是10天,有时是20天,决定于夏至所逢的干支。举例说,1977年夏至为6月21日,干支为己酉,22日为第一庚日庚戌,则第三庚日为7月12日,干支为庚午,所以这天为头伏的开始。第四庚日为7月22日,干支为庚辰,这天为中伏的开始。立秋为8月7日,立秋后第一个庚日为8月11日庚子,这天起为末伏,所以1977年中伏就有20天了。
冬至以后,开始进入一年中最寒冷的季节,所以九九从冬至开始算起,这是谁都能理解的。它与太阳的位置变化直接有关。俗话说,热在中伏,冷在三九。这是根据人们的实际经验总结出来的。中伏和三九差不多都在夏至、冬至后20多天前后,它是与实际气候相合的。
至于伏日为什么要以庚日来定的问题,这是有一个历史的发展过程的。古代五行学说比较流行,它反映着一种五行的变化思想。这种思想用在这里虽然并没有科学的意义,但因为其变化总超不过10天的范围,仍然能基本反映气候变化的规律,所以一直沿用至今不变。
二十四节气与闰月
我国古代的历法家,把二十四节气分为节气和中气,节、中相间排列。其中单数的为节气,即立春、惊蛰、清明、立夏、芒种、小暑、立秋、白露、寒露、立冬、大雪、小寒。双数的为中气,即雨水、春分、谷雨、小满、夏至、大暑、处暑、秋分、霜降、小雪、冬至、大寒。
农历以12个中气分别作为12个月的标志,即各个月都有一定的中气,比如雨水是正月的中气,春分是二月的中气等等。
农历的闰月在古代有过不同的安排方法,但从汉代开始逐渐形成了一个置闰法,把不包含中气的月称作上一个月的闰月。前边刚刚说过,每月都有一定的中气相对应,怎么又出现了不包含中气的月呢?这个问题并不难理解。因为一个回归年中有二十四个节气,这就意味着节气与节气或者中气与中气之间平均为(365.2422÷12=)30.4368日,而一个朔望月为29.5306日,这二者之间相差将近一日,所以中气(节气也一样)在农历月中的日期,每个月就向后推迟近一日。这样天长日久,总会出现中气赶到月末的现象,那么接下去的一个月就必然没有中气而剩下一个节气了。于是,这个没有中气的月就被称作这一年的闰月,而且把它叫上个月的名称,只是要在“几月”的前面再加一个“闰”字。比如1979年(农历是己未年)前七个月的中气日期是:
这里的闰六月就没有中气,只有一个节气——立秋。
农历之所以将没有中气的月作为闰月,只要做一个简单的运算,就会发现其中的奥妙。
原来19个回归年中分别有(19×12=)228个节气和中气,又农历在19个年头中有(19×12+7=)235个朔望月,显然会有7个月没有中气,7个月没有节气,这样把7个没有中气的月作为闰月就是很自然的了。
十九年七闰法,闰月一般安排在第3,5,8,11,14,16,19年,其中相隔的年数为3,2,3,3,3,2,3年,比如1979~1998年相应的农历年的19年中闰月就是这样安排的。但也有其他的排列。按此规律,我们可以推知闰年的大概情况,比如1974年的农历年为闰年,那么19年前的1955,1936……19年后的1993,2017……也是闰年。但闰月的名称并不相同,要按上述原则去精密计算。
二月一次;三月三次;四月六次;五月五次;六月四次;七月三次;八月三次;九月一次;十月一次;十一月、十二月、正月一次不闰。这个闰月情况说明,闰四、五、六月的次数最多,其他月较少,而十一、十二和正月一次不闰,这是什么道理呢?要回答这个问题,还得再谈地球围绕太阳的运转。
众所周知,地球绕太阳的运动轨道是略扁的椭圆形,太阳并不在这个椭圆的中心,而是处在其中的一个焦点上,所以地球在围绕太阳运转的过程中,有时距离太阳近些,有时又远些。距太阳最近的一点叫“近日点”,最远的一点叫“远日点”,地球愈接近近日点,运动速度就愈大,相反就愈小。这样地球在它的轨道上虽然转过了相同的角度(15度),但所用的时间却是不相同的。比如从春分到秋分需要186天多,显然这期间两个中气之间的日数,都超过了前边讲的平均数(30.4368日)。尤其是从夏至到小暑,地球正在远日点附近,速度最慢,两个中气的间隔达到最大(31.45日),所以在这段时期及其前后的历月中,不包含中气的机会就多,这就是闰四、五、六月次数最多的原因。地球从秋分运动到第二年春分只需要179天,这段时期内,除秋分到霜降之间两个中气的时间间隔为30.38日以外,其他的只不过29天多一些,所以置闰的机会自然就会少一些。而地球在冬至点前后运动最快,两个中气的间隔就更小一些,结果使得十一月、十二月、正月总是含有两气,有时甚至出现一个月包含三气的现象。比如农历辛丑年(公历1961年)的十二月就含有三气,庚申年(公历1980年)的十一月也含有三气,这就是十一、十二和正月不闰的根本原因。
推算节气的简易方法
前面曾经介绍了二十四节气与阳历有比较固定的对应关系,即上半年来六、二一,下半年来八、二三,但这是极为粗略的,要想确切知道各年度各节气的日期、时刻,还得去查日历。二十四节气的准确日期和时刻,是由复杂的运算才确定的,这种方法本书不宜介绍。为了满足广大天文爱好者的要求,仅介绍一种推算节气的简易方法,不过这种方法的推算结果和节气的时刻可能有几分甚至十几分钟的误差。
这种方法首先须要知道公历某年各节气的日期和时刻,然后以它为基数向前或向后做具体推算。
向后推:
(1)如某年为平年,第二年也是平年,则在第一年各节气的日期、时刻上,再加5时49分,就得到第二年各节气的日期、时刻了。它可以写成一个表达式:
(平后平)X节气=(前平)X节气+5时49分例如由1981年(平年)2月4日5时56分立春,推算1982年(平)立春的日期、时刻。
(1982年)立春=(1981年)立春+5时49分=2月4日5时56分+5时49分=2月4日11时45分(2)如前一年为平年,第二年为闰年,则闰年1、2两个月内各节气的日期、时刻,为第一年1、2两个月内各节气日期、时刻加上5时49分。3月至12月的要减去18时11分。
即:(平后闰)3~12月×节气=(前平)3~12月X节气~18时11分。
例如由1979年(平)3月21日13时X分春分,推算1980年(闰)春分的日期、时刻。
(1980年)春分=(1979年)春分-18时11分=3月21日13时22分-18时11分=3片20日19时11分。
(3)如第一年为闰年,第二年为平年,则平年1、2两个月各节气的日期、时刻为闰年相应的节气内减去18时11分;3至12月内各节气日期、时刻为闰年相应节气日期、时刻上加5时49分,表达式可写为:
(闰后平)1~2月X节气=(前闰)1~2X节气-18时11分。
(闰后平)3~12月X节气=(前闰)3~12X节气+5时49分。
向前推:
(1)由平年节气推算前一个平年的节气日期、时刻、算法与由平年推算下一个平年的方法相反。即: (平前平)X节气=(后平)X节气-5时49分。
(2)由平年推算前一个闰年的节气,算法与由闰年推算后一个平年相反。即: (平前闰)1-2月X节气=(后平)1~2月X节气+18时11分。
(平前平)3-12月X节气=(后平)3-12月X节气-5时49分。
(3)由闰年的节气推算前一个平年的节气,算法与由平年推算后一个闰年相反。即:(闰前平)1~2月X节气=(后闰)1-2月X节气+18时11分。