〔4〕冬至前后盈初缩末限,八十八日九十一刻,就整。离为六段,每段各得一十四日八十二刻。(就整。)各段实测日躔度数,与平行相较,以为积差。
冬至前后,太阳运行速度从快变慢的界限是88天91刻(取整)。将其分成六段,每段14天82刻(取整)。每段实际观测太阳运行的度数,与平均运行度数比较,得出累积差值。
〔12〕各置其段积差,以其段积日除之,为各段日平差。置各段日平差,与后段日平差相减,为一差。置一差,与后段一差相减,为二差。
将每段的累积差值除以该段的天数,得到每段的日平均差值(日平差)。将各段的日平差与后一段的日平差相减,得到一差。再将一差与后一段的一差相减,得到二差。
〔20〕置第一段日平差,四百七十六分二十五秒,为汎平积。以第二段二差一分三十八秒,去减第一段一差三十八分四十五秒,余三十七分零七秒,不汎平积差。另置第一段二差一分三十八秒,折半得六十九秒,为汎立积差。以汎平积差三十七分零七秒,加入汎平积四百七十六分二十五秒,共得五百一十三分三十二秒,为定差。
取第一段的日平差476.25分,作为泛平积。用第二段的二差1.38分减去第一段的一差38.45分,得到37.07分,作为泛平积差。另外取第一段的二差1.38分,折半得到0.69分(69秒),作为泛立积差。将泛平积差37.07分加到泛平积476.25分上,得到513.32分,这就是定差。
〔21〕以汎立积差六十九秒,去减汎平积差三十七分零七秒,余三十六分三十八秒为实,以段日一十四日八十二刻为法除之,得二分四十六秒为平差。置汎立积差六十九秒为实,以段日为法除二次,得三十一微,为立差。
用泛立积差69秒减去泛平积差37.07分,得到36.38分作为被除数,以段日14.82天为除数,得到2.46分作为平差。将泛立积差69秒作为被除数,用段日连续除两次,得到31微作为立差。
〔22〕夏至前后缩初盈末限,九十三日七十一刻,(就整。)离为六段,每段各得一十五日六十二刻。(就整。)各段实测日躔度数,与平行相较,以为积差。
夏至前后,太阳运行速度从慢变快的界限是93天71刻(取整)。将其分成六段,每段15天62刻(取整)。每段实际观测太阳运行的度数,与平均运行度数比较,得出累积差值。
〔38〕置第一段日平差,四百五十一分九十二秒,为汎平积。以第一段二差一分三十三秒,去减第一段一差三十六分四十七秒,余三十一分一十四秒,为汎平积差。另置第一段二差一分三十三秒折半,得六十六秒五十微,为汎立积差。以汎平积差三十五分一十四秒,加入汎平积四百五十一分九十二秒,共四百八十七分零六秒,为定差。以汎‘立积差六十六秒五十微,去减汎平差三十五分一十四秒,余三十四分四十七秒五十微为实,以段日一十五日六二为法除之,得二分二十一秒,为平差。置汎立积差六十六秒五十微为实,以段日为法,除二次,得二十七微,为立差。
取第一段的日平差451.92分,作为泛平积。用第一段的一差36.47分减去第一段的二差1.33分,得到35.14分,作为泛平积差。另外取第一段的二差1.33分,折半得到0.665分(66秒50微),作为泛立积差。将泛平积差35.14分加到泛平积451.92分上,得到487.06分,这就是定差。用泛立积差66.5微减去泛平积差35.14分,得到34.475分作为被除数,以段日15.62天为除数,得到2.21分作为平差。将泛立积差66.5微作为被除数,用段日连续除两次,得到27微作为立差。
〔39〕凡求盈缩,以入历初末日乘立差,得数以加平差,再以初末日乘之,得数以减定差,余数以初末日乘之,为盈缩积。
凡是求太阳运行速度变化的积差,用进入历法的初日或末日数值乘以立差,得到的结果加上平差,再乘以初末日数值,得到的结果从定差中减去,剩下的数值再乘以初末日数值,就得到盈缩积差。
〔40〕凡盈历以八十八日九零九二二五为限,缩历以九十三日七一二零二五为限。在其限已下为初,以上转减半岁周余不末。盈初是人冬至后顺推,缩末是从冬至前逆溯,其距冬至同,故其盈积同。缩初是从夏至后顺推,盈末是从夏至前逆溯,其距夏至同,故其缩积同。
凡是盈历以88.909225天为界限,缩历以93.712025天为界限。在界限以下的部分称为“初”,以上部分则用半岁周减去后剩余部分称为“末”。盈初是从冬至后顺推,缩末是从冬至前逆推,它们距离冬至的天数相同,所以盈积相同。缩初是从夏至后顺推,盈末是从夏至前逆推,它们距离夏至的天数相同,所以缩积相同。
〔42〕盈缩招生,本为一象限之法。(如盈历则以八十八日九十一刻为象限,缩历则以九十三日七十一刻为象限。)今止作九限者,举此为例也。其空格九行定差本数,为实也。其斜绵以上平差立差之数,为法也。斜绵以下空格之定差,乃余实也。假如定差为一万,平差为一百,立差为单一。今求九限法,以九限乘定差得九万为实。另置平差,以九限乘二次,得八千一百。置立差,以九限乘三次,得七百二十九。并两数得八千八百二十九为法。以法减实,余八万一千一百七十一,为九限积。又法,以九限乘平差行九百,又以九限乘立差二次得八十一,并两数得九百八十一为法,定差一万为实,以法减实,余九千零一十九,即九限末位所书之定差也。于是瑞以九限乘余实,得八万一千一百七十一,为九限积,与前所得不同。盖前法是先乘后减,又法是先减后乘,其理一也。
盈缩计算的“招差法”,原本是以一个象限(90度)为范围的。比如盈历以88天91刻为象限,缩历以93天71刻为象限。现在只做九限(九个分段),是举例说明。表格中空着的九行,其定差本数是“实”(被除数)。斜线以上的平差、立差数值是“法”(除数)。斜线以下空着的定差,是余下的实。假设定差为10000,平差为100,立差为1。现在求九限的积:用九限乘以定差得90000为实。另外用平差乘以九限的二次方得8100,用立差乘以九限的三次方得729,两者相加得8829为法。用实减去法,得81171,这就是九限的积。另一种方法:用九限乘以平差得900,再用九限的二次方乘以立差得81,两者相加得981为法,定差10000为实,实减法治9000-981=9019,这就是九限末位所写的定差。然后用九限乘以这个余实,得81171,与之前得到的九限积相同。可见前一种方法是先乘后减,后一种方法是先减后乘,道理是一样的。
〔43〕按《授时历》于七政盈缩,并以垛积招差立算,其法七巧合天行,与西人用小轮推步之法,殊途同归。然世所传《九章》诸书,不载其术,《历草》载其术,而不言其故。宣城梅文鼎为之图解,于平差、立差之理,垛积之法,皆有以发明其所以然。有专书行于世,不能备录,谨录《招生图说》,以明立法之大意云。
按《授时历》对于日月五星的盈缩计算,都采用垛积招差法,这个方法非常精确地符合天体运行规律,与西方人用小轮(本轮均轮)推步的方法,是殊途同归。但是世间流传的《九章算术》等书,没有记载这个方法,《历草》记载了方法,但没有说明原因。宣城人梅文鼎为它作图解,对于平差、立差的道理,垛积的方法,都阐明了其中的原理。他有专门著作流行于世,这里不能全部收录,仅收录《招生图说》,以说明立法的大意。
〔44〕凡布立成盈初缩末 置立差三十一微,以六因之,得一秒八十六微,为加分立差。置平差二分四十六秒,倍之,得四分九十二秒,加入加分立差,得四分九十三秒八十六微,为平立合差。
在编制盈初缩末的立成表时,取立差31微,乘以6,得到1秒86微,作为加分立差。取平差2分46秒,加倍得到4分92秒,加上加分立差,得到4分93秒86微,作为平立合差。
〔45〕置定差五百一十三分三十二秒,内减平差二分四十六秒,再减立差三十一微,余五百一十零分八十五秒六十九微,为加分。
取定差513.32分,减去平差2.46分,再减去立差31微,得到510.8569分,作为加分。
〔46〕缩初盈末 置立差二十七微,以六因之,得一秒六十二微,为加分立差。置平差二分二十一秒,倍之,得四分四十二秒,加入加分立差,得四分四十三秒六十二微,为平立合差。
对于缩初盈末,取立差27微,乘以6,得到1秒62微,作为加分立差。取平差2分21秒,加倍得到4分42秒,加上加分立差,得到4分43秒62微,作为平立合差。