昭公七年四月甲辰朔,日蝕。士文伯曰:“去衛地,如魯地。於是有災,魯實受之。”新曆是歲二月甲辰朔入常,雨水後七日,在奎十度。周度為降婁之始,則魯、衛之交也。自周初至是,已退七度,故入雨水。七日方及降婁,雖日度潛移,而周禮未改,其配神主祭之宿,宜書於建國之初。淳風駁《戊寅曆》曰:“《漢誌》降婁初在奎五度,今曆日蝕在降婁之中,依無歲差法,食於兩次之交。”是又不然。議者曉十有二次之所由生,然後可以明其得失。且劉歆等所定辰次,非能有以睹陰陽之賾,而得於鬼神,各據當時中節星度耳。歆以《太初曆》冬至日在牽牛前五度,故降婁直東壁八度。李業興《正光曆》,冬至在牽牛前十二度,故降婁退至東壁三度。及祖衝之後,以為日度漸差,則當據列宿四正之中以定辰次,不複係於中節。淳風以冬至常在鬥十三度,則當以東壁二度為降婁之初,安得守漢曆以駁仁均耶?又《三統曆》昭公二十年,己醜,日南至,與《麟德》及《開元曆》同。然則入雨水後七日,亦入降婁七度,非魯、衛之交也。三十一年十二月辛亥朔,日蝕。史墨曰:“日月在辰尾,庚午之日,日始有謫。”《開元曆》是歲十月辛亥朔,入常立冬。五日,日在尾十三度,於古距辰尾之初。《麟德曆》日在心三度於黃道,退直於房矣。
哀公十二年冬十有二月,螽。《開元曆》推置閏當在十一年春,至十二年冬,失閏已久。是歲九月己亥朔,先寒露三日,於定氣,日在亢五度,去心近一次。火星明大,尚未當伏。至霜降五日,始潛日下。乃《月令》“蟄蟲鹹俯”,則火辰未伏,當在霜降前。雖節氣極晚,不得十月昏見。故仲尼曰:“丘聞之,火伏而後蟄者畢。今火猶西流,司曆過也。”方夏後氏之初,八月辰伏,九月內火,及霜降之後,火已朝覿東方,距春秋之季千五百餘年,乃雲“火伏而後蟄者畢。”向使冬至常居其所,則仲尼不得以西流未伏,明是九月之初也。自春秋至今又千五百歲,《麟德曆》以霜降後五日,日在氐八度,房、心初伏,定增二日,以月蝕衝校之,猶差三度。閏餘稍多,則建亥之始,火猶見西方。向使宿度不移,則仲尼不得以西流未伏,明非十月之候也。自羲、和已來,火辰見伏,三睹厥變。然則丘明之記,欲令後之作者參求微象,以探仲尼之旨。是歲失閏浸久,季秋中氣後天三日,比及明年仲冬,又得一閏。寤仲尼之言,補正時曆,而十二月猶可以螽。至哀公十四年五月庚申朔,日蝕。以《開元曆》考之,則日蝕前又增一閏,《魯曆》正矣。《長曆》自哀公十年六月,迄十四年二月,才置一閏,非是。
戰國及秦,日卻退三度。始皇十七年辛未歲冬至,應在鬥二十二度。秦曆上元正月己巳朔,晨初立春,日、月、五星俱起營室五度。蔀首日名皆直四孟。假朔退十五日,則閏在正月前。朔進十五日,則閏在正月後。是以十有二節,皆在盈縮之中,而晨昏宿度隨之。以《顓頊曆》依《月令》自十有二節推之,與不韋所記合。而潁子嚴之倫謂《月令》晨昏距宿,當在中氣,致雩祭太晚,自乖左氏之文,而杜預又據《春秋》,以《月令》為否。皆非是。梁《大同曆》夏後氏之初,冬至日在牽牛初,以為《明堂》、《月令》乃夏時之記,據中氣推之不合,更以中節之間為正,乃稍相符。不知進在節初,自然契合。自秦初及今,又且千歲,節初之宿,皆當中氣。淳風因為說曰:“今孟春中氣,日在營室,昏明中星,與《月令》不殊。”按秦曆立春,日在營室五度。《麟德曆》以啟蟄之日乃至營室,其昏明中宿十有二建,以為不差,妄矣。
古曆,冬至昏明中星去日九十二度,春分、秋分百度,夏至百一十八度,率一氣差三度,九日差一刻。
秦曆十二次,立春在營室五度,於《太初》星距危十六度少也。昏,畢八度中,《月令》參中,謂肩股也。晨,心八度中,《月令》尾中,於《太初》星距尾也。仲春昏,東井十四度中,《月令》弧中,弧星入東井十八度。晨,南鬥二度中,《月令》建星中,於《太初》星距西建也。《甄耀度》及《魯曆》,南方有狼、弧,無東井、鬼,北方有建星,無南鬥,井、鬥度長,弧、建度短,故以正昏明雲。
古曆星度及漢落下閎等所測,其星距遠近不同,然二十八宿之體不異。古以牽牛上星為距,《太初》改用中星,入古曆牽牛太半度,於氣法當三十二分日之二十一。故《洪範傳》冬至日在牽牛一度,減《太初》星距二十一分,直南鬥二十六度十九分也。《顓頊曆》立春起營室五度,冬至在牽年一度少。《洪範傳》冬至所起無餘分,故立春在營室四度太。祖衝之自營室五度,以《太初》星距命之,因雲秦曆冬至,日在牽牛六度。虞廣刂等襲衝之之誤,為之說雲:“夏時冬至,日在鬥末,以歲差考之,牽牛六度乃《顓頊》之代。漢時雖覺其差,頓移五度,故冬至還在牛初。”按《洪範》古今星距,僅差四分之三,皆起牽牛一度。廣刂等所說,亦非是。魯宣公十五年,丁卯歲,《顓頊曆》第十三蔀首與《麟德曆》俱以丁巳平旦立春。至始皇三十三年丁亥,凡三百八十歲,得《顓頊曆》壬申蔀首。是歲,秦曆以壬申寅初立春,而《開元曆》與《麟德曆》俱以庚午平旦,差二日,日當在南鬥二十二度。古曆後天二日,又增二度。然則秦曆冬至,定在午前二度。氣後天二日,日不及天二度,微而難覺,故《呂氏》循用之。
及漢興,張蒼等亦以《顓頊曆》比五家疏闊中最近密。今考月蝕衝,則開元冬至,上及牛初正差一次。淳風以為古術疏舛,雖弦望、昏明差天十五度而猶不知。又引《呂氏春秋》,黃帝以仲春乙卯日在奎,始奏十二鍾,命之曰《鹹池》。至今三千餘年,而春分亦在奎,反謂秦曆與今不異。按不韋所記,以其《月令》孟春在奎,謂黃帝之時亦在奎,猶淳風曆冬至鬥十三度,因謂黃帝時亦在建星耳。經籍所載,合於歲差者,淳風皆不取,而專取於《呂氏春秋》。若謂十二紀可以為正,則立春在營室五度,固當不易,安得頓移使當啟蟄之節?此又其所不思也。
漢四百二十六年,日卻差五度。景帝中元三年甲午歲冬至,應在鬥二十一度。
太初元年,《三統曆》及《周曆》皆以十一月夜半合朔冬至,日月俱起牽牛一度。古曆與近代密率相較,二百年氣差一日,三百年朔差一日。推而上之,久益先天;引而下之,久益後天。僖公五年,《周曆》正月辛亥朔,餘四分之一,南至。以歲差推之,日在牽牛初。至宣公十一年癸亥,《周曆》與《麟德曆》俱以庚戌日中冬至,而月朔尚先《麟德曆》十五辰。至昭公二十年己卯,《周曆》以正月己醜朔日中南至,《麟德曆》以己醜平旦冬至。哀公十一年丁巳,《周曆》入己酉蔀首,《麟德曆》以戊申禺中冬至。惠王四十三年己醜,《周曆》入丁卯蔀首,《麟德曆》以乙醜日昳冬至。呂後八年辛酉,《周曆》入乙酉蔀首,《麟德曆》以壬午黃昏冬至;其十二月甲申,人定合朔。太初元年,《周曆》以甲子夜半合朔冬至,《麟德曆》以辛酉禺中冬至,十二月癸亥晡時合朔。氣差三十二辰,朔差四辰。此疏密之大較也。
僖公五年,《周曆》、漢曆、唐曆皆以辛亥南至。後五百五十餘歲,至太初元年,《周曆》、漢曆皆得甲子夜半冬至,唐曆皆以辛酉,則漢曆後天三日矣。祖衝之、張胄玄促上章歲至太初元年,衝之以癸亥雞鳴冬至,而胄玄以癸亥日出。欲令合於甲子,而適與《魯曆》相會。自此推僖公五年,《魯曆》以庚戌冬至,而二家皆以甲寅。且僖公登觀台以望而書雲物,出於表晷天驗,非時史意度。乖丘明正時之意,以就劉歆之失。今考麟德元年甲子,唐曆皆以甲子冬至,而《周曆》、漢曆皆以庚午。然則自太初下至麟德差四日,自太初上及僖公差三日,不足疑也。
以歲差考太初元年辛酉冬至加時,日在鬥二十三度。漢曆,氣後天三日,而日先天三度,所差尚少。故落下閎等雖候昏明中星,步日所在,猶未覺其差。然《洪範》、《太初》所揆,冬至昏奎八度中,夏至昏氐十三度中,依漢曆,冬至日在牽牛初太半度,以昏距中命之,奎十一度中;夏至,房一度中。此皆閎等所測,自差三度,則劉向等殆已知《太初》冬至不及天三度矣。
及永平中,治曆者考行事,史官注日,常不及《太初曆》五度。然諸儒守讖緯,以為當在牛初,故賈逵等議:“石氏星距,黃道規牽牛初直鬥二十度,於赤道二十一度也。《尚書》《考靈耀》鬥二十二度,無餘分。冬至,日在牽牛初,無牽年所起文。編等據今日所去牽牛中星五度,於鬥二十一度四分一,與《考靈耀》相近。”遂更曆從鬥二十一度起。然古曆以鬥魁首為距,至牽牛為二十二度,未聞移牽牛六度以就《太初》星距也。逵等以末學僻於所傳,而昧天象,故以權誣之,而後聽從他術,以為日在牛初者,由此遂黜。
今歲差,引而退之,則辛酉冬至,日在鬥二十度,合於密率,而有驗於今;推而進之,則甲子冬至,日在鬥二十四度,昏奎八度中,而有證於古。其虛退之度,又適及牽牛之初。而衝之雖促減氣分,冀符漢曆,猶差六度,未及於天。而《麟德曆》冬至不移,則昏中向差半次。淳風以為太初元年得本星度,日月合璧,俱起建星。賈逵考曆,亦雲古曆冬至皆起建星。兩漢冬至,日皆後天,故其宿度多在鬥末。今以儀測,建星在鬥十三四度間,自古冬至無差,審矣。
按古之六術,並同《四分》。《四分》之法,久則後天。推古曆之作,皆在漢初,卻較《春秋》,朔並先天,則非三代之前明矣。
古曆,南鬥至牽牛上星二十一度,入《太初》星距四度,上直西建之初。故六家或以南鬥命度,或以建星命度。方周、漢之交,日已潛退,其襲《春秋》舊曆者,則以為在牽牛之首;其考當時之驗者,則以為入建星度中。然氣朔前後不逾一日,故漢曆冬至,當在鬥末。以為建星上得《太初》本星度,此其明據也。《四分》法雖疏,而先賢謹於天事,其遷革之意,俱有效於當時,故太史公等觀二十八宿疏密,立晷儀,下漏刻,以稽晦朔、分至、躔離、弦望,其赤道遺法,後世無以非之。故雜候清台,《太初》最密。若當時日在建星,已直鬥十三度,則壽王《調曆》宜允得其中,豈容頓差一氣而未知其謬?不能觀乎時變,而欲厚誣古人也。
後百餘歲,至永平十一年,以《麟德曆》較之,氣當後天二日半,朔當後天半日。是歲《四分曆》得辛酉蔀首,已減《太初曆》四分日之三,定後天二日太半。《開元曆》以戊午禺中冬至,日在鬥十八度半弱,潛退至牛前八度。進至辛酉夜半,日在鬥二十一度半弱。《續漢誌》雲:“元和二年冬至,日在鬥二十一度四分之一。”是也。
祖衝之曰:“《四分曆》立冬景長一丈,立春九尺六寸,冬至南極日晷最長。二氣去至日數既同,則中景應等。而相差四寸,此冬至後天之驗也。二氣中景,日差九分半弱,進退調均,略無盈縮。各退二日十二刻,則景皆九尺八寸。以此推冬至後天亦二日十二刻矣。”東漢晷漏定於永元十四年,則《四分》法施行後十五歲也。
二十四氣加時,進退不等,其去午正極遠者,四十九刻有餘。日中之晷,頗有盈縮,故治曆者皆就其中率,以午正言之。而《開元曆》所推氣及日度,皆直子半之始。其未及日中,尚五十刻。因加二日十二刻,正得二日太半。與衝之所算及破章二百年間輒差一日之數,皆合。
自漢時辛酉冬至,以後天之數減之,則合於今曆歲差鬥十八度。自今曆戊午冬至,以後天之數加之,則合於賈逵所測鬥二十一度。反複僉同。而淳風冬至常在鬥十三度,豈當時知不及牽牛五度,而不知過建星八度耶?
晉武帝太始三年丁亥歲冬至,日當在鬥十六度。晉用魏《景初曆》,其冬至亦在鬥二十一度少。太元九年,薑岌更造《三紀術》,退在鬥十七度。曰:“古曆鬥分強,故不可施於今;《乾象》鬥分細,故不可通於古。《景初》雖得其中,而日之所在,乃差四度,合朔虧盈,皆不及其次。假月在東井一度蝕,以日檢之,乃在參六度。”岌以月蝕衝知日度,由是躔次遂正,為後代治曆者宗。
宋文帝時,何承天上《元嘉曆》,曰:“《四分》、《景初曆》,冬至同在鬥二十一度,臣以月蝕檢之,則今應在鬥十七度。又土圭測二至,晷差三日有餘,則天之南至,日在鬥十三四度矣。”事下太史考驗,如承天所上。以《開元曆》考元嘉十年冬至,日在鬥十四度,與承天所測合。
大明八年,祖衝之上《大明曆》,冬至在鬥十一度,《開元曆》應在鬥十三度。梁天監八年,衝之子員外散騎侍郎恒之上其家術。詔太史令將作大匠道秀等較之,上距大明又五十年,日度益差。其明年,閏月十六日,月蝕,在虛十度,日應在張四度。承天曆在張六度,衝之曆在張二度。
大同九年,虞廣刂等議:“薑岌、何承天俱以月蝕衝步日所在。承天雖移岌三度,然其冬至亦上岌三日。承天在鬥十三四度,而岌在鬥十七度。其實非移。祖衝之謂為實差,以推今冬至,日在鬥九度,用求中星不合。自岌至今,將二百年,而冬至在鬥十二度。然日之所在難知,驗以中星,則漏刻不定。漢世課昏明中星,為法已淺。今候夜半中星,以求日衝,近於得密。而水有清濁,壺有增減,或積塵所擁,故漏有遲疾。臣等頻夜候中星,而前後相差或至三度。大略冬至遠不過鬥十四度,近不出十度。”又以九年三月十五日夜半,月在房四度蝕。九月十五日夜半,月在昴三度蝕。以其衝計,冬至皆在鬥十二度。自薑岌、何承天所測,下及大同,日已卻差二度。而淳風以為晉、宋以來三百餘歲,以月蝕衝考之,固在鬥十三四度間,非矣。
劉孝孫《甲子元曆》,推太初冬至在牽牛初,下及晉太元、宋元嘉皆在鬥十七度。開皇十四年,在鬥十三度。而劉焯曆仁壽四年冬至,日在黃道鬥十度,於赤道鬥十一度也。其後孝孫改從焯法,而仁壽四年冬至,日亦在鬥十度。焯卒後,胄玄以其前曆上元起虛五度,推漢太初,猶不及牽牛,乃更起虛七度,故太初在鬥二十三度,永平在鬥二十一度,並與今曆合。而仁壽四年,冬至在鬥十三度,以驗近事,又不逮其前曆矣。《戊寅曆》,太初元年辛酉冬至,進及甲子,日在牽牛三度。永平十一年,得戊午冬至,進及辛酉,在鬥二十六度。至元嘉,中氣上景初三日,而冬至猶在鬥十七度。欲以求合,反更失之。又曲循孝孫之論,而不知孝孫已變從《皇極》,故為淳風等所駁。歲差之術,由此不行。
以太史注記月蝕衝考日度,麟德元年九月庚申,月蝕在婁十度。至開元四年六月庚申,月蝕在牛六度。較《麟德曆》率差三度,則今冬至定在赤道鬥十度。
又《皇極曆》,歲差皆自黃道命之,其每歲周分,常當南至之軌,與赤道相較,所減尤多。計黃道差三十六度,赤道差四十餘度,雖每歲遁之,不足為過。然立法之體,宜盡其原,是以《開元曆》皆自赤道推之,乃以今有術從變黃道。