中国古代科学家传记-第51部分
按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
有机整体,被后世历家奉为圭臬。单就《开元大衍历经》的七章编次法而
论,它具有结构合理、逻辑严密等明显的特点,也成为后世历法编次的经
典模式。
一行的天文学成就,当然不仅限于大衍历的结构和它所取的形式,更
重要的是大衍历在内容上的众多创新,以及与之密切相关的天文仪器制造
和天文观测等多方面的卓越贡献。
对太阳运动的研究,一行给予了特别的重视。在大衍历中,他对太阳
运动的不均匀性现象进行了新的描述,他指出太阳在一回归年内视运动迟
疾的总体状况应该是:冬至时最快,后渐慢,抵春分时依平,后仍渐慢,
达夏至时最慢,后渐快,抵秋分时依平,后仍渐快,达冬至时最快,如此
循环往复。而且一行还认为太阳运动速度的快慢是渐变式的,而不是突变
式的。这些都纠正了隋代刘焯以来对太阳视运动迟疾总体规律描述的失
误。但是对大衍历日躔表的深入考察表明,一行对若干节气段太阳视运动
实际速度的定量描述存在较大的误差,也就是对太阳视运动一些具体细节
的认识还存在较大的缺欠,致使大衍历日躔表的平均精度稍逊于刘焯的皇
极历。虽然如此,一行毕竟是把对太阳视运动迟疾的总体认识引上正确轨
道的第一人,后世历家无不循其说,并不断有所改进。
关于冬至时刻的测定,一行在阳城(今河南登封)做了十分认真的测影
工作,在此基础上,依据祖冲之的冬至时刻计算法,推求得开元十二年十
一月癸未日九十九刻(公元724 年12 月18。99 日)为冬至时刻,这一结果与
理论值完全吻合。大衍历对于每年冬至时刻的计算,正是建立在这样准确
的测算前提之下的,所以具有很高的准确度,这也就大大提高了二十四节
气时刻等一系列与太阳运动有关的历法问题的计算精度。
对于冬至时太阳所在恒星间位置的测算,一行也做了相当出色的工
作。他利用后秦姜岌发明的月食冲法,得到开元十二年冬至时太阳在赤道
斗宿10。5 度的结果,该值与理论值之差为1。9 度,这一误差主要是由于二
十八宿距度测量的累积差造成的,而用月食冲法测量的偶然误差仅0。1
度。应用这一测算工作得到的客观结果,又基于对大量历史记录的详尽考
查,一行对于岁差现象确信无疑。为此,他写成了洋洋万余言的岁差论(即
日度议),精辟地论证了岁差的存在,驳正唐初历算名家李淳风、王孝通等
人对岁差现象的怀疑,从而结束了虞喜发现岁差现象以后约400 年间一些
历家对这一重要天文概念的犹疑以至反对的状况,使岁差成为定论。一行
推算得每经一年太阳沿赤道西退36。75 分(3040 分为1 度),即赤经岁差为
每82。72 年退1 度(约等于42。9″),该值偏小,但却对唐宋一些历法产生
了较大的影响。
一行对太阳运动研究的成果还反映在关于每日晷长和昼夜漏刻长度的
测算上。在大衍历中,一行列出了阳城二十四节气午中日影长和昼夜漏刻
长度的数值表(晷漏表),它们是经由实测、再经一定的推算得到的。该表
与前不同之处在于,改平气为定气,而且精度大为提高,据研究,其晷长
表和漏刻表的误差分别为0。022 尺和0。5 刻。其实,在晷漏问题上,一行
更主要的贡献是创立了晷漏长度随地理纬度不同而异的近似算法,即所谓
“九服晷漏”计算法。
大衍历的九服晷长计算法包括以下五个步骤:一是先给出太阳天顶距
(z)为1 至78 度时,8 尺表的各相应影长(l)的数值表格(z…l 表)。该表格
的天文和数学含义应为:l=8×tgz。据此可以认为它是一份正切函数表,
而且是世界上最早的正切函数表。不过应该提出的是,它不是纯正的正切
函数表,而是为解决特定的天文学问题而编制的数值表格,而且它不是由
纯数学的方法导出的。该表中与z44 度相应的l 值的准确度骤减,这大约证明前者是参用了在阳城测影的
实际结果,而后者则是应用某种数学方式或经验方法外推得到的。二是以
某地实测得到的二至影长值为引数,由z…l 表依一次差内插法反推出相应
的z 值,它就是某地二至时太阳午中天顶距的度值(z1)。三是在大衍历的
晷漏表中还载有阳城处二十四节气时太阳去极度的数值,任意节气与二至
太阳去极度之差,也就是该两节气时太阳午中天顶距之差(z0),它不但适
用于阳城,而且也适用于其他任意地点。于是,某地二十四节气时午中天
顶距的度值zn=z1±z0。四是以zn 为引数,由z…l 表依一次差内插法求得
相应的l 值,这就是某地二十四节气时午中的影长值(ln)。五是欲求某地
任意时日的影长值,可由诸ln 值依一次差内插法计算。这五步推算法的思
路十分清晰,天文和数学意义也是合理的,只是由于z…l 表、某地实测二
至影长值、阳城二十四节气时太阳去极度值以及应用一次差内插法等都存
在或大或小的误差,所以,一行的九服晷长计算法还仅仅是一种近似算法。
大衍历的九服漏刻计算法是建立在太阳视赤纬变化与昼夜漏刻长度变化成
正比的大胆假设基础上的。已知二至时太阳视赤纬之差为47。8 度,某地二
至时昼(或夜)漏刻值(K1)可由实测得到,二者之差
为K0 ,又已知z0 (见前述),则某地二十四节气时昼(或夜)漏刻值
KZ
Kn = K1±
470
。80 。由于上述假设带有较大的偏差,于是,一行的九服
漏刻计算法也只能是一种近似算法。此外,一行还创立了九服食差的计算
法。所谓食差是由月亮视差引起的月亮视位置、真位置同黄白交点之间的
度距差。月亮视差的大小因月亮天顶距的不同而异,而天顶距的大小与地
理纬度有关,也就是说食差的大小与地理纬度有关,九服食差计算法就是
因此而提出的。对此,大衍历的算法是:分别以某地二至及定春、秋分午
中影长的实测值为引数,由晷漏表依一次差内插法反推出与之相应的日期
和时刻;又以这些日期和时刻为引数,由阳城二十四节气食差表也依一次
差内插法求出相应的食差值;以此分别作为某地二至及定春、秋分时的食
差值;在此基础上,再依近似方法求得该地任意时日的食差值。这一算法
从大的原则上看并无错误,但是由于在某地和阳城测影以及阳城二十四节
气食差表本身存在误差,而且一次差内插法的应用和由某地二至食差等推
演出的食差值都是近似的,所以一行的九服食差计算法当然也还是一种近
似算法。
大衍历的九服晷长、昼夜漏刻和食差计算法,是一行力图打破传统历
法关于晷长、漏刻和日食等的推算仅限于某一地点有效的局面,使历法适
用于全国各地的大胆尝试,它大大扩展了历法的普适性,这在我国古代历
法史上是一个划时代的创举。
关于阳城二十四节气食差,大衍历是以表格形式分别给出各定气的二
十四个食差值,这种食差表也是一行首创,研究表明,它实质上是反映太
阳处于黄道不同位置对月亮天顶距大小的影响,而造成的食差各异的状
况。该食差表的误差为2°左右。阳城二十四节气食差和九服食差与各地
日食食时、食分等的预报有关,它们对于日食预报质量的提高是大有裨益
的。
对于月食的研究,一行也取得了不小的进展。在大衍历中,他给出了
一个十分简捷的月食食分(g)的计算公式:
35239339 …B
。
g = ,
183
B 为月亮距黄白交点的日分值。该式不但符合现代关于月食食分的定义,
而且隐含有特殊的天文学意义。由之可以推算知,大衍历所取必定发生月
全食的食限值为3。36°(令g=15 代入上式,得B=778。9339 分,再乘以月
亮每日平均行度13。3687 度,除以日法3040,再化为360°制),与理论值
之差为0。55°,其精度较前大有提高,而且对后世若干历法产生了重大影
响。大衍历的月食食分计算公式更成为后世绝大多数历法所承用的基本形
式。
关于五星运动,一行也有独到的研究。首先,他最早提出了五星运动的轨
道与黄道并不重合,两者之间存在一定夹角的概念,而且给出了计算五星
位置在黄道南或北的具体方法。其次,他最早提出了五星近日点进动的概
念,并给出了木、火、土、金、水五星近日点每年的进动值(Δλ)分别为
39。9″,37。4″,26。8″,35。6″和159。7″,它们与理论值之差分别为
18。1″,28。9″,43。7″,15。1″和103。7″。在此基础上,一行建立了
计算五星近日点黄经的方法:已知某年五星近日点黄经为λ,N 年后五星
近日点黄经则为λ+Δλ·N。据此推算,一行得728 年木、火、土、金、
水五星近日点黄经分别等于345。1°,300。2°,69。9°,260。1°和286。6°,其误差分别为8。9°,12。5°,16°,146。3°和228。9°。再次,他
最先编制了以五星近日点为起算点,每经15°给出一个五星实际行度与平
均行度之差的数值表格,以此取代北齐张子信以来每经一个节气给出一个
相应数值的初始方法。一行的新表格对五星运动不均匀性的描述给出了更
加明晰的天文意义。经对该数值表格的分析可知,木、火、土、金、水五
星盈缩的最大值分别为239。5',377。5',507。6',77。0'和192。0',
其误差分别为79。6',256。7',95。3',26。3'和1220。1',其中木、
土二星数值表格的总体误差分别为70。6'和59。4'。上述各值的误差都还
是较大的,只有少数数值精度较高,如土星近日点黄经值,这说明一行对
五星运动规律的认识还是初步的。但是,以上三项创新为后世历家的进一
步探索开拓了正确的方向,标志着我国古代对于五星运动的研究进入了一
个崭新的时期。
一行还十分注重探求用新的数学方法去描述由实测得知的日、月、五
星运动以及交食等的客观状况。对于太阳运动不均匀性改正值及食差值的
计算,一行发明了不等间距二次差内插法,这一方法适用于以定气为基准
的数值表格的计算,它是对刘焯首创的等间距二次差内插法的发展与完
善。在大衍历的五星运动不均匀性改正表格中,五星实际行度与平均行度
的四次差等于零;在其月亮极黄纬表格中,相邻两日月亮极黄纬值的四次
差亦等于零。这一事实本身表明,一行在实测中已经发现五星运动的迟疾
变化并不是等加速或等减速的,月亮极黄纬的变化也不依从等差级数的变
化规律,所以都不能用等间距二次差内插法,而必须寻求新的数学方法进
行计算。与四次差等于零这一事实相匹配的应该是三次差内插法,可是对
大衍历五星运动不均匀性改正值和月亮极黄纬的计算法的考察表明,一行
只是给出了三次差内插法的近似公式。由此可知,一行确实进行了三次差
内插法的探索,并取得了可喜的进展,可惜未获最后成功。此外,对于黄
赤道宿度变换、黄白道宿度变换等的计算法,一行也作了新的测算与归纳,
其中黄白道宿度变换法的精度远高于前人,对后世产生了较大的影响。
一行对恒星位置进行过十分认真的观测。据研究,他对二十八宿距星
去极度测量的误差约为1。6°,这比旧测值的误差(约3。5°)大为降低;对
二十八宿距度测量的误差为0。56°,这比西汉落下闳当年测定的误差
(0。48°)稍大,但由于落下闳值是800 余年前的测量值,如果继续使用,
其误差已远大于0。56°,所以,一行在大衍历中采用他的新测值,还是具
有较高精度的。还要指出的是,一行对二十八宿距星去极度的新、旧测值
进行比较时发现:从牛宿到井宿,除女宿古小今大,危宿古今同度外,其
余均古大今小;从鬼宿到斗宿,除鬼宿古今同度外,其余均古小今大。用
现代的岁差理论推算,真实的情况应是:从牛宿到井宿古大今小,从鬼宿
到斗宿古小今大。这就是说,一行的观测结果和由分析所得的结论基本上
是可信的。而对二十八宿距度的新、旧测值的比较,一行也发现了斗、虚
等六宿古今不同度。一行对文昌、北斗、天关等20 多个星官的入宿度或去
极度也进行了测量,也发现古今不同的现象。由此,他得出了星宿位置古
今变化的重要结论,虽然他并没有对此提供理论上的说明,但这一结论本
身的意义及其影响都是很大的。宋元时期频繁的恒星位置测量工作的思想
基础便与之有关。
一行发起组织的四海测验工作,是他的天文测量工作的又一重大成
就。这一工作的直接目的,是为计算九服晷漏和食差等历法问题服务的。
一行委派人员分别到以下13 个地点:铁勒(今俄罗斯贝加尔湖附近)、蔚州
横野馆(今河北蔚县)、太原府、滑州白马(今河南滑县)、汴州浚仪太岳台(今
河南开封)、洛阳、阳城、许州扶沟(今河南扶沟)、蔡州上蔡县武津馆(今
河南上蔡)、襄州(今湖北襄阳)、郎州武陵县(今湖南常德)、安南都护府(今
越南北部)和林邑国(今越南中部),进行了北极出地高度、冬夏至和春秋分
晷影长度,以及冬夏至昼夜漏刻长度等的实测工作,取得了一批较好的观
测成果。这是我国古代第一次大规模的全国性天文测量工作。
其中,对于白马、浚仪、扶沟和上蔡四处的测量工作做得最认真,也
最为重要。这四处地点是一行等人精心选定的,一是它们均地处平原,二
是它们大约位于同一经度线上。测量的内容除上述各项外,还增添了用测
绳丈量这四处彼此间水平距离的内容。这四处的实测工作是另一位天文学
家南宫说具体负责的。一行、南宫说等人作出这些安排的主要用意是:验
证前人关于地南北距千里、夏至午中晷影差一寸的说法。对测量结果的