# 卷二十六律历六

类型：古籍章节
书名：《宋史》
作者：脱脱等
时代：元
类别：纪传体断代史 · 白话译文
卷目：志
章节：卷二十六律历六

## 本章概览

《宋史·律历六》记载了北宋崇天历中关于推算日月交食及五星运动的精密算法体系。该历法通过交终分、交终日、朔差日等参数构建了交食计算框架，详细定义了月行阴阳历、去黄道度、食限等概念，并给出了日食、月食的食分、定用分、亏初复满等计算方法。五星部分则规定了各星周率、周日、伏见度等基本数据，以及推算诸变中积、入历、盈缩定差、定积、定星、平行分、初末日行分等一系列步骤。然而，当此历法以甲子岁为起用之年时，五月丁亥朔的日食推算为食二分半，实际观测却并未发生食象，这直接引发了历法精密度的争议。入内都知江德明奉诏召集历官使用浑仪进行比较测量，周琮批评古代造历需千百年间星度交食符合标准，而新历不应验则不够精密。杨皞、于渊与周琮分别在不同天体上得到验证，朝廷随后下诏将他们的方法增入崇天历，并改用了新的周天分、岁差等率数。此外，景祐元年日官张奎提出遇节气开端不必回避的建议，经与丁慎言等人商议，最终被采纳。这一过程展现了宋代历法并非一经制定便固定不变，而是经历了实测检验、质疑讨论与修订增补的动态发展，反映了古代天文学在实践中的不断进步。

本章详细记述崇天历的推算交会与五星算法，并记录了历法验证结果及后续调整。

先介绍交食推算方法，再介绍五星运动推算方法，最后记录历法验证与修正过程。

## 正文

**崇天历**

**推算交会**

交终分：二十八万八千一百七十七、秒四千二百七十七。

交终日：二十七、余二千二百四十七、秒四千二百七十七。

交中日：一十三、余六千四百一十八、秒七百三十八半。

朔差日：二、余三千三百七十一、秒五千七百二十三。

后限日：一、余一千六百八十五、秒七千八百六十一半。

望策：十四、余八千一百四、秒五十。

前限日：十二、余四千七百三十二、秒九千二百七十七。

交率：一百四十一。

交数：一千七百九十六。

交终度：三百六十三度七十六分。

交象：九十度九十四。

半交：一百八十一度八十八。

阳历食限：四千二百。

阳历定法：四百二十。

阴历食限：七千。

阴历定法：七百。

推算天正十一月经朔加时入交：设置天正十一月朔积分，用交终分秒去除它，余数不满枢法的作为日数，不满的作为余秒，即天正经朔加时入交泛日及余秒。

求次朔及望入交：依据天正经朔加时入交泛日及余秒，求次朔，用朔差日及余秒加上它；求望，用望策及余秒加上它：满交终日及余秒都去掉，即次朔及望加时所入。如果用经朔、望小余减去它，就各自得到朔、望夜半入交泛日及余秒。

求定朔夜半入交：依据经朔、望夜半入交，如果定朔、望大余有进退的，也进退交日，否则就依据经朔作为定数，各自得到所求。

求次定朔夜半入交：各自依据前定朔夜半入交，大月加日数二，小月加日数一，余数都加八千三百四十二、秒五千七百二十三；如果求次日，累加一日：满交终日及余秒都去掉，即得次定朔及每日夜半入交泛日及余秒。

求朔望加时入交常日：设置经朔、望入交泛日及余秒，用该朔、望入气朏朒定数，朏减朒加，即朔、望入交常日及余秒。

求朔望加时入交定日：设置该朔、望入转朏朒定数，用交率乘它，除以交数，所得，用朏减朒加入交常日余，满或不足，进退其日，即朔、望加时入交定日及余秒。

求月行入阴阳历：观察该朔、望入交定日及余秒，在中日及余秒以下的为月在阳历；如在中日及余秒以上的，减去它，为月在阴历。（凡入交定日，阳初阴末为交初，阴初阳末为交中。）

求朔望加时月入阴阳历积度：设置该月入阴阳历日及余，（其余，先用一百乘它，枢法除为约分。）用九百九乘它，六十八除为度，不尽，退除为分，即朔、望加时月入阴阳历积度及分。（其月在阳历，即为入阳历积度；月在阴历，即为入阴历积度。）

