《易经》上说:“观察天文现象,就能了解时局的变化。”所以古代的圣明君王,都根据天象来施政,考查各种征兆来治理国家,以此来教化百姓,考量事物规律,修养自身品德,顺应天时,改正错误,谨慎防范灾祸,趋吉避凶,化解危机,转祸为福。那些关于五星七曜的名数,中官外官的方位,星宿凌犯守位所代表的吉凶,以及彗星飞流的预兆,史书上都有详细记载。

武德年间,薛颐、庾俭等人先后担任太史令,虽然各自都擅长占卜观测,但都没有什么新的发明创造。到了贞观初年,担任太史局将仕郎的李淳风上奏说,灵台的观测仪器沿袭北魏旧制,制度简陋,难以进行精确的观测。唐太宗于是命令李淳风重新制造浑仪,用铜铸造,直到贞观七年才完成。李淳风还撰写了《法象志》七卷,论述了前代浑仪的优缺点,这些内容记载在他的传记里。太宗把李淳风制造的浑仪放置在凝晖阁用来观测天象,但后来不知怎么的,这浑仪竟然在宫中丢失了。

开元九年,太史局多次奏报日食的预测不准确,唐玄宗下诏命令沙门一行重新制定新历法。一行上奏说,要制定新的历法,必须要知道黄道的运行规律,请求太史令测定星宿的度数。主管官员说:“我们一直以来都是按照赤道来推算星象,官府里没有黄道游仪,无法进行观测。”当时,率府兵曹的梁令瓒正在丽正书院任职,他便制作了一个黄道游仪的木质模型,非常精密。一行于是上奏说:“黄道游仪,古代虽然有这种方法,但没有实际的仪器。因为黄道随着天体运动,难以用普通的浑仪来测量,所以以前的人都苦思冥想却无法解决。现在梁令瓒创造了这个模型,日月交会运行的规律,都自然地吻合,这对于推算星象非常重要,希望在书院用铜铁重新制造一个,以便检验星宿的度数,避免出现差错。”玄宗批准了他的请求,直到开元十三年才制造完成。一行又上书说:

《尚书·舜典》记载:“在璇玑玉衡,以齐七政。”有人解释说,“璇玑”指旋转运行的枢纽,“玉衡”指保持平衡的衡器,都是用玉制作的,用来观测七政(日月五星)的运行变化,了解它们的盈亏进退,从而知道国家政事的得失,这也就是古代太史使用的浑天仪。

周朝衰落以后,那些负责天文历法的官员都失业了,以前的制度和方法也没人传承下来了。汉朝建立后,丞相张苍第一个重新搞起了律历这方面的学问。到了汉武帝时期,他又下令让司马迁他们重新制定汉朝的历法,这才开始确定东西方向,制作了日晷和漏刻,用来观测二十八宿之间的距离和星度,这跟以前的方法都不一样了。所以,唐朝在朝廷里专门设立了天部,洛下闳计算推算历法,现在咱们用的赤道坐标系,其实就是他留下来的方法。

东汉永元年间,左中郎将贾逵上奏说:“我以前和傅安他们一起用黄道来计算日月运行,结果发现弦望(农历每月初八和二十三)的日期总是跟实际情况不太符合。史官们都用赤道来计算,跟天象对不上号,误差甚至超过一天。我想请太史官把日月星辰运行的记录和星度数据拿出来,跟专门负责天文观测的官员一起核对一下。”皇上批准了他的请求。于是就问了负责天文观测的姚崇等十二个人,他们都说:“星图是有规律的,日月确实沿着黄道运行,但我们现在没有合适的仪器,不知道该怎么操作。”甘露二年,大司农丞耿寿昌上奏说,他用圆仪来测量日月运行,检验天象的运行规律。日月运行在赤道上,经过牵牛星和东井星时,太阳每天运行一度,月亮每天运行十五度;经过娄宿和角宿时,太阳每天运行一度,月亮每天运行十三度;这些都是以前大家公认的。这一年是永元四年。第二年,朝廷才下令让太史令制造黄道铜仪。冬至那天,太阳位于斗宿十九度又四分之一度的位置,跟赤道相比偏差两度。史官们用这个来校正日月弦望的日期,虽然比较精确,但还是不能准确预测望日。黄道铜仪,它测量的是黄道上的度数和运行情况,很难观测,所以最后也没能坚持下去。后来刘洪利用黄道浑仪来研究月亮运行的快慢。但后来负责历法的人都不再按照他的方法来,又改用赤道坐标系来计算,结果发现贾逵说的那些问题,误差反而更大了,这就是历法研究中一个很大的难题。

