丙子月五行属什么?
关于这个问题,其实已经谈过多次了。 先说答案:丙子月是“水”月;而不是“火”月或“水冰”月。 这个结论是基于以下事实作出的判断: 农历十月(亥月)是“水”月,这是毫无疑问的 而干支纪月是以节令为分界点的,具体说来就是立冬和冬至两个节气之间是一个月的范围。
那么,这个农历十月初一所在的节气是什么情况呢? 从下面这张图表中可以看到,立冬是太阳到达黄经225°的时刻,而冬至则是太阳到达黄经270°的时候——前者刚好是在立冬与小雪节气交界之际,后者则恰好在大雪与冬至节气之间。 但是,从上图还可以看到,在1645年以后的现代,这两个时刻都不是十月一日的交点!也就是说,在现代,公历10月1日并不是农历十月初一!
所以很明显,如果要以现在的时间来讨论干支历法的话,农历十月就不是“水”月了。 既然如此,为什么人们还是习惯性地认为农历十月是“水”月,甚至将立冬和大雪节气都划归到“十月”的范围里了呢? 这是因为:古人计算太阳和月亮的运动规律时所使用的单位是“朔望月”(月相周期的平均长度),而不是现在的365.25天。用古代的“朔望月”计算,一个回归年是29.5308(18)日,一年有十二个朔望月(354日)左右。由于每个朔望月的长度都是不确定的,因而古代的一年的时间也是不固定的。因此,他们只能大致知道一年的时间大约是354天左右,而无法像现代人一样精确地掌握其长短。为了便于记忆和使用,古人便以一年分为四季各十二个月,并以二十四节气划分季节、月份。
由于二十四节气是按照回归年来划分的,且每个节气均固定于阳历二月中旬前后,因此只要知道了回归年的长度,也就知道了每个节气的具体时间。但是,由于朔望月的时长不是固定的,因而无法简单地根据回归年的长度来确定具体的月份。因此,古人便采用了一个变通的方法:把每个朔望月作为一个单位,并分别赋予它一个名称。这样,每遇到第一个朔日(初一)时,就命名为“初壹”;当第二个朔日到临之时,就定义为“廿壹”……以此类推。这样一来,每个月的名字就被确定了。虽然朔日不一定处于初一、初二两天之中,但“壹月”“贰月”……这些名称却是确定的。
由于古人计算太阳运动时所使用的单位是一回归年,而计算月球运动所用的则是“朔望月”——两者之间的差异导致了农历一月只有三十天的历史传统。于是,就出现了这种奇怪的现象:明明是“十一”月,却偏偏被叫做“冬月”。这其实是古人以“节气”而非“朔望月”为标准划分月份的缘故所致。由此可见中国古代天文技术的发达程度之高!
综上所述可知,在古代,农历十一月确实属于水季之列,但由于近代以来使用的回归年与日相差过大,导致这一传统与现代格格不入。为了解决这一矛盾,后人只好采取将十一月视为“未足之水”的办法来解决这一问题。