白话版《宋书》志·卷十三

历下《元嘉历法》

上元庚辰甲子纪首到太甲元年癸亥,共三千五百二十三年;到元嘉二十年癸未,共五千七百零三年,不算当年。

元法,三千六百四十八。

章岁,十九。

纪法,六百零八。

章月,二百三十五。

纪月,七千五百二十。

章闰,七。

纪日,二十二万二千零七十。

度分,七十五。

度法,三百零四。

气法,二十四。

余数,一千五百九十五。

岁中,十二。

日法,七百五十二。

没余,三十六。

通数,二万二千二百零七。

通法,四十七。

没法,三百一十九。

月周,四千零六十四。

周天,十一万一千零二十五。

通周,二万零七百二十一。

周日日余,四百一十七。

周虚,三百三十五。

会数,一百六十。

交限数,八百五十九。

会月,九百二十九。

朔望合数,八十。

甲子纪第一(迟疾差一万七千六百六十三,交会差八百七十七)

甲戌纪第二(迟疾差三千零四十三,交会差二百七十九)

甲申纪第三(迟疾差九千一百四十四,交会差六百二十)

甲午纪第四(迟疾差一万五千二百四十五,交会差二十二)

甲辰纪第五(迟疾差六百二十五,交会差三百六十三)

甲寅纪第六(迟疾差六千七百二十六,交会差七百零四)

推入纪法:从上元庚辰到所求年,用元法除,余数用纪法除,余下的数不满纪法,就是入纪年数。满纪法就减去,得后一纪。(从甲午纪壬辰年到现在元嘉二十年癸未,共二百三十一年,不算当年。)

推积月术:入纪年数加一,乘以章月,除以章岁得积月,余数为闰余。闰余十二以上,当年有闰月。

推朔术:通数乘积分得朔积分,除以日法得积日,余数为小余。积日除以六十,余数为大余,从纪首的甲子起算,加一就是所求年正月朔日。

求次月,加大余二十九,小余三百九十九,小余满日法进大余,就是次月朔日。小余三百五十三以上,为大月。

推弦望法:加朔大余七,小余二百八十七,小分三,小分满四进小余,小余满日法进大余,算法同上,得上弦日。再加得望,再加得下弦。

推二十四气术:入纪年数加一,乘以余数,除以度法三百零四得积没,余数为小余。积没除以六十,余数为大余,从纪首起算,加一就是所求年雨水日。求次气,加大余十五,小余六十六,小分十一,小分满气法进小余,小余满度法进大余,得次气日。(雨水在十六日以后的,按方法减去,得立春。)

推闰月法:章岁减闰余,余数乘岁中,除以章闰得一月,从正月起算,加一就是闰月所在。闰月有进退,以无中气为正。

立春正月节(限数一百九十四,间数一百九十)

雨水正月中(限数一百八十六,间数一百八十二)

惊蛰二月节(限数一百七十七,间数一百七十二)

春分二月中(限数一百六十七,间数一百六十二)

清明三月节(限数一百五十八,间数一百五十四)

谷雨三月中(限数一百四十九,间数一百四十五)

立夏四月节(限数一百四十二,间数一百三十九)

小满四月中(限数一百三十六,间数一百三十四)

芒种五月节(限数一百三十三,间数一百三十二)

夏至五月中(限数一百三十一,间数一百三十二)

小暑六月节(限数一百三十三,间数一百三十四)

大暑六月中(限数一百三十六,间数一百三十九)

立秋七月节(限数一百四十二,间数一百四十五)

处暑七月中(限数一百四十九,间数一百五十三)

白露八月节(限数一百五十七,间数一百六十二)

秋分八月中(限数一百六十七,间数一百七十二)

寒露九月节(限数一百七十七,间数一百八十二)

霜降九月中(限数一百八十六,间数一百九十)

立冬十月节(限数一百九十四,间数一百九十七)

小雪十月中(限数二百,间数二百零三)

大雪十一月节(限数二百零五,间数二百零六)

冬至十一月中(限数二百零七,间数二百零六)

小寒十二月节(限数二百零五,间数二百零三)

大寒十二月中(限数二百,间数一百九十七)

推没灭术:用雨水的积数乘以没余,除以没法得大余,余数为小余,算法同上,得到所求年雨水前的没日。求下一个没日,加大余六十九,小余一百九十六,小余满没法就进到大余,算法同上,得到雨水后的没日。(雨水前的没日多在去年,通常有五个没日,官府用没日来校正历法,一年通常有五个或六个没日。小余为零的那天就是灭日。)如果雨水的小余在三十九以下,那么要在雨水六十天后才有没日。

推土用事法:取立春的大小余和小分,减去大余十八、小余七十九、小分十八,从纪首的甲子起算,加一就是立春前土用事的日子。如果大余不够减就加六十;小余不够减,就减大余一,加度法后再减。立夏、立冬求土用事的日子都按这个方法计算。

推日所在度法:用度法乘以朔积日得到度实,减去周天的倍数,余数除以度法得积度,余数为度分,从室宿二度开始计算,按宿次递减,加一就是正月朔日夜半太阳所在的度数和分数。求第二天,加一度,经过室宿时要减去度分。

推月所在度法:用月周乘以朔积日,减去周天的倍数,余数除以度法得积度,余数为度分,按前面的方法确定度数,就是正月朔日夜半月亮所在的度数和分数。求次月,小月加二十二度、一百三十三分;大月加三十五度、二百四十五分,分数满度法就进为一度,按前面的方法确定度数,就是次月朔夜月亮所在的度数和分数。按先月法:用十六除月行分得到大分,加上所入的迟疾分,经过室宿时减去度分。