现在灵台上的那个铁仪器,是北魏明元帝时期工匠解兰制造的,它的结构简单粗糙,刻度也不均匀,赤道不动,就像把琴弦固定在柱子上一样,根本就没有黄道,所以无法精确地进行观测。如果用它根据赤道上月亮的运行来检验历法的准确性,误差大的时候能达到十七度,误差小的时候也只有十度,根本无法用来推算天象,指导农业生产。最近秘阁郎中李淳风写了一本《法象志》,书里详细记载了黄道浑仪的使用方法,用玉衡旋规,另设日道,旁边排列二百四十九个交点,用来模拟月亮的运行,使用方法很复杂,但最后也没被采用。

皇上恩准了我,我又制造了新的浑天仪,让它按照黄道的运行轨迹来演示天象变化。我根据二分二至点确定了黄道的位置,它与轸宿、奎宿之间相交,二至点南北的距离各是二十四度。在黄道内,我又设置了代表月亮运行的白道环,用来研究阴阳变化的规律。这套仪器运作起来符合天体运行规律,操作简便易懂,足以用来制作天文仪器,演示天象,并将这项技术永久流传下去。

然后玄宗皇帝亲自为它写了铭文,把它放在灵台,用来观测星象。这台浑天仪上,二十八宿以及其他星官的位置,和古代典籍记载的不同之处,多达几十条。皇上还下令让我和梁令瓒以及其他天文专家一起,制造新的浑天仪。这台浑天仪用铜铸成,做成圆球状,上面刻有星宿、赤道以及周天度数。用水力驱动轮轴,让它自动旋转,一天一夜的时间,它就转动一周。另外,还在外层设置了两个环,用来安置日月,使日月能够按照各自的运行规律运转。每天,浑天仪向西转动一度,太阳向东转动一度,月亮则向东转动十三度十九分之七度,大约转动二十九圈多一点,日月就相遇了;转动三百六十五圈,太阳就运行一周了。仪器还设置了一个木制的柜子代表地平线,让仪器的一半在地下,这样就能准确地显示出日月星辰的运行规律,包括阴晴圆缺的变化。还在地平线上安置了两个木头人,前面放着钟和鼓,用来报时,每刻自动击鼓,每辰自动撞钟。这些都是通过柜子里设置的轮轴、齿轮和锁销等部件来实现的,巧妙地结合在一起。这台浑天仪完全符合天道的运行规律,当时大家都赞叹它的精妙之处。铸造完成后,命名为“水运浑天俯视图”,放在武成殿前,让百官观看。没过多久,由于铜铁部件逐渐磨损生锈,仪器就不能自动转动了,于是就被收进集贤院,不再使用了。

现在我把这台浑天仪的结构图纸以及它测定的星象数据与古代文献记载的不同之处,开元十二年派往各州测定日晷长短的数据,李淳风、一行大师确定的十二次分野,武德年以来发生的日食月食以及五星异象的记录,都整理成册。

黄道游仪的尺寸规格如下:

旋枢双环:外径一丈四尺六寸一分,高八分,厚三分,直径四尺五寸九分,这也就是古人所说的旋仪。南北两极的倾斜角度各为三十四度,两面都刻有周天度数。一面加钉,并用银饰,使它能够像浑天仪一样东西方向旋转。中轴的孔径为两度半,长度与旋环的直径相同,并采用古尺,四分之一尺为一度。