求朔望加时月去黄道度：设置入阴阳历积度及分，如在交象以下为在少象；已上，用半交减去它，余数为入老象。设置所入老少象度及分，用五相乘，用减一千零一十，余数，用老少象度及分乘它，八十四除一，列于上位；又设置所入老少象度及分，如在半象以下为在初限；已上，减去半象，余数为入末限。设置初、末限度及分于上，列半象度及分于下，用上减下，余数用乘上，四十除一，所得，初限用减，末限用加，上位满百为度，不满为分，即朔、望加时月去黄道度数及分。

求食定余：设置定朔小余，如在半法以下再加半法，余数为午前分；已上，减去半法，余数为午后分。设置午前、后分于上，列半法于下，用上减下，以下乘上，午前用三万一千七百七十除，午后用一万三千八百八十五除，各为时差。午前用减、午后用加定朔小余，各为食定小余。用时差加午前、后分，为午前、后定分。（其月食，直接用定望小余便为食定小余。）

求日月食甚辰刻：设置食定小余，用辰法除它为辰数，不满，进一位，刻法除它为刻，不满为刻分。其辰数从子正开始，算外，即食甚辰、刻及分。

求气差：设置该朔中积，满二至限去掉它，余数在一象以下为在初；已上，用二至限减去它，余数为在末。都自相乘，进二位，满二百三十六除，用减三千五百三十三，为气差。用乘距午定分，半昼分除一，所得用减气差，为定数。（春分后，交初用减，交中用加；秋分后，交初用加，交中用减。）

求刻差：设置该朔中积，满二至限去掉它，余数，列二至限于下，用上减下，余数用乘上，进二位，满二百三十六除，为刻差。用乘距午定分，四倍它，枢法除一，为定数。冬至后食甚在午前，夏至后食甚在午后。交初用加，交中用减。冬至后食甚在午后，夏至后食甚在午前。（交初用加，交中用减。）

求日入食限：设置入交定日及余秒，用气、刻、时三差定数各加减它，如在中日及余秒以下为不食；已上者，减去中日及余秒，如在后限以下、前限已上为入食限；后限以下为交后分；前限以上用全日减去它，余数为交前分。

求日食分：设置入交前后分，如在阳历食限以下者为阳历食定分；已上者，用一万一千二百减去它，余数为阴历食定分；（不足减者，不食；）各如限阳历定法除一，为食之大分，不尽，退除为小分，半已上为半强，半以下为半弱。命大分以十为限，得日食之分。

求日食泛用分：设置朔入阴阳历食定分，一百约分它，在阳历者列八十四于下，在阴历者列一百四十于下，各用上减下，余数用乘上，进二位，阳历用一百八十五除，阴历用五百一十四除，各为日食泛用分。

求月入食限：观察月入阴阳历日及余，如在后限以下为交后分；前限已上用全日减去它，为交前分。

求月食分：设置交前后分，如在三千二百以下者，食既；已上，用减一万零二百，不足减者不食；余数用七百除之为大分，不尽，退除为小分，小分半已上为半强，半已下为半弱。命大分以十为限，得月食之分。

求月食泛用分：设置望入交前后分，退一等，自相乘，交初用九百三十五除，交中用一千一百五十六除，得数用减刻率，（交初以一千一百一十一为刻率，交中以九百为刻率。）各得所求。

求日月食定用分：设置日月食泛用分，用一千三百三十七乘它，用所食日转定分除它，即得所求。

求日月食亏初复满小余：各用定用分减食甚小余，为亏初；加食甚小余，为复满：即各得亏初复满小余。（若求时刻者，依食甚术入之。）

求月食更筹定法：设置该望晨分，四倍它，退一等，为更法；加倍，退一等，为筹法。

求月食入更筹：设置亏初、食甚、复满小余，在晨分以下加晨分，昏分已上减去昏分，余数用更法除之为更数，不满，用筹法除之为筹数。其更数从初更开始，算外，即各得所入更、筹。