推合朔月食术:取所求年的积月,乘以会数一百六十,加上所入纪的交会差二十二,减去会月的倍数,余数就是当年正月朔时离交会点的分数。求次月,加会数,减去会月的倍数。求望时,加合数。朔望时离交会点的分数如果在合数以下、交限数以上,朔时就会发生交会,望时就会发生月食。

推入迟疾历法:取所求年的朔积分,加上所入纪的迟疾差(一万五千二百四十五),减去通周的倍数,余数除以日法得一日,余数为日余,日加一就是所求年正月朔入历的日子。求次月,加一日,日余七百三十四。求望时,加十四日,日余五百七十五点五。日余满日法就进为一日,日满二十七就减去,日余比周日日余小的,减一日,加周虚。(日满二十七而日余不满周日日余,称为 “损”。满周日就减去,作为入历一日。)

推合朔月食定大小余法:用入历的日余乘以入历的损益率,(入历第一天,增益二十五,就是这样。)来增减盈缩积分,(遇到 “损” 就减,遇到 “益” 就加。)得到定积分。用入历的日余乘以列差,满日法后盈就减、缩就加差法,得到定差法。用定差法除定积分,所得的数盈就减、缩就加本朔望的小余,(遇到盈就减,遇到缩就加。)得到定小余。相加后满日法,合朔月食就进一日;相减后不够减,就加日法再减,退一日。遇到周日,用周日定数。

推加时:用十二乘定小余,满日法得一辰,从子起算,加一就是朔望加时所在的辰。有余数的乘以四,满日法得一为 “少”,二为 “半”,三为 “太半”。还有余数的乘以三,满日法得一为 “强”,半法以上算为一,不满半法就舍弃。用 “强” 加 “少” 为 “少强”,加 “半” 为 “半强”,加 “太” 为 “太强”。得到两个 “强” 为 “少弱”,用 “少弱” 加 “少” 为 “半弱”,加 “半” 为 “太弱”,加 “太” 为 “一辰弱”。用所在的辰来命名,就能各自得到 “少”“太”“半” 以及 “强”“弱” 了。

推合朔月食加时满刻法:各用一百刻乘定小余,除以日法;余数乘十得分。先减去夜漏的一半,就是昼漏的加时刻及分。昼漏结束后,就进入夜漏。在中节前后四天内的,看限数;在中节前后五天以上的,看间限数。月食加时定小余不满限数、间数的,都算上一天。

月行迟疾度

损益率

盈缩积分

列差差法一日

十四度十三分益二十五

二二百六十二日

十四度十一分益二十三

盈万八千八百

三二百五十八三日

十四度八分

益二十

盈三万六千九十六

四二百五十五四日

十四度四分益十六

盈五万一千一百三十六五二百五十一五日

十三度十八分益十一

盈六万三千一百六十八五二百四十六六日

十三度十三分益六

盈七万一千四百四十

六二百四十一七日

十三度七分

盈七万五千九百五十二五二百三十五八日

十三度二分

损五

盈七万五千九百五十二四二百三十九日

十二度十七分损九盈七万二千一百九十二三二百二十六十日

十二度十四分损十二盈六万五千四百二十四三二百二十三十一日十二度十一分损十五

盈五万六千四百

三二百二十十二日十二度八分

损十八

盈四万五千一百二十

二二百一十七十三日十二度六分

损二十

盈三万一千五百八十四二二百一十五十四日十二度四分

损二十二

盈一万六千五百四十四二二百一十三十五日十二度二分

益二十四

二二百一十一十六日十二度四分

益二十二

缩一万八千四十八

二二百一十三十七日十二度六分

益二十

缩三万四千五百九十二三二百一十五十八日十二度九分

益十七

缩四万九千六百三十二五二百一十八十九日十二度十四分益十二

缩六万二千四百一十六六二百二十三二十日十三度一分

益六

缩七万一千四百四十六二百二十九廿一日十三度七分

缩七万五千九百五十二五二百三十五廿二日十三度十二分损五

缩七万五千九百五十二四二百四十廿三日十三度十六分损九

缩七万二千一百九十二四二百四十四廿四日十四度一分

损十三

缩六万五千四百二十四四二百四十八廿五日十四度五分

损十七

缩五万五千六百四十八三二百五十二廿六日十四度八分

损二十

缩四万二千八百六十四三二百五十五廿七日十四度十一分损二十三

缩二万七千八百二十四二二百五十八周日

十四度十三分损二十五定缩一万五百二十八定备

二百六十定

小分一百三损二百二十四九万三千四百八

意差法二千

三百九

推合朔度:用章岁乘朔小余,满通法得大分,余数为小分。把大分加到朔夜半太阳的度数分数上,分数满度法就进为一度,按前面的方法确定度数,就是正月朔日月合朔时共同所在的度数。

求次月,加二十九度、一百六十一分、十四小分,小分满通法就进为大分,大分满度法就进为一度。经过室宿时减去度分。求望时,加十四度、二百三十二分、三十点五小分。(求望月所在的度数,加日度一百八十二、一百八十九分、二十三点五小分。)

推五星法:二十四气日所在度

日中晷影

昼漏刻

夜漏刻雨水

室太(强)

八尺二寸二分

五十五分

四十九五分惊蛰壁一(强)

六尺七寸二分

五十二九分四十七一分春分

奎七(少强)五尺三寸九分

五十五五分四十四五分清明

娄六(半)

四尺二寸五分

五十八

四十二谷雨

胃九(太弱)三尽二寸五分六十三分

三十九七分立夏

