因网站公式编辑器bug,输入'无法显示,故改为加点表示。如A'表示为。
释文
数:
《仪天》岁差一百一十八、秒九十九,一象度九十一、余三千一百四十二、秒五十,盈初缩末限分八十九万七千六百九十九、秒五十,限日八十八、余八千八百九十九、秒五十,缩初盈末限分九十四万六千七百八十五、秒五十,限日九十三、余七千四百八十五、秒五十,盈缩积二万四千五百四十三,进退率一千八百三十六,秒母一百。
限分为二分二至间定气长的累积值,以分表示,限日则以日表示。
术:
《仪天》以宗法乘盈缩积,以其限分除之,为限率分,倍之,为未限平率;日分乘之,亦以限分除之,为日差;半之,加减初、末限平率,在初者减初加末,在末者减末加初,为末定率;乃以日差累加减限初定率,初限以减、末限以加,为每日盈缩定分;各随其限盈加缩减其下先后数,为每日先后定数;冬至后积盈为先,在缩减之;夏至后,积缩为后,在盈减之。其进退率、升平积准此求之,即各得其限每日进退率、升平积也。
又《仪天》有求四正节定日,去冬、夏二至盈缩之中,先后皆空,以常为定;其春、秋二分盈缩之极,以一百乘盈缩积,满宗法为日,先减后加,去命如前,各得定日。若求朔、弦、望盈缩限日,以天正闰日及余减缩末限日及分,余为天正十一月经朔加时入限日及余;以弦策累加之,即得弦、望及后朔初、末限日;各置入限日及余,以其日进退率乘之,如宗法而一,所得,以进退其日下升平积,即各为定数。
这段文字非常简省,其“初”、“末”有三种含义:初末限(即盈初缩末缩初盈末四限)、初末限平率、初末定率。“盈”、“缩”有两种含义:盈缩积、盈缩分。下详。
以宗法乘盈缩积,以其限分除之,为限率分,倍之,为未限平率:末限平率应为初末限平率,在冬至-春分或夏至-秋分为初限平率,在春分-夏至或秋分-冬至为末限平率。例:
冬至-春分:用盈初限分,盈缩积为盈,盈缩分为盈,值为初限平率。
春分-夏至:用盈末限分,盈缩积为盈,盈缩分为缩,值为末限平率。
夏至-秋分:用缩初限分,盈缩积为缩,盈缩分为盈,值为初限平率。
秋分-冬至:用缩末限分,盈缩积为缩,盈缩分为缩,值为末限平率。
日分乘之,亦以限分除之,为日差,半之,加减初、末限平率,在初者减初加末,在末者减末加初,为末定率:日分即日法为分。初末限平率既是各限初末平率,也是各限初日的初平率或末日的末平率。“减初加末”即减为初加为末,“减末加初”即减为末加为初。
此处有缺文或简省,对于盈初缩初限,结果为初定率。对于盈末缩末,只求得末定率,下文求每日盈缩定分只用限初定率,故应再以2倍限率分减之,得限初定率。
“在初者减初加末”即在盈初或缩初时,初日平率减半日差为初日定率(初日定率即初日内半日处的平率);末日平率加半日差为末日定率。“在末者减末加初”即在盈末或缩末时,末日平率减半日差为末日定率,初日平率加半日差为初日定率。
冬至-春分(盈初)、夏至-秋分(缩初):在初者减初加末
春分-夏至(盈末)、秋分-冬至(缩末):在末者减末加初
乃以日差累加减限初定率,初限以减、末限以加,为每日盈缩定分:初限为盈初缩初,末限为盈末缩末。
仪天历并未指出“每日”的范围,按其他分象限计算的历法一般将每日定为二至后。即冬至-夏至共182日的每个整数日,及夏至-冬至共182日的每个整数日。从二至起每日日数为i(整数)。
冬至-春分(盈初):
夏至-秋分(缩初):
春分-夏至(盈末):
秋分-冬至(缩末):
冬至-春分(盈初)、夏至-秋分(缩初):
春分-夏至(盈末)、秋分-冬至(缩末):
各随其限盈加缩减其下先后数,为每日先后定数;冬至后积盈为先,在缩减之;夏至后,积缩为后,在盈减之:盈初缩初限的限初先后数为0,盈末缩末限的限初先后数为盈缩积。
冬至-春分(盈初,在盈,先):
春分-夏至(盈末,在缩,后):
夏至-秋分(缩初,在盈,先):
秋分-冬至(缩末,在缩,后):
其中∑盈缩定分,即以限初定率为初项、日差为公差的等差数列之和。即:
冬至-春分(盈初)、夏至-秋分(缩初):递减数列
春分-夏至(盈末)、秋分-冬至(缩末):递增数列
以符号表示,本限盈缩积为Δ1(盈初缩末限用正,盈末缩初限用负),限日为s,所求入限日为t。即有
盈初缩末:
盈末缩初:
代入先后定数公式:
冬至-春分(盈初,在盈)、夏至-秋分(缩初,在盈):
春分-夏至(盈末,在缩)、秋分-冬至(缩末,在缩):
至此为仪天历所求每日先后定数,在不同象限表达式不同。
而若在缩时,令,即得
,二式合并:
,可获得统一的计算公式,此即相减相乘法的一般式。该式在盈初缩初时t为入限日,在盈末缩末时t为限日-入限日。
此亦实为等间距二次插值法的特殊式。仪天历对各限进行插值,以本限盈缩积为Δ1,后限盈缩积为Δ2,则其前后限的盈缩积刚好相反,有Δ2=﹣Δ1,前后限限日相近,皆设为s,代入等间距二次插值公式
即得上式。t值在不同象限变化与上相同。
故知在分象限计算时,无论使用相减相乘法或等间距二次插值法,需注意在不同象限t值略异,在末限时需反减限日。而相减相乘法不用初末率,优势在于形式简单,计算方便。
仪天历的术文表达方式与使用等间距二次内插法的历法相同,而不同于相减相乘法,后者更为简洁。仪天历在不同象限的限日取不同值,似乎想要得到如不等间距二次插值法一样更精确的结果。但实际反而不如使用平象限91.3109日的算法。原因在于,定象限法在求盈初缩末象限时,将盈初缩末限分作为缩初盈末限分,前后象限和仅为176.76日;而在求缩初盈末象限时,将缩初盈末限分作为盈初缩末限分,前后象限和则有187.48日。(其后观天历的“倍初末限日及约分于下”即此表达。)与半岁长182.62日相差皆过大。下图中提供了几种计算方法求每日先后定数的对比,可见使用平象限精度要高于定限。唐代《符天历》和《崇玄历》都选用平象限,是正确认识到相减相乘法的等间距插值本质。

