Ulugh Beg · 1394–1449

兀鲁伯

一千三百年里第一份重新测过的星表——哪些不是他测的,他自己先写了出来

vk=v0+kδ,δ=2(vˉv0)n+1,k=1,,nv_k = v_0 + k\delta, \quad \delta = \frac{2(\bar v - v_0)}{n+1}, \quad k = 1,\dots,n
《苏丹历数表》序论第三部分第七章 · 行星表每十天才有一行,中间那几天的速度按这个等差摊开;要它们的和恰好等于表上那一段的行度,递增量只能取这一个

1394 年 3 月 22 日生于苏丹尼耶——祖父帖木儿远征途中的一座城,今在伊朗西北。父亲沙哈鲁 1409 年把河中之地交给他,他驻在撒马尔罕,一坐四十年。他不是先掌权后做学问,两件事是一起的:1417 至 1420 年建起经学院,把卡迪扎德请来主讲,又从卡尚请来阿尔·卡西;接着在城东北的丘上动工建天文台(确年众说不一:Knobel 据同时代的《两福星之升》记在回历 823 年,即 1420 年;《科学家传记辞典》作 1424 年)。台上最大的一件是一道嵌在南北向壕沟里的子午线大弧,半径约四十米——是六分仪还是象限仪,至今有争论,但那个尺寸的用处是明白的:弧上一度约合七十厘米,一角分约合十一点七毫米,刻得下、也读得出。

他本人也讲课,也算。最硬的一条证词来自一个挑剔的同行:阿尔·卡西写给卡尚父亲的信里说,有一天兀鲁伯骑在马上,只凭「回历 818 年赖哲卜月里的某个星期一,在十日与十五日之间」这几条,心算出那一天太阳的黄经,精确到两分以内,下了马叫卡西去核对——而卡西自陈,同一道题他心算只报得出度数(那两封信是馆里卡西那一页的一件展品)。他名下的书是《苏丹历数表》(又称《古尔冈历表》),四部分:纪元与历法、球面天文与三角、行星理论、星占;书里有一张每一角分一行的正弦表与正切表,还有一份一千零十八条的星表——自托勒密以来一千三百年间第一份重新测过的。他给的回归年是 365 日 5 时 49 分 15 秒,比今算长 27.4 秒;黄赤交角 23°30′17″,比今算 1437 年的值小 27.4 角秒(两个二十七点四单位不同,纯属巧合)。1449 年 10 月 27 日,他被亲子阿卜杜勒-拉蒂夫指使的人杀死于撒马尔罕城外,天文台随之散去。

兀鲁伯肖像
帖木儿朝细密画,约 1425–1450 年,绢本设色 · 华盛顿弗利尔美术馆藏(编号 F1946.26),原为一幅双页卷首画的右半 · Wikimedia Commons,公有领域。画的是一次露天的朝会,他盘腿坐在华盖下;辨认的依据就在华盖上——那里写着他的名与号(苏达瓦尔《波斯宫廷艺术》1992 年第 70 页指出了这一点,弗利尔馆的著录也把座上人定为兀鲁伯)。全馆的肖像很少能取到这一档:画成于他在世之年,画师与他同时。