求朔、望食甚宿次：设置该经朔、望入气小余，用入气、入转朏朒定数朏减朒加之，乘其日升降分，枢法除一，加减其日盈缩分，（至后、分前用加，分后、至前用减。）一百约分为分，分满百为度，用盈加缩减其定朔、望加时中积，用天正冬至加时黄道日度及分加上它并命名，即定朔、望加时日躔宿次。其望加半周天，命名如前，即朔、望食甚宿次。

求月食既内外刻分：设置月食交前、后分，用三千二百减去它，（不及减者，为食下既。）一百约分它，列六十四于下，用上减下，余数用乘上，进二位，交初用二百九十三除，交中用三百六十五除，所得，用定用分乘它，如泛用分除一，为月食既内刻分；用定用分减去它，即既外刻分。

求日月带食出入分数：各用食定小余与日出、入分相减，余数为带食差；（其带食差满定用分已上者，不带食出入也。）用带食差乘所食分，满定用分除一，（若月食既者，用既内刻分减带食差，余数所食分，用既外刻分除一，不及减者，为带食既出入也。）各用减所食分，即带出、入所见之分。（其朔日食甚在昼者，晨为渐进之分，昏为已退之分；若食甚在夜者，晨为已退之分，昏为渐进之分。其月食者，见此可知也。）

求日食所起：日在阴历，初起西北，甚于正北，复于东北；日在阳历，初起西南，甚于正南，复于东南。其食八分已上者，皆起正西，复于正东。（此据午地而论之，其余方位，审黄道斜正、月行所向，可知方向。）

求月食所起：月在阴历，初起东南，甚于正南，复于西南；月在阳历，初起东北，甚于正北，复于西北。其食八分已上，皆起正东，复于正西。（此亦据午地而论之，其余方位，依日食所向，即知既亏、复满。）

**推算五星**

五星会策：十五度（二十一分、秒九十。）

木星周率：四百二十二万四千零五十八、秒三十二。

周日：三百九十八、余九千二百三十八、秒三十二。

岁差：一百零三、秒六。

伏见度：一十三。

木星盈缩历

火星周率：八百二十五万九千三百六十六、秒五十九。

周日：七百七十九、余九千七百五十六、秒五十九。

岁差：一百零三、秒五十三。

伏见度：二十。

火星盈缩历

土星周率：四百万三千八百七十二、秒三十九。

周日：三百七十八、余八百五十二、秒三十九。

岁差：一百零三、秒七十八。

伏见度：一十六。

土星盈缩历

金星周率：六百一十八万三千五百九十九、秒一十六。

周日：五百八十三、余九千六百二十九、秒一十六。

岁差：一百三十、秒八十。

夕见晨伏度：一十一。

晨见夕伏度：九。

金星盈缩历

水星周率：一百二十二万七千一百七十、秒二十八。

周日：一百一十五、余九千三百二十、秒二十八。

岁差：一百零三、秒九十四。

夕见晨伏度：一十四。

晨见夕伏度：二十一。

水星盈缩历

推五星天正冬至后诸变中积中星：设置气积分，分别用各星周率去除，除不尽时，用周率减去余数，剩余的部分用枢法除得到日数，除不尽的部分退位为分，就是天正冬至后平合中积；以此命名，积累平合中星，将各段变日、变度依次累加，就是各变中积中星。（其中经过退行的，就是其变度；依次累减，就是其星其变中星。）

求五星诸变入历：用其星岁差乘以积年，满周天分去除，余数用枢法除得到度数，除不尽退位为分，减去其星平合中星，就是平合入历；用其星其变限度依次相加，各得该星各变入历度分。

求五星诸变盈缩定差：分别设置其星其变入历度分，半周天以下为在盈；以上，减去半周天，余数为在缩。设置盈缩限度及分，用五星会策除得到会数，除不尽为入会度及分；用其会下损益率乘之，用会策除得到分，分满百为度，用来损益其下盈缩积度，就是其星其变盈缩定差。（如果用立成表，用其入会度下差而用之。）其中木火土三星后退、后留，设置盈缩差，分别列出其星盈缩极度于下，都用上减下，余数乘以上，用八十七除，所得，木、土乘三，火直接使用；在盈则益减损加、在缩则益加损减其段盈缩差，为后退、后留定差，（因此作为后迟初段定差。各自须要类比前留定差，观察其盈缩初末，审察降杀，都是裒多益少而用之。）