这玩意儿叫玉衡望筒,长四尺五寸八分,宽一寸二分,厚一寸,孔径六分,以前是用玉做的。这“玉衡”就像个秤砣,装在轴上,可以转动来校正方向,用来观察七曜(日月五星)和星星的距离远近。它外方内圆,孔径一度半,正好是一个周天。

接下来是阳经双环,外圈直径一丈七尺三寸,内圈一丈四尺六寸四分,宽四寸,厚四寸,整个直径五尺四寸四分,安放在子午线上。它用八根柱子固定,两面都画着周天度数,一面还钉了钉子,并用银子装饰。它一半露在地面上,一半埋在地下,中间夹着枢轴和玉衡望筒,可以旋转。

阴纬单环呢,大小尺寸都跟阳经双环一样,跟阳环互相连接,内外都对齐。上面平平的代表天,下面代表地,环绕着阳环,所以叫阴浑环。上面标示着南北两极,内外刻着周天百刻。平面上刻着御制铭文,字是用金子做的。

天顶单环,外圈直径一丈七尺三寸,竖向宽八分,厚三分,直径五尺四寸四分。它位于正上方,东西方向在卯酉之间,稍微偏南一点,这样就能看到日出日落。它跟阳经、阴纬固定在一起,就像蛋壳包着蛋黄一样。它距离赤道三十六度,距离黄道十二度,距离北极五十五度,距离南北平各九十一度多一点。

最后是赤道单环,外圈直径一丈四尺五寸九分,宽八分,厚三分,直径四尺九寸。赤道,就是天球的中心,二十八宿的位置就在上面。这个东西的原型是后魏解兰做的,但是用的是双规,不能转动。我做的这个,上面标示着周天星度,可以转动,跟着天转。我还特意打了个孔,可以根据孔的位置推算出星宿的移动,这样就不会有误差了。比如,以前秋分的时候太阳在角宿五度,现在却在轸宿十三度;冬至的时候太阳在牵牛初度,现在却在斗宿十度。为了修正这种误差,所以才设计了这个孔。它位于卯酉之南,距离天顶三十六度,水平放置。

黄道环,外圈直径是四尺八寸四分,宽八分,厚四分。它代表太阳运行的轨道,所以叫黄道环。以前虽然知道有黄道这回事,但没这玩意儿,导致对太阳运行的计算年年都有误差。月亮和其它五颗行星的运行也跟着太阳走,以前因为没有精确的仪器,计算方法也不准,误差就更大了。我这次新造的这个环,放在赤道环里面,可以开合,跟着天体运行,能显示48度的范围,上面标注了东西方向的周天度数和南北方向的时刻,这样就能准确地观测太阳来确定时间,不会再有偏差了。环上刻了三百六十个刻度,跟八卦的方位相对应,中间穿个孔,跟赤道环相交。

白道月环,外圈直径是四尺七寸六分,宽八分,厚三分。月亮运行的轨道弯弯曲曲,速度时快时慢,跟太阳正好相反。以前也没有这玩意儿,这次我新造的这个环放在黄道环里面,让它跟黄道环相交,能显示60度的范围,用来测量月亮每天运行的度数。环上标注了周天度数,中间也穿个孔,方便调整位置,用铜铁做的。

李淳风在《法象志》里提到过日月这两个环,说它们应该装在旋仪环上。但是旋仪环已经装了玉衡(一种观测仪器),没地方再装望远镜了。这样一来,使用起来很不方便,仪器也笨重。

游仪的四个柱子,上面各雕一条龙,龙高四尺七寸。水槽和假山各高一尺七寸五分。水槽长六尺九寸,高宽各四寸。水池深一寸,宽一寸五分。龙能兴云布雨,所以用来装饰柱子。四个柱子代表四维,龙的下面有山和云,都在水平的水槽上,都是用铜做的。