其进退率、升平积准此求之:用进退率1836代替以上各式中盈缩积24543,以上所求每日盈缩定分即进每日进退定率,先后定数即升平定积。
求四正节定日:所求定日为冬至到四正节的定积日,即冬至-二分二至的各气定日之和,并非一气内的定日。以冬至气序从0起排,则:
去冬、夏二至盈缩之中,先后皆空,以常为定:冬夏二至的盈积与缩积相等,即先后数为0。此时定日与常日相等。
其春、秋二分盈缩之极,以一百乘盈缩积,满宗法为日,先减后加,去命如前,各得定日:盈缩积与春秋二分的先后数相等,春分为先用减,秋分为后用加。依算理此段应改为:“以盈缩积,满宗法为日,加减常日,先减后加,去命如前,各得定日”。
各置入限日及余,以其日进退率乘之,如宗法而一,所得,以进退其日下升平积,即各为定数:“各置入限日及余”,所置入限日用以对照前已求的每日进退率及升平积,得到该日的进退率及升平积。所置入限余用以乘下文进退率。“进退率”为该入限日的进退定率,即该日半日处的平率。
以上求每日进退率用二次插值法,最后求不足一日的进退率又改用简单内插法。盖每日盈缩进退皆备为立成,用时查表即可,非每次依术为算。

图解
等间距二次插值法

如图所示,AB为盈初限日,BC为盈末限日,CD为缩初限日、DE为缩末限日。I为AB中点。K为所求点。
,
,
,
,
;
同理,,
,
,
,
以盈初限为例,AA'为入限第一日,A''为AA'中点。AK=t,KK‘为入限第t-1日,K''为KK'中点。
求先后定数即求A点到所求点K的面积之和
由梯形面积公式:,即第一日的盈缩定分
同理,,即第t日的盈缩定分
,为入限t日内的盈缩定分(即各日梯形面积)的累加值
,
即首项为,公差为
,项数为t的递减数列,
相减相乘法

如图所示,AB为盈初限日,BC为盈末限日,CD为缩初限日、DE为缩末限日。I、K为所求点。
有AB=BC=CD=DE=s,,
以盈初限为例(缩初同),,
由相似三角形,,
以盈末限为例(缩末同),,
,
同理,
参考资料:
中华书局,《历代天文律历等志汇编》
王荣彬,中国古代历法的中心差算式之造术原理
滕艳辉,宋代朔闰与交食研究
网友评论