生平

  1. 1394
    生于苏丹尼耶

    3 月 22 日。帖木儿之孙、沙哈鲁之子;本名穆罕默德·塔拉盖,「兀鲁伯」是「大王」的意思。

  2. 1409
    受命治河中

    父亲沙哈鲁把撒马尔罕一带交给他,时年十五。

  3. 1417–20
    建经学院

    请卡迪扎德主讲,又从卡尚请来阿尔·卡西;他自己也在里面讲课。

  4. 约1420–24
    天文台动工

    城东北的丘上,圆形三层,直径四十余米。主仪是嵌在壕沟里的子午线大弧,半径约四十米。动工确年众说不一。

  5. 1429
    卡西死在台上

    6 月 22 日。《论弦与正弦》未竟,由卡迪扎德续成。台里前后聚过六十来位学者。

  6. 1437
    星表的历元

    回历 841 年元旦,即 1437 年 7 月 5 日。观测自回历 823 年起,前后十七年。

  7. 1437
    黄赤交角 23°30′17″

    今算 1437 年的值是 23°30′44″(拉斯卡尔 1986 年那条式子),他小了 27 角秒。

  8. 约1440
    《苏丹历数表》成书

    波斯文,四部分。正弦表 0° 至 87° 每一角分一行、给到六十进制第五位,87° 以上再多给一位。

  9. 1447
    父卒,继位

    沙哈鲁死,他接掌帖木儿帝国,随即陷入与儿子的争位。

  10. 1449
    被子弑

    10 月 27 日于撒马尔罕城外。1941 年开墓,颈椎上的刀痕与史书对得上;尸身着衣而葬,那是殉教者的葬法。

  11. 约1473
    书被带到西边

    学生阿里·库什吉在他死后离开撒马尔罕,最后到伊斯坦布尔任教,《苏丹历数表》随之流布。

  12. 1665
    牛津刊印星表

    海德据牛津的三部抄本刊出拉丁译本;此前格里夫斯 1648 年已译出其中九十八颗。欧洲第一次读到一份新测的恒星位置。

  13. 1843
    贝利重编

    《皇家天文学会纪要》第十三卷,星表第一次与近代星表逐条比对认星。

  14. 1908
    天文台被挖出来

    维亚特金在丘上找到那道大弧埋在地下的一段:两道包着大理石的平行墙,刻度尚存的是太阳高度 57° 到 80° 之间那一截。

  15. 1917
    Knobel 校订本

    汇校英国所藏全部波斯文抄本;2012 年 Verbunt 与 van Gent 据它做成机读版,与依巴谷星表逐条比对。

展品厅

绝大多数展品都可以亲手把玩——这是本馆的立馆之本;少数以叙述为主的,做成故事展签。

镇馆之宝 · 亲手玩

他说没量的那二十七颗,五百年后认得出来

自序里点名 27 颗太靠南、在撒马尔罕升不起来,只好照旧书抄。今天逐条回算:他自己量的差 25 角分,抄来的差 115 角分。

从托勒密到十五世纪,一千三百年里没有第二份重新测过的星表。1437 年这一份有一千零十八条,观测前后十七年。它最难得的地方不在准,在他自己交代了哪些不是他测的:自序第三部分第十三章写明,凡前人已定的星都重测了一遍,只有 27 颗除外——天坛座七颗、南船座八颗、半人马座十一颗、豺狼座一颗,太靠南,在撒马尔罕的纬度上看不见,只好取自苏菲的书,按历元之差改正;另有八颗连苏菲也找不到,索性不列(其中豺狼座第 11 星他说不列,可传世抄本里还是照托勒密的数补上了)。数目点得上:七加八加十一加一正是二十七。这句话是查得出真假的。拿依巴谷星表归算到 1437 年逐条回比:他自己量的那 986 条,中位偏离 24.9 角分——同一把尺子量托勒密是 32.1 角分;而他说抄来的那一批,中位 114.9 角分,差了将近五倍。全表偏得超过 150 角分的一共十条,其中九条出自这一批;他自己量的 986 条里越过这条线的只有一条。照他自己给的黄赤交角与撒马尔罕纬度算,那 27 颗里有 21 颗中天高度是负的,根本升不起来。边界并不是一刀切:天坛座是整座一起抄的,而他确实量了的星里最低的一颗中天只有半度高——那一条也正是他自测的星里偏得第三大的。一个人在书里写下自己的边界,五百年后还经得起逐条查,这件事比表上那些数字更难做到。

上幅是整片天,铜色的点是他说没量的那 27 颗;下幅拖动分界,看三条累积曲线各有几成落在里面

从托勒密到十五世纪,一千三百年里没有第二份重新测过的星表。 1437 年这一份有一千零十八条,而它最难得的地方不在准,在他自己说了哪些不是他测的: 自序里点名 27 颗太靠南、在撒马尔罕根本升不起来,只好照苏菲的书抄下来按历元改正。 五百年后拿依巴谷星表逐条回算,这句话是查得出真假的—— 他自己测的那 986 条,中位偏离 24.9 角分(同一把尺子量托勒密是 32.1 角分); 而他说没测的那一批,中位 114.9 角分,差了将近五倍。 全表偏得超过 150 角分的一共十条,其中九条出自这一批; 他自己量的 986 条里,越过这条线的只有一条。 上幅那条虚线是照他自己的黄赤交角与撒马尔罕纬度算出来的「升得起来的边界」—— 铜色的点几乎全压在线下。边界并不是一刀切:天坛座是整座一起抄的, 而他确实测了的星里最低的一颗中天只有半度高,那一条也正是他自测的星里偏得第三大的。