昴十一(弱)二尺五寸

六十二三分三十七七分小满

毕十五(少弱)一尺九寸七分

六十三九分三十六一分芒种

井三半(弱)一尺六寸九分

六十四八分三十五二分夏至

井十八

一尺五寸

六十五

三十五小暑

鬼一(弱)

一尺六寸九分

六十四八分三十五二分大暑

柳十二(弱)一尺九寸七分

六十三九分三十六一分立秋

张五(半强)二尺五寸六十二三分三十七七分处暑

翼二(半)

三尺二寸五分

六十三分

三十九七分白露

翼十七(太弱)四尺二寸五分

五十八

四十二秋分

轸十五

五尺三寸九分

五十五五分四十四五分寒露亢一(少)

六尺七寸二分

五十二九分四十七一分霜降

氐七(半)

八尺二寸八分

五十五分

四十九五分立冬

心二(半弱)九尺九寸一分

四十八四分五十一六分小雪

尾十二(太强)一丈一尺三寸四分四十六七分五十三三分大雪

箕十

一丈二尺四寸八分四十五六分五十四四分冬至

斗十四(强)一丈三尺

四十五五十五小寒

牛三半(强)一丈二尺四寸八分四十五六分五十四四分大寒

女十半(强)一丈一尺三寸四分四十六七分五十三三分立春

危四

九尺九寸一分

四十八四分五十一六分二十四气昏中星明中星雨水

觜一少强

尾十一强惊蛰

井九半

箕四少弱春分

井二十九半强斗四弱清明

柳十二太

斗十四半谷雨

张十

斗二十五半立夏

翼十太弱

女三少小满

轸十弱

虚二弱芒种

角十太弱

危七弱夏至

氐五少弱

室五少强小暑房四太弱

壁六太弱大暑

尾八太弱

奎十二太弱立秋

箕三

胃二太弱处暑

斗三半

昴七太弱白露

斗十四半弱毕十六半弱秋分

斗二十五少强井九少强寒露

牛八半强

井二十九弱霜降

女十一半弱柳十一半强立冬

危二弱

张八太弱小雪危十三半强翼八太强大雪

室九半强

轸八少强冬至

壁八太强角七少强小寒

奎十五少

亢九大寒

胃四半强

氐十三太强立春

昴九少

心四强

推五星法:

星名       合岁       合数       日度法       室分

木       三百四十四       三百一十五       九万五千七百六十       二万三千六百二十五

火       四百五十九       二百一十五       六万五千三百六十       一万六千一百二十五

土       三百八十三       三百七十       一十一万二千四百八十       二万七千七百五十

金       二百六十七       一百六十七       五万零七百六十八       一万二千五百二十五

水       七十九       二百四十九       七万五千六百九十六       一万八千六百七十五

木后元丙戌,晋咸和元年,到元嘉二十年癸未,一百一十八年,不算当年。

火后元乙亥,元嘉十二年,到元嘉二十年癸未,九年,不算当年。

土后元甲戌,元嘉十一年,到元嘉二十年癸未,十年,不算当年。

金后元甲申,晋太元九年,到元嘉二十年癸未,六十年,不算当年。

水后元乙丑,元嘉二年,到元嘉二十年癸未,十九年,不算当年。

推五星法:各从其历元到所求年,加一,用合数相乘,满合岁得积合,余数为合余。合余多的用合数除,得一为星合往年,得二为合前往年,不满合数的,合在当年。(木、土、金有往年合,火有前往年合,水一年三合或四合。)用合数减合余得度分,(水的度分满合岁就减去。)用周天(十一万一千零三十五)乘度分,满日度法得积度,余数为度余。从室宿二度起算,加一就是星合所在的度数。用合数乘当年数,加上雨水小余,再加度余得日余,日余满日度法就进积度为日,从雨水起算,加一就是星合日。求星见日的方法:用法定的伏日及余(木就是十六日及余,像这样。)加星合日及余,日余满日度法就进为一日,按前面的方法确定日期,就是星见日。求星见度的方法:用法定的伏度及余(木就是二度及余,像这样。)加星合度及余,度余满日度法就进为一度,按前面的方法确定度数,就是星见度。用星行分母(木就是二十三,像这样。)乘见度余,满日度法得一,分就是每日所加的行分。(木顺行每日四分。)分满分母就进为一度,逆行和顺行的分母不同,(木逆行分母是七。)应当各乘度余,停滞时承接前面的度数,逆行时就减去,伏时不记录度数,经过室宿时减去分,不够减的,就减一度。(五星的室分不同,如果在行分中,各依室分减去。)

木:起初与太阳会合,隐藏不见,顺行十六日,日余四万一千七百八十,运行二度,度余七万七千八百四十七半,早晨出现在东方。(离太阳十三度半多。)顺行,每日行二十三分之四,一百一十五日运行二十度。停滞不动,二十六日后逆行。每日行七分之一,八十四日退行十二度。又停滞二十六日。顺行,一百一十五日运行二十度,傍晚隐藏在西方,日度余和起初一样,与太阳会合。一终三百九十八日,日余八万三千五百六十,运行三十三度,度余五万九千九百三十五。

火:起初与太阳会合,隐藏不见,七十一日,日余二万四千八百一十二半,运行五十四度,度余四万九千四百三十,早晨出现在东方。(离太阳十七度半多。)顺行,快速,每日行七分之五,一百零八日半运行七十七度半。稍慢,每日行七分之四,一百二十六日运行七十二度后更慢。每日行七分之二,四十二日运行十二度。停滞不动,十二日后缓慢。每日行十分之三,六十日退行十八度。又停滞十二日。顺行,缓慢,四十二日运行十二度。稍快,一百二十六日运行七十二度。一百零八日半运行七十七度半,傍晚隐藏在西方,日度余和起初一样,与太阳会合。一终七百七十九日,日余四万九千六百二十五,运行四百一十四度,度余三万三千五百。除去一周,确定运行四十九度,度余一万七千三百七十五。

