新法算書 · 卷二十五

徐光啟 《新法算書》
欽定四庫全書 新法算書卷二十五   明 徐光啟等 撰日躔表 厯元後二百恆年表説 厯之有元也其可考者自漢四分厯始也四分之歲實小余為二十五刻故上推前古之甲子朔旦冬至僅積一萬餘年止耳後世小余之分愈細積年之數愈多或至三億八千萬有竒宏濶迂逺大而無當矣厯之不用積年也自郭守敬始也其法隨時推測以至元辛巳為厯元其氣應為五十五日六百分氣應者從本年冬至時刻上遡至甲子日子正初刻以為厯本至今宗用之不可復易有欲仍用積年者謬也嵗實之有上長下消也亦自守敬始也彼見四分之小余為二十五刻後來積漸後天修厯者七十餘家因之積漸減率無驟減者亦無減而復加者是皆隨時測算所得不可謂千餘年間悉皆妄作也故因宋之統天厯減為二十四刻二十五分是亦當時測候推算以為宜然又自漢至元一千二百餘年而減七十五分以前凖後故曰上推則百年長一分下推則百年消一分也元統修大統厯悉用守敬之舊而獨棄消長一法豈以有消無長消於何止耶且或實見當時用郭之法未免先天是以堅持其説李徳芳爭之而不得也然徳芳誤以一分為一日則亦安能與統爭乎自是以來二百五十餘年悉不用減分而所推各年冬至未見後天使元統而在得無自詫以為去之誠是耶然而非也厯自四分以後代有改修亦代減嵗實何獨此三百年中不應復減恐天行之數非長則消決無中立之理且自元統以來未嘗實行測驗安見其不應復減而前此七十餘家漸次減率者皆妄作也是則守敬消長之說必不可易而近世有尊用其法者減歲實小餘二十四刻又二十二分以之推算謂大統冬至實後天十刻許似可為定法矣然而又非也今推算冬至定時驗以實測則大統冬至實先天十刻許比之減實推步者共差二十刻許反不若大統之不用消長猶為近之奈何可為定法耶於是有謂歲實不宜消減更宜加增因用金趙知微重修大明厯所定歲實小余為二十四刻三十六分推算冬至以為防厯氣差九刻夫嵗實既加則節氣必在大統之後不惟斷棄守敬之法並近年尊用郭法者亦遽爾背馳計非本於測驗何從得此然而又非也天之道浸既已浸差浸減減至於今消極而長絶無端倪安得改消為長又驟長至十分以上則千五百年間獨知微為是而前後減率者七十餘家又皆妄作也無是理也展轉皆非則何道之從而可曰論歲實實應漸減則守敬為是而二四三六墨守其故者為非論正節防厯實未後天則改用大明者近是而十刻二十刻失在先天者為非然一前一後既相去若干刻燕越蒼素何從得合而有定法也夫天行之數不能為僣差又不能無叅差僣差者如元史所稱日度失行必不然也無叅差者如測定歲實即千百年永永如是亦必不然也葢正歲年有二法一為平歲一為定歲如月之有平朔定朔平望定望者然非惟歲月日亦有之向之氣應起算積歲平分所得前若干刻者平冬至也消實之説近之更以加減差分併入平數乃得後若干刻者定冬至也加實之説近之平冬至者測定春秋二分總計平行度分折取中數然日軌尚髙緯度猶北晷景亦短故稱平不稱定也定冬至則日軌最下緯度極南晷景甚長然多寡之數歲歲不同有加減可推無恆率可據故稱定不稱平也有此二者即氣應通積之法於正節之理殊為未盡惟以有恆率之平歲為根以加減差定之然後差而不差非齊而齊矣向之言消言長各見其一不消不長者又執子莫之中皆未聞加減之術故也夫月以朔防為平朔用遲疾視差等加減之年以歲實為平年用宿行最髙等加減之日以一度弱為平日用嬴縮升度等加減之其一理也乃漢劉洪造乾象厯已知定朔而定年定日至今未喻者月無定朔有日食可驗定年定日無事證可明也然如前三説展轉俱非安得不有此術一為之剖析防後此數百年歲實愈消加減愈多此術愈不可少苐消者必有時而長減者又有時而加則非今日所能豫知故當究極理數以為千數百年後來作者增修之地耳新法【依百分算】定用平行歲實為三百六十五日二十四刻二十一分八十八秒六十四微以崇禎元年戊辰歲為厯元作二百恆年表表中書紀年度分者平冬至之根數葢是本日夜子正四刻以前上遡至平冬至時刻之日躔度分與氣應同理者也其最髙沖度分者是加減差所用合於加減差表依法推算則得定冬至也其宿紀日者是年之冬至次日若加差滿一日則為本日也今先列求天正冬至法四氣時刻約法及日躔經度法次列其立成表如左 求天正冬至時刻 欲求來年天正冬至於來年太陽平行根表內取根數以減日平行【五十九分○八秒二十○微】所余為太陽之經數以此經數加於本年之最髙沖數為引數以此引數於加減表內求均數以此均數與經數並變為時刻分得今年根日之前一日某時刻加日差八分為太陽躔冬至一防之時刻【若所得時滿一日二十四時之數則不用根之前一日而用本日如後苐二假如】 如崇禎戊辰年求來年己巳之天正冬至其平行根三十九分一十六秒一十七微以減日平行五十九分○八秒二十○微餘一十九分五十二秒○三微為太陽之經數也經數從冬至前子正初刻起算加本年之最髙沖六度○○分四十四秒得六度二十○分三十六秒○三微為引數以此引數於加減表內求其均數得一十三分五十二秒二十○微以加經數一十九分五十二秒○三微共得三十三分四十四秒廿三微於度分變時刻表內求得為一十三時十二分○九秒根前一日為井癸未命是日子正後未初初刻十二分○九秒加日差八分為未初一刻○五分二十九秒爲己巳年天正冬至 又如崇禎庚午求來年辛未冬至其平行根一十分三十七秒三十三微以減日平行餘四十八分三十○秒四十七微為太陽經數以加最髙沖六度○二分一十四秒得六度五十分四十五秒為引數以求均數得一十四分五十七秒以加經數共得六十三分二十七秒四十七微變為時九十六刻外餘三刻○五分○秒加日差八分共為三刻一十三分二十秒根數本日為星甲午命是日子正後三刻一十三分二十秒為辛未年天正冬至 【乙最髙沖】如上圖甲乙線為黃道之一弧查日平行最髙沖表有平冬至與相距之數丁乙線也有 【甲初日子正】 子正甲丙線也【五十九分○八秒二十○微】今所求者為 初日子正至本日或次日定冬至之甲戊線其法查表取根數丁丙以減日平行甲丙所余為太陽經數甲丁以加於本年之最髙沖丁乙得甲乙為引數次於加減表內查甲乙之均數得丁戊次於本表查號或加或減此求系加號則以丁戊加於經數甲丁得甲戊以變時刻加日差為定冬至若根數少或均數多則定冬至或在次日子正後如次戊 求二十四節氣日率 【節氣日率有平有實如太陽行有平有實平者為天周二十四分之一實者太陽行某宮節之日率也今用實】 天周分為三百六十平度以分四正宜四平分之各正得九十度四正者天上四防太陽在此其行有變如冬至極南之處太陽一底其界即囘北故名曰至又為晝極短夜極長之限夏至為其沖其底北界亦如是又為晝極長夜極短之限春秋二分太陽過赤道分天平分處也故晝夜平四正各分為六節毎節有十五度共二十四節氣若從冬至加十五度得第二節氣加十五度得第三遞加遞得俱依此法 一節氣各相等數皆為十五平度其日數則各不同【所以然者見日躔厯指】又毎節氣之日數年年亦自不同【為最髙行與兩心差等故】然二三十年之差總計不過一時故所算節氣日率多年亦自可用 法曰先定某節氣距冬至度數次查周歲平行表中【日躔表一卷】度分橫行求本節氣小近度分內減本年最髙沖度分為引數查加減表得均數以本號於節小近數或加或減得數為某度乃某日數太陽所行之度【查表中行有度上行有日數凡取度須識為某日之度】若合於節氣度數者所得日數為某節氣之日數若盈或縮則相減以較數變時【以本日太陽距冬至日數查細行變時表見本表説】若實行過節氣度即以所得時分減日數若實行不及即以所得時分於日數並加之又查日差表本節氣下或加或減日差分而得從冬至到某節氣日數若干 以算節氣皆從冬至起若節氣日率相減得各節氣之日數又以冬至時刻加於節氣日率得某年某節氣在某日某時 假如崇禎五年癸酉問從冬至到小寒日率若干周歲平行表中求小寒小近度數本數為十五度於十五日下得十四度四十七分○五秒減去本年最髙沖行六度四分餘八度四十三分為引數查表得均數為十九分○一秒號為加加之得十五度六分六秒乃太陽冬至後十五日所行之度分也因過節氣度數當相減其較為六分六秒於變時本表中【此時太陽一日行為六十一分十秒即表中本行求六分小近數】求時【先遇五分六秒得二時又少一分或作六十秒求之遇五十八秒三十八微得二十三分又少一秒二十二微因表數無一秒或作八十二微求之遇七十六微尚少於原數以第一數遞加之得三十二秒並之得二時二十三分三十二秒】得二時二十三分三十二秒以十五日內減之得十四日二十一時三十六分二十八秒乃太陽從冬至到小寒日率也 二假如本年求大寒於周歲平行表三十日下得二十九度三十四分十秒減最髙沖六度四分餘二十三度三十分十秒為引數查表得均數為四十九分五十六秒並加於經度得三十度二十四分○六秒以節氣三十度盈其較為二十四分○六秒變時【大寒距冬至三十日則一日視行為六十一分本表中求二十四分元遇二十二分五十七秒得九時又少一分十九秒或六十九秒入表遇六十八秒三十六微得二十七分強】得九時二十七分強三十日內減之得二十九日十四時三十三分弱乃太陽從冬至到大寒日時率也 以小寒節氣日減大寒日率餘十四日十六時五十六分三十二秒乃太陽從小寒到大寒日時之率也 三假如求本年立冬距冬至日時若干周歲平行表求立冬度數三百一十五度即三百一十九日下遇三百一十四度二十五分十七秒二十六微減去最髙沖六度四分餘三百○八度二十一分為引數查表【十一宮八度度數在下行】得一度三十七分四十三秒號為減減之得三百一十二度四十七分三十五秒即太陽三百十九日未到立冬少【以滿三百十五度】二度一十二分二十五秒即試加二日即三百二十一日下得三十六度二十三分三十四秒減六度四分得三百一十○度十九分查表得一度三十五分二秒減之得三百一十四度四十八分三十二秒以滿節氣度數少十一分二十八秒變時得四時三十三分強即於日數加之【因得數不滿節氣數宜加】得立冬節氣距冬至【順天等處】為三百二十一日四時三十三分 四假如未來甲子年【距厯元為五十六年】求小寒日時法如上十五日下得數內減去甲子年最髙沖行六度四十二分餘八度○五分五秒引數也求均數得十七分三十八秒其號為加加之得十五度四分四十三秒所余變時得一時五十一分減之得十四日二十二時九分比先算癸酉年差三十○分有竒 若算厯元後一百五十年戊戌得最髙沖行為七度五十二分半減去於十五度餘七度七分半為引數查表得均數為十五分三十三秒加之得十五度○二分三十八秒變時得○時五十八分十五日內減之得十四日二十三時二分乃當時太陽從冬至到小寒之日率也求太陽交節時刻法 以某年平冬至紀日及時刻加節氣日率得節氣紀日及時如第一假如崇禎癸酉年平冬至在甲辰日子正後七時○三分【根數為四十一分十七秒○十九微以日平行減去得十八分一秒變時為七時○三分乃平冬至也用前一日紀字及宿】加小寒日率即十四日二十一時三十六分二十八秒得己未日子正後四時三十九分太陽到小寒之日時刻也他仿此 厯元戊辰年二十四定節氣日率【凡時系小時所得日時刻乃從平冬至起算】推小寒氣策十四日二十一時三十三分【加日差一分半】推大寒氣防二十九日十四時三十二分【減日差五分】推立春氣防四十四日○九時○五分【減日差八分】推水氣策五十九日○四時五十二分【減日差七分】推驚蟄氣防七十四日○三時四十四分【減日差五分】推春分氣策八十九日○五時四十六分【日差○○】推清明氣防一百○四日十一時○八分【加日差四分半】推谷氣防一百一十九日十九時五十五分【加日差八分半】推立夏氣策一百三十五日○七時四十八分【加日差十一分】推小滿氣策一百五十日二十二時三十五分【加日差十二分】推芒種氣策一百六十六日十五時二十七分【加日差十分】推夏至氣防一百八十二日○九時三十三分【加日差六分半】推小暑氣防一百九十八日○四時○八分【加日差四分】推大暑氣防二百十三日二十二時十五分【加日差二分】推立秋氣防二百二十九日十四時三十五分【加日差三分】推處暑氣防二百四十五日○四時五十五分【加日差六分】推白露氣防二百六十日十六時○八分【加日差十分半】推秋分氣防二百七十六日○時○七分【加日差十六分】推寒露氣防二百九十一日○四時四十九分【加日 差二十分半】推霜降氣防三百○六日○六時○八分【加日差二十四分】推立冬氣防三百二十一日○四時三十一分【加日差二十四分】推小雪氣防三百三十六日○時二十九分【加日差二十一分】推大雪氣防三百五十日十八時十二分【加日差十五分半】推冬至氣策三百六十五日一十時五十九分【加日差八分】求各處節氣時刻及日躔度分 右上法所算躔官度分皆順天府或南北同經度等方也若在東或西不得相同法於左 依法算節氣時刻若徃東一千里【廣輿圖總圖毎方五百里南北同行謂同經度東西同行謂同緯度若某地距順天府一方即五百里差二度若距二方即千里差四度三方四方如此在南在北則不拘】或二度變時得八分【變時法一度為四分十五度一小時度之一分為時之四分有表見測夜時卷中】即以所得節氣時加八分若往東距二方則加十六分毎方八分又若某方在順天府西一方宜減八分距二方宜減十六分若輿圖細分即宜細算 如圖上登州在京師東為二方半宜加二十分置癸酉年冬至為甲辰日午正外三十八分【崇禎五年算】加二十分得登州為午正外五十八分 又按圖西安府在京師西三方半得二十八分減之得冬至在午正刻外六分他處仿此 若欲某處某時算日躔則以設時刻又設某處距順天若干分在東者兩數相減之在西者兩數相加之得時依法求日躔之度分 隨時求太陽所躔經度分 於本年從冬至起表內取平行經度及最髙沖度兩數又於太陽周歲各日平行表內以所設日距根之日數又於前取其兩數若設時又於時刻細行表內取數以所得三數各就本類並為兩總數以兩總相減得較為引數次於加減表內求其均數依本號或加或減於經總數所得即為太陽本日本時之度分 如崇禎四年辛未正月初一日子正初刻求日躔度分查正月初一日為女乙亥距根四十一日於各日平行表內求其本行得四十度二十四分四十一秒三十三微其最髙沖五秒又夲年辛未之根數一十○分三十七秒三十三微其最髙沖六度○二分一十四秒因子正初無時數各數並得經總四十度三十五分一十九秒得最髙沖總數六度○二分一十九秒兩得數相減存三十四度三十三分○秒為引數次查表取其均數一度一十○分五十三秒以加於經總數得四十一度四十六分一十二秒得?枵一十一度四十六分一十二秒即太陽本日本時之躔度也求太陽躔宿度分 算太陽躔黃道宿度【日躔黃道即宿度宜用黃道上之度分若欲赤道亦用赤道距星度各有解】 法置太陽所躔官度分查距宿表本宮【日躔之宮】小近宿數相減其較數即太陽所躔某宿度分 若夲宮小近宿度比所躔為大而不能減者即用前宮小近宿數以其宮度分減三十度內所余與太陽所躔經度並之得某宿度分乃太陽所躔之度也 如置太陽躔鶉火宮二十八度三十七分查鶉火宮小近數得星宿二十二度○九分相減得較為六度二十八分即得太陽所躔在星宿六度二十八分也 又如太陽躔?枵一度三十八分查?枵宮小近數即無小近【葢女宿有八度比日所躔為大】用前宮小近宿得牛二十八度五十四分以滿三十度【一宮度數】少一度○六分並加日所躔?枵一度三十八分得二度四十四分為太陽在牛宿二度有竒 十二宮距宿表乃崇禎元年所算者因星行厯元以後毎年加五十一秒十年加八分三十秒二十年加十七分○○秒 若欲求赤道上宿度分先將恆星厯指所算本年各星赤道上距度立成表又以日經度求同升赤道度數為度查表【如上】 算二百恆年表根法 置崇禎元年平冬至分秒【測數見日躔考中】又置歲實三百六十五日五時四十八分四十五秒因厯元恆在冬至後第一子正時即不滿一歲但用三百六十五日之年歲則以一日太陽平行五十九分八秒一十九微四十九纎乘三百六十五日得三百五十九度四十五分四十秒三十八微即與前年根數加之減全周三百六十度所余為次年厯元根若總數不滿天周宜加三百六十六日之行而減全周 如崇禎元年戊辰厯元根宿次為井紀日為己卯本日子正順天府太陽平行在星紀宮初度五十三分三十五 秒三十九微加三百六十五日太陽行即三百五十九度四十五分四十秒三十八微得三百六十度三十九分十六秒十七微減全周得某日子正太陽過冬至到星紀初宮三十九分有竒又與井宿字加一得鬼又以己卯紀日字加五字得甲申則鬼甲申日子正太陽在星紀宮三十九分有竒己巳年歲厯元也 又如崇禎四年辛未宿為星紀日為甲午根數為十分三十七秒三十三微若加三百六十五日所行度分得三百五十九度五十六分一十八秒一十一微而不滿天一周則用三百六十六日之行加之得三百六十度五十五分二十六秒三十一微減去全周余者為第五年壬申之根又以宿星加二字得翼又以紀日甲午加六字得庚子乃壬申年翼庚子日子正太陽過冬至五十五分有竒 宿字為二十八若以二十八除三百六十五【日數】得十三餘一故凡用三百六十五日法曰加宿一字得來年根日之宿若用三百六十六日法曰加宿二字葢三百六十六以二十八除之餘二 紀日字六十即以六因之得三百六十以滿年日數少五故法曰紀日字加五若用三百六十六日宜加六 凡用三百六十五日謂之平年用六十六日謂之閏年葢多一日而閏之 表厯元以後算二百年若欲往前反算之 約法先以三百六十五日行減全周三百六十度餘十四分十九秒二十二微即以元根減之葢或加三百五十九度四十五分減全周或減三百五十九度四十五分所不滿天周之差所得無二若減不足借六十分而減十五分十一秒二微乃三百六十六日行以滿三百六十一度之較也凡不足減而加一日為之閏年 太陽細行簡法 算表 置天正冬至在子正初刻用周歲表求一年之細行乃簡便防要之法本表有四直行是四類數一為日數從冬至起二為太陽平行積數三為細行積數四為一日之行乃此表之本數也 用法 以某年冬至子正太陽所躔之分數另列而以冬至後子正毎日經行度分遞加之乃得一年細行 推月離及土木火三星用太陽毎日實行表即第三行金水及太陽以算其細行皆用平行即第二行推節氣入宮之時用日行分即第四行 新法算書卷二十五