分数栏里的一把梳子

黄经的「分」几乎全是 3n+1,黄纬的「分」几乎全是 3n——仪器刻到三角分,这件事印在了一千多个数字上。

把一千多条星位的「分」那一位单独拉出来数,本该是均匀散在 0 到 59 上的。可它不是:黄经的分几乎全落在 1、4、7、10……,黄纬的分几乎全落在 0、3、6、9……。这件事最早是彼得斯在 1880 年代注意到的,Knobel 1917 年校订全表时给出了解释——量星的那件仪器刻到三角分,读数只能落在三的倍数上;黄经那一栏还叠了一个改正量,于是余数从 0 挪到了 1。本馆把这条指纹在全表上算了一遍:有坐标的 1017 条里,合式的黄经 991 条、黄纬 988 条。拆开看才是要紧的。他自己量的 990 条,黄经合式 984 条(99.4%)、黄纬 979 条(98.9%);若分数栏是随机的,落进某一个余数类的期望是 330 条、标准差 14.8 条,实得 984,高出期望四十四个标准差。而他自陈抄来的那 27 条,梳子没有了:黄经只剩 7 条合式(25.9%)、黄纬 9 条(33.3%),正是掷骰子的水平——它们不是在撒马尔罕量的,是照旧书加一个常数算出来的,那个常数把余数打乱了。于是这张表带着两重互相独立的证据:他自序里点名的那 27 条,和分数栏自己泄露的那 27 条。破例的还有一小把:他自己量的那 990 条里,黄经 6 条、黄纬 11 条不合式。Knobel 在同一节里给了去处——有些是成对的星只量了一颗,另一颗照托勒密的差补上(他数出至少 82 对经度、44 对纬度是这么来的),有些就是抄手写错了;照这个口径,全表大概只有七百颗的两个坐标是彻头彻尾自己量的。今天从末位数字的分布反查仪器与流程,是质检与数据溯源的常规手段——这里它用在了一份五百八十多年前的表上。

把一千多条星位的「分」那一位单独拉出来数,本该是均匀的—— 可黄经的分几乎全落在 1、4、7、10……上,黄纬的分几乎全落在 0、3、6、9……上。这是仪器刻度留在数字上的印子:Knobel 由此断定量星的那件仪器刻到 3 角分, 而黄经那一栏还叠了一个改正量,于是余数从 0 挪到了 1。 梳子有多密?他自己测的 990 条里,黄经合式的有 984 条(99.4%)、 黄纬 979 条(98.9%);若分数栏是随机的,落进某一个余数类的期望是 330 条、标准差 14.8 条—— 实得 984,高出期望四十四个标准差。 真正有意思的是按一下第二个按钮:他自陈抄来的那 27 条,梳子没有了——黄经只剩 7 条合式(25.9%), 黄纬 9 条(33.3%),正是掷骰子的水平。它们不是在撒马尔罕量出来的, 是照苏菲的书抄下来再加一个常数,那个常数把余数打乱了。 所以这张表带着两重互相独立的证据:他自序里点名的那 27 条,和分数栏自己泄露的那 27 条。

十九度四十一分

抄来的 27 条里,有 23 条与托勒密的黄经差一模一样。而那笔改正多算了十三分——有人把回历年的个数当成了太阳年。

1242+659=194112^\circ 42' + 6^\circ 59' = 19^\circ 41'