土:起初与太阳会合,隐藏不见,十八日,日余四千四百八十二半,运行二度,度余四万六千八百四十七半,早晨出现在东方。(离太阳十五度半多。)顺行,每日行十二分之一,八十四日运行七度。停滞不动,三十六日后逆行。每日行十七分之一,一百零二日退行六度。又停滞三十六日。顺行,八十四日运行七度,傍晚隐藏在西方,日度余和起初一样,与太阳会合。一终三百七十八日,日余八千九百六十五,运行十二度,度余九万三千六百九十五。

金:起初与太阳会合,隐藏不见,四十一日,日余四万九千六百八十四半,运行五十一度,度余四万九千六百八十四半,出现在西方。(离太阳十度。)顺行,快速,每日行一度十三分之三,九十一日运行一百一十二度后稍慢。每日行一度十三分之二,九十一日运行一百零五度。又更慢。每日行十五分之十一,四十五日运行三十三度。停滞不动,八日后缓慢。每日行三分之二,九日退行六度,隐藏在西方。隐藏六日,退行四度后与太阳会合。又六日退行四度,早晨出现在东方。逆行,九日退行六度。又停滞八日。顺行,四十五日运行三十三度。稍快,九十一日运行一百零五度。快速,九十一日运行一百一十二度,早晨隐藏在东方,日度余和起初一样,与太阳会合。一终五百八十三日,日余四万八千六百零一。除去一周,确定运行二百一十八度,度余三万六千零七十六。一合二百九十一日,余四万九千六百八十四半,运行的度数也这样。

水:起初与太阳会合,隐藏不见,十七日,日余七万一千二百一十半,运行三十四度,度余七万一千二百一十半,出现在西方。(离太阳十七度。)顺行,快速,每日行一度三分之一,十八日运行二十四度后缓慢。每日行七分之五,七日运行五度。停滞不动,四日,傍晚隐藏在西方。隐藏十一日,退行六度后与太阳会合。又十一日退行六度,早晨出现在东方。停滞四日。顺行,缓慢,七日运行五度。快速,十八日运行二十四度,早晨隐藏在东方,日度余和起初一样,与太阳会合。一终一百一十五日,日余六万六千七百二十五,运行的度数也这样。一合五十七日,日余七万一千二百一十半,运行的度数也这样。盈加缩减,用十六除月行分,用日法除盈缩分,来减度分,盈加缩减。

推卦:根据雨水的大小余,加大余六,小余三百一十九,小余满三千六百四十八就进为日。日满二十七日余不足加减的不加周虚。

元嘉二十年,何承天上奏尚书:“如今已经改用《元嘉历》,漏刻和以前不同,应该改革。按《景初历》春分白天长,秋分白天短,一直沿用的漏刻,冬至后白天的漏刻通常比冬至前长。而且长短增减,没有渐变,不仅是旧法不精密,也有传写错误。现在二至二分,各按正确的时刻。那么二至前后,不再有差异。再增减旧刻,参考晷影,删定为规范,改用二十五箭。请台省命令漏郎将考验后施用。” 皇帝听从了他的建议。

前代儒者依照图纬说月亮运行有九条轨道。所以画九个圆规,互相交错,检查它的运行次序,快慢变换,不能顺着度数。刘向论述九道说:“青道二从黄道东边出来,白道二从黄道西边出来,黑道二从北边出来,赤道二从南边出来。” 又说:“立春、春分,向东顺着青道;立夏、夏至,向南顺着赤道。秋天白道冬天黑道,各顺着它们的方向。” 按太阳运行在黄道,是阳路,月亮是阴精,不顺着阳路,所以有时出在黄道外,有时入在黄道内,出入离黄道不超过六度。进入十三天多出来,出来也十三天多进入,共二十七天一入一出。在黄道上相交,与太阳相掩,就会发生日食。汉代刘洪推算月亮运行,制作阴阳历法。元嘉二十年,太祖让著作令史吴癸依照刘洪的方法,制作新术,让太史施用。

《元嘉历》月行阴阳法:

阴阳历

损益率

兼数

一日

益十七

二日(前限馀六百六十五微分一千七百三十八)

益十六

十七

三日

益十五

三十三

四日

益十二

四十八

五日

益八

六十

六日

益四

六十八

七日

益一

七十二

八日

损二

七十三

九日

损六

七十一

十日

损十

六十五

十一日

损十三

五十五

十二日

损十五

四十二

十三日(後限馀二千一十九微分一千七十九)

损十六

二十七

分日(二千六百八十五半)

