六、日月食、五星运动的计算

一行还创立了九服食差的计算法。所谓食差是由月亮视差引起的月亮视位置、真位置同黄白交点之间的度距差。月亮视差的大小因为月亮天顶距的不同而异,而天顶距的大小与地理纬度有关。也就是说食差的大小与地理纬度有关,九服食差计算法就是因为这个原因而提出来的。对于这个问题,大衍历的算法,是分别以某地夏至、冬至及定春分、秋分午中影长的实测值为引数,由晷漏表依一次差内插法反推出与它相应的日期和时刻;又以这些日期和时刻为引数,由阳城二十四节气食差表也依一次差内插法求出相应的食差值;以此分别作为某地夏至、冬至及定春分、秋分时的食差值;在这个基础上,再依近似方法求得该地任意时日的食差值。这个算法在大的原则上并没有错误,但是由于在某地和阳城测影以及阳城二十四节气食差表本身存在误差,而且一次差内插法的应用和由某地夏至、冬至食差等推演出来的食差值都是近似值,所以一行的九服食差的计算方法也还是一种近似算法。

在我国古代的传统历法中,关于晷长、漏刻和日食等的推算一般仅限于某一地点有效,例如在京师地区等。一行大衍历中创造的九服晷长、昼夜漏刻和食差计算法,就是力图打破这种局面,使历法适用于全国各地,这种大胆的尝试大大扩展了历法的普适性,这在我国古代历法史上是一个划时代的创举。

关于阳城二十四节气食差,大衍历是用表格的形式分别给出各定气的二十四个食差值,这种食差表也是一行首创的,它实质上是反映太阳处于黄道不同位置时对月亮天顶距大小的影响,而造成的食差各异的状况。这个食差表的误差是 2°左右。阳城二十四节气食差和九服食差与各地日食食时、食分等的预报有关,它们对于日食预报质量的提高是大有裨益的。

一行对于月食的研究,也取得了很大的进展。他在大衍历中,给出了一个十分简捷的月食食分(g)的计算公式:

g = 3523.9339 − B

183

B 为月亮距黄白交点的日分值。这个计算公式不但符合现代关于月食食分的定义,而且隐含有特殊的天文学意义。由这个计算公式推算大衍历所取必定发生月全食的食限值:

令 g=15 代入上式:

15 = 3523.9339 − B

183

15×183=3523.9339-B

2745=3523.9339-B B=3523.9339-2745 B=778.9339(分)

乘以月亮每日平均行度 13.3687 度,

778.9339×13.3687°=10413.3333°

除 以 日 法 3040, 10413.3333÷3040=3.4254384°

再化为 360°制

食限制为 3.36°,与理论值之差为 0.55°,其精度比以前大有提高,而

且对后世的一些历法产生了重大影响。大衍历的月食食分计算公式成为以后绝大多数历法所承用的基本形式。

一行对于五星运动也有独到的研究。

第一:一行最早提出了五星运动的轨道与黄道并不重合,五星运动的轨道与黄道之间存在着一定的夹角,而且给出了计算五星位置在黄道南或北的具体方法。

第二:他最早提出了五星近日点进动的概念,并给出了五星近日点每年的讲动值(△2),见表 1

星名

进动值(△ 2 )

与理论值之差

木星

39.9 ″ 18.1 ″

火星

37.4 ″ 28.9 ″

土星

26.8 ″ 43.7 ″

金星

35.6 ″ 15.1 ″

水星

159.7 ″

103.7 ″

表 1

在此基础上,一行建立了计算五星近日点黄经的方法:已知某年五星近日点黄经为 2,N 年后五星近日点黄经则为 2+△2·N。据此推算一行得到了728 年五星近日点黄经,见表 2

星名

近日点黄经

误差

木星

345.1 °

8.9 °

火星

300.2 °

12.5 °

土星

69.9 °

16 °

金星

260.1 °

146.3 °

水星

286.6 °

228.9 °

表 2

第三,他最先编制了以五星近日点为起算点,每经 15°给出一个五星实际行度与平均行度之差的数值表格。

北齐张子信曾发现五星运动的不均匀性,但是自张子信以来,人们采用的都是每经一个节气给出一个相应数值的初始方法。一行的数值表格取代了这种方法,并对五星运动的不均匀性的描绘给出了更加明晰的天文意义。经对这个数值表格的分析可以知道五星盈缩的最大值,见表 3

星名

盈缩最大值

误差

木星

239.5 ′

79.6 ′
火星

377.5 ′

256.7 ′

土星

507.6 ′

95.3 ′
金星 77.0 ′ 26.3 ′
水星

192.0 ′

1220.1 ′

表 3

其中木、土二星数值表格的总体误差分别为 70.6′和 59.4′。上面各数值的误差都是比较大的,只有土星近日点黄经值等少数数值精度较高,这说

明一行只是初步认识了五星运动的规律。但是,他的 3 项创新为以后历家的进一步探索开拓了正确的方向,标志着我国古代对于五星运动的研究进入了一个崭新的时期。

一行还十分注重探求用新的数学方法去描述由实测得知的日、月、五星运动以及交食等的客观状况。刘焯曾经首创了等间距二次差内插法,等间距二次差内插法可以概括为:

T = T + T ·

0 τ

△1 + △ 2

2

2

τ ( △1 − △2 ) − 2τ 2 (△1 △2 )

欲求任一时日月亮的极黄纬值,上式的 T 即为该值的 10 倍。t 系指该时日与最临近的一次月亮过黄白交点时刻之差,τ = 7356366 (“交法”),T0 为该日的月亮极黄纬值,△ 1 和△ 2 分别为该日后相邻两日的T0 值之差。T0 (“衰积”)、△1和△ 2 (“去交衰”)均可由月亮入交去黄道表查得。

由上式要求任一时日太阳实行度与平行度之差 T,式中的 t 系指某节气初月与所求时日的间距。τ为一节气的日数,对于秋分后到春分前的各节气,

τ = 16 ×10 = 14.54日;对于春分后到秋分前的各节气,τ = 17 ×10 = 15.45日。

11 11

它们分别是秋分到春分和春分到秋分的每一个定气日数平均值的约

数,其准确值应分别为14.76日和15.68日。T0 指节气太阳实行度与平行度之差。△1和△ 2 分别为某节气后相邻两节气的T0 之差。T0 (“衰总”)、

△1和△ 2 (“躔衰”)均可由日躔表查得。

由上式还可求因太阳运动不均匀导致的平塑到定朔的改正值 T 等。

一行发展和完善了刘焯的等间距二次差内插法,发明了不等间距二次差内插法,这一方法适用于以定气为基准的数值表格的计算。

一行还进行了三次差内播法的探索,给出了近似公式,可惜没有获得最后成功。

一行对于黄赤道宿度变换、黄白道宿度变换等的计算法,也作了新的测算与归纳,其中黄白道宿度变换法的精度比前人高出许多,对后来产生了较大的影响。