大概一周之前,和朋友聊天时谈论到了闰月的问题,今天正好在知乎上回答了一个春分点移动的问题,就将这些内容整合一下,简单地做个记录。
产生闰月的原因
历法是以一定参考物来记录时间的方式,按照其参考的标准可分为:阳历、阴历、阴阳历三种 (注意这里的阴历指的不是传统的农历而是以月亮为参考的历法,农历应该算作阴阳历)。
阳历是以太阳经过春分点的周期(回归年)为基础的,通常将其定义为一年,在这种定义下一个月只是对一年时间的等长 (其实公历中并不是完全等长) 划分,并没有实际的意义。典型的阳历就是现在使用的公历,也就是格里高利历。
阴历是以月相的变化周期(朔望月)为基础的,通常将其定义为一个月。在这种情况下一年只是一个月的整数倍,也没有实际代表的意义。典型的阴历就是伊斯兰历。
阴阳历结合了以上二者的特点,分别以月相周期为一个月,以地球公转周期为一年,农历就是一种阴阳历。
但是很显然这种定义方式有一个问题,就是无论朔望月或是回归年都不是一天的整数倍,所以一年并不能用整数个月来表示。为了解决这个问题,农历中采用了闰月的方式。即在定义一年为12个月的基础上,在个别年份中多加一个月,使得在一定周期内农历年和回归年天数相等。
确定闰月的方法
注意!闰月是指农历中多一个月,和公历中二月有29天的闰年不是一回事!
根据上一节可知,闰月是农历中用于调和朔望月和回归年之间矛盾的一种方式,下面是两种确定闰月的具体方法:
十九年七闰法
太阳经过春分点的周期(不等于地球绕太阳公转周期),也就是回归年,为365.24天。
月相变化的平均时间(不等于月球绕地球公转周期),也就是朔望月,为29.53天。
如果简单地以12个朔望月为一年的话,一年共有$12 \times 29.53 = 354.36天$,与正常的回归年相比相差10.88天。
根据年月时间的最小公倍数可以确定插入闰月的数量。方式如下:
无中气置闰法
现行农历使用的是无中气置闰法,没有设置固定的闰月,而是靠节气来进行置闰。此种方式下更接近于回归年,同时也近似符合“十九年七闰”
的规律。
前面讲过,农历是一种阴阳历,月份的划分与太阳无关。而太阳的运动又与农业生产息息相关,因此产生了二十四节气。二十四节气是在黄道上每隔15°划分而成的,又可分为12节气和12中气。各节气间太阳运动的角度是相等的,时间不相同,平均间隔时间为15.22天。
无中气置闰法规定两个冬至之间,若存在13个月,则第一个没有中气的月份为闰月。将节气与农历的朔望月相比较可以发现,每个月的中气出现时间都会比上个月晚0.91天,32.45个月后中气就会比最初晚一个月。因此将无中气的月份设为闰月,相当于每32.45个月添加一个闰月,近似就是十九年七闰
。
杂项
朔望月和月球公转周期
朔望月是月相的变化周期,即月球从位于太阳和地球之间的状态到达下一个位于太阳地球间状态的时间长度,这个时长比月球公转周期长。原因是当月球完成一次公转后由于地球的公转使得地球也前进了一段距离,所以月球需要再运行一段时间才能重新回到太阳和地球之间。
恒星年和回归年
恒星年是地球公转的真实周期,回归年是太阳经过春分点的周期。
由于地球的自转,地轴会围绕黄轴做缓慢的圆周运动,称为地轴进动。地轴进动与陀螺的旋转类似,地轴围绕黄轴扫成一个锥面。由于赤道平面垂直于地轴,所以在地轴进动的同时赤道平面也进行同方向的缓慢的转动(转动这个词可能不准确,就当是移动吧)。
黄道平面与赤道平面在天球上就有两个交点,春分点就是黄道由南向北与赤道相交的点。随着地轴带动赤道面转动,两个交点也在黄道上同方向(自东向西,与自转公转相反)移动。所以一个回归年内太阳运动的距离实际上是一个圆周的距离减掉春分点反向移动的距离,回归年的时长也就小于实际的公转周期恒星年。
春分点移动的图就不放了,需要的去原回答里看吧。
今天在知乎上的原回答: 为什么地球自转春分点要在天球上不断西移?