求五星诸变定积：分别设置其星其变中积，用其变盈缩定差盈加缩减，就是其星其变定积及分；用天正冬至大余及分相加，就是其星其变定日及分；用纪法去掉定日，余数从甲子起算，算外，即得日辰。

求五星诸变在何月日：分别设置各变定日，用其年天正经朔大余及分减去，（如果冬至大余少，加经朔大余的，加纪法再减。）余数用朔策及分除得到月数，除不尽为入月日数及分。其月数从天正十一月起算，算外，即其星其变入其月经朔日数及分。（如果设置定积，用天正闰月及分相加，用朔策除得月数，也得所求。）

求五星诸变入何气日：设置定积，用气策及约分除得到气数，除不尽为入气以来日数及分。其气数从天正冬至起算，算外，即五星诸变入其气日及分。（其定积满岁周日及分则去掉，余数在来年天正冬至后。）

求五星诸变定星：分别设置其变中星，用其变盈缩定差盈加缩减，（其中金、水二星，金星加倍，水星乘三，才可加减。）就是五星诸变定星；用天正冬至加时黄道日度相加而命名，即其星其变加时定星宿次及分。（五星都以前留为前退初日定星，后留为后迟初日定星。）

求五星诸变初日晨前夜半定星：用其星其变盈缩所入会度下盈缩积度与次度下盈缩积度相减，余数为该度损益分；乘其变初行率，用一百约分，所得，用来加减其日初行率，（在盈，益加损减；在缩，益减损加。）为初行积率；又设置一百分，也依其数加减，用除初行积率，为初日定行率；用乘其率初日约分，用一百约分，顺减退加其日加时定星，为其变晨前夜半定星；加冬至时日度命名，即所在宿次。

求诸变日度率：设置后变定日，用其变定日减去，余数为其变日率；又设置后变夜半定星，用其变夜半定星及分减去，余数为其变度率及分。

求诸变平行分：分别设置其变度率及分，用其变日率除得到平行分，除不尽退位为秒，即各得平行度及分秒。

求诸变总差：分别用其段平行分与后段平行分相减，余数为泛差；合并前段泛差，四倍之，用九除，为总差。如果前段没有平行分相减为泛差的，（各自因袭后段初日行分与其段平行分相减，为半总差；加倍，为总差。）如果后段没有平行分相减为泛差的，（各自因袭前段末日行分与其段平行分相减，为半总差。）其前后退行的，分别设置本段平行分，乘十四，除十五，为总差。（其中金星夕退、夕伏、再合、晨退，各自依顺段术入之，即得所求。）

求诸段初末日行分：各取其段总差的一半，加减其段平行分，（后段行分多的，减之为初，加之为末；后段行分少的，加之为初，减之为末。）即各得其星其段初、末日行度及分秒。（凡是前后段平行分都多或都少，则平注之；以及本段总差不满大分的，也平注之。其退行段，各以半总差前变减之为初，加之为末；后变加之为初，减之为末。）

求每日晨前夜半星行宿次：设置其段总差，减去其段日率，用除，为日差；用日差累加或累减初日行分，（后段行分少，每日减；后段行分多，每日加。）为每日行度及分；用每日行度及分累加其星其段初日晨前夜半宿次，命名，即每日星行宿次。（遇到退行的，用每日行分累减，即得所求。）

径求其日宿次：设置所求日，减一，用日差乘，加减初日行分，（后行分少则减；后行分多则加。）为所求日行分；加日行分而半之；用所求日乘，为径求积度；加减其星初日宿次；命名，即其日星行宿次。

求五星定合日定星：用其星平合初日行分减一百分，余数用来约其日太阳盈缩分得到分，分满百为日，不满为分，命名为距合差日；用盈缩分减去，为距合差度；用差日、差度缩加盈减平合定积、定星，为其星定合日定积、定星。（其中金、水二星，用一百分减初日行分，余数用除其日太阳盈缩分，为距合差日；用盈缩分加，为距合差度；用差日、差度盈加缩减。）金、水二星退合的，（用初日行分加一百分，用除太阳盈缩分，为距合差日；用距合差日减盈缩分，为距合差度；用差日、差度盈减缩加再合定积定星为其星再合定日定积定星。）其金、水二星定积，（各依见伏术，先用盈缩差求其加减完毕，然后用距合差日、差度加减。）