游仪刚造好,太史们用它观测二十八宿,跟以前经书上记载的有些不一样:比如角宿的两颗星,相距十二度;赤道和黄道的度数跟以前一样。以前的经书上说角宿距离北极九十一度,现在测出来是九十三度半。《星经》上说:“角宿距离北极九十一度,它正对着赤道,黄道在赤道的南面,不经过角宿。”但我们现在测出来角宿在赤道以南二度半,黄道也经过角宿,这跟实际的天象相符。

亢宿那四颗星,现在是九度。以前记录的极度是八十九度,现在测出来是九十一度半。氐宿的四颗星,十六度。以前是九十四度,现在是九十八度。房宿的四颗星,五度。以前是一百八度,现在是一百一十一度半。心宿的三颗星,五度。以前是一百八度,现在是一百一十一度。尾宿的九颗星,十八度。以前是 一百二十度,也有人说是 一百四十一度,现在测出来是一百二十四度。箕宿的四颗星,十一度。以前是一百一十八度,现在是一百二十度。南斗的六颗星,二十六度。以前是一百一十六度,现在是一百一十九度。牵牛星的六颗星,八度。以前是一百六度,现在是一百四度。须女四颗星,十二度。以前是一百度,现在是一百一度。虚宿的两颗星,十度。以前是一百四度,现在是一百一度。以前的地图上,北极星画在虚宿里,现在测算出来在须女座九度的位置。危宿的三颗星,十七度。以前是九十七度,现在还是九十七度。以前的地图上,北极星画在危宿里,现在测算出来在虚宿六度半的位置。室宿的两颗星,十六度。以前是八十五度,现在是八十三度。东壁的两颗星,九度。以前是八十六度,现在是八十四度。

总而言之,这些星宿的位置都和以前记录的不一样了,有的变化大,有的变化小,看来天上的星星也在慢慢移动啊!

奎宿有十六度,以前测算它离北极星七十六度,也有人说是七十度,现在测算为七十三度。东壁宿九度,奎宿十六度,以前算错了,因为是以奎宿最西边的大星为参照物,所以少算了东壁两度,多算了奎宿两度。现在我们用奎宿西南边的大星做参照,奎宿和东壁宿的度数就都正确了。

娄宿三星,共十三度。以前测算它离北极星八十度,现在是七十七度。胃宿三星,共十四度。昴宿七星,共十一度。以前测算它离北极星七十四度,现在是七十二度。毕宿八星,共十七度。以前测算它离北极星七十八度,现在是七十六度。觜宿和觿宿一共三度,以前测算它离北极星八十四度,现在是八十二度。毕宿在赤道和黄道上的度数相同。觜宿在赤道上两度,在黄道上三度。这两个星宿都在黄道附近,位置比较倾斜。毕宿有十六度,跟赤道上的度数一样。觜宿一共两度,黄道上的度数比赤道上多一度,这说明之前的测量有误。现在我们重新测量,毕宿是十七度半,觜宿和觿宿一共半度,这些都是根据最新的天文观测结果。

参宿十星,以前测算它离北极星九十四度,现在是九十二度。东井八星,共三十三度。以前测算它离北极星七十度,现在是六十八度。舆鬼五星,以前测算它离北极星六十八度,现在跟以前测量的结果一样。柳宿八星,共十五度。以前测算它离北极星七十七度,也有人说是七十九度,现在是八十度半。柳宿的度数,应该以西边第三颗星为参照物来计算,以前错误地使用了第四颗星,现在我们改正过来,用第三颗星作为参照。七星宿十度,以前测算它离北极星九十一度,也有人说是九十三度,现在是九十三度半。张宿六星,共十八度。以前测算它离北极星九十七度,现在是一百度。张宿六星,中间四颗星像朱雀的嗉囊,两颗外侧的星像翅膀。以前没有以嗉囊为参照物计算,而是用了翼星,所以张宿的度数多了二度半,七星宿的度数少了二度半。现在我们根据星经上的记载来确定度数。

