打开网易新闻 查看更多图片

看到网上一篇小文,说中国古代历法如何如何不行。

文中说:“刚才看书的时候了解到个知识,关于农历”,然后便是一顿吐槽。

刚在什么书上瞄了一眼,就下此结论?

只能说,此人无异一叶障目、少见多怪了。

文中说,“周朝到民国,我们居然建立了60多套农历”。其实还说少了,明朝以前制定的历法,能够考证清楚的就有90多部。

不过,这并非如文中所说,中国古历法“不成体系,也缺乏传承,导致算出来的历法当年还勉强能用,越往后越乱,根本对不上农时”。

前面说到的90多部历法,始终是陈陈相因,一脉相承的。

所以,农历,才被称为夏历——夏代开始的“建寅”历法。

之所以会有这么多部历法,不外四个原因——

第一,诸侯分立的时候,各有自己的历法,还有中央政权无力控制的边远少数族裔的历法。

比如春秋战国时期,就由诸侯实行多种历法,被称为“古六历”,除此之外还有古楚历、古彝历等。

第二,颁布新历法,是新朝建立或新帝即位宣誓王权的重要标志。

因此,上述90多部历法中的绝大多数,是源于此颁行的。如前所说,这些历法绝大部分陈陈相因,所改变的是名称与年号。

第三,90多部历法陈陈相因,但并不是没有创新,毫无新意。

概括地说,其中有13部历法属于创建之作。最著名者当推《太初历》《大衍历》和《授时历》。

第四,中国自古就是“阴阳合历”,其制历所遇到的核心问题,是如何使太阳(日)视运动周期纪年与太阴(月)朔望周期纪月更完美地契合。

这确实增加了中国自古以来制历的难度,但同时也使中国历法的精确性和延续性长逾数千年中独步世界。

不妨来详细说说。

打开网易新闻 查看更多图片

先说太阳年的长度。

古人将太阳年长度叫“岁实”。

殷商历法,就是“阴阳合历”。根据卜辞考证,3000多年前殷人的一个太阳年长度为365-365.3天之间。

春秋战国时期,各诸侯国尽管实行的历法名称不同、年首不同,但普遍采用“四分历”,即一个太阳年的长度为365.25天。

汉代刘洪,经过二十年自行观测,已察觉365.25天这个数值偏大,他的术语叫“四分术斗分太大”,于是造《乾象历》,突破了“四分历”窠臼。

三国时杨伟造《景初历》,计算的日月交食更为精密,为后人的突破打下了基础。

东晋虞喜,发现了太阳回归年和恒星年之间存在的“岁差”。

在以上基础上,祖冲之完成了著名的《大明历》,将一个太阳回归年的长度定为365.2428天,与真值误差仅52秒。

打开网易新闻 查看更多图片

再说太阴月的长度。

古人将太阴月的长度叫“朔策”。

“朔策”,实际是月球围绕地球运转的平均周期。

殷商历法,已经掌握“朔策”在29天稍多。因此懂得通过“置闰”来协调太阳年和十二个太阴月。

春秋战国时期,“四分历”所包含的“朔策”,为29又499/940,即一个太阴月的长度为29.5306日,这叫“平朔”。

至祖冲之,他测定的太阴月长度为29又2090/3939日,即平均每月长度29.53059日,与真值误差不足一秒。

前面说到的刘洪,已经发现月亮的运动是非匀速的,因此“平朔”计算的“朔望”不准确,修正结果是“定朔”“定望”。

南朝何承天和北朝张子信,又发现了太阳运行的非均匀性。以上,使隋代刘焯发明了等间距二次差内插法公式,来计算太阳和月亮的不规则运行速率。

唐麟德二年,李淳风编制《麟德历》,采用“定朔法”,他称为“进朔”。

僧一行在《大衍历》中,发展了“定朔法(定气法)”。

“定朔”,将“朔策”定为29.2-29.9日之间。

中国古历法中,真正登峰造极的是郭守敬的《授时历》。

其在元世祖忽必烈鼎力支持下,于全国二十七个地点实时观测,并进行了大规模的四海测验。

《授时历》以实测为基础,汲取历代历法精华,所用天文数据几乎全部是世界上最先进的。

这一历法,一直沿用到明末。

后来的《时宪历》(原名《崇祯历法》),除了冠以西洋算法的名头,然而并未超越《授时历》打下的基础。

况且,其主要工作由徐光启完成,汤若望只是削减后献给了进京后的清帝顺治。

中国古天文学和历算,是中华文明的重要源头和组成。

不是古人不行,是我们懂得的太少。