求木火土三星晨见夕伏定日：分别设置其星其段定积，乃加减一象度，（晨见加，夕伏减。）半周天以下自相乘，半周天以上，用周天度及分减去，余数也自相乘，用一百约分为分，用其星伏见度乘，用十五除，为差；乃用其段初日行分从一百分减去，余数用除其差为日，除不尽退位为分，所得，用来加减定积，（晨见加，夕伏减。）各得晨见、夕伏定积；加天正冬至大余及分，从甲子起算，算外，即得日辰。

求金水二星夕见晨伏定日：分别设置其星其段定积，其定积先加倍其段盈缩差，缩加盈减，乃加减一象度，（夕见减，晨伏加。）半周天以下自相乘，以上，用周天度减去，余数也自相乘，用一百约分为分，用其星伏见度乘，用十五除为差；乃设置其段初日行分，减去一百分，余数用除其差为日，除不尽退位为分，所得，用来加减定积，（夕见加，晨伏减。）各得夕见、晨伏定积。

求金水二星晨见夕伏定日：设置其星其段定积，其定积先用一百乘其段盈缩差，乃用一百分加其日行分，用除其差，所得，盈加缩减，加减一象度，（晨见加，夕伏减。）半周天以下自相乘，以上，用周天度减去，余数也自相乘，用一百约分为分，用其星伏见度乘，用十五除，为差；乃设置其段初日行分，如一百分，用来除其差为日，除不尽退位为分，所得，用来加减定积，（晨见加，夕伏减。）各为其星晨见、夕伏定积。

历法完成后，用来年甲子岁使用，这一年五月丁亥朔，日食不应验，（推算食二分半，观测未食。）下诏等待检验。到七年，命入内都知江德明召集历官用浑仪比较测量。当时周琮说："古代造历，必定使千百年间星度交食，如同符合标准，如今历法完成而不应验，则历法不够精密。"又有杨皞、于渊，与周琮寻求比较验证，而杨皞的方法在木星上得到验证，于渊在金星上得到验证，周琮在月亮、土星上得到验证，下诏增入《崇天历》，其改用的率数如下：

周天分：三百八十六万八千零六十六、秒一十七。

周天：三百六十五度。（虚分二千七百一十六、秒十七，约分二十五、秒六十一。）

岁差：一百二十六、秒一十七。

木星

求诸变总差：分别用其段平行分与后段平行分相减，余数为泛差；合并前段泛差，四倍之，退一等，为总差。如果前段没有平行分相减为泛差的，（各因后段初日行分与其段平行分相减，为半总差；加倍，为总差。）如果后段没有平行分相减为泛差的，（各因前段末日行分与其段平行分相减，为半总差；加倍，为总差。）其前后退行的，分别设置本段平行分，乘十四，除十五，为总差。（其金星夕退、夕伏、再合、晨退，各依顺段术入之，即得所求。）

求五星定合及见伏泛用积：其木、火、土三星，各用平合及前疾、后伏定积为泛用积；金、水二星平合及夕见、晨伏的，（设置其星其段盈缩差，金星加倍，水星乘三，列于上位；又设置盈缩差，用其段初行率乘，退二等，用来减上位；又设置初行率，减去一百分，余数用除为日，除不尽退位为分，乃盈减缩加中积，为其星其变泛用积。）金、水二星再合及夕伏、晨见的，（其星其段盈缩差，金星直接使用，水星加倍，进二位，用其段初行率加一百分用除，所得，并合盈缩差，用盈加缩减中积，为其星其段泛用积。）

求五星的定合、定积、定星：木星、火星、土星这三颗星在平合时，（用平合初日的行分减去一百分，余数用来约算当天太阳的盈缩分，得到分数，满一百为一日，不满一百为分，命名为距合差日；用盈缩分减去这个差日，得到距合差度；用差日、差度，在盈时加、缩时减该星的平合泛用积，得到该星的定合日、定积、定星。）金星、水星这两颗星在平合时，（用一百分减去初日行分，余数用来除当天太阳的盈缩分，得到距合差日；用盈缩分加上这个差日，得到距合差度；用差日、差度，在盈时加、缩时减平合泛用积，得到该星的定合日、定积、定星。）金星、水星这两颗星在退合时，（用初日行分减去一百分，再用这个余数除太阳的盈缩分，得到距合差日；用距合差日减去盈缩分，得到距合差度；用差日，在盈时减、缩时加再合泛用积，得到该星再合定日、定积、差度；在盈时加、缩时减再合泛用积，得到该星再合日、定星；各加上冬至的大余、小余以及黄道加时太阳所在的宿次来命名，即得到该日的日辰和宿次。）