兄弟们,我发现星宿的位置变化可大了!你看这翼宿二十二星,以前距离北极星九十七度,现在变成一百三度了!轸宿四星,以前离北极星九十八度,现在变成一百度了。 文昌星以前两颗在鬼宿,四颗在井宿,现在是四颗在柳宿,一颗在鬼宿,一颗在井宿,这位置变动得也太厉害了吧!

北斗七星的变化也挺大。以前北斗魁星第一颗星在七星宿一度的位置,现在跑到张宿十三度了!第二颗星以前在张宿二度,现在在张宿十二度半。第三颗星以前在翼宿二度,现在在翼宿十三度。第四颗星以前在翼宿八度,现在在翼宿十七度。第五颗星以前在轸宿八度,现在在轸宿十度半。第六颗星以前在角宿七度,现在在角宿四度还差点儿。第七颗星以前在亢宿四度,现在跑到角宿十二度还差点儿了。

天关星以前在黄道南边四度,现在正好在黄道上了!天江星以前在黄道外面,现在也在黄道上了!天囷星以前在赤道外面,现在也在赤道上了!三台星,上台以前在井宿,现在测出来在柳宿了;中台以前在七星宿,现在在张宿了。建星以前在黄道北边半度,现在是四度半了。天苑星以前在昴宿和毕宿,现在在胃宿和昴宿了。王良星以前五颗星都在壁宿,现在是四颗在奎宿,一颗在壁宿外面了。屏星以前在觜宿,现在在毕宿了。

云雨星以前在黄道外面,现在在黄道里面七度了。雷电星以前在赤道外面五度,现在在赤道里面二度了。霹雳星以前五颗星都在赤道外面四度,现在四颗在赤道里面,一颗还在外面。土公吏星以前在赤道外面,现在在赤道里面六度了。虚梁星以前在黄道里面四度。外屏星以前在黄道外面三度,现在正好在黄道上了。八魁星以前九颗星都在室宿,现在五颗在壁宿,四颗在室宿了。长垣星以前正好在黄道上,现在在黄道北边五度了。军井星,根据《经》书上记载,在玉井东南边二度半。天椁星以前在黄道北边,现在正好在黄道上了。天高星以前在黄道外面,现在正好在黄道上了。狗国星以前在黄道外面,现在正好在黄道上了。罗堰星以前正好在黄道上,现在在黄道北边了。

好家伙,这说的都是些啥?简单来说,就是说黄道这玩意儿,它不跟赤道一样,是斜着的。春分那天,黄道和赤道在奎宿五度的地方相交;秋分那天,在轸宿十四度的地方相交;冬至那天,在斗宿十度,离赤道南边二十四度;夏至那天,在井宿十三度,离赤道北边二十四度。赤道带就像个中间线,黄道就歪歪扭扭地绕着它转,太阳月亮就沿着黄道跑。至于冬至点的位置,洛下闳最早定在牛宿的开头,后来张衡他们又改到斗宿了,因为每年黄道的位置都会稍微有点变化,所以得改。

接下来这段,讲的是日晷,也就是古代测时间的工具。 《周礼》里说,大司徒这个官,负责用土圭测量土地的深度,来确定正午的影子长度,从而找到地中点。 这地中点啊,它可不是随便找个地方,而是说,太阳东边,影子长,早上风大;太阳西边,影子短,早上阴天。 正午影子长一尺五寸的时候,就叫地中,是天地交合的地方,四季交替的地方,风雨汇聚的地方,阴阳交合的地方。 所以说,只要找到这个地中点,万物就能兴盛,国家就能安定繁荣。 郑玄这个学者啊,他认为,每隔千里,影子的长度就会差一寸。 影子长一尺五寸的地方,距离太阳直射点大概有一万五千里,而地球和星辰在三万里的范围内升降运行,所以取一半,就得到了地中点。 郑司农也说了,土圭长一尺五寸,夏至那天立根八尺高的竿子,影子长度正好和土圭一样长,那就是地中点。 现在河南颍川阳城就是这样的地方。