星空每年往前挪一点,抄一份旧星表就必须加一个改正。他自序末句给的规矩是「七十个太阳年进一度」,合 51.43 角秒一年。把那 27 条与托勒密表逐条相减,23 条的差一模一样,都是 19°41′——抄的痕迹就这样留在了数字里(其中 12°42′ 是十世纪的苏菲加在托勒密上的,6°59′ 是他加在苏菲上的;另外四条差着整十分或整度,是抄手之误,波斯文里 10 与 40、10 与 50 连写时极易混)。可这 6°59′ 对不上他自己的规矩:两个历元相隔 473.5 个太阳年,按 51.43 角秒应当是 6°46′。对得上的是另一个数——两个历元的回历年数之差是 841 减 353 等于 488,488 乘 51.43 角秒得 6°58′17″,四舍五入正是 6°59′。Knobel 因此推断:有人把回历年的个数当成了太阳年的个数。反过来算也一样:6°59′ 摊在 473.5 年上是 53.09 角秒一年,合「一度要 67.8 年」,而 Knobel 说这个数没有任何人用过。复算到末了却撞上一件反过来的事:这笔多算反而帮了忙。今算这段岁差只有 6°35′28″,他多加了 23.5 角分;而托勒密的南天黄经本来就整体偏小约一度,一个偏大的改正正好抵掉一部分——照他表上的 6°59′,这批星的黄经误差中位是 −25.9 角分;收成他自己规矩该给的 6°46′,中位反而退到 −38.8;换成今算的数,退到 −49.4。馆里托勒密那一页也有一件「两个错凑到一起」。

星空每年往前挪一点,所以抄一份旧星表必须加一个改正。他自序末句给的规矩是 「七十个太阳年进一度」,合 51.43 角秒一年。 把那 27 条抄来的星与托勒密表逐条相减,23 条的差一模一样,都是 19°41′—— 抄的痕迹就这样留在了数字里(12°42′ 是苏菲加在托勒密上的,6°59′ 是他加在苏菲上的)。 可这 6°59′ 对不上他自己的规矩:两个历元相隔 473.5 个太阳年, 按 51.43″ 应当是 6°46′。对得上的是另一个数—— 两个历元的回历年数之差是 488,488 × 51.43″ = 6°58′17″,四舍五入正是 6°59′。 Knobel 因此推断:有人把回历年的个数当成了太阳年的个数。 反过来算也一样:6°59′ 摊在 473.5 年上是 53.09″ 一年,合「一度要 67.8 年」, 这个数没有任何人用过。 末幅是复算撞上的一件反过来的事:这笔多算反而帮了忙。 今算这段岁差只有 6°35′28″,他多加了 23.5 角分; 可托勒密的南天黄经本来就整体偏小约一度,一个偏大的改正正好抵掉一部分—— 按他表上的 6°59′,这 26 条的黄经误差中位是 −25.9′; 收成他自己规矩该给的 6°46′,中位反而退到 −38.8′;换成今算的数,退到 −49.4′。

一天一天摊回去,还能自己验算

行星表每十天才有一行。把这一段的行度摊成逐日递增的速度,递增量只能取 2Δ/(n+1)——而他给的三条规则其实是同一条。

k=1nvk=nvˉ    δ=2(vˉv0)n+1\sum_{k=1}^{n} v_k = n\bar v \iff \delta = \frac{2(\bar v - v_0)}{n+1}

行星表不可能逐日排:他的规矩是月亮逐日、水星每五日、其余每十日给一次真位置,临近留与逆行时也要逐日定。中间那几天怎么办?把这一段的行度除以日数得平均速度,再看它与前一段的速度差多少,把这个差摊成一个逐日递增的量。序论第三部分第七章给了三种说法:五日一段取差的三分之一,连加五次;十日一段把差除以十一、再把商加倍,连加十次;一般的办法是把日数分成相差一的两份,用差除以较大的那一份。复算之后才看见这三条是同一条——要让逐日速度之和恰好等于表上那两行给死的行度,递增量只能是 2Δ/(n+1):n 等于 5 就是三分之一,n 等于 10 就是十一分之二,而「较大的那一份」正是 (n+1)/2,十日一段是五又二分之一,「除以十一再加倍」只是不想写分数。他还给了一条验算:日数为奇数时正中那一天的速度应当恰等于平均速度,为偶数时距两端一样远的两天之和应当恰是平均的两倍——这两条也从同一个式子里跟着出来。还有一处原文没说死:「前一段的速度」是指前十天的平均速度,还是前一天的调后速度?两种读法都试过:按前者,他自称更准的第一法反而更差;按后者(逐段递推),第一法平均偏 0.10 角分、另一法 0.13 角分。他自己那句「第一法更接近真实」,把读法定死了。