求木星、火星、土星的晨见、夕伏定用积：各取该星该段的泛用积，然后加减一个象度（晨见时加，夕伏时减）。如果小于半周天，就自乘；如果大于或等于半周天，就用周天度减去它，余数也自乘。各自乘以二再除以一百，结果在一百六十七以上的，用一百除当天太阳的盈缩分再减去它；不满一百六十七的，就加上它。用该星本身的伏见度乘以上述结果，再除以十五，得到差数。然后取该段初日的行分，用一百分减去它，余数用来除这个差数，得到日数，不满的退除为分，用这个结果加减泛用积（晨见时加，夕伏时减），各得到该星晨见、夕伏的定用积；加上天正冬至的大余，命名为甲子，从元旦起算，即得日辰。

求金星、水星的夕见、晨伏定用积：各取该星该段的泛用积，然后加减一个象度（夕见时减，晨伏时加）。如果小于半周天，就自乘；如果大于或等于半周天，就用周天度减去它，余数也自乘。乘以二再除以一百，结果满一百六十七以上的，用一百除太阳的盈缩分再减去它；不满一百六十七的，就加上它。用该星本身的伏见度乘以上述结果，再除以十五，得到差数。然后取该段初日的行分，减去一百分，余数用来除这个差数，得到日数，不满的退除为分，用这个结果加减泛用积（晨见时加，夕伏时减），各得到夕见、晨伏的定用积；像前面那样加于冬至大余并命名，即得日辰。

求金星、水星的晨见、夕伏定用积：各取该星该段的泛用积，然后加减一个象度（晨见时加，夕伏时减）。如果小于半周天，就自乘；如果大于或等于半周天，就用周天度减去它，余数也自乘。乘以二再除以一百，结果在一百六十七以上的，用一百除太阳的盈缩分再减去它；不满一百六十七的，就加上它。用该星本身的伏见度乘以上述结果，再除以十五，得到差数。对于金星，直接用一百除这个差数得到日数，不满的退除为分，用这个结果加减泛用积（晨见时加，夕伏时减），各得到该星晨见、夕伏的定用积；像前面那样加于冬至大余并命名，即得日辰。

景祐元年七月，日官张奎进言：“从本月朔日起，如果遇到节气的开头，不要回避。”诏令中书省召集历官共同商议，而丁慎言请求按照旧制度执行。有诏令最终听从了张奎的建议。

## 关键人物

- **周琮**：历官；指出历法不精密，并验证月、土星
- **杨皞**：历官；参与比较验证，方法在木星上得到验证
- **于渊**：历官；参与比较验证，方法在金星上得到验证
- **张奎**：日官；进言关于历法避讳事项
- **丁慎言**：历官；请求按照旧制度执行
- **江德明**：入内都知；召集历官用浑仪比较测量

## 时间线

- **时间不明**：崇天历推算交会与五星历法编纂完成；历法完成
- **用来年甲子岁使用**：历法被用于甲子岁，当年五月丁亥朔日食不应验；推算食二分半，观测未食
- **到七年**：诏令江德明召集历官用浑仪比较测量；周琮、杨皞、于渊等参与验证
- **时间不明**：杨皞在木星、于渊在金星、周琮在月亮和土星上得到验证；下诏增入《崇天历》，改用了新的率数
- **景祐元年七月**：日官张奎进言关于节气开头回避的事宜；丁慎言请求依旧制，最终诏令从张奎建议

## 为什么值得读

本章保存了宋代崇天历的详细推算方法和验证过程，反映了当时天文学水平及历法修正的实践。

## 标签

- 崇天历
- 交终分
- 交终日
- 交中日
- 朔差日
- 后限日
- 望策
- 前限日
- 交率
- 交数

原始页面：https://shishuguan.com/books/songshi-baihuawen-full/volume-2/chapter-73
