北齊張子信積候合蝕加時,覺日行有入氣差,然損益未得其正。至劉焯,立盈縮躔衰術,與四象升降。麟德曆因之,更名躔差。凡陰陽往來,皆馴積而變。日南至,其行最急,急而漸損,至春分及中而後遲。迨日北至,其行最舒,而漸益之,以至秋分又及中而後益急。急極而寒若,舒極而燠若,及中而雨暘之氣交,自然之數也。焯術於春分前一日最急,後一日最舒;秋分前一日最舒,後一日最急。舒急同于二至,而中間一日平行。其說非是。當以二十四氣晷景,考日躔盈縮而密於加時。
洪範傳云:「日有中道,月有九行。」中道,謂黃道也。九行者,青道二,出黃道東;朱道二,出黃道南;白道二,出黃道西;黑道二,出黃道北。立春、春分,月東從青道;立夏、夏至,月南從朱道;立秋、秋分,月西從白道;立冬、冬至,月北從黑道。漢史官舊事,九道術廢久,劉洪頗採以著遲疾陰陽曆,然本以消息為奇,而術不傳。
推陰陽曆交在冬至、夏至,則月行青道、白道,所交則同,而出入之行異。故青道至春分之宿,及其所衝,皆在黃道正東;白道至秋分之宿,及其所衝,皆在黃道正西。若陰陽曆交在立春、立秋,則月循朱道、黑道,所交則同,而出入之行異。故朱道至立夏之宿,及其所衝,皆在黃道西南;黑道至立冬之宿,及其所衝,皆在黃道東北。若陰陽曆交在春分、秋分之宿,則月行朱道、黑道,所交則同,而出入之行異。故朱道至夏至之宿,及其所衝,皆在黃道正南;黑道至冬至之宿,及其所衝,皆在黃道正北。若陰陽曆交在立夏、立冬,則月循青道、白道,所交則同,而出入之行異。故青道至立春之宿,及其所衝,皆在黃道東南;白道至立秋之宿,及其所衝,皆在黃道西北。其大紀皆兼二道,而實分主八節,合于四正四維。
按陰陽曆中終之所交,則月行正當黃道,去交七日,其行九十一度,齊於一象之率,而得八行之中。八行與中道而九,是謂九道。凡八行正於春秋,其去黃道六度,則交在冬夏;正於冬夏,其去黃道六度,則交在春秋。易九六、七八,迭為終始之象也。乾坤定位,則八行各當其正。及其寒暑相推,晦朔相易,則在南者變而居北,在東者徙而為西,屈伸、消息之象也。
黃道之差,始自春分、秋分,赤道所交前後各五度為限。初,黃道增多赤道二十四分之十二,每限損一,極九限,數終于四,率赤道四十五度而黃道四十八度,至四立之際,一度少強,依平。復從四起,初限五度,赤道增多黃道二十四分之四,每限益一,極九限而止,終于十二,率赤道四十五度而黃道四十二度,復得冬、夏至之中矣。
月道之差,始自交初、交中,黃道所交亦距交前後五度為限。初限,月道增多黃道四十八分之十二,每限損一,極九限而止,數終于四,率黃道四十五度而月道四十六度半,乃一度強,依平。復從四起,初限五度,月道差少黃道四十八分之四,每限益一,極九限而止,終于十二,率黃道四十五度而月道四十三度半,至陰陽曆二交之半矣。凡近交初限增十二分者,至半交末限減十二分,去交四十六度得損益之平率。
夫日行與歲差偕遷,月行隨交限而變,遯伏相消,朓朒相補,則九道之數可知矣。其月道所交與二分同度,則赤道、黑道近交初限,黃道增二十四分之十二,月道增四十八分之十二。至半交之末,其減亦如之。故於九限之際,黃道差三度,月道差一度半,蓋損益之數齊也。若所交與四立同度,則黃道在損益之中,月道差四十八分之十二。月道至損益之中,黃道差二十四分之十二。於九限之際,黃道差三度,月道差四分度之三,皆朓朒相補也。若所交與二至同度,則青道、白道近交初限,黃道減二十四分之十二,月道增四十八分之十二。至半交之末,黃道增二十四分之十二,月道減四十八分之十二。於九限之際,黃道與月道差同,蓋遯伏相消也。
日出入赤道二十四度,月出入黃道六度,相距則四分之一,故於九道之變,以四立為中交。在二分,增四分之一,而與黃道度相半。在二至,減四分之一,而與黃道度正均。故推極其數,引而伸之,每氣移一候。月道所差,增損九分之一,七十二候而九道究矣。
以四象考之,各據合朔所交,入七十二候,則其八道之行也,以朔交為交初,望交為交中。若交初在冬至初候而入陰曆,則行青道。又十三日七十六分日之四十六,至交中得所衝之宿,變入陽曆,亦行青道。若交初入陽曆,則白道也。故考交初所入,而周天之度可知。若望交在冬至初候,則減十三日四十六分,視大雪初候陰陽曆而正其行也。
日行有南北,晷漏有長短。然二十四氣晷差徐疾不同者,句股使然也。直規中則差遲,與句股數齊則差急。隨辰極高下,所遇不同,如黃道刻漏。此乃數之淺者,近代且猶未曉。今推黃道去極,與晷景、漏刻、昏距、中星四術返覆相求,消息同率,旋相為中,以合九服之變。
小雅「十月之交,朔日辛卯」。虞𠠎以曆推之,在幽王六年。開元曆定交分四萬三千四百二十九,入蝕限,加時在晝。交會而蝕,數之常也。詩云:「彼月而食,則維其常。此日而食,于何不臧。」日,君道也,無朏魄之變;月,臣道也,遠日益明,近日益虧。望與日軌相會,則徙而浸遠,遠極又徙而近交,所以著臣人之象也。望而正於黃道,是謂臣干君明,則陽斯蝕之矣。朔而正於黃道,是謂臣壅君明,則陽為之蝕矣。且十月之交,於曆當蝕,君子猶以為變,詩人悼之。然則古之太平,日不蝕,星不孛,蓋有之矣。
以戊寅、麟德曆推春秋日蝕,大最皆入蝕限。於曆應蝕而春秋不書者尚多,則日蝕必在交限,其入限者不必盡蝕。開元十二年七月戊午朔,於曆當蝕半強,自交趾至于朔方,候之不蝕。十三年十二月庚戌朔,於曆當蝕太半,時東封泰山,還次梁、宋間,皇帝徹膳,不舉樂,不蓋,素服,日亦不蝕。時羣臣與八荒君長之來助祭者,降物以需,不可勝數,皆奉壽稱慶,肅然神服。雖筭術乖舛,不宜如此,然後知德之動天,不俟終日矣。若因開元二蝕,曲變交限而從之,則差者益多。
自開元治曆,史官每歲較節氣中晷,因檢加時小餘,雖大數有常,然亦與時推移,每歲不等。晷變而長,則日行黃道南;晷變而短,則日行黃道北。行而南,則陰曆之交也或失;行而北,則陽曆之交也或失。日在黃道之中,且猶有變,況月行九道乎!杜預云:「日月動物,雖行度有大量,不能不小有盈縮。故有雖交會而不蝕者,或有頻交而蝕者。」是也。
故較曆必稽古史,虧蝕深淺、加時朓朒陰陽,其數相協者,反覆相求,由曆數之中,以合辰象之變;觀辰象之變,反求曆數之中。類其所同,而中可知矣;辨其所異,而變可知矣。其循度則合于曆,失行則合于占。占道順成,常執中以追變;曆道逆數,常執中以俟變。知此之說者,天道如視諸掌。
略例曰:舊曆考日蝕淺深,皆自張子信所傳,云積候所得,而未曉其然也。以圓儀度日月之徑,乃以月徑之半減入交初限一度半,餘為闇虛半徑。以月去黃道每度差數,令二徑相掩,以驗蝕分,以所入日遲疾乘徑,為泛所用刻數,大率去交不及三度,即月行沒在闇虛,皆入旣限。又半日月之徑,減春分入交初限相去度數,餘為斜射所差。乃考差數,以立旣限。而優游進退於二度中間,亦令二徑相掩,以知日蝕分數。月徑踰旣限之南,則雖在陰曆,而所虧類同外道,斜望使然也。旣限之外,應向外蝕,外道交分,準用此例。以較古今日蝕四十三事,月蝕九十九事,課皆第一。
使日蝕皆不可以常數求,則無以稽曆數之疏密。若皆可以常數求,則無以知政教之休咎。今更設考日蝕或限術,得常則合于數。又日月交會大小相若,而月在日下,自京師斜射而望之,假中國食旣,則南方戴日之下所虧纔半,月外反觀,則交而不蝕。步九服日晷以定蝕分,晨昏漏刻與地偕變,則宇宙雖廣,可以一術齊之矣。
歲星自商、周迄春秋之季,率百二十餘年而超一次。戰國後其行寖急,至漢尚微差,及哀、平間,餘勢乃盡,更八十四年而超一次,因以為常。此其與餘星異也。姬氏出自靈威仰之精,受木行正氣。歲星主農祥,后稷憑焉,故周人常閱其禨祥,而觀善敗。其始王也,次于鶉火,以達天黿。及其衰也,淫于玄枵,以害鳥帑。其後羣雄力爭,禮樂隕壞,而從衡攻守之術興。故歲星常贏行於上,而侯王不寧於下,則木緯失行之勢,宜極於火運之中,理數然也。
開元十二年正月庚午,歲星在進賢東北尺三寸,直軫十二度,於麟德曆在軫十五度。推而上之,至漢河平二年,其十月下旬,歲星在軒轅南耑大星西北尺所。麟德曆在張二度,直軒轅大星。上下相距七百五十年,考其行度,猶未甚盈縮,則哀、平後不復每歲漸差也。又上百二十年,至孝景中元三年五月,星在東井、鉞。麟德曆在參三度。又上六十年,得漢元年十月,五星聚于東井,從歲星也,於秦正歲在乙未,夏正當在甲午。麟德曆白露八日,歲星留觜觿一度。明年立夏,伏于參。由差行未盡,而以常數求之使然也。又上二百七十一年,至哀公十七年,歲在鶉火,麟德曆初見在輿鬼二度。立冬九日,留星三度。明年啟蟄十日退至柳五度,猶不及鶉火。又上百七十八年,至僖公五年,歲星當在大火。麟德曆初見在張八度,明年伏于翼十六度,定在鶉火,差三次矣。哀公以後,差行漸遲,相去猶近;哀公以前,率常行遲。而舊曆猶用急率,不知合變,故所差彌多。武王革命,歲星亦在大火,而麟德曆在東壁三度,則唐、虞已上,所差周天矣。
太初、三統曆歲星十二周天超一次,推商、周間事,大抵皆合。驗開元注記,差九十餘度,蓋不知歲星後率故也。皇極、麟德曆七周天超一次,以推漢、魏間事尚未差。上驗春秋所載,亦差九十餘度,蓋不知歲星前率故也。天保、天和曆得二率之中,故上合於春秋,下猶密於記注。以推永平、黃初間事,遠者或差三十餘度,蓋不知戰國後歲星變行故也。自漢元始四年,距開元十二年,凡十二甲子,上距隱公六年,亦十二甲子。而二曆相合於其中,或差三次於古,或差三次於今,其兩合於古今者,中間亦乖。欲一術以求之,則不可得也。
開元曆歲星前率,三百九十八日,餘二千二百一十九,秒九十三。自哀公二十年丙寅後,每加度餘一分,盡四百三十九合,次合乃加秒十三而止,凡三百九十八日,餘二千六百五十九,秒六,而與日合,是為歲星後率。自此因以為常,入漢元始六年也。
歲星差合術曰:置哀公二十年冬至合餘,加入差已來中積分,以前率約之,為入差合數。不盡者如曆術入之,反求冬至後合日,乃副列入差合數,增下位一筭,乘而半之,盈大衍通法為日,不盡為日餘,以加合日,即差合所在也。求歲星差行徑術,以後終率約上元以來中積分,亦得所求。若稽其實行,當從元始六年置差步之,則前後相距,間不容髮,而上元之首,無忽微空積矣。
成王三年,歲在丙午,星在大火,唐叔始封,故國語曰:「晉之始封,歲在大火。」春秋傳僖公五年,歲在大火,晉公子重耳自蒲奔狄。十六年,歲在壽星,適齊過衛,野人與之塊,子犯曰:「天賜也,天事必象,歲及鶉火必有此乎!復于壽星,必獲諸侯。」二十三年,歲星在胃、昴。秦伯納晉文公。董因曰:「歲在大梁,將集天行。元年,實沈之星,晉人是居。君之行也,歲在大火,閼伯之星也,是謂大辰。辰以善成,后稷是相,唐叔以封。且以辰出而以參入,皆晉祥也。」二十七年,歲在鶉火,晉侯伐衛,取五鹿,敗楚師于城濮,始獲諸侯。歲適及壽星,皆與開元曆合。
襄公十八年,歲星在陬訾之口,開元曆大寒三日,星與日合,在危三度,遂順行至營室八度。其明年,鄭子蟜卒。將葬,公孫子羽與裨灶晨會事焉,過伯有氏,其門上生莠,子羽曰:「其莠猶在乎,於是歲在降婁中而曙。」裨灶指之曰:「猶可以終歲,歲不及此次也。」開元曆,歲星在奎。奎,降婁也。麟德曆,在危。危,玄枵也。二十八年春,無冰。梓慎曰:「歲在星紀,而淫於玄枵。」裨灶曰「歲棄其次,而旅於明年之次,以害鳥帑。周、楚惡之。」開元曆,歲星至南斗十七度,而退守西建間,復順行,與日合于牛初。應在星紀,而盈行進及虛宿,故曰「淫」。留玄枵二年,至三十年。開元曆,歲星順行至營室十度,留。距子蟜之卒一終矣。其年八月,鄭人殺良霄,故曰「及其亡也,歲在陬訾之口」。其明年,乃及降婁。
昭公八年十一月,楚滅陳。史趙曰:「未也。陳,顓頊之族也。歲在鶉火,是以卒滅。今在析木之津,猶將復由。」開元曆,在箕八度,析木津也。十年春,進及婺女初,在玄枵之維首。傳曰:「正月,有星出于婺女。」裨灶曰:「今茲歲在顓頊之墟。」是歲與日合于危。其明年進及營室,復得豕韋之次。景王問萇弘曰:「今茲諸侯何實吉?何實凶?」對曰:「蔡凶。此蔡侯般殺其君之歲,歲在豕韋,弗過此矣,楚將有之。歲及大梁,蔡復楚凶。」至十三年,歲星在昴、畢,而楚弒靈王,陳、蔡復封。初,昭公九年,陳災。裨灶曰「後五年,陳將復封。歲五及鶉火,而後陳卒亡。」自陳災五年,而歲在大梁,陳復建國。哀公十七年,五及鶉火,而楚滅陳。是年,歲星與日合在張六度。昭公三十一年夏,吳伐越。始用師於越也,史墨曰:「越得歲而吳伐之,必受其凶。」是歲,星與日合于南斗三度。昔僖公六年,歲陰在卯,星在析木。昭公三十二年,亦歲陰在卯,而星在星紀。故三統曆因以為超次之率。考其實,猶百二十餘年。近代諸曆,欲以八十四年齊之,此其所惑也。後三十八年而越滅吳,星三及斗、牛,已入差合二年矣。
夫五事感於中,而五行之祥應于下,五緯之變彰于上。若聲發而響和,形動而影隨,故王者失典刑之正,則星辰為之亂行;汨彝倫之敘,則天事為之無象。當其亂行、無象,又可以曆紀齊乎?故襄公二十八年,歲在星紀,淫于玄枵。至三十年八月,始及陬訾之口,超次而前,二年守之。
後魏神瑞二年十二月,熒惑在瓠瓜星中,一夕忽亡,不知所在。崔浩以日辰推之,曰:「庚午之夕,辛未之朝,天有陰雲,熒惑之亡,在此二日。庚午未皆主秦,辛為西夷。今姚興據咸陽,是熒惑入秦矣。」其後熒惑果出東井,留守盤旋,秦中大旱赤地,昆明水竭。明年,姚興死,二子交兵。三年,國滅。
張子信曆辰星應見不見術,晨夕去日前後四十六度內,十八度外,有木、火、土、金一星者見,無則不見。張冑玄曆,朔望在交限,有星伏在日下,木、土去見十日外,火去見四十日外,金去見二十二日外者,並不加減差,皆精氣相感使然。
略例曰:其入氣加減,亦自張子信始,後人莫不遵用之。原始要終,多有不協。今較麟德曆,熒惑、太白見伏行度過與不及,熒惑凡四十八事,太白二十一事。餘星所差,蓋細不足考。且盈縮之行,宜與四象潛合,而二十四氣加減不均。更推易數而正之,又各立歲差,以究五精運周二十八舍之變。較史官所記,歲星二十七事,熒惑二十八事,鎮星二十一事,太白二十二事,辰星二十四事,開元曆課皆第一云。