根据《南越志》记载,宋元嘉年间,南征林邑,五月立竿测影,太阳在竿北,影子在竿南。交州测得日影偏北三寸,林邑偏北九寸一分,这就是所谓的“开北户以向日”。交州离洛阳大概九千多里,水路蜿蜒曲折,不能用圭表直接测量,如果走直线的话,大概五千里的样子吧!

开元十二年,朝廷下令让交州太史测影,夏至时日影向南长三寸三分,这跟元嘉年间测量的结果差不多。所以,从阳城往南,如果走直线,一直到太阳直射点,大概不超过五千里。测影使者大相元太说:“在交州极目远望,太阳才刚刚升起二十多度。八月间,从海中往南看老人星,它特别高。老人星下面,环绕着很多明亮的星星,其中很多都很明亮很大,图册上都没有记载,辨认不出名字。大概距离南极二十度以上,这些星星都能看见。这可是古时天文学家认为永远沉在地下,看不见的地方啊!”

再说贞观年间,史官记载铁勒、回纥部在薛延陀的北边,离京城六千九百里。还有个骨利干部族住在回纥的北边,瀚海的北边,那里草多药材丰富,出产好马,骏马能跑几百里。再往北就是大海,白天长夜晚短,太阳刚落山,天色还微明,煮熟一只羊腿,东方就已经天亮了。这地方离太阳升落的地方很近啊!这些事,以前的史书上都没记载过。

开元十二年,太史监南宫说在河南平原选择一块平地,用水准仪和绳子,立起八尺高的竿子进行测量。从滑州白马县开始,往北测影,影长一尺五寸七分。从滑州的测影竿往南走一百九十八里一百七十九步,到了汴州浚仪的古测影竿,夏至时影长一尺五寸稍多一点。再从浚仪往南走一百六十七里二百八十一步,到了许州扶沟县的测影竿,夏至时影长一尺四寸四分。又从扶沟往南走一百六十里一百一十步,到了豫州上蔡武津的测影竿,夏至时影长一尺三寸六分半。总共五百二十六里二百七十步,影长相差两寸多。而以前的学者认为,王畿千里,影长差一寸,这说法就有点出入,不一样了。

好家伙,我用那个“句股图”(就是勾股定理的图)来算了一下。在阳城,夏天最长的那天(夏至)的日影长度,大约是一尺四寸八分;冬天最短的那天(冬至)的日影长度,是一丈二尺七寸一分半;春分和秋分的时候,日影长度都是五尺四寸三分。

我用覆矩(一种测量仪器)斜着看,发现北极星的高度是三十四度四分。 这里所有的度和分,都是用十分制来计算的。 从滑台那个地方观察,北极星的高度是三十五度三分,比阳城测得的结果高出九分。 从浚仪观察,北极星的高度是三十四度八分,比阳城测得的结果高出四分。 从武津观察,北极星的高度是三十三度八分,比阳城测得的结果低了九分。

虽然精确到秒分的测量结果可能有点儿出入,虽然是用肉眼观察的,但大体上来说,每走五百二十六里二百七十步,北极星的高度就会变化一度半;每走三百五十一里八十步,北极星的高度就会变化一度。 因为北极星离观测点的距离不一样,所以黄道(太阳运行的轨道)和日影的长度自然也会跟着变化。

从这以后,我就按照这个方法,每年都在朗州测量日影。夏至的时候,日影长七寸七分;冬至的时候,日影长一丈五寸三分;春秋分的时候,日影长四尺三寸七分半。用图纸推算,确定正午太阳高度是四尺四寸七分。根据图纸斜着看,北极星的高度是二十九度半。和阳城相比,相差五度二分。