行星表不可能逐日排:他的规矩是月亮逐日、水星每五日、其余每十日给一次真位置。 中间那几天怎么办?把这一段的行度除以日数,得平均速度;再看它与前一段的速度差多少, 把这个差摊成一个逐日递增的量。原文给了三种说法—— 五日一段取差的三分之一,十日一段「除以十一再加倍」,一般情形「把日数分成相差一的两份, 用差除以较大的那一份」。复算之后才看见这三条是同一条: 要让逐日速度之和恰好等于表上那两行给死的行度,递增量只能是 2Δ/(n+1); n = 5 就是 Δ/3,n = 10 就是 2Δ/11,而「较大的那一份」正是 (n+1)/2—— 十日一段是 5½,「除以十一再加倍」只是不想写分数。 他还给了一条验算:日数为奇数时正中那一天的速度应当恰等于平均速度, 为偶数时距两端一样远的两天之和应当恰是平均的两倍——右栏那两个零就是这条。还有一处原文没说死:「前一段的速度」是指前十天的平均速度, 还是前一天的调后速度?两种读法都试过:按前者,他自称更准的第一法反而更差; 按后者(逐段递推),第一法平均偏 0.10 角分、第二法 0.13 角分——他自己那句「第一法更接近真实」把读法定死了。 把滑块推到第 70 天前后:火星正在留的两侧,真行度一天一个样, 不摊的话一段里能差出十一角分——这正是他叮嘱「临近留与逆行时要逐日定位置」的缘故。

五分一档算准,中间四格补出来

每一角分一行、给到小数点后九位的正弦表有五千四百行。独立算的只有 5′ 的倍数那 1045 行,其余是二次内插补的。

605=1.28601×10960^{-5} = 1.28601 \times 10^{-9}

《苏丹历数表》那张正弦表,0° 到 87° 每一角分给一行、到六十进制第五位(合十进制小数点后九位),87° 到 90° 那一段再多给一位。连零头一起五千四百行——一行一行全算出来,是算不完的。今人核表核出了办法:角度是 5′ 倍数的那 1045 行是独立算的,核下来都准到所给的那一位;夹在中间的 4176 行是用二次内插补的,偶有一两个单位的出入。拿四十位精度复算一遍,这个选法的分寸看得很清楚。五位六十进制的最后一位是 60 的负五次方,约合 1.286 乘十的负九次方。在 5′ 的网格上做二次内插,中间各点的截断误差最大只有这一位的 0.153——压在逐行取整的噪声底下,所以那「一两个单位」不是内插法的账,是取整攒出来的。把网格放宽到 10′,误差变成 1.2 个单位,最后一位当场保不住;15′ 是 4.1,30′ 是 33。也就是说,5′ 这一档给内插留了将近一个数量级的余量,而再往疏了走,最后一位就守不住了。若把二次内插换成线性内插呢?同样的 5′ 网格,误差跳到 197 个单位,最后两位整个毁掉。两种办法的最大误差还落在两头:二次内插的误差随三阶导走,最大在 0° 那一头;线性内插的误差随二阶导走,最大在 87° 那一头。至于 87° 以上为什么要多给一位:那一带的表几乎摊平了——0° 处相邻两行差二十二万个单位,89°59′ 处只剩六十六个;多给一位,这一步就回到三千九百多个。