损十六大(大者五千三百

七十一分之三千四百七十二

十一

历周,五万五千五百一十七半。

差率,一万零一百九十。

微分法,一千八百七十八。

推入阴阳历术:用会月去除入纪积月,余数用会数相乘,加上所入纪的交会差,用周天相乘,满微分法得大分,余数为微分。大分满周天就减去,余数不满历周的为入阳历。其余的都像月周那样得一日,加一,就是所求年正月合朔入历的日子。余数为日余。

求次月,加二日,日余一千三百三十一,微分一千五百九十八,按方法进为日,日满十三就减去,日余像分日那样除去。阴阳历结束后平入端,入历在前限余前、后限余后的,月亮运行在中道。

求朔弦望定数:各用入迟疾历的盈缩定积分,用章岁相乘,用差法相除,所得满通法得大分。余数,用微分法相乘,按方法得微分。盈减缩加阴阳日余,盈不足的,用月周进退日来确定,用定日余乘损益兼数,就是加时定数。

推夜半入历:用差率乘朔小余,如微分法得一,用来减入历余,不足的,加月周再减,退一日,得分数日,加它的分,半微分为小分,就是朔日夜半入历的历余小分。

求次日,加一日,日余十六,小分三百二十,小分像会那样从余,余满月周就减去,又加一日。历结束,下日余满分日就减去,在入历初始。不满分日的,遇到它,加余一千二百九十四,小分七百八十九半,为入次历。

求夜半定日:用朔小余减入迟疾历日余,不足一日,退得周日,加余四百一十七,就是月夜半入历日及余。用日余乘损益率,盈缩积分,为定积分。满通法得大分,余数用会月相乘,按方法得小分,用盈加缩减入阴阳日余,盈不足进退日来确定。用定日余乘损益率,像月周那样,用来损益兼数,为夜半定数。

求昏明数:用损益率乘所近节气的夜漏,除以二百为明分,用损益率减明分得昏分,用它损益夜半数为昏明定数。

求月去黄道度:取加时或昏明定数,用十二除为度,其余除以三为少,不尽为强,二少弱。所得为月去黄道度。

大明六年,南徐州从事史祖冲之上表说:古历粗疏错误,很不精密,各家混乱,没人能明白它的要领。何承天所上奏的历法,意图在于改革,但设置的方法简略,现在已经偏差很大。用我校验,看到三处错误:日月所在的位置,相差约三度;二至的晷影,几乎差一天;五星的出现隐藏,至多差四十天,停留逆行进退,有的移动两宿。分至偏差,那么节闰就不正确;宿度违背天象,那么观测就没有标准。我生在圣明的时代,赶上昌盛的国运,敢率领愚笨的目光,改创新历。谨立改易的意图有两点,设置方法的情况有三点。

改易的,第一,用旧法一章十九年有七闰,闰数太多,经过二百年,就差一天。节闰已经移动,就应改法,历法屡次变更,实在是因为这一条。现在改章法,三百九十一年有一百四十四闰。使它合于周、汉,那么将来永久使用,不再有偏差变动。第二,用《尧典》说:“白天短星昴出现,来确定仲冬。” 据此推算,唐时的冬至,太阳在现在星宿的左边五十多度。汉代初年,就用秦历,冬至太阳在牵牛六度。汉武帝改立《太初历》,冬至太阳在牛初。后汉《四分法》,冬至太阳在斗二十二度。晋时姜岌用月蚀检验太阳,知道冬至在斗十七度。现在参考中星,用蚀望考核,冬至那天,太阳在斗十一度。总的计算,不满一百年,相差二度。旧法都让冬至日有固定的位置,天数已经有偏差,那么七曜的宿度逐渐与历法偏差。错误明显后,就应改制,仅合一时,不能贯通久远,不断变更,也因为这一条。现在让冬至所在的位置,每年有微小的偏差,回溯检验汉时的注释,都精密,将来长久使用,不用多次改。

又设置方法的,第一,用子为辰首,位置在正北,爻对应初九,是斗气的开端,虚宿是北方列宿的中间,元气开始,应该在这个次序。前儒虞喜,详细论述了它的意义。现在历的上元日度,从虚宿一度开始。第二,用日辰的名号,甲子在前,历法设置历元,应在这一年。而黄帝以来,世代所用的,共十一历,上元的年份,没有赶上这个名号。现在历的上元,年份在甲子。第三,用上元的年份,历中的众条,都应从这里开始,而《景初历》交会迟疾,也设置纪差,仅合朔气而已。条目次序混乱,赶不上古意。现在设置方法,日月五星,交会迟疾,都以上元岁首为开始。那么合璧的光辉,有凭据可验证,连珠的光辉,在这里存在,众流同出一源,实在精密于古法。

至于用观测确定形态,根据实际效果,天象显著,尺表的验证可推,气的运动幽深微妙,寸管的候测无差错。现在我所建立的,容易取信。但深入熟悉始终,注重完整精密,革新变旧,有简有繁。用简的条目,按理不自我畏惧,用繁的意思,想来不是错误的。为什么?纪闰参差不齐,数各有分,分作为本体,不细致就不精密。我因此珍惜毫厘,来完善求妙的标准,不辞积累,来成就永久固定的制度。不是思考却不能领悟,知道却不改,私下担心赞助有对有错,常常推崇远的却随从近的;议论有是有非,有的重视耳闻却遗漏眼见。所以竭尽浅陋的见解,俯察消除同异的嫌疑,对日月披心,仰望希望得到像葵藿向太阳那样的光照。如果我所上奏的,万一可以采用,希望颁布给众官,赐予详细研究,或许陈述的微小见解,能稍增盛典。

历法

上元甲子到宋大明七年癸卯,五万一千九百三十九年,不算当年。

元法,五十九万二千三百六十五。

纪法,三万九千四百九十一。

章岁,三百九十一。

章月,四千八百三十六。

章闰,一百四十四。

闰法,十二。

月法,十一万六千三百二十一。

日法,三千九百三十九。

余数,二十万七千零四十四。

岁余,九千五百八十九。

没分,三百六十万五千九百五十一。

没法,五万一千七百六十一。

周天,一千四百四十二万四千六百六十四。

虚分,一万零四百四十九。

行分法,二十三。

小分法,一千七百一十七。

通周,七十二万六千八百一十。

会周,七十一万七千七百七十七。

通法,二万六千三百七十七。

差率,三十九。

推朔术:取入上元年数,加一,用章月相乘,满章岁得积月,余数为闰余。闰余二百四十七以上,当年有闰。用月法乘积月,满日法得积日,余数为小余。用六十除积日,余数为大余。大余从甲子起算,加一,就是所求年天正十一月朔日。小余一千八百四十九以上,那个月是大月。求次月,加大余二十九,小余二千零九十,小余满日法就进大余,大余满六十就减去,按前面的方法确定,就是次月朔日。求弦望:加朔大余七,小余一千五百零七,小分一,小分满四就进小余,小余满日法就进大余,按前面的方法确定,就是上弦日。又加得望,又加得下弦,又加得后月朔。

推闰术:用章岁减闰余,余数满闰法得一月,从天正起算,加一,就是闰月所在。闰月有进退,以没有中气为正。

推二十四气术:取入上元年数,加一,用余数相乘,满纪法得积日,余数为小余。用六十除积日,余数为大余。大余从甲子起算,加一,就是天正十一月冬至日。求次气,加大余十五,小余八千六百二十六,小分五,小分满六就进小余,小余满纪法就进大余,按前面的方法确定,就是次气日。

求土用事:加冬至大余二十七,小余一万五千五百二十八,就是季冬土用事日。又加大余九十一,小余一万二千二百七十,就是次土用事日。

推没术:用九十乘冬至小余,用来减没分,满没法得日,余数为日余,从冬至起算,加一,就是没日。

求次没,加六十九日,日余三万四千四百四十二,余满没法就进日,就是次没日。日余为零就是灭日。

推日所在度术:用纪法乘朔积日为度实,减去周天的倍数,余数满纪法得积度,余数为度余,从虚宿一度起算,按宿次递减,加一,就是天正十一月朔夜半太阳所在的度数。求次月,大月加三十度,小月加二十九度,入虚宿减去度分。求行分,用小分法除度余,所得为行分,余数为小分。小分满法就进行分,行分满法就进 degree。求次日,加一度。入虚宿减去六行分,一百四十七小分。

推月所在度术:用朔小余乘一百二十四为度余。又用朔小余乘八百六十为微分。微分满月法就进度余,度余满纪法就进度,用来减朔夜半太阳所在的度数,就是月亮所在的度数。

求次月,大月加三十五度,度余三万一千八百三十四,微分七万七千九百六十七,小月加二十二度,度余万七千二百六十一,微分六万三千七百三十六,入虚宿减去度分。

迟疾历:

月行度

损益率

盈缩积分

差法一日十四行分十三益七十

盈初

5304二日十四十一

益六十五

盈百八十四万二千三百一十六

5270三日

十四八

益五十七

盈三百五十五万七百六

5219四日

十四四

益四十七

盈五百五万八千二百八

5151五日

十三二十二益三十四

盈六百二十九万七千八百五十七5066六日

十三十七

益二十二

盈七百二十万二千六百九十一

4981七日

十三十一

益六

盈七百七十七万二千七百一十

4879八日

十三五损九

盈七百九十四万九百五十二

4777九日

十二二十二损二十四

盈七百七十万七千四百一十五

4675十日

十二十六

损三十九

盈七百七万二千一百

4573十一日

十二十一

损五十二

盈六百三万五千七

4488十二日

十二八

损六十

盈四百六十六万三千一百

4437十三日

十二六

损六十五

盈三百九万三百二

4403十四日

十二四

损七十盈百三十八万三千五百八十

4369十五日

十二五

益六十七缩四十五万七千六十九

4368十六日

十二七

益六十二

缩二百二十三万七百五十五

4420十七日

十二十

益五十五

缩三百八十七万五百一十四

4471十八日

十二十四

益四十四

缩五百三十万九千三百八十五

4539十九日

十二十九

益三十二

缩六百四十八万四百四

4624二十日

十三一

益十九

缩七百三十一万六千六百八

4709二十一日十三七

益四

缩七百八十一万七千九百九十六4811二十二日十三十三

损十一

缩七百九十一万七千六百七

4913二十三日十三十九

损二十七

缩七百六十一万五千四百四十

5015二十四日十四一

损三十九

缩六百九十万一千四百九十五

5100二十五日十四六

损五十二

缩五百八十七万二千七百三十五5185二十六日十四十

损六十二

缩四百四十九万九千一百五十九5253二十七日十四十二

损六十七

缩二百八十五万七千七百三十二5287二十八日十四十四

损七十四

缩百八万二千三百七十九

5321

推入迟疾历术:用通法乘朔积日为通实,减去通周的倍数,余数满通法得日,余数为日余,日加一,就是天正十一月朔夜半入历日。

求次月,大月加二日,小月加一日,日余都是一万一千七百四十六。历满二十七日,日余万四千六百三十一就减去。

求次日,加一日。

求日所在定度:用夜半入历日余乘损益率,用来损益盈缩积分,如差率得度及余,用盈加缩减平行度及余为定度。增益的有时满法,减损的有时不足,用纪法进退。求度行分像上面的方法。求次日,按所入的迟疾加度,入虚宿减分像上面的方法。

阴阳历

损益率

兼数

一日

益十六

二日

益十五

十六

三日

益十四

三十一

四日

益十二

四十五

五日

益九

五十七

六日

益五

六十六

七日

益一

七十一

八日

损二

七十二

九日

损六

七十

十日

损十

六十四

十一日

损十三

五十四

十二日

损十五

四十一

十三日

损十六

二十六

十四日

损十六

推入阴阳历术:取通实用会周去除,余数不满三十五万八千八百八十八半为朔入阳历分,满的减去,为朔入阴历分。各满通法得一日,余数为日余,日加一,就是天正十一月朔夜半入历日。

求次月,大月加二日,小月加一日,日余都是二万零七百七十九。历满十三日,日余万五千九百八十七半就减去。阳历结束入阴历,阴历结束入阳历。求次日,加一日。

求朔望差:用二千零二十九乘朔小余,满三百零三得日余,余数加倍为小分,就是朔差数。加十四日,日余二万零一百八十六,小分一百二十五,小分满六百零六就进日余,日余满通法得日,就是望差数。又加,就是后月朔。

求合朔月食:取朔望夜半入阴阳历日及余,有半的去掉,取小分三百零三,用差数相加,小分满六百零六就进日余,日余满通法就进日,日满一历就减去。日加一,就是朔望加时入历。朔望加时入历一日,日余四千一百九十八,小分四百二十八以下,十二日,日余万一千七百八十八,小分四百八十一以上,朔时就交会,望时就月食。

求合朔月食定大小余:让差数日余加夜半入迟疾历余,日余满通法就进日,就是朔望加时入历。用入历余乘损益率,用来损益盈缩积分,如差法得数,用盈减缩加本朔望小余,为定小余。增益的有时满法,减损的有时不足,用日法进退日。

求合朔月食加时:用十二乘定小余,满日法得一辰,从子起算,加一,就是加时所在的辰。有余数的乘四,满日法得一为少,二为半,三为太。又有余数的乘三,满日法得一为强,用强加少为少强,加半为半强,加太为太强。得二强为少弱,用它加太为一辰弱,用前面的辰命名。

求月去日道度:取入阴阳历余乘损益率,如通法得数,用来损益兼数为定数,定数除以十二为度,不尽的除以三为少、半、太。又不尽的,一为强,二为少弱,就是月去日道数。阳历在表,阴历在里。

(表略)

求昏明中星:各用度数加夜半太阳所在的度数,就是中星度。

推五星术:木率:一千五百七十五万三千零八十二。火率:三千八十万四千一百九十六。土率:一千四百九十三万三百五十四。金率:二千三百零六万零一十四。水率:四百五十七万六千二百零四。推五星术:取度实各用率去除,余数用来减率,其余如纪法得入岁日,余数为日余。从天正朔起算,加一,就是星合日。

求星合度:用入岁日及余加天正朔日积度及余,满纪法就进度,满三百六十余度分就减去,从虚宿一度起算,加一,就是星合所在的度数。

求星见日术:用伏日及余,加星合日及余,余满纪法就进日,按前面的方法确定,就是见日。

求星见度术:用伏度及余,加星合度及余,余满纪法就进度,入虚宿减度分,按前面的方法确定,就是星见度。

行五星法:用小分法除度余,所得为行分,余数为小分,每日加所行分满法就进度,停留的承接前面的度数,逆行的就减去,伏时不记满度。顺行入虚宿,减去六行分,一百四十七小分;逆行出虚宿,就加上。

木:起初与太阳会合,隐藏不见,十六日,日余一万七千八百三十二,运行二度,度余三万七千五百零四,早晨出现在东方。顺行,每日行四分,一百一十二日,(运行十九度十一分。)停留二十八日。逆行,每日行三分,八十六日,(退行十一度五分。)又停留二十八日。顺行,每日行四分,一百一十二日,傍晚隐藏在西方。日度余和起初一样。一终,三百九十八日,日余三万五千六百六十四,运行三十三度,度余二万五千二百一十五。

火:起初与太阳会合,隐藏不见,七十二日,日余六百零八,运行五十五度,度余二万八千八百六十五,早晨出现在东方。顺行,快速,每日行十七分,九十二日,(运行六十八度。)稍慢,每日行十四分,九十二日,(运行五十六度。)更慢,每日行九分,九十二日,(运行三十六度。)停留十日。逆行,每日行六分,六十四日,(退行十六度十六分。)又停留十日。顺行,缓慢,每日行九分,九十二日。稍快,每日行十四分,九十二日。快速,每日行十七分,九十二日,傍晚隐藏在西方,日度余和起初一样。一终,七百八十日,日余一千二百一十六,运行四百一十四度,度余三万零二百五十八。除去一周,确定运行四十九度,度余一万九千八百零九。

土:起初与太阳会合,隐藏不见,十七日,日余一千三百七十八,运行一度,度余一万九千三百三十三,早晨出现在东方。顺行,每日行二分,八十四日,(运行七度七分。)停留三十三日。逆行,每日行一分,一百一十日,(退行四度十八分。)又停留三十三日。顺行,每日行二分,八十四日,傍晚隐藏在西方,日度余和起初一样。一终,三百七十八日,日余二千七百五十六,运行十二度,度余三万一千七百九十八。

金:起初与太阳会合,隐藏不见,三十九日,日余三万八千一百二十六,运行四十九度,度余三万八千一百二十六,傍晚出现在西方。顺行,快速,每日行一度五分,九十二日,(运行一百一十二度。)稍慢,每日行一度四分,九十二日,(运行一百零八度。)更慢,每日行十七分,四十五日,(运行三十三度六分。)停留九日。缓慢,每日行十六分,(退行六度六分。)傍晚隐藏在西方。隐藏五日,退行五度后与太阳会合。又五日退行五度,早晨出现在东方。逆行,每日行十六分,九日。停留九日。顺行,缓慢,每日行十七分,四十五日。稍快,每日行一度四分,九十二日。快速,每日行一度五分,九十二日,早晨隐藏在东方,日度余和起初一样。一终,五百八十三日,日余三万六千七百六十一,运行的度数也这样。除去一周,确定运行二百一十八度,度余二万六千三百一十二。一合,二百九十一日,日余三万八千一百二十六,运行的度数也这样。

水:起初与太阳会合,隐藏不见,十四日,日余三万七千一百一十五,运行三十度,度余三万七千一百一十五,傍晚出现在西方。顺行,快速,每日行一度六分,二十三日,(运行二十九度。)缓慢,每日行二十分,八日,(运行六度二十二分。)停留二日。缓慢,每日行十一分,二日,(退行二十二分。)傍晚隐藏在西方。隐藏八日,退行八度后与太阳会合。又八日退行八度,早晨出现在东方。逆行,每日行十一分,二日。停留二日。顺行,缓慢,每日行二十分,八日。快速,每日行一度六分,二十三日,早晨隐藏在东方,日度余和起初一样。一终,一百一十五日,日余三万四千七百三十九,运行的度数也这样。一合,五十七日,日余三万七千一百一十五,运行的度数也这样。

上元那一年,年份在甲子,天正甲子朔夜半冬至,日月五星,聚集在虚宿的开始,阴阳迟疾,都从这里开始。

世祖把它下交有关部门,让朝廷内外广泛讨论,当时人很少懂历数,最终没有不同的意见。只有太子旅贲中郎将戴法兴议论,认为:日月星的数理精微,五星的交会初始,若不是深入推测,透彻了解日影变化,怎能删改古代改革当今,纠正圭表星宿。考察祖冲之所议论的,常常有违背错误,私下以愚见,随事辨问。考察祖冲之新推算的历法,“现在冬至所在的位置,每年有微小的偏差”。臣法兴议论:二至的发作收敛,是南北的极点,太阳有固定的度数,而星宿没有改变位置。古历冬至,都在建星。战国时纷争,史官丧失记载,到汉初,观测不明,后来杂测知道在南斗二十二度,元和所用的,就与古历相符。到景初,始终没有丝毫差错。《尚书》说:“三百六十六日,用闰月确定四时成岁。” 只是用月亮推算四季,那么中宿常在卫阳,羲、和用来确定时节,取它万世不变。祖冲之认为唐时冬至,太阳在现在星宿的左边五十多度,于是虚加度分,凭空改变天路。他设置的方法所在,接近违背半次,那么四十五年九月,大概移动一度。在《诗经》“七月流火”,这是夏正建申的时候。“定之方中”,又是小雪的节气。如果冬至确实有偏差,那么豳公时火星西流,晷长一尺五寸,楚宫的建造,白天漏刻五十三刻,这太诡异了。仲尼说:“我听说,火星隐藏后蛰虫才完毕。现在火星还西流,是司历的过错。” 就像祖冲之的错误,那么星没有固定的位次,区域有偏差方位。名号的正确,古今一定不同,典诰的音义,世代不通用,尧时的开、闭,现在成为建、除。现在的寿星,是周时的鹑尾,就像东壁,已不是玄武,轸星忽然属于苍龙,欺骗上天违背经典,竟到这种地步。

祖冲之又改章法为三百九十一年有一百四十四闰。臣法兴议论:太阳运行有快有慢,所以斗宿有宽有窄,古人制定章法,立为中等标准,每年累积十九年,常有七闰,晷影有时虚盈,这不可改革。祖冲之削减闰月破坏章法,加倍减少余数,那么一百三十九年二月,在四分法中,顿时少一天;七千四百二十九年,就失一闰。日少就提前,闰失就事情违背。私下听说时间用来做事,事情用来使百姓生活富足,这是百姓的根本,历数的首要,愚意担心不是祖冲之的浅虑可以妄自穿凿的。

祖冲之又命令上元日度从虚宿一度开始,说虚宿是北方列宿的中间。臣法兴议论:祖冲之既说冬至岁差,又说虚宿为北中,舍弃形体求影子,不足以迷惑人。为什么?凡在天上没有太阳就不明亮,在地上用斗宿来辨别方向。假使冬至在虚宿,那么黄道更远,东北应当是黄钟之宫,室壁应属于玄枵的位置,虚宿怎能再为北中呢?勉强让分至屡次迁移,而星次不改,招摇改变绳索,而律吕仍往,那么七政不用玑衡来整齐,确定时节也不是摄提所记载的,不知五行居在哪里,六属寄托在哪里?

祖冲之又让上元年在甲子。臣法兴议论:设置历元建立纪法,各有崇尚,有的依据图谶的文字,有的取效于当时。祖冲之说,“各家混乱,没人能明白它的会合”。从前《黄帝历》辛卯,日月不错过;《颛顼历》乙卯,四时不差;《景初历》壬辰,晦日没有差光;《元嘉历》庚辰,朔日没有错影,难道不是承天吗!祖冲之勉强存甲子,可说是为了契合而求天。

祖冲之又让日月五星,交会迟疾,都以上元为开始。臣法兴议论:交会的历元,日食可以求,迟疾的时候,不是凡人所能测的。从前贾逵略见它的偏差,刘洪粗略著述它的方法。至于疏密的数值,没人能探究它的极致。而且五星所在的位置,有时盈缩,就像岁星在轸宿,出现超过七辰,术家既追算来会合现在,那么过去与未来,断然可知。《景初历》在纪首设置偏差,《元嘉历》又各设后元,都是为了在实用上省功,不凭空推算造成烦扰。祖冲之既在改易上违背天意,又设置方法来顺遂私情,愚意认为这是治历的大过错。

臣法兴议论:太