在蔚州横野军测量日影,夏至的时候,日影长二尺二寸九分;冬至的时候,日影长一丈五尺八寸九分;春秋分的时候,日影长六尺四寸四分半。用图纸推算,确定正午太阳高度是六尺六寸三分半。根据图纸斜着看,北极星的高度是四十度。和阳城相比,也相差五度二分。

南北两地相差十度半,大概三千六百八十里九十步的距离。从阳城到朗州,一千八百二十六里百九十六步;从阳城到蔚州横野军,一千八百六十一里二百一十四步。北边测量的日影,比阳城短一尺五寸三分;从阳城到朗州,短七寸二分;从阳城到横野军,短八寸。南边测量的日影,比阳城长五尺三寸六分;从阳城到朗州,长二尺一寸八分;从阳城到横野军,长三尺一寸八分。

总的来说,夏至的时候,南方测量的日影和阳城相比差的少;冬至的时候,北方测量的日影和阳城相比差的多。我又用图纸校对安南的数据,发现太阳在正午时分位于天顶的北边二度四分,北极星的高度是二十度四分,冬至日影长七尺九寸四分,春秋分日影长二尺九寸三分。和阳城相比,相差十四度三分,距离大约五千二十三里。

到了林邑国,太阳在正午时分位于天顶的北边六度六分多一点,北极星的高度是十七度四分,周天度数是三十五度,经常可见,不会被遮挡。冬至日影长六尺九寸,距离大约六千一百一十二里。假设从阳城往北,到铁勒地区,北极星的高度也是十七度四分,和林邑一样,那么在五月,太阳在正午时分位于天顶的南边二十七度四分,北极星的高度是五十二度,周天度数是一百四度,经常可见,不会被遮挡。北至日影长四尺一寸三分,南至日影长二丈九尺十寸六分。春秋分日影长九尺八寸七分。

北方,北极星的地平高度只有十五度多一点,傍晚在亥时正西方向落下,早晨在丑时正东方向升起。根据里数推算,应该在回纥的北边,又南距洛阳九千八百一十里,那么五月最长的那天,晚上一直是亮的,那么骨利干应该还在它的南边。

以前儒家学者认为南戴日(太阳直射点最南)距离一万五千里,用勾股定理计算,以太阳斜射阳城为弦,根据周径的比例推算天度,大约是一千四百六里二十四步多一点。现在测量日影,距离阳城五千多里,已经位于南戴日的南边了,那么一度的宽度,都应该减去三分之二,计算南北极的距离,只有八万多里,直径五万多里,宇宙的广阔,岂会是这样?所以王蕃的记载,大概是用管子看天,用瓢舀海的意思吧。

古人之所以依靠勾股定理,是因为它在近处的事情上有根据。但是他们不知道,眼睛的视线是有限的,会产生微小的误差,误差不断积累,最终和理论发生冲突。就像一个人在不大不小的湖里游玩,湖面不过百里,却看到日月每天从湖中升起落下。等到他漂浮在茫茫大海里,不知道几千万里,仍然看到日月每天从海中升起落下。如果在早晨和傍晚的时候,都设置多个观测点来观察,那么小的湖泊和大的海洋,用同样的方法是无法区分的。

话说,东西方向的距离既然有了,南北方向的距离也应该考虑进去。假设我们立起两根很高的表,南北相隔十里,表的高度都有几十里那么高。如果在南边表的顶端放个火炬,并在火炬下面立一根八尺高的木头,那么木头就不会有影子。现在,你从南边表脚下往上看北边表的顶端,你会发现因为微小的角度差,北边表顶端看起来会逐渐和南边表顶端重合。当两根表的顶端看起来重合的时候,如果在北边表顶端放个火炬,下面那根八尺高的木头也一样不会有影子。反过来,在北边表的顶端放火炬,下面立八尺高的木头,也是一样没有影子。然后,我们再在两根表中间,每隔五里再立一根八尺高的木头,向上看,就会发现这些表顶端看起来是弯曲着互相连接的。如果在这两根大表的两端都放火炬,那么所有八尺高的木头都不会有影子。

