昨天跟郭兄无意间溜达到了东城区建国门内大街的古观象台,就买票进去看了看。里面的展厅介绍了东西方天文学的发展历程,还有一些古典天文时代的仪器作为展品展出,很有意思。
图片源于本文作者
如果是作为当代的一个天文研究者,站在现在回望过去的天文研究无疑非常有趣,一方面可以知道很多古人不了解的天文知识,另一方面可以感受古人研究天文学的纯粹——对神秘未知的好奇以及把握天地运行规律的向往,我相信也正是因为这种纯粹,才吸引很多人对天文产生了浓厚兴趣。想象在夏日的璀璨星空下,一位老者站在石砌的高台仰望夜空,即使白天炎热,但夜晚总是非常凉爽,旁边一位少年在摆弄浑仪按照老者的要求记录着星象,不时发出纸笔摩擦的沙沙声,高台周围的草丛一直传来悉悉索索的虫鸣,环境并不安静,但却让人感觉平静,他们望着整个天空逐渐向西移动,这样的斗转星移他们已经见证了数个春秋,这是人与天地间最直接的互动,相比于宇宙,他们仿佛才是真正的永恒。怎么样,我是不是有潜力去写小说。
今天就来聊聊历法,为什么会出现四年一闰这样的事情。
历法是用来记录时间进程的方法。有人可能会说,这还不简单吗,太阳转一圈就是一天,一个春夏秋冬就是一年,一年就是365天。答案是还真不行。
太阳在天空上转一圈是24个小时,但是星星(比如天狼星)在天空上转一圈用的时间是23小时56分钟,所以24小时叫做一个太阳日,而23小时56分钟叫做一个恒星日。出现这种差异的原因就是因为地球在自转的同时也在绕着太阳公转
图片源于本文作者
地球自转和公转的方向都是自西向东,假如地球就待在A点,不绕日公转,那么随着地球的自转,太阳与其它所有恒星都会在23小时56分钟后回到天空中的同一位置,23小时56分钟就是地球相对于遥远的恒星自转一圈的时间。但是当地球自转一圈后,地球从A点运动到了B点,此时太阳还并没有在天空中回到之前的位置,地球需要再多转4分钟,也就是总共需要24小时,太阳才能在天空中转完整的一圈。
而地球绕太阳公转一整圈的时间是365.242天(太阳日,即24小时),并不是刚好的365天。假如我们简单地把365天当作1年,地球从上图的A点出发,1年后地球其实还没有回到A点,而是还需要0.242天才能回到A点,再经过1年后,就总共需要0.484天才能回到A点。从A点出发,经过4年后,其实地球还需要4×0.242天=0.968天≈1天才能回到A点。如果我们不校正这个差别,日积月累,慢慢地7月会变成寒冬,而12月会变成盛夏。这就是为什么每经过4年,要给第四年多加上1天的原因(即,闰年,多的1天加到2月里),就是多给地球一天时间让它跑回A点。
但是很明显,地球其实只需要0.968天就能回到A点,给地球一整天的时间其实地球已经越过了A点0.032天,即,每经过4年(注意现在的年已经变成了每4年为1个闰年,或者年份能被4整除的年就是闰年)地球会多走0.032天,这个差别比闰年前的误差0.242天小多了,但无疑日积月累还会造成很明显的差别,所以还得继续校正。
每100年里有25个四年,即25个闰年,这25个闰年会使地球越过A点0.8天,我们再人为规定第25个闰年“不闰”,也就是100年里只有24个闰年(即,能被100整除的年份不是闰年),这24个闰年使得地球越过了A点24×0.032天=0.768天,而最后一个闰年不闰,那么地球又往回退了0.968天,总的效果是,地球从A点出发经过100年后,还需要0.2天才能重新回到A点。
很明显,经过400年后,地球总共需要4×0.2天=0.8天才能回到A点,所以每400年我们就再多给地球1天时间。
综上所述,我们如今的历法规则就是:每四年一闰,每百年不闰,每四百年再闰。
所有初学编程的人都会遇到一个编程题目——判断输入的年份是不是闰年,方法就是能被4整除、同时不能被100整除的年份是闰年,能被100整除、同时也能被400整除的年份也是闰年。
这样的历法经过几千年才会差出一天。