第八篇《日躔盈缩略例》里说:北齐的张子信积累观测资料,把日食发生的时刻和日行速度结合起来研究,发现日行速度存在误差,但是对速度的增减变化规律还没完全搞清楚。直到刘焯,才建立了日行盈缩和衰旺的计算方法,这和四象的升降变化规律相对应。《麟德历》沿用了他的方法,只是把“躔差”改成了“躔差”。总之,阴阳变化都是逐渐积累而产生的。冬至那天,太阳运行速度最快,然后逐渐减慢,到春分前后速度最慢。等到夏至那天,太阳运行速度最慢,然后逐渐加快,到秋分前后速度最快。速度最快的时候就感觉很冷,速度最慢的时候就感觉很热,而春分秋分前后,雨水和阳光交替出现,这都是自然规律。刘焯的计算方法认为,春分前一天速度最快,后一天速度最慢;秋分前一天速度最慢,后一天速度最快。这和冬至夏至的速度变化规律是一样的,只是中间有一天速度差不多。他的说法不对。应该根据二十四节气的日影长度来研究太阳运行速度的盈缩变化,这样才能比单纯加时间更精确。
第九篇《九道议》里说:《洪范传》上说:“太阳有一条中道,月亮有九条运行轨道。”“中道”指的是黄道。“九道”指的是:两条青道,位于黄道的东边;两条朱道,位于黄道的南边;两条白道,位于黄道的西边;两条黑道,位于黄道的北边。立春、春分时,月亮从东边的青道运行;立夏、夏至时,月亮从南边的朱道运行;立秋、秋分时,月亮从西边的白道运行;立冬、冬至时,月亮从北边的黑道运行。汉朝的史官以前用过这种“九道”的计算方法,后来就废弃不用了,刘洪又重新拿来用,编制了计算月亮运行速度和阴阳历法的办法,但是他主要还是把月亮运行速度变化作为奇特的现象来研究,具体的计算方法并没有流传下来。
咱们先说说阴阳历的交点问题。如果阴阳历的交点在冬至和夏至,月亮就沿着青道和白道运行。虽然交点位置相同,但进出黄道的路线不一样。所以,青道在春分所在的星宿及其对冲点,都在黄道的正东方;白道在秋分所在的星宿及其对冲点,都在黄道的正西方。
如果阴阳历的交点在立春和立秋,月亮就沿着朱道和黑道运行。同样,交点位置相同,但进出黄道的路线不一样。所以,朱道在立夏所在的星宿及其对冲点,都在黄道的西南方;黑道在立冬所在的星宿及其对冲点,都在黄道的东北方。
如果阴阳历的交点在春分和秋分所在的星宿,月亮就沿着朱道和黑道运行。交点位置相同,但进出黄道的路线不一样。所以,朱道在夏至所在的星宿及其对冲点,都在黄道的正南方;黑道在冬至所在的星宿及其对冲点,都在黄道的正北方。最后,如果阴阳历的交点在立夏和立冬,月亮就沿着青道和白道运行。交点位置相同,但进出黄道的路线不一样。所以,青道在立春所在的星宿及其对冲点,都在黄道的东南方;白道在立秋所在的星宿及其对冲点,都在黄道的西北方。总而言之,这套大周期系统同时包含了两种运行路线,实际上是把八个节气分成了主次,并与四正四维相对应。
接下来,我们说说阴阳历交点的情况。当阴阳历交点重合时,月亮正好运行在黄道上。在交点前后七天内,月亮运行90多度,这与一个星象的运行速度差不多,正好是八种运行路线中的一种。这八种运行路线加上黄道本身,一共是九条路线,所以叫做九道。《易经》里讲“九六、七八,迭为终始之象也”,乾坤定位,这八条路线就各居其位了。随着寒暑交替,月相变化,原本在南方的路线会转移到北方,原本在东方的路线会转移到西方,这就是屈伸、消长的景象。
最后,我们说说黄赤道交角的差异。这种差异是从春分和秋分开始的,赤道与黄道交点前后各五度为界限。开始的时候,黄道比赤道多出二十四分之十二,每隔一个界限减少一分,到第九个界限时,减少到四分,这时赤道是45度,黄道是48度。到了四立的时候,两者相差一度左右,基本持平。然后从四分开始,每隔一个界限增加一分,到第九个界限时,增加到十二分,这时赤道是45度,黄道是42度,又回到了冬至和夏至的状态。
月亮运行的轨道和黄道(太阳运行的轨道)之间,一开始在交点附近,也就是交点前后五度范围内,会有差异。一开始,月亮的轨道比黄道多出四十八分之十二度,然后每隔一段距离,这个差值就会减少一度,直到减少到第四段,也就是减少到极限了。这时,黄道是四十五度,月亮的轨道是四十六度半,比黄道多一度,差不多持平。然后从第四段开始,这个差值又开始增加,每段增加四十八分之四度,直到增加到第九段,也就是增加到极限,这时差值是十二度。黄道是四十五度,月亮的轨道是四十三度半,这已经到了阴阳历两个交点中间的位置了。总的来说,在接近交点初期,月亮轨道会增加十二分,到交点一半的时候,又会减少十二分,在交点前后四十六度范围内,增减达到平衡。
太阳的运行和岁差(地球自转轴的缓慢摆动)一起移动,月亮的运行则随着交点的位置变化而变化,减少的和增加的互相抵消,最终九个轨道的数量就能计算出来了。如果月亮轨道和黄道交点与二分点(春分、秋分)重合,那么在赤道和黄道交点附近,黄道会增加二十四分之十二度,月亮轨道会增加四十八分之十二度。到交点的一半位置,减少的量也一样。所以,在九个区间内,黄道差三度,月亮轨道差一度半,增减数量是相等的。如果交点和四立点(立春、立夏、立秋、立冬)重合,那么黄道就在增减的中间位置,月亮轨道差四十八分之十二度。当月亮轨道到达增减的中间位置时,黄道差二十四分之十二度。在九个区间内,黄道差三度,月亮轨道差四分之三度,都是增减互相抵消的结果。如果交点和二至点(冬至、夏至)重合,那么在赤道和黄道交点附近,黄道会减少二十四分之十二度,月亮轨道会增加四十八分之十二度。到交点的一半位置,黄道增加二十四分之十二度,月亮轨道减少四十八分之十二度。在九个区间内,黄道和月亮轨道的差值相同,这是减少和增加互相抵消的结果。
太阳在赤道出入二十四度,月亮在黄道出入六度,两者相差四分之一。所以,在九个轨道的变化中,以四立点为中间交点。在二分点,增加四分之一,与黄道的度数相差一半;在二至点,减少四分之一,与黄道的度数完全相等。因此,推算出极限数值,并以此延伸,每个节气移动一个候(五天)。月亮轨道与黄道的差值,增减九分之一,七十二候(一年)之后,九个轨道就完成了循环。
第一段:
月亮每个月运行一圈,然后退回上个月运行的度数,加上剩余的八万九千七百七十三分度中的四万二千五百三少半,累计二百二十一个月又七千七百五十三分,就完成了一个周天运行周期。把这个周期除以二,大约九年九个周期就结束了。
第二段:
用四象来推算,每个交点都对应着合朔时的交点位置,进入七十二候。这就是它八个周期运行的方式。以朔交为交点开始,望交为交点中间。如果交点开始在冬至初候进入阴历,那就是运行青道。再过十三日七十六分日的四十六分,到达交点中间与冲的星宿,转变为阳历,也运行青道。如果交点开始进入阳历,那就是白道。所以,考察交点开始进入哪个历法,就能知道周天的度数。如果望交在冬至初候,那就减去十三日四十六分,参照大雪初候的阴历阳历来校正它的运行。
第三段:
第十篇《晷漏中星略例》说:
日行有南北,晷漏有长短。但是二十四节气的晷差快慢不同的原因,是句股原理造成的。直规在中间,则差迟;与句股数值相等,则差急。随着辰极的高低变化,所遇到的情况也不同,就像黄道刻漏一样。这些都是比较浅显的道理,近代还有很多人不明白。现在推算黄道离北极的距离,以及晷景、漏刻、昏距,用中星四种方法反复推算,使它们的变化规律一致,互相校正,最终达到一致,从而符合九服的变化。
第四段:
第十篇《日蚀议》说:
《小雅》有“十月之交,朔日辛卯”的诗句。虞广用历法推算,这在幽王六年。 《开元历》确定交分四万三千四百二十九,进入蚀限,发生在白天。交会而发生日食,这是常有的事。《诗经》说:“月亮发生日食,那是它经常发生的现象;太阳发生日食,这预示着什么不好的事情呢?”太阳代表君道,没有盈亏变化;月亮代表臣道,远离太阳则明亮,靠近太阳则亏损。月亮与太阳轨道相会,就逐渐远离,远离到极点后又逐渐靠近交点,所以体现了臣子的形象。如果月亮在望的时候正对黄道,这就叫做臣子遮挡了君主的明亮,那么就会发生日食了。如果月亮在朔的时候正对黄道,这就叫做臣子阻碍了君主的明亮,那么太阳就会发生日食了。况且,十月之交,根据历法应该发生日食,君子还把它看作是不祥之兆,诗人为此而悲悼。那么,古代的太平盛世,太阳不发生日食,星星不发生孛(bèi,星名)的现象,大概也是存在的。
要是刚好没到交点,月亮可能改变运行轨道避开;或者五星隐藏在太阳底下,护卫着太阳免受侵害;或者交点距离比较浅,或者是在阳历,阳气盛阴气弱,就不会发生日食;或者国家政治清明,即使出现一些小的过失,上天也会为它遮掩,即使交汇也不会发生日食。这四种情况,都是因为德政教化而产生的。
正常情况下,一年四季里,日月运行的轨道有相交也有不相交的时候,交汇的时候发生日食,这是天道运行的常理。就像刘歆、贾逵,都是古代的大儒,他们难道不知道日月运行的轨道和朔望规律吗?因为日食不总是发生,所以就略过不谈了。
从黄初年间开始,负责制定历法的官员才开始仔细研究日食的疏密程度,到了张子信时期就更加详尽了。刘焯、张胄玄这些人自恃精通历法,认为日月运行都可以用精确的数值来推算,他们只是专精于历法计算而已。
用《戊寅历》和《麟德历》推算《春秋》记载的日食,大部分都能符合日食发生的范围。但是,《春秋》里没有记载而历法推算却有日食的情况还很多,这就说明日食一定发生在交点附近,但并非所有在交点附近的都会发生日食。开元十二年七月戊午朔,历法推算应该发生日食,而且程度比较严重,从交趾到朔方都观测了,结果却没有发生日食。开元十三年十二月庚戌朔,历法推算应该发生日食,而且程度更严重,当时皇帝在泰山封禅,回程经过梁宋一带,皇帝斋戒沐浴,没有举行宴会,没有张盖,穿着素服,结果日食也没有发生。当时有很多群臣和各地首领来参加祭祀活动,进献的贡品多到数不清,大家都在祝寿庆贺,气氛庄严肃穆。虽然历法计算有偏差,不应该出现这种情况,但是由此可见,德政感天动地,不需要等待很长时间就能显现效果。如果因为开元这两次日食的情况,就修改日食发生的交点范围,那么错误就会更多了。
自从开元时期开始修订历法以来,史官每年都会测量节气的日影长度,并根据日影长度的变化来调整时间,虽然总体上有一定的规律,但是也会随着时间推移而变化,每年都不一样。日影变长,说明太阳运行到黄道南边;日影变短,说明太阳运行到黄道北边。太阳运行到南边,阴历的交点就可能出现偏差;太阳运行到北边,阳历的交点就可能出现偏差。太阳在黄道上运行,尚且会有变化,更何况月亮运行的轨道更加复杂呢!杜预说过:“日月运行虽然有固定的轨道和速度,但是也难免会有细微的涨缩变化。所以,有些时候即使交汇也不发生日食,有些时候则频繁交汇而发生日食。”这话说得对。
要研究历法,必须查考古代史籍。日食的深浅、时间的增减,都与阴阳变化的规律有关。这些数字相互关联,反复推算,通过历法中的数据来推断天象的变化;观察天象的变化,反过来推求历法中的数据。找出它们相同的地方,就能了解规律;辨别它们不同的地方,就能了解变化。遵循规律,就符合历法;违背规律,就符合占卜。占卜之道顺应自然,总是把握中庸之道来追溯变化;历法之道逆向推算,总是把握中庸之道来等待变化。懂得这些道理,就能像掌握自己手掌一样了解天道。
《略例》里说:旧历中关于日食深浅的记载,都来自张子信传下来的方法,说是积累观测所得,但并没有说明其中的道理。用浑仪测量日月直径,然后用月球直径的一半减去交点初限一度半,剩余部分就是暗虚半径。根据月球距离黄道的每一度的差数,让两个直径相互掩盖,来验证日食的程度,用日食发生时间的快慢乘以直径,得到实际使用的刻数。日食大多在交点附近三度以内发生,如果月亮运行到暗虚中,就进入食既阶段。再用月球直径的一半,减去春分点交点初限之间的度数,剩余部分就是斜射造成的偏差。然后根据这个偏差,确定食既时刻。食既时刻在二度之间略有进退,也让两个直径相互掩盖,来了解日食的程度。月球直径超过食既点以南,即使在阴历,亏损的形状也类似于外道交点,这是斜视造成的。食既点以外,应该向外蚀,外道交点,也适用这个方法。用这种方法考证古代的43次日食和99次月食,结果都非常准确。
如果日食都不能用常数来推算,就无法检验历法的疏密。如果都能用常数来推算,就无法了解政教的吉凶。现在重新研究推算日食的方法,如果得到常数,就符合历法。日月交会的大小差不多,但月亮在太阳下面,从京城斜着看,假设中国发生日全食,那么南方看到太阳被遮挡的部分只有一半,从月亮外面看,则交会而不发生日食。用九个州的日晷来确定日食的程度,晨昏的漏刻和地球一起变化,那么即使宇宙很大,也可以用一种方法来统一计算。
《五星议》中说:
木星啊,从商朝、周朝到春秋时期,大概一百二三十年才运行一个周期。到了战国时期,它的运行速度越来越快了,汉朝的时候稍微慢了一点,到了汉哀帝、汉平帝时期,它之前的运行规律就完全改变了,变成了八十四年一个周期,并且一直保持这个速度。这跟其他星星不一样。
姬姓的周朝,是出自于神灵的精气,受到木星正气的庇佑。木星掌管着农业的吉凶,后稷就是依靠木星的运行来预测农业的收成,所以周朝的人总是观察木星的运行来预测国家的兴衰。周朝刚建立的时候,木星在鹑火(二十八宿之一)附近,一直运行到天鼋(二十八宿之一)的位置。等到周朝衰败的时候,木星就运行到玄枵(二十八宿之一)附近,预示着国家的衰败。
之后,各个诸侯国互相争斗,礼乐崩坏,合纵连横的策略盛行。所以木星的运行速度越来越快,而下面的诸侯王们也总是不安宁,这说明木星运行失常的趋势,会在火运(五行相生相克,火运指火元素当令的时代)达到顶峰,这是符合天理的。
开元十二年正月庚午这天,岁星(木星)在进贤星的东北方向一尺三寸的地方,对应《麟德历》的轸宿十二度,而实际位置在轸宿十五度。
咱们往前推算,到汉朝河平二年十月下旬,岁星在轩辕星座南端大星的西北一尺处。《麟德历》上写的是张宿二度,正好对着轩辕大星。这两个时间点相差七百五十年,我们对比一下岁星运行的度数,发现差别还不算太大,说明从哀帝、平帝之后,岁星的运行速度并没有每年都逐渐变慢。
再往前推一百二十年,到汉孝景帝中元三年五月,岁星在东井、钺宿。《麟德历》上记载的是参宿三度。再往前推六十年,到了汉朝元年七月,五星连珠出现在东井宿,以岁星为首,这跟秦朝的岁星位置(乙未年)和夏朝的岁星位置(甲午年)都不一样。《麟德历》上记载白露八日,岁星停留在觜觿一度;到了第二年立夏,岁星又跑到参宿去了。这是因为岁星的实际运行速度和《麟德历》里预设的恒定速度不一样造成的。
再往前推算二百七十一年的时间,到了鲁哀公十七年,岁星在鹑火宿。《麟德历》上说岁星第一次出现是在舆鬼二度,立冬九日,岁星停留了三度。到了第二年启蛰十日,岁星又退到了柳宿五度,还没到鹑火宿呢!再往前推一百七十八年,到了鲁僖公五年,岁星应该在心宿大火。《麟德历》上说岁星第一次出现是在张宿八度,第二年跑到翼宿十六度,最后才到鹑火宿,这已经三次偏差了。
从鲁哀公之后,岁星运行速度变慢的趋势越来越明显,偏差也相对较小;而鲁哀公之前,岁星运行速度一直比较慢。《麟德历》沿用的是以前那种认为岁星运行速度很快的算法,没有根据实际情况调整,所以偏差越来越大。武王时期革命的时候,岁星也在心宿大火,但是《麟德历》上却记载在东壁三度,这说明从唐尧虞舜时期开始,《麟德历》的计算结果就已经和实际情况差了一个周天了。
《太初》《三统历》算出来的岁星(木星)绕天一周十二次,比实际多转了一次,用来推算商朝和周朝的事情,大致上都对得上。但是,对照开元年的记录,却差了九十多度,这是因为他们不知道岁星运行速度后来的变化啊。
《皇极》《麟德历》算出来的岁星七次绕天一周比实际多转了一次,用来推算汉朝和魏朝的事情,暂时还没发现什么偏差。但是,拿来跟《春秋》记载的对比,也差了九十多度,这是因为他们不知道岁星运行速度早期的变化啊。《天保》《天和历》找到了岁星运行速度早晚变化的中间值,所以既符合《春秋》的记载,推算开元年间的记录也更加精确。用来推算永平年间和黄初年间的事情,时间久远的一些,可能也会差个三十多度,这是因为他们不知道战国以后岁星运行变化的原因啊。从汉朝元始四年到开元十二年,正好是十二个甲子年,从隐公六年算起,也是十二个甲子年。而这两种历法都与这中间的某个时间点吻合,有的跟古代的记录差两次,有的跟现在的记录差三次,即使跟古代和现代的记录都吻合,中间也会有出入。想要找到一个万能的算法,那是不可能的。
《开元历》里,岁星运行速度前期是三百九十八天,余数是二千二百一十九,秒数是九十三。从哀公二十年丙寅年以后,每加一度多加一分,加到四百三十九次后,下一次再加十三秒就停止了,一共是三百九十八天,余数是二千六百五十九,秒数是六,这跟天数相符,这就是岁星运行速度后期的算法。从此以后就一直用这个算法,一直用到汉朝元始六年。
《岁星差合术》里说:“把哀公二十年冬至的余数算出来,加上从那时起到现在累积的差值,用早期的运行速度来除,得到累积的差值。余数按照历法规则处理,反过来推算冬至以后的天数,这就是累积差值,在下面加一位数,乘以二再除以二,用《大衍》的通法算出天数,余数就是天数的余数,加到天数里,就是差值所在的位置。要计算岁星运行的实际距离,用后期的运行速度除以从上元以来累积的差值,也能得到结果。如果要验证实际运行情况,应该从元始六年开始计算岁星运行的步数,这样前后就完全吻合了,上元之初,就没有一点误差了。”
成汤伐桀的时候,岁星在壬戌年,《开元历》里说,岁星和太阳同时出现在角宿,然后在氐宿十度之后开始逆行。第二年,汤建立国家作为元祀,岁星顺行和太阳同时出现在房宿,这就是用来记录商朝帝王的办法。
公元前1061年到公元前1046年,这六十年间的事情,一直算到商纣王在位第六年。周文王第一次在毕地祭祀,过了十三年,到了己卯年,星宿在鹑火,武王继承了王位。攻打商朝的那一年,周军最远推进到舆鬼星宿分野,然后退守到东井星宿分野。第二年,周朝开始改朝换代,军队顺应太阳运行,与太阳在柳宿相遇,然后驻扎在张宿。看看当时星宿分野,那正好是陕西地区,也就是三个监国诸侯的封地附近。
成王三年,是丙午年,星宿在大火,唐叔被分封到晋地。所以《国语》里说:“晋国最初分封的时候,岁星是在大火。”《春秋传》记载,僖公五年,岁星在大火,晋公子重耳从蒲地逃亡到狄地。十六年,岁星在寿星,重耳出使齐国经过卫国,老百姓送给他食物,子犯说:“这是上天赐予的!天意一定会有所征兆,如果岁星在鹑火,一定会发生这样的事情!现在岁星在寿星,他一定能得到诸侯的支持。”二十三年,岁星在胃、昴二宿。秦国国君接纳了晋文公。董因说:“岁星在大梁,将要汇聚天象的运行规律。元年,岁星在沈星,晋国人就居住在那里。晋文公出奔的时候,岁星在大火,那是阏伯的星宿,也就是大辰星。大辰星象征着吉利成功,后稷就是靠它辅助治理国家的,唐叔也是因为它的出现而被分封。而且,岁星从大辰星出现,到参宿消失,都是吉利的征兆。”二十七年,岁星在鹑火,晋侯攻打卫国,夺取了五鹿,在城濮打败了楚军,开始获得诸侯的支持。岁星运行到寿星,这些都与《开元历》的记载相符。
公元前702年,那年岁星(木星)运行到陬訾(zōu zǐ)星宿的附近。《开元历》上记载,大寒那三天,岁星和太阳同时出现在危宿(wēi)三星的附近,然后就顺顺利利地运行到营室(yíng shì)星宿八度的位置。
第二年,郑国的大夫子蟜死了。要把他下葬了,公孙子羽和裨灶一大早就商量着这事儿,路过伯有家的门口,看到门上长满了莠草(yǒu cǎo)。子羽就说:“这莠草还长在这儿呢,这一年岁星应该在降娄(jiàng lóu)星宿的中间,可是天亮了。”裨灶指着莠草说:“还能活到年底呢,这一年岁星还没到降娄呢。”《开元历》上说,这一年岁星在奎宿;奎宿,就是降娄。《麟德历》上说,这一年岁星在危宿;危宿,就是玄枵(xuán xiāo)星宿。
公元前694年春天,没下冰。梓慎说:“这一年岁星应该在星纪(xīng jì)星宿,却跑到玄枵星宿去了。”裨灶说:“岁星放弃了它该待的地方,跑到下一年的星宿去了,这就害了鸟帑(nǎng),周朝和楚国都讨厌这种现象。”《开元历》上说,这一年岁星运行到南斗十七度,然后又退回到西建星宿附近,接着又往前走,和太阳在牛宿初度相遇。按理说应该在星纪星宿,却跑到虚宿去了,所以说它“淫乱”了。它在玄枵星宿待了两年,到公元前692年。《开元历》上说,这一年岁星顺行到营室星宿十度的位置,然后停住了。从子蟜死到这时候,正好过了一年。那年八月,郑国人杀了良霄,所以说“等他死了,岁星在陬訾星宿附近”。第二年,岁星才运行到降娄星宿。
昭公八年十一月,楚国灭了陈国。有个叫史赵的史官说:“不对,陈国是颛顼的后代,那年岁星在鹑火,所以才被灭掉。现在岁星在析木津,陈国将要复国。” 《开元历》里说,箕宿八度就是析木津。
十年春天,岁星走到婺女星宿的开头,在玄枵星宿的附近。《春秋》记载:“正月,有星出现在婺女星宿。” 有个叫裨灶的占星家说:“今年岁星在颛顼的星宿。” 这一年岁星和太阳同时出现在危宿。第二年,岁星移到营室,又到了豕韦星宿。
景王问苌弘:“今年哪国国运昌盛?哪国国运衰败?”苌弘回答:“蔡国要衰败。这是因为蔡侯般杀害自己君主的那一年,岁星在豕韦,这个灾难不会过去,楚国将要攻打蔡国。等到岁星走到大梁星宿,蔡国和楚国都会遭遇不幸。” 到了十三年,岁星在昴宿和毕宿,楚国杀了灵王,陈国和蔡国又重新被封为诸侯国。
一开始,昭公九年,陈国发生灾难。裨灶说:“五年后,陈国将要复国。岁星五次经过鹑火,陈国才会彻底灭亡。” 从陈国发生灾难算起,五年后岁星到了大梁,陈国果然复国了。哀公十七年,岁星第五次经过鹑火,楚国灭了陈国。那一年,岁星和太阳同时出现在张宿六度。
昭公三十一年夏天,吴国攻打越国,这是吴国第一次大规模进攻越国。史墨说:“越国得到岁星的庇佑,而吴国却来攻打它,越国一定会遭受灾难。” 那一年,岁星和太阳同时出现在南斗三星附近。
以前僖公六年,岁星在析木,那年的岁阴在卯。昭公三十二年,岁阴也在卯,而岁星在星纪。所以《三统历》就以此作为计算岁星运行周期的依据。仔细考证,这周期大约一百二十多年。近代的一些历法,想用八十四年来计算,这是他们弄错了。 过了三十八年,越国灭了吴国。岁星三次经过斗宿和牛宿,已经超过计算的周期两年了。
天上五星运行的变化,反映到人间就是五行的吉凶,五星的运行变化反映到天上。就像声音发出就会有回声,物体运动就会有影子一样,如果人间丧失了礼仪制度的规范,那么星辰就会运行紊乱;如果人伦关系混乱,那么天象就会反常。当星辰运行紊乱、天象反常的时候,还能用历法来推算它的运行周期吗?所以襄公二十八年,岁星在星纪,而岁阴在玄枵。到三十年八月,岁星才到达陬訾星宿,提前运行,并在那里停留了两年。
汉武帝元鼎年间,金星跑到天苑星附近,跑偏了,位置比黄道南边偏了三十多度。过了几年,武帝北上巡视,登上单于台,率领十八万骑兵,去讨伐大宛国,结果很多战马死在了军中。
晋朝咸宁四年九月,金星忽隐忽现的,占卜的人说:“这叫‘失舍’,要嘛打仗失败,要嘛国家灭亡。”当时正准备打吴国,第二年三月,军队出征,金星傍晚才在西方出现,吴国果然灭亡了。
永宁元年,从正月到闰月,五颗行星在天上乱窜,轨迹毫无规律;永兴二年四月丙子日,金星撞上了狼星,又跑偏了,位置比黄道南边偏了四十多度;永嘉三年正月庚子日,火星侵犯了紫微垣:这些都是前所未有的天象啊!最后导致两位皇帝被废黜,天下大乱。
北魏神瑞二年十二月,火星跑到瓠瓜星附近,一夜之间突然消失了,不知道跑到哪儿去了。崔浩用天文历法推算,说:“庚午日的傍晚,辛未日的清晨,天上都是阴云,火星消失就在这两天。庚午和辛未都跟秦地有关,辛还代表西边蛮夷。现在姚兴占据着咸阳,那就是火星跑到秦地去了!”后来火星果然出现在东井星附近,盘旋不去,秦地大旱,土地干裂,昆明池的水都干涸了。第二年,姚兴死了,他两个儿子又打了起来。三年后,姚兴的国家灭亡了。
齐朝永明九年八月十四日,火星应该在昴宿后退三度,结果它却先跑到毕宿去了;二十一日才开始逆行,往北转,一直到立冬前后,火星的光芒越来越盛。魏朝永平四年八月癸未日,火星在氐宿,傍晚藏在西方,比预定的时间提前了五十多天,虽然历法上偶尔会有偏差,但这次偏差也太大了。
隋朝大业九年五月丁丑日,火星逆行进入南斗,颜色红得像血一样,个头比三个斗那样大,光芒耀眼,长达七八尺,在斗宿的句和巳之间运行,这也是前所未有的天象啊!后来杨玄感造反,天下大乱。
古人认为,五星的逆行、忽明忽暗,都与当时的政治密切相关。政治稍微出点问题,就会在星象上有所体现,政治清明,星象也清明。星象预示吉凶之后,又会恢复常态。不然的话,上天又怎么警示百姓,提醒君王呢?近代的算命先生不懂星象的含义,占卜者只迷信数字,看到五星运行异常,就说是历法错了。即使七曜(日月五星)运行正常,他们也说是天灾。最终因为数字和星象混淆不清,丧失了占卜的实际意义。所以推算历法一定要参考古今的记录,使气数平均,运行轨迹一致,上下相符,反复推算。如果与常态有差异,就能知道它的运行异常了。
两颗星靠得太近,就常常出现运行异常。三颗星以上靠得太近,运行异常就更严重了。《天竺历》根据九执的规律,认为星宿之间也有喜好。遇到喜欢的星,运行就快;遇到不喜欢的星,运行就慢。
张子信的历法,对辰星的出现与否有独特的算法:在日出日落前后四十六度以内,十八度以外,如果木、火、土、金四星中有一颗出现,就能看到辰星;否则就看不到。张胄玄的历法,在朔望交限时,如果星宿隐藏在太阳下面,木星、土星在十日以外可见,火星在四十日以外可见,金星在二十二日以外可见,这些距离都不用增减,都是精气感应的结果。
日月运行体现着尊卑不变的秩序,五星运行则显示着政教顺应时势的道理。所以,日月运行异常的情况比较轻微;五星运行异常的情况就比较明显、频繁。现在我们简单地考察一下常数,来推算星象的疏密程度。
《略例》里说:“历法中气数的增减,是从张子信开始的,后人都遵循他的方法。但从头到尾推算,常常有不符的地方。现在我们对比《麟德历》,荧惑、太白星的运行轨迹与实际情况的差距,荧惑星有四十八处,太白星有二十一处。其他星的误差很小,不足以考证。而且,星象的盈亏变化,应该与四象的运行规律相符,但二十四节气的增减并不均匀。我们用易数来调整,又分别设定岁差,来研究五星运行二十八宿的变化。与史官的记录相比,岁星有二十七处差异,荧惑星二十八处,镇星二十一处,太白星二十二处,辰星二十四处,《开元历》的推算结果都是第一。”
唐肃宗的时候,有个隐士叫韩颖,他上书说《大衍历》可能算错了。皇帝对此表示怀疑,就让韩颖当了太子的宫门郎,直接在司天台工作。 然后呢,皇帝又对韩颖的算法进行了一些修改补充,每隔一段时间就多加两天,还把历法改名叫《至德历》。从乾元元年开始使用这个历法,一直用到上元三年。
就这么着,《至德历》用了好几年。