几十里高的表和十里宽的距离,斜射的影子和我们仰望看到的景象其实没什么区别。现在我们想根据影子的细微差别来推算远近高低,都还很难做到,更何况要根据周天运行的距离来推算那些不可测的东西,那就更不可能准确了!假设有人根据二十里高的表来建立勾股定理,可能还不知道其中的道理,更何况是八尺高的木头呢!古人测量日影的目的,是为了掌握阴阳和合的规律,辅助农业生产,而不是为了精确计算天体的周径;他们重视历法,是为了让人们遵循时令,敬畏自然规律,而不是为了争论浑天说和盖天说的对错。

那些在听觉和视觉都无法触及的地方,去谈论那些不靠谱的事情,君子就会保持怀疑的态度,不去深究;孔子也会谨慎发言,不去评论。然而,有些人却固执地坚持自己所学的那套理论来解释天体,认为浑天说可以用计算来测量,天象可以用运算来观察,结果六家学说互相矛盾。如果坚持盖天说,那么南方的度数就会越来越窄;如果坚持浑天说,那么北极的高度就会越来越高。这两种说法,浑天派和盖天派都无法自圆其说。

由此看来,王仲任、葛稚川这些人,只是在浑天说和盖天说上争论不休,对社会风俗的教化有什么益处呢?

以前那些读书人啊,计算日影长度的时候,不管冬至夏至还是南北差异,都用同一个标准,这根本不符合实际情况嘛! 一行和尚呢,他因为研究《大衍历》,又自己搞了个《覆矩图》,从南方遥远的丹穴一直到北方的幽都,一共做了二十四张图,用来仔细研究日食发生的规律,以及夜晚时间的长短。现在,我把各地测量的日影长度都记录下来:

林邑国,北极高度是十七度四分。冬至的时候,影子在标杆北边六尺九寸;春秋分的时候,影子在标杆北边二尺八寸五分;夏至的时候,影子在标杆南边五寸七分。安南都护府,北极高度是二十六度六分。冬至的时候,影子在标杆北边七尺九寸四分;春秋分的时候,影子在标杆北边二尺九寸三分;夏至的时候,影子在标杆南边三寸三分。朗州武陵县,北极高度是二十九度五分。冬至的时候,影子在标杆北边一丈五寸三分;春秋分的时候,影子在标杆北边四尺三寸七分半;夏至的时候,影子在标杆北边七寸七分。襄州,春秋分的时候,影子在标杆北边四尺八寸。蔡州上蔡县武津馆,北极高度是三十三度八分。冬至的时候,影子在标杆北边一丈二尺三寸八分;春秋分的时候,影子在标杆北边五尺二寸八分;夏至的时候,影子在标杆北边一尺三寸六分半。许州扶沟,北极高度是三十四度三分。冬至的时候,影子在标杆北边一丈二尺五寸三分;春秋分的时候,影子在标杆北边五尺三寸七分;夏至的时候,影子在标杆北边一尺四寸四分。汴州浚仪太岳台,北极高度是三十四度八分。冬至的时候,影子在标杆北边一丈二尺八寸五分;春秋分的时候,影子在标杆北边五尺五寸;夏至的时候,影子在标杆北边一尺五寸三分。滑州白马,北极高度是三十五度三分。冬至的时候,影子在标杆北边一丈三尺;春秋分的时候,影子在标杆北边五尺三寸六分;夏至的时候,影子在标杆北边一尺五寸七分。太原府,春秋分的时候,影子在标杆北边六尺。蔚州横野军,北极高度是四十度。冬至的时候,影子在标杆北边一丈五尺八寸九分;春秋分的时候,影子在标杆北边六尺六寸三分;夏至的时候,影子在标杆北边二尺二寸九分。