《苏丹历数表》那张正弦表,从 0° 到 87° 每一角分给一行, 到六十进制的第五位(合十进制小数点后九位);87° 到 90° 那一段再多给一位。 连零头一起是五千四百行——一行一行全算出来,是算不完的。 今人核表核出了办法:角度是 5′ 倍数的那 1045 行是独立算的,中间 4176 行是二次内插补的。拿四十位精度复算一遍,这个选法的分寸看得很清楚: 5′ 一档,内插造成的差最大只有最后一位的 0.153,压在取整的噪声底下; 放宽到 10′ 就变成 1.2 个单位,最后一位当场保不住;15′ 是 4.1,30′ 是 33。5′ 这一档给内插留了将近一个数量级的余量,再往疏了走就守不住了。 再按一下「线性内插」:同样的 5′ 网格,误差跳到 197 个单位——最后两位整个毁掉。 两条曲线的最大值还落在两头:二次内插的误差随 cos 走,最大在 0° 那一头; 线性内插的误差随 sin 走,最大在 87° 那一头。 至于 87° 以上为什么要多给一位:那一带的表几乎摊平了—— 0° 处相邻两行差二十二万个单位,89°59′ 处只剩 66 个。多给一位,这一步就回到 3948 个。

一座台和一部书,各自失踪了一回

天文台在他死后散了,丘上只剩土;书跟着一个学生往西走,两百年后在牛津付印。找回那座台,靠的是一张地契。

1449 年他被杀,台随之散。此后撒马尔罕的人只知道丘上曾有过一座台,连具体在哪儿都说不准,砖石被拆去他用,地面上什么也不剩。1908 年,俄国东方学者维亚特金在丘上挖开一道沟,挖出来的是那件主仪埋在地下的部分:两道包着大理石的平行墙,之间是那道子午线大弧,刻度还认得出的是太阳高度 57° 到 80° 之间那一截。后来的记述都说,他找到那个点靠的是故纸堆里一份十七世纪的瓦克夫文书——把一块地施给苦行僧道堂的地契,文书里逐条写着四至,其中一条提到了那座台。书走的是另一条路。他的学生阿里·库什吉在他死后离开撒马尔罕,辗转到伊斯坦布尔任教,《苏丹历数表》随之向西流布;1648 年格里夫斯在牛津译出其中九十八颗星,1665 年海德据牛津所藏三部抄本刊出全表的拉丁译本,欧洲这才第一次拿到一份新测的恒星位置——那时距成书已经两百多年。再往后:1843 年贝利重编,星表第一次与近代星表逐条认星;1917 年 Knobel 汇校英国所藏的全部波斯文抄本;2012 年它被做成机读表,与依巴谷星表逐条比对——本馆前三件展品用的就是这一份。一部书从写成到被逐条核对,走了将近六百年。

故事展签故事展签:台被土埋了四百五十九年,书在路上走了两百多年。

传承

他的工作没有留在十八世纪——每条链的终点,都是你今天正在使用的东西。

自序里点名哪 27 条不是他量的五百年后逐条回算,这句话站得住今天的星表都要标明历元与来源:天文数据的可追溯
每一角分一行的正弦表5′ 一档独立算,中间用二次内插补先定精度再选步长与插值阶:数值逼近的常规
十天一行的行星表把一段的总行度摊成逐日的等差,还附一条验算关键帧之间怎么补:今天游戏引擎里的补间与轨道递推
刻到三角分的仪器一千多条读数的分数栏留下了印子从末位数字的分布反查仪器与流程:质检与数据溯源
回归年 365 日 5 时 49 分 15 秒与今算差 27 秒,三千一百年才积成一日历法里的回归年与置闰
弧越大,一角分占的弧长越长半径四十米的子午线大弧,一角分合十一点七毫米分辨率由基线定:今天的测量与工程仪器

他在哪几条专题里

专题是按技术组织的演进线,一条从概念提出拉到今天的器物。这里一个字都没手写, 全是 tracks.ts 推出来的。

语录

我们把苏菲书里的星摆上天球,发现其中大半与天上的样子对不上,于是决意自己重测。

—— 《苏丹历数表》序论第三部分第十三章 · 大意,据 Knobel 1917 年英译转译

只有 27 颗除外,它们太靠南,在这里看不见;这 27 颗我们取自苏菲的书,并按历元之差改正。

—— 同一章 · 大意。四座星座点得清清楚楚:天坛七、南船八、半人马十一、豺狼一

他在马上只凭那几条已知,就把太阳的黄经心算到两分以内;下了马,他叫我这个仆人去核对。

—— 阿尔·卡西致父亲书 · 大意,据赛勒英译本转译。这句话馆里卡西那一页也引着——说他的人正是那位以挑剔著称的同事