崇天曆行之至于嘉祐之末,英宗即位,命殿中丞、判司天監周琮及司天冬官正王炳、丞王棟、主簿周應祥周安世馬傑、靈臺郎楊得言作新曆,三年而成。琮言:「舊曆氣節加時,後天半日;五星之行,差半次;日食之候,差十刻。」既而司天中官正舒易簡與監生石道、李遘更陳家學。於是詔翰林學士范鎮、諸王府侍講孫思恭、國子監直講劉攽考定是非,上推尚書「辰弗集于房」與春秋之日食,參今曆之所候,而易簡、道、遘等所學疏闊,不可用,新書為密。遂賜名明天曆,詔翰林學士王珪序之,而琮亦為義略冠其首。今紀其曆法于後:
造曆之法,必先立元,元正然後定日法,法定然後度周天以定分、至,三者有程,則曆可成矣。日者,積餘成之;度者,積分成之。蓋日月始離,初行生分,積分成日。自四分曆洎古之六曆,皆以九百四十為日法。率由日行一度,經三百六十五日四分之一,是為周天;月行十三度十九分之七,經二十九日有餘,與日相會,是為朔策。史官當會集日月之行,以求合朔。
自漢太初至于今,冬至差十日,如劉歆三統復強於古,故先儒謂之最疏。後漢劉洪考驗四分,於天不合,乃減朔餘,苟合時用。自是已降,率意加減,以造日法。宋世何承天更以四十九分之二十六為強率,十七分之九為弱率,於強弱之際以求日法。承天日法七百五十二,得一十五強,一弱。自後治曆者,莫不因承天法,累強弱之數,皆不悟日月有自然合會之數。
今稍悟其失,定新曆以三萬九千為日法,六百二十四萬為度母,九千五百為斗分,二萬六百九十三為朔餘,可以上稽於古,下驗於今,反覆推求,若應繩準。又以二百三十萬一千為月行之餘,以一百六十萬四百四十七為日行之餘。乃會日月之行,以盈不足平之,并盈不足,是為一朔之法。今乃以大月乘不足之數,以小月乘盈行之分,平而并之,是為一朔之實。以法約實,得日月相會之數,皆以等數約之,悉得今有之數。又二法相乘為本母,各母互乘,以減周天,餘則歲差生焉,亦以等數約之,即得歲差、度母、周天實用之數。此之一法,理極幽眇,所謂反覆相求,潛遁相通,數有冥符,法有偶會,古曆家皆所未達。
古者以周天三百六十五度四分度之一,是為斗分。夫舉正於中,上稽往古,下驗當時,反覆參求,合符應準,然後施行于百代,為不易之術。自後治曆者,測今冬至日晷,用校古法,過盈,以萬為母,課諸氣分,率二千五百以下、二千四百二十八已上為中平之率。新曆斗分九千五百,以萬平之,得二千四百二十五半盈,得中平之數也。而三萬九千年冬至小餘成九千五百日,滿朔實一百一十五萬一千六百九十三,年齊于日分,而氣朔相會。
朔實:一百一十五萬一千六百九十三。本會日月之行,以盈不足平而得二萬六百九十三,是為朔餘,是則四象全策之餘也。今以元法乘四象全策二十九,總而并之,是為一朔之實也。古曆以一百萬平朔餘之分,得五十三萬六百以下、五百七十已上,是為中平之率。新曆以一百萬平之,得五十三萬五百八十九,得中平之數也。
中盈、朔虛分:日月以會朔為正,氣序以斗建為中,是故氣進而盈分存焉。置中節兩氣之策,以一月之全策三十減之,每至中氣,即一萬七千四十、秒十二,是為中盈分。朔退而虛分列焉,置一月之全策三十,以朔策及餘減之,餘一萬八千三百七,是為朔虛分。綜中盈、朔虛分,而閏餘章焉。從消息而自致,以盈虛名焉。
天正冬至:大餘五十七,小餘一萬七千。先測立冬晷景,次取測立春晷景,取近者通計,半之,為距至汎日;乃以晷數相減,餘者以法乘之,滿其日晷差而一,為差刻;乃以差刻加減距至汎日,為定日;仍加半日之刻,命從前距日辰,算外,即二至加時日辰及刻分所在。如此推求,則加時與日晷相協。今須積歲四百一年,則冬至大、小餘與今適會。
日度歲差:八萬四百四十七。書舉正南之星以正四方,蓋先王以明時授人,奉天育物。然先儒所述,互有同異。虞喜云:「堯時冬至日短星昴,今二千七百餘年,乃東壁中,則知每歲漸差之所至。」又何承天云:「堯典:『日永星火,以正仲夏;宵中星虛,以正仲秋。』今以中星校之,所差二十七八度,即堯時冬至,日在須女十度。」故祖沖之修大明曆,始立歲差,率四十五年九月却一度。虞鄺、劉孝孫等因之,各有增損,以創新法。若從虞喜之驗,昴中則五十餘年,日退一度;若依承天之驗,火中又不及百年,日退一度。後皇極綜兩曆之率而要取其中,故七十五年而退一度,此乃通其意未盡其微。今則別調新率,改立歲差,大率七十七年七月,日退一度,上元命於虛九,可以上覆往古,下逮於今。自帝堯以來,循環考驗,新曆歲差,皆得其中,最為親近。
日躔盈縮定差:張冑玄名損益率曰盈縮數,劉孝孫以盈縮數為朏朒積,皇極有陟降率、遲疾數,麟德曰先後、盈縮數,大衍曰損益、朏朒積,崇天曰損益、盈縮積。所謂古曆平朔之日,而月或朝覿東方,夕見西方,則史官謂之朏朒。今以日行之所盈縮、月行之所遲疾,皆損益之,或進退其日,以為定朔,則舒亟之度,乃勢數使然,非失政之致也。新曆以七千一為盈縮之極,其數與月離相錯,而損益、盈縮為名,則文約而義見。
升降分:皇極躔衰有陟降率,麟德以日景差、陟降率、日晷景消息為之,義通軌漏。夫南至之後,日行漸升,去極近,故晷短而萬物皆盛;北至之後,日行漸降,去極遠,故晷長而萬物寖衰。自大衍以下,皆從麟德。今曆消息日行之升降,積而為盈縮焉。
赤道宿:漢百二年議造曆,乃定東西,立晷儀,下漏刻,以追二十八宿相距於四方,赤道宿度,則其法也。其赤道,斗二十六度及分,牛八度,女十二度,虛十度,危十七度,室十六度,壁九度,奎十六度,婁十二度,胃十四度,昴十一度,畢十六度,觜二度,參九度,井三十三度,鬼四度,柳十五度,星七度,張十八度,翼十八度,軫十七度,角十二度,亢九度,氐十五度,房五度,心五度,尾十八度,箕十一度,自後相承用之。至唐初,李淳風造渾儀,亦無所改。開元中,浮屠一行作大衍曆,詔梁令瓚作黃道游儀,測知畢、觜、參及輿鬼四宿赤道宿度,與舊不同。自一行之後,因相沿襲,下更五代,無所增損。至仁宗皇祐初,始有詔造黃道渾儀,鑄銅為之。自後測驗赤道宿度,又一十四宿與一行所測不同。蓋古今之人,以八尺圓器,欲以盡天體,決知其難矣。又况圖本所指距星,傳習有差,故今赤道宿度與古不同。自漢太初後至唐開元治曆之初,凡八百年間,悉無更易。今雖測驗與舊不同,亦歲月未久。新曆兩備其數,如淳風從舊之意。
月度轉分:洪範傳曰:「晦而月見西方謂之朏。月未合朔,在日後;今在日前,太疾也。朏者,人君舒緩、臣下驕盈專權之象。朔而月見東方謂之側匿。合朔則月與日合,今在日後,太遲也。側匿者,人君嚴急、臣下危殆恐懼之象。」盈則進,縮則退,躔離九道,周合三旬,考其變行,自有常數。傳稱,人君有舒疾之變,未達月有遲速之常也。後漢劉洪粗通其旨。爾後治曆者,多循舊法,皆考遲疾之分,增損平會之朔,得月後定追及日之際而生定朔焉。至於加時早晚,或速或遲,皆由轉分強弱所致。舊曆課轉分,以九分之五為強率,一百一分之五十六為弱率,乃於強弱之際而求秒焉。新曆轉分二百九十八億八千二百二十四萬二千二百五十一,以一百萬平之,得二十七日五十五萬四千六百二十六,最得中平之數。
月離遲疾定差:皇極有加減限、朏朒積,麟德曰增減率、遲疾積,大衍曰損益率、朏朒積,崇天亦曰損益率、朏朒積。所謂日不及平行則損之,過平行則益之,從陽之義也;月不及平行則益之,過平行則損之,御陰之道也。陰陽相錯而以損益、遲疾為名。新曆以一萬四千八百一十九為遲疾之極,而得五度八分,其數與躔相錯,可以知合食加時之早晚也。
進朔:進朔之法,興于麟德。自後諸曆,因而立法,互有不同。假令仲夏月朔月行極疾之時,合朔當於亥正,若不進朔,則晨而月見東方;若從大衍,當戌初進朔,則朔日之夕,月生於西方。新曆察朔日之餘,驗月行徐疾,變立法率,參驗加時,常視定朔小餘:秋分後四分法之三已上者,進一日;春分後定朔晨分差如春分之日者,三約之,以減四分之二;定朔小餘如此數已上者,亦進,以來日為朔。俾循環合度,月不見於朔晨;交會無差,明必藏於朔夕。加時在於午中,則晦日之晨同二日之夕,皆合月見;加時在於酉中,則晦日之晨尚見,二日之夕未生;加時在於子中,則晦日之晨不見,二日之夕以生。定晦朔,乃月見之晨夕可知;課小餘,則加時之早晏無失。使坦然不惑,觸類而明之。
消息數:因漏刻立名,義通晷景。麟德曆差曰屈伸率。天晝夜者,易進退之象也。冬至一陽爻生而晷道漸升,夜漏益減,象君子之道長,故曰息;夏至一陰爻生,而晷道漸降,夜漏益增,象君子之道消,故曰消。表景與陽為衝,從晦者也,故與夜漏長短。今以屈伸象太陰之行,而刻差曰消息數。黃道去極,日行有南北,故晷漏有長短。然景差徐疾不同者,句股使之然也。景直晷中則差遲,與句股數齊則差急,隨北極高下,所遇不同。其黃道去極度數與日景、漏刻、昏晚中星反覆相求,消息用率,步日景而稽黃道,因黃道而生漏刻,而正中星,四術旋相為中,以合九服之變,約而易知,簡而易從。
六十四卦:十二月卦出於孟氏,七十二候原於周書。後宋景業因劉洪傳卦,李淳風據舊曆元圖,皆未覩陰陽之賾。至開元中,浮屠一行考揚子雲太玄經,錯綜其數,索隱周公三統,糾正時訓,參其變通,著在爻象,非深達易象,孰能造於此乎!今之所修,循一行舊義,至於周策分率,隨數遷變。夫六十卦直常度全次之交者,諸侯卦也;竟六日三千四百八、十六秒而大夫受之;次,九卿受之;次,三公受之;次,天子受之。五六相錯,復協常月之次。凡九三應上九,則天微然以靜;六三應上六,則地鬱然而定。九三應上六即溫,六三應上九即寒。上爻陽者風,陰者雨。各視所直之爻,察不刊之象,而知五等與君辟之得失、過與不及焉。七十二候,李業興以來,迄于麟德,凡七家曆,皆以雞始乳為立春初候,東風解凍為次候,其餘以次承之。與周書相校,二十餘日,舛訛益甚。而一行改從古義,今亦以周書為正。
岳臺日晷:岳臺者,今京師岳臺坊,地曰浚儀,近古候景之所。尚書·洛誥稱東土是也。禮玉人職:「土圭長尺有五寸以致日。」此即日有常數也。司徒職以圭正日晷,「日至之景,尺有五寸,謂之地中。」此即是地土中致日景與土圭等。然表長八尺,見於周髀。夫天有常運,地有常中,曆有正象,表有定數。言日至者,明其日至此也。景尺有五寸與圭等者,是其景晷之真效。然夏至之日尺有五寸之景,不因八尺之表將何以得,故經見夏至日景者,明表有定數也。新曆周歲中晷長短,皆以八尺之表測候,所得名中晷常數。交會日月,成象於天,以辨尊卑之序。日,君道也;月,臣道也。謫食之變,皆與人事相應。若人君修德以禳之,則或當食而不食。故太陰有變行以避日,則不食;五星潛在日下,為太陰禦侮而扶救,則不食;涉交數淺,或在陽曆,日光著盛,陰氣衰微,則不食;德之休明而有小眚焉,天為之隱,是以光微蔽之,雖交而不見食。此四者,皆德感之所繇致也。按大衍曆議,開元十二年七月戊午朔,當食。時自交阯至朔方,同日度景測候之際,晶明無雲而不食。以曆推之,其日入交七百八十四分,當食八分半。十三年,天正南至,東封禮畢,還次梁、宋,史官言:「十二月庚戌朔,當食。」帝曰:「予方修先后之職,謫見于天,是朕之不敏,無以對揚上帝之休也。」於是徹膳素服以俟之,而卒不食。在位之臣莫不稱慶,以謂德之動天,不俟終日。以曆推之,是月入交二度弱,當食十五分之十三,而陽光自若,無纖毫之變,雖算術乖舛,不宜若是。凡治曆之道,定分最微,故損益毫釐,未得其正,則上考春秋以來日月交食之載,必有所差。假令治曆者,因開元二食變交限以從之,則所協甚少,而差失過多。由此明之,詩云:「此日而微」,乃非天之常數也。舊曆直求月行入交,今則先課交初所在,然後與月行更相表裏,務通精數。
四正食差:正交如累璧,漸減則有差。在內食分多,在外食分少;交淺則間遙,交深則相薄;所觀之地又偏,所食之時亦別。苟非地中,皆隨所在而漸異。縱交分正等同在南方,冬食則多,夏食乃少。假均冬夏,早晚又殊,處南北則高,居東西則下。視有斜正,理不可均。月在陽曆,校驗古今交食,所虧不過其半。合置四正食差,則斜正於卯酉之間,損益於子午之位,務從親密,以考精微。
五星立率:五星之行,亦因日而立率,以示尊卑之義。日周四時,無所不照,君道也;星分行列宿,臣道也。陰陽進退,于此取儀刑焉。是以當陽而進,當陰而退,皆得其常,故加減之。古之推步,悉皆順行,至秦方有金、火逆數。
大衍曰:「木星之行與諸星稍異:商、周之際,率一百二十年而超一次;至戰國之時,其行寖急;逮中平之後,八十四年而超一次,自此之後,以為常率。」其行也,初與日合,一十八日行四度,乃晨見東方。而順行一百八日,計行二十二度強,而留二十七日。乃退行四十六日半,退行五度強,與日相望。旋日而退,又四十六日半,退五度強,復留二十七日。而順行一百八日,行十八度強,乃夕伏西方。又十八日行四度,復與日合。
火星之行:初與日合,七十日行五十二度,乃晨見東方。而順行二百八十日,計行二百一十六度半弱,而留十一日。乃退行二十九日,退九度,與日相望。旋日而退,又二十九日,退九度,復留十一日。而順行二百八十日,行一百六十四度半弱,而夕伏西方。又七十日,行五十二度,復與日合。
土星之行:初與日合,二十一日行二度半,乃晨見東方。順行八十四日,計行九度半強,而留三十五日。乃退行四十九日,退三度半,與日相望。乃旋日而退,又四十九日,退三度少,復留三十五日。又順行八十四日,行七度強,而夕伏西方。又二十一日,行二度半,復與日合。
金星之行:初與日合,三十八日半行四十九度太,而夕見西方。乃順行二百三十一日,計行二百五十一度半,而留七日。乃退行九日,退四度半,而夕伏西方。又六日半,退四度太,與日再合。又六日半,退四度太,而晨見東方。又退九日,逆行四度半,而復留七日。而復順行二百三十一日,行二百五十一度半,乃晨伏東方。又三十八日半,行四十九度太,復與日會。
水星之行:初與日合,十五日行三十三度,乃夕見西方。而順行三十日,計行六十六度,而留三日,乃夕伏西方。而退十日,退八度,與日再合。又退十日,退八度,乃晨見東方,而復留三日。又順行三十三日,行三十三度,而晨伏東方。又十五日,行三十三度,與日復會。
一行云:「五星伏、見、留、逆之效,表、裏、盈、縮之行,皆係之於時,驗之於政。小失則小變,大失則大變;事微而象微,事章而象章。蓋皇天降譴以警悟人主。又或算者昧於象,占者迷於數,覩五星失行,悉謂之曆舛,以數象相參,兩喪其實。大凡校驗之道,必稽古今注記,使上下相距,反覆相求,苟獨異常,則失行可知矣。」
求朔弦望盈縮差及定差:各置朔、弦、望所入盈縮度及約分,如在象度分以下者為在初;已上者,覆減二至限,餘為在末。置初、末度分於上,列二至於下,以上減下,餘以下乘上,為積數;滿四千一百三十五除之為度,不滿,退除為分,命曰盈縮差度及分。若以四百乘積數,滿五百六十七除之,為盈縮定差。
求二十八宿黃道度:各置赤道宿入初、末限度及分,用減一百一十一度三十七分,餘以乘初、末限度及分,進一位,以一萬約之,所得,命曰黃赤道差度及分;在至後、分前減,在分後、至前加,皆加減赤道宿積度及分,為其宿黃道積度及分;以前宿黃道積度減其宿黃道積度,為其宿黃道度及分。
求天正冬至加時黃道日度:以冬至加時赤道日度及分,減一百一十一度三十七分,餘以冬至加時赤道日度及分乘之,進一位,滿一萬約之為度;不滿為分,命曰黃赤道差;用減冬至赤道日度及分,即為所求年天正冬至加時黃道日度及分。