话说孝静世的时候,用的《壬子历》啊,它的朔日(初一)总有点不对劲,火星的位置也跑偏了,还有四颗星的运行也不符合历法,总之这历法本身就有问题。到了兴和元年十月,齐献武王到了邺城,就让李业兴重新修订历法,制定了新的《甲子元历》。这事儿办完后,尚书左仆射司马子如和右仆射隆之等人上奏说:

自古以来,天地运行,日月交替,阴阳相生相克,寒暑轮换,都是有规律可循的。古时候的圣明君王,都根据这些规律制定历法,安排各种祭祀活动,顺应天时。可是自从卯金(指某位皇帝)当政以来,历法改来改去,负责制定历法的官员也换了一茬又一茬,各种历法互相冲突,没有一个统一的标准。这可不是因为人们的认识水平参差不齐,而是因为天道本身就变化莫测,想让它完全稳定下来,很难做到。

之前用的《正光历》,虽然已经使用了,但它在初一日期的推算上就有偏差。在清台测影,或者用炭火计时,都发现有误差;在重室观测气象,用灰烬来判断时间,也存在细微的差异。我们恳请陛下您英明神武,能够把握时机,像猛虎一样勇猛,像飞龙一样腾飞,统一天下,让天下太平。大丞相、渤海王您天生英明,才能出众,能够治理天下,解决各种问题,拨乱反正,让国家安定繁荣。您为国家立下汗马功劳,现在国家安定了,礼乐也更新了,但是历法这事儿还没完全搞定,所以陛下又命令散骑常侍李业兴,大丞相府东阁祭酒王春,大丞相府户曹参军和贵兴等人负责修订历法。

但是,历法的推算,有快有慢,有疏有密,不能只从一个方面来看,也不能只用一种方法来衡量。所以,陛下又命令大丞相主簿孙搴,骠骑将军晔,前给事黄门侍郎季景,渤海王世子崔暹,还有李业兴的学生子述等人一起参与,共同商讨,最终确定历法的准确性。

我们这些官员虽然尽心尽责地担忧此事,但还是担心做得不够完善。我觉得,要完成这项工作,就像建造房屋一样,需要大家共同努力,绝不是单靠一个人就能完成的。所以,我们必须集合各位专家的力量,共同修订完善。参与修订历法的有:左光禄大夫卢道约,大司农卿、彭城侯李谐,左光禄大夫、东雍州大中正裴献伯,散骑常侍、西兖州大中正温子升,太尉府长史陆操,尚书右丞、城阳县开国子卢元明,中书侍郎李同轨,前中书侍郎邢子明,中书侍郎宇文忠之,前司空府长史、建康伯元仲悛,大丞相法曹参军杜弼,尚书左中兵郎中、定阳伯李溥济,尚书起部郎中辛术,尚书祠部郎中元长和,前青州骠骑府司马、安定子胡世荣,太史令、卢乡县开国男赵洪庆,太史令胡法通,应诏左右臣张喆,员外司马督曹魏祖,太史丞郭庆,太史博士胡仲和等等。他们个个都是德才兼备,经验丰富,能够深入浅出地讲解历法,认真比较分析,仔细考证古今,最终共同完成了这部新历。新历以甲子为纪元,子时为一天的开始,这才是符合天道的正朔,所以应该从这个纪元开始推算。现在正值兴和年间,我们用年号来作为历法的纪年,这可不是汉朝的《太初历》和魏朝的《景初历》独有的做法。我们已经完成了新历的编纂,恳请皇上将新历下发给相关部门,按照其中的方法推行使用。

皇上把新历拿给齐献武王田曹参军信都芳看,信都芳精通历法,他仔细研究后上书说:“今年十二月二十日,新历上说岁星在营室十二度,运行速度很快;而实际观测到的岁星位置在营室十一度。同一天,新历上说镇星在角十一度,静止不动;而实际观测到的镇星位置在亢四度,也静止不动。同一天,新历上说太白星在斗二十五度,清晨出现,逆行;而实际观测到的太白星位置在斗二十一度,逆行。新历和实际观测结果存在差异。”

信都芳上书完毕。

木星啊,我观察它好几年了,差不多八九年,它的运行速度总是赶不上历法上预测的速度。现在新历法加了两度,结果怎么样呢?晚上它落下,早上它出现,时间分毫不差!今天我抬头一看,感觉它运行速度确实像新历法说的那样快了两度,等它升起落下的时候,应该也跟新历法预测的一致。

至于镇星(土星),自从我根据壬子年制定的历法以来,它的运行速度也总是赶不上历法预测的,所以我在壬子年的历法上加了七度。但是我知道,这还是不够的,大概还差五度左右。我正想把这五度也加上去,但是担心这样一来,它升起落下的时间每天都要调整十度,也就是十天就要调整一次,如果以后一直这么用下去,不合适的地方太多了。所以土星的运行速度,快的时候就快一点,慢的时候就慢一点,最终目的是让它和历法推算的结果相符合就行了。

就在上个月二十号左右,我早上在东方看到了土星。我用新旧两种历法推算了一下它的位置,发现两者之间几乎没有差别。行星运行了三天,我又调整了四度。像这样的情况,每年都会发生,等到土星伏藏或出现的时候,还是要根据历法来推算它的位置。

哎,如芳啊,你只盯着十二月二十号那天的星象不对劲就觉得不对。其实我研究推算历法已经三十多年了,上溯千年,查阅了大量的史书典籍,参考了凉州赵(此处不译,原文:赵<匪欠>)、刘义隆时期的廷尉卿何承天、刘骏以及南徐州从事史祖冲之的成果,最终完成了我的《甲子元历》。这本历法比其他三种历法要精确一倍呢!

我在洛阳生活学习四十年了,这期间,我仔细观察了金星、木星、火星、土星和水星的运行轨迹。我的历法对这些行星的出没时间预测,跟实际情况相比,误差最多也就是一两天,或者一度两度。而其他三种历法,误差动辄十天十度呢!火星这颗星,它的运行轨迹变化莫测,有时候跟推算的结果对不上。祖冲之的历法比我的《甲子历》多算出十天六度,何承天的历法则少算二十九天二十九度;而我的历法跟《壬子历》的结果基本一致,没有太大的出入。至于水星,它出现的时间比较少,但只要它出现,我的历法预测就完全准确,这方面也跟《壬子历》一样,没做改动。只有金星和水星的日出日落时间,我的历法和别的历法略有不同。

我明白,天体运行规律高深莫测,观测和推算都非常困难,五行星的运行轨迹更是难以捉摸,我们用肉眼观察,不可能做到完全精确。所以,我的历法主要把握了行星运行的大致规律,忽略了一些细微的误差,这样才能实用。如果只拘泥于眼前看到的现象,不考虑行星的出没规律,那历法也就没法做了。

你知道,制定历法可不是一件容易的事,它要将节气和朔望贯穿千年,要精确到闰余和斗分的毫厘之间。必须做到盈亏得当,时间间隔准确无误,周日的小数点后也要精确到毫厘,阴阳历的计算结果也要丝毫不差,还要根据历法推算的结果去验证日食月食的发生时间,上推下减,先确定好各种参数,才能最终确定历法的元首,这就像要找到甲子年一样难。就算找到了甲子年,也可能还有细微的误差,各种情况错综复杂,难以兼顾。而我的历法,以甲子年为起点,七种推算方法都遵循同样的规律,就像完美的珠玉连缀在一起,没有丝毫差错,方法清晰明了,我觉得非常可靠。

如芳你说的那些,确实也有些道理。不过,那些星象预测不准的地方,最终都会回归到正确的轨道上。你看,根据我的推算,土星去年十二月二十日观测到的误差是五度,今天只有三度了;金星去年误差四度,今天已经完全没有误差了。以此类推,那些看起来有误差的地方,最终都会得到验证,所以我的历法可以长期使用,大体上不会出错。

芳又云说,按照去年十二月算的新历来看,镇星在十二月二十日停留在角宿十一度,天上实际位置在亢宿四度,新历和实际天象差了五度;太白星和岁星也各有误差。跟《壬子》旧历相比,镇星也差了五度,太白星和岁星也各有误差,旧历的误差比新历大,新历的误差小。

总之,制定历法的人,都必须经过多年时间的观察,按照方法推算天象,了解天象运行的疏密程度,才能判断哪个历法更准确,然后用来制定历法。不可能在一个月或两个月内就能判断历法的对错。比如,火星运行779天,它有迟、疾、留、逆、顺、伏、见七种状态,七种状态走完一个周期;太白星运行583天,有晨见、夕见的周期变化,七种状态走完一个周期;岁星运行398天,七种状态走完一个周期;镇星运行378天,七种状态走完一个周期;水星运行115天,有晨见、夕见的周期变化,七种状态走完一个周期。制定历法的人必须测算出这七种状态,才能制定历法。测算出这七种状态的历法比较准确,测算不出这七种状态的历法误差就很大,这些都不是一两天就能弄清楚的。

从五帝三代到秦、汉、魏、晋,历法制定者都经过多年的观测推算,他们的历法才值得参考。那些仓促制定的历法,当时可能比较准确,但时间长了就不行了。如果历法是三四年内制定的,即使开始比较接近天象,时间久了也会出现偏差。现在这个《甲子》新历,是经过多年潜心研究才制定的,虽然也有一些小的误差,但跟《壬子元历》相比,更接近天象。如果长期验证,十年二十年后,跟《壬子元历》相比,三个星体运行的误差会更小。

芳又云把这些情况向武王汇报,武王下令在全国推行。

从上元甲子年到春秋鲁隐公元年(公元前722年),岁在己未,共计292736年,这是个天文数字。

从甲子年到甲戌纪年结束,共计124136年,这是个天文数字。

从上元甲子年到魏兴和二年(公元238年),岁在庚申,共计293997年,这是个天文数字。

从甲子年到甲戌纪年到庚申年,共计125397年,这是个天文数字。

元法:111160(三统之数)

统法:337200(二纪之数)

好家伙,这全是些天文数字啊!第一段说的是纪法,一共是十六万八千六百,具体怎么算出来的,书上说是“千蔀成纪,日数至十”,我也不知道是什么意思。

接下来是蔀法、度法,都是一万六千八百六十,说是三十乘章岁得来的。然后是日法,二十万八千五百三十,说是三十乘章月算出来的。气时法是一千四百五,是十二分度法得来的。章岁是五百六十二年,章闰是二百七个月,章月是六千九百五十一月,章中是六千七百四十四月,这些都是根据一年有多少天,一年有多少闰月之类的算出来的。

周天、通数、没分这几个数都一样,都是六百一十五万八千一十七,具体怎么算出来的,书上写得可复杂了,什么“度法通度,内斗分之数”、“日法通二十九日,内经月余之数”、“余数通经没六十九,内分五万七千二百四十四得此数”,反正我是看不懂。

余数是八万八千四百一十七,没法也是八万八千四百一十七,斗分是四千一百一十七,虚分是九万七千八百八十三,这些数字都跟周天、日月的计算有关,也是各种复杂的算法得来的。小分法是二十四,岁中是十二,会数是一百七十三,会余是六万七千一百一十七,会通是三千六百一十四万二千八百七,会虚是十四万一千四百一十三,这些数字都跟二十四节气、月亮运行轨迹之类的有关。最后,周日是二十七,周余是十一万五千六百三十一,这些也是根据周天和日月的运行规律计算出来的。

总之,这些数字都跟古代的天文历法计算有关,看着就头大,我一个现代人,实在搞不懂这些复杂的算法。 不过,这些诗词对联倒是挺有意思的,可惜我不会翻译。

通周,五百七十四万五千九百四十一;周虚,九万二千八百九十九;小周,七千五百一十三;月周,二十二万五千三百九十;朔望合数,十四;度余,十五万九千五百八十八半;入交限数,一百五十八度;度余,十一万六千五十八半。 这些数字都代表着什么天文历法上的计算结果,具体含义我就不解释了,反正很复杂。

推算月亮的运行,首先要算积月。把从某个纪元开始算到你要算的那一年,减去一年,再乘以每个章月的天数(章岁就按一年算),得到的就是积月。如果积月算出来不是整数,剩下的就是闰余。如果闰余超过355,那一年就是闰年。如果闰余超过515,闰月会在十一月前后,具体要根据冬至来确定。

接下来算积日。用通数乘以积月,再除以每日的天数(也就是1),得到积日。如果积日除不尽,剩下的就是小余。再用60去除积日,剩下的就是大余。用大余和小余来记录,算完之后,就能知道你要算的那一年十一月朔日是哪天了。

要算下一个月的朔日,就在大余里加上29,小余里加上11647,然后按照上面的方法计算,就能得到下一个月的朔日。如果小余超过97883,这个月就是大月;如果小余少于这个数,就是小月。 要算上弦、望、下弦,就在朔日的大余里加7,小余里加79794,小分加1。小分满4就从小余里减去,大余满每日的天数就从大余里减去,大余满60就减去60,然后就能算出上弦日。继续加下去,就能算出望日、下弦日和下个月的朔日了。

推算二十四节气,首先要算积没。把从某个纪元开始算到你要算的那一年,减去一年,再乘以某个数(这个数我没搞明白是什么),得到积没。积没除不尽的部分是小余,用60去除积没,剩下的就是大余。用大余和小余来记录,算完之后,就能知道你要算的那一年十一月冬至是哪天了。

要算下一个节气,就在大余里加15,小余里加3684,小分加1。小分满24就从小余里减去,小余满某个数(这个数我也没搞明白是什么)就从大余里减去1。按照这个方法算下去,就能算出下一个节气的日期了。

咱们先来说说怎么算闰月。一种方法是:先用闰余减去章岁,剩下的数乘以12(一年12个月),如果结果够2700,就说明要闰一个月;如果超过2700的一半,也算闰一个月。从天正十一月开始算,算出来的结果就是闰月。闰月具体是哪个月,要看有没有中气来决定,没中气的那个月就是闰月。

还有一种方法:用一年里的数值乘以闰余,再加上章闰,如果结果够1,就说明要闰一个月。如果超过6744,从冬至开始算,算出来的结果,中气结束的那个月就是闰月。如果中气出现在朔日或朔日后两天,那就把上个月定为闰月。

接下来是节气表:冬至在十一月,小寒在十二月;大寒在十二月,立春在正月;雨水在正月,惊蛰在二月;春分在二月,清明在三月;谷雨在三月,立夏在四月;小满在四月,芒种在五月;夏至在五月,小暑在六月;大暑在六月,立秋在七月;处暑在七月,白露在八月;秋分在八月,寒露在九月;霜降在九月,立冬在十月;小雪在十月,大雪在十一月。

最后,咱们来说说怎么算朔日(农历初一)和交点(日月黄经相差180度)的距离。先算出从某个纪元开始到现在的朔日总数,再把这个纪元到现在的交点差加进去。(比如,甲戌纪的交点差是26522649。)然后用会通(一个常数)减去这个总和,剩下的就是积交。除以日法,得到度数,剩下的余数就是度余。这个度数和度余,就是你想要知道的,从天正十一月朔日到交点的距离以及余数。

下面是几个纪元的资料,方便计算:

甲子纪:(纪首合朔,日月合璧,交中。)

甲戌纪:(纪首合朔,月在日道表。)交会差一百二十七度,度余三万九千三百四十九

甲申纪:(纪首合朔,月在日道里。)交会差八十一度,度余一万一千五百六十一

甲午纪:(纪首合朔,月在日道里。)交会差三十四度,度余十九万二千三百一十三

甲辰纪:(纪首合朔,月在日道表。)交会差一百六十二度,度余二万三千一百二十二

甲寅纪:(纪首合朔,月在日道表。)交会差一百一十五度,度余二十万三千八百七十四

这段文字描述的是古代天文历法计算方法,用现代汉语口语解释如下:

要算出下个月朔日(农历初一)距离交点(日月黄经相差180度)还有多少度,以及剩余的度数,方法是这样的:先加上29度,再加上11647度(这是个剩余度数),如果度数超过了一天的度数(日法),就用一天的度数去除,剩下的就是下个月初一距离交点还有多少度,以及剩余的度数。

计算望日(农历十五)距离交点还有多少度,方法类似:加上14度,再加上159588.5度(这是个剩余度数),然后按照上面的方法,用日法去除,剩下的就是望日距离交点还有多少度,以及剩余的度数。

计算月亮在黄道上的位置,方法是:先把从上一个纪元(一个较长的周期)开始到朔日(初一)的度数加起来,再把这个纪元内的交点位置差加进去,然后用一个叫做“会通”的数值(可能是某种周期)乘以2去除,剩下的度数再用“会通”数值去除,如果能除尽,就是月亮在黄道上的表(外圈);如果除不尽,就是月亮在黄道上的里(内圈)。

要算出下个月月亮是在黄道内圈还是外圈,方法是:把下个月的度数和剩余度数加起来,再加上表(外圈)的满会数和剩余会数,如果结果是里(内圈)的度数,就在内圈;如果结果是表(外圈)的度数,就在外圈。

计算交点(日月黄经相差180度)出现在哪一天,方法是:用十一月朔日距离交点的度数和剩余度数,减去会数和剩余会数(可能指某个周期和剩余部分)。如果剩余会数不够减,就从度数里减去一度,然后用日法去除,剩下的就是度数的剩余部分。再把十一月朔日的小余数加进去,如果超过日法,就用日法去除,剩下的就是十一月朔日之前距离交点还有多少度,以及剩余的度数。根据历月的长短,从天正十一月(可能是某一年份的十一月)开始计算,不满一个月就算入下一个月,这样就能算出交点出现在哪一天。再用一年中剩余度数乘以入月的剩余度数,用日法去除,所得结果对应子时(午夜),就能算出交点出现在哪个时辰。如果交点在望日(十五)之前,那么朔日(初一)是交点,望日(十五)发生月蚀;如果交点在望日之后,那么望日发生月蚀,下个月朔日是交点;如果交点正好在望日,那么望日发生月蚀,前后朔日都是交点;如果交点正好在朔日,那么朔日发生日蚀,前后望日都发生月蚀。

计算下一次交点出现的月份和日期,方法是:把会数和剩余会数加到上一次交点出现的月份和日期上,如果超过日法,就用日法去除,剩下的就是下一次交点出现的月份和日期。依次类推。

计算交点出现的方位,方法是:如果月亮在黄道外圈,先出现会合(日月黄经相同)后出现交点,那么亏损(日食或月食)从东南角开始;如果先出现交点后出现会合,那么亏损从西南角开始。如果月亮在黄道内圈,先出现会合后出现交点,那么亏损从西北角开始;如果会合和交点同时出现,那么日食或月食就达到了极点。如果月食发生在日食的冲(日月黄经相差180度)的时候,亏损的方位也一样。

咱们先说日食的推算方法。如果朔望(农历初一、十五)离交点(太阳和月亮运行轨道交点)的度数,加上度数的余数,超过一百五十八度又十一万六千五十八点五度,那就用这个数减去会合数(朔望发生的时间)和会合数的余数,剩下的就是不发生日食的度数。如果朔望离交点的度数,加上度数的余数,小于十四度又十五万九千五百八十八点五度,那也是不发生日食。所有这些都减去十五,剩下的就是日食的食分。如果朔望正好在交点上,那就是日食的极点。

接下来是推算朔日(农历初一)入历迟疾(指朔日入历的快慢)的算法。先把从某个纪元开始到现在的朔日积分算出来,再把这个纪元以来的迟疾差分加进去。(甲戌纪的迟疾差分是二百三十五万二千一百九十一。)然后用这个总和除以一个周期,得到剩余的天数;如果还有余数,就用日法(一天的度数)约分,得到天数,剩下的就是天数的余数。算出来的天数,就是你想要算的那一年正月十一月合朔入历的日期。

要算下个月的入历日,就在上个月的基础上加一天,再加上日余二十万三千五百四十六。如果日数满了,就用日法除,把满周的日数和余数去掉,剩下的就按照上面的方法算,结果就是下个月的入历日。

要算望日(农历十五)入历,就在朔日的基础上加十四天,再加上余数十五万九千五百八十八点五。满周的日数和余数也按照上面的方法处理,算出来的就是望日入历的日期。

下面是月球运行速度(度数和分数)以及盈缩率和盈缩并率的表格:

| 月行迟疾度(及分) | 损益率 | 盈缩并率 | 盈积分 |

|---|---|---|---|

| 一日十四度(四百二分) | 益七百五十 | 盈初 | 二万一千一十一 |

| 二日十四度(三百三十四分) | 益六百八十九 | 盈七百五十七 | 四万一百三十五 |

| 三日十四度(二百六十一分) | 益六百一十六 | 盈一千四百四十六 | 五万七千二百三十二 |

| 四日十四度(一百九十分) | 益五百四十五 | 盈二千六百七十二 | 七万二千三百六十 |

| 五日十四度(一百一十一分) | 益四百六十六 | 盈二千六百七 | 八万五千二百九十四 |

| 六日十三度(五百二十二分) | 益二百一十五 | 盈三千七十三 | 九万四千三十七 |

| 七日十三度(二万九十六分) | 益八十九 | 盈三千三百八十八 | |

这段文字描述的是古代天文历法中关于日食和月球运行的计算方法,非常专业和复杂。 表格展示了月球运行速度及其相关参数的计算结果。

第一天,也就是八月初八,一共观测了十三次,每次观测的数值加起来是六十八分。结果是损耗了一百三十九,盈余了三千四百七十七。累计盈余积分达到九万六千五百七。

第二天,八月初九,观测了十二次,每次观测的数值加起来是四百六十八分。损耗了两百八十三,盈余了三千三百三十八。累计盈余积分变成了九万二千六百四十九。

第三天到第七天,每天的观测结果如下:初十,十二次观测,合计三百七十九分,损耗三百九十,盈余三千五十五,累计盈余积分八万四千七百九十四;十一,十二次观测,合计二百六十七分,损耗五百二,盈余二千六百六十五,累计盈余积分七万三千九百六十九;十二,十二次观测,合计一百五十一分,损耗六百一十八,盈余二千一百六十三,累计盈余积分六万三十六;十三,十二次观测,合计四十分,损耗七百二十九,盈余一千五百四十五,累计盈余积分四万二千八百八十三;十四,十一次观测,合计五百一十五分,损耗八百一十六,盈余八百一十六,累计盈余积分二万二千六百四十九。

从十五日开始,情况发生了变化。十五日,十二次观测,合计三十八分,增加了七百三十一,开始“缩初”。十六日,十二次观测,合计一百二十三分,增加了六百三十六,减少了七百三十一。“缩”的积分是二万二百九十。

接下来几天,继续“缩”的过程:十七日,十二次观测,合计二百一十一分,增加了五百五十八,减少了一千三百七十七,“缩”的积分是三万八千二百二十;十八日,十二次观测,合计二百二十四分,增加了四百四十五,减少了一千九百三十五,“缩”的积分是五万三千七百;十九日,十二次观测,合计四百三十五分,增加了三百三十四,减少了两千三百八十,“缩”的积分是六万六千五十九;二十日,十二次观测,合计五百五十五分,增加了二百一十四,减少了两千七百一十四,“缩”的积分是七万五千三百二十九;二十一日,十三次观测,合计一百二十八分,增加了七十九,减少了两千九百二十八,“缩”的积分是八万一千二百六十九。

最后两天:二十二日,十二次观测,合计二百七十分,损耗了六十三,减少了三千七,“缩”的积分是八万三千四百六十三;二十三日,十三次观测,合计四百三十二分,损耗了两百二十五,减少了两千九百四十四。 记录到此结束。

第一天,积分为八万一千七百一十三。二十四号,十四度(三十三分),减少了三百八十八,积分缩减到二千七百一十九。

第二天,积分为七万五千四百六十八。二十五号,十四度(一百九十四分),减少了五百四十九,积分缩减到二千三百三十一。

第三天,积分为六万四千六百九十九。二十六号,十四度(三百一十九分),减少了六百七十四,积分缩减到一千七百八十二。

第四天,积分为四万九千四百六十一。二十七号,十四度(三百四十六分),减少了七百一,积分缩减到一千一百八。

第五天,积分为三万七百五十四。周日,十四度(三百七十九分),减少了七百三十四,积分缩减到四百七。

第六天,积分为一万一千二百九十七。 接下来是计算朔望交会和月蚀大小余的方法,原文如下:推合朔交会月蚀定大小余,术曰:以入历日余乘所入历下损益率,以小周七千五百一十三除之,所得捐益盈缩积分为定积分。积分盛者,以减本朔望小余;缩者,加之。加之满日法者,交会加时在后日;减之,不足减者,减一日,加日法乃减之,交会加时在前日。月蚀者,随定大小蚀余为定日加时,

计算加时的方法,原文如下:推加时术曰:以岁中乘定小余,日法除之,所得命以子,算外。朔望加时有余不尽者,四之,如法得一为少,二为半,三为太。半又有余者,三之,如法得一为强,半法以上排成一,不满半法弃之。以强并少为少强,并半强为半强,并太为太强。得二强者为少弱,以之并少为半弱,以之并半为太弱,以之并太为一辰弱。随所在辰而命之,即其强弱。日之冲为破,月在破下蚀。

最后是推算日月合朔弦望度的方法,第五部分,推算日度的方法,原文如下:推日度术曰:置入纪以来朔积日,以日度法一万六千八百六十乘之,满周天去之,余以日度法约之为度,余命起牛前十二度,宿次除之,不满宿者,算外,即所求年天正十一月朔半日所在度及分。

咱们先算一下太阳的位置。方法是这样的:周天一共三百六十五度,斗分是四千一百一十七。从冬至到朔日的天数减一,再用这个数减去周天度数,冬至剩下的度数再减去斗分;如果斗分不够减,就从度数里减一度,然后用日度法再减。按照上面的方法算完,结果就是你想知道的,这一年十一月朔日半夜太阳所在的位置,也就是度数和分。

接下来算一下日、月的位置。要算某一天太阳的位置,方法是:大月加三十度,小月加二十九度,再加一天一度,然后用宿度除,剩下的分再用斗分除。

要算合朔时日月共同的度数,方法是这样的:用章岁(562)乘以朔日余数,再除以章月(6951),结果就是大分,余数是小分。把小分加到半夜太阳的度数里,如果分超过日度法,就从度数里进位。按照上面的方法算完,结果就是你想知道的,这一年十一月合朔时日月共同的度数。

还有一种方法算合朔时日月共同的度数:加二十九度,大分八千九百四十五,小分六千九百一十九。小分满章月就从大分里进位;大分满日度法就从度数里进位,用宿度除,剩下的分再用斗分除。算完之后,就是下一个月合朔时日月共同的度数。

现在算月亮的位置。方法是:把从纪元以来朔日的总天数,乘以周天数(225390),然后减去周天数的整数倍。剩下的数用日度法约分,得到度数和分,再从牛前十二度开始,用宿度除,不够一宿的就不用管了,剩下的就是这一年十一月朔日半夜月亮的位置。

还有一种方法算月亮的位置:用小周乘以朔日余数作为分子,用章岁乘以日法作为分母,分子除以分母,商就是度数;如果除不尽,就用章月除以余数,得到大分和小分。用得到的结果减去合朔时的度数和分,结果就是你想知道的,这一年十一月朔日半夜月亮的位置。

要算下个月月亮的位置,方法是:小月加二十二度,七千三百七十三分;大月加三十五度,一万三千五百八十三分。如果分超过日度法,就从度数里进位,然后用宿度除,不够一宿的就不用管了,结果就是下个月月亮的位置。

最后,算下个月某一天月亮的位置,方法是:加十三度,六千二百一十分。如果分超过日度法,就从度数里进位,然后用上面的方法除,结果就是下个月那一天月亮的位置。

首先,咱们来看怎么算上弦月的位置。方法是:把朔日(农历初一)的度数加上7度,再加6451分,3461秒,还有2毫秒。如果毫秒满了4,就从秒里减去;秒满了章月(大概指一个月),就从分里减去;分满了日度,就从度数里减去。按照这个方法算完,剩下的就是上弦月的位置度数了。同样的方法,还能算出望日(满月)、下弦月和下个月初一的位置。

接下来是算上弦月和满月的位置。方法是:把朔日的度数加上98度,再加11695分,5225秒,1毫秒。满了就按照上面的方法依次减去,算完剩下的就是上弦月和满月的位置度数了。然后继续加,就能算出望日(满月)、下弦月和下个月初一的位置。

然后是二十八宿的度数:斗宿26度,牛宿8度,女宿12度,虚宿10度;危宿17度,室宿16度,壁宿9度。北方玄武七宿一共98度(合4117分)。奎宿16度,娄宿12度,胃宿14度,昴宿11度;毕宿16度,觜宿2度,参宿9度。西方白虎七宿一共80度。井宿33度,鬼宿4度,柳宿15度,星宿7度;张宿18度,翼宿18度,轸宿17度。南方朱鸟七宿一共112度。角宿12度,亢宿9度,氐宿15度,房宿5度;心宿5度,尾宿18度,箕宿11度。东方苍龙七宿一共75度。

整个周天是365度,也就是16860分,其中4117分对应周天。把这些加起来,得到6158117,这就是周天的总度数。

下面是推算土王星(可能指某种星象或节气)在立春、立夏、立秋、立冬前的位置的方法。首先,把四立(立春、立夏、立秋、立冬)的大余、小余、小分、毫秒分别减去18、4420、18、2。如果大余不够减,就加60再减;小余不够减,就减一天,然后加上相应的数值再减;小分不够减,就减一个小余,加上24再减;毫秒不够减,就减一个毫秒,加5再减。算完之后剩下的就是四立之前的土王星位置。

还有一种方法是算冬至日的土王星位置。方法是:加上27大余,6631小余,6小分,3毫秒。毫秒满5就从小分减,小分满了就从小余减,小余满了就从大余减1。算完剩下的就是冬至日的土王星位置。

首先,咱们算算下个土王日是哪天。把大余加91,小余加5244,小分是6。小分满了就从小余里减,小余满了就从大余里减,大余满了就减去60。记下结果,这就是下个土王日。

接下来,算算冬至后多少天是“灭”日。如果冬至积没有小余,就加1,然后用没分乘以这个数,再除以88417,得到积日,余数就是没余。从积日里减去6个旬(60天),余数就是“灭”日。记下结果,这就是冬至后“灭”日。

然后算算下个“灭”日是哪天。把“灭”日加69,没余加57244。没余满了就从“灭”日里减, “灭”日满了就减去60。记下结果,这就是下个“灭”日。如果余数没了,那就是“灭”日。

再算算下个“没”日。把“没”日加69,没余加1915,没分加62285。没分满了就从没余里减,没余满了就从“没”日里减,“没”日满了就减去60。从上个月开始算,减去每个月的天数,如果不够一个月,剩下的就是下个“没”日,以及没余和没分。记下结果,这就是下个“没”日。

接下来看看四正卦。冬至对应《坎卦》,春分对应《震卦》,夏至对应《离卦》,秋分对应《兑卦》。《中孚卦》紧跟在《坎卦》之后。

算算下一个卦象。把《坎卦》的大余加6,小余加1473,小分加14,微分加4。微分满了就从小分里减,小分满了就从小余里减,小余满了就从大余里减,大余满了就减去60。记下结果,这就是《复卦》开始的日子。

十一月: 《未济》《蹇》《颐》《中孚》《复》

十二月: 《屯》《谦》《睽》《升》《临》

正月: 《小过》《蒙》《益》《渐》《泰》

二月: 《需》《随》《晋》《解》《大壮》

三月: 《豫》《论》《蛊》《革》《夬》

四月: 《旅》《师》《比》《小畜》《乾》

五月: 《大有》《家人》《井》《咸》《姤》

六月: 《鼎》《丰》《涣》《履》《遯》

七月: 《恒》《节》《同人》《损》《否》

八月呢,对应的卦象是《巽》、《萃》、《大畜》、《贲》、《观》。九月是《归妹》、《无妄》、《明夷》、《困》、《剥》。十月是《艮》、《既济》、《噬嗑》、《大过》、《坤》。

这几个卦象啊,跟古代官职的对应关系是这样的:四个正月的卦象对应着方伯(古代地方长官),《中孚》对应三公(古代最高级官员),《复》对应天子,《屯》对应诸侯,《谦》对应大夫,《睽》对应九卿,《升》也跟三公有关,周而复始,循环往复。

九三爻和上九爻的关系,如果上九爻是阳爻,就是“清净、微温、阳风”;如果是阴爻,就是“降赤、决温、阴雨”。六三爻和上六爻的关系也一样,上六爻是阳爻,就是“日泽、寒、阴雨”;如果是阴爻,就是“曲尘、决寒、阳风”。总之,卦象上面是阳爻就对应阳风,阴爻就对应阴雨。

接下来是推算七十二候的方法,这个有点复杂:先根据冬至日长短的余数,也就是所谓的“大小余”,算出虎始交(虎开始交配)的日子。然后呢,要把大小余加上一些特定的数值,再进行一系列的运算,比如加个五,或者一千二百二十八,或者微人一,微分满三从小分,小分满小分法从小余,小余满蔀法从大余,大余满六十去之,以此类推,算出每个节气的日期。

具体到每个节气,七十二候是这样说的:冬至是“虎始交、芸始生、荔挺出”;小寒是“蚯蚓结、麋角解、水泉动”;大寒是“雁北向、鹊始巢、雉始雊”;立春是“鸡始乳、东风解冻、蛰虫始振”;雨水是“鱼不负冰、獭祭鱼、鸿雁来”;惊蛰是“始雨水、桃始华、仓庚鸣”;春分是“鹰化为鸠、玄鸟至、雷始发声”;清明是“电始见、蛰虫咸动、蛰虫启户”;谷雨是“桐始花、田鼠化为鴽、虹始见”;立夏是“萍始生、戴胜降桑、蝼蝈鸣”;小满是“蚯蚓出、王瓜生、苦菜秀”;芒种是“靡草死、小暑至、螗螂生”;夏至是“鵙始鸣、反舌无声、鹿角解”;小暑是“蝉始鸣、半夏生、木槿荣”;大暑是“温风至、蟋蟀居壁、鹰乃学习”;立秋是“腐草化为萤、土润溽暑、凉风至”;处暑是“白露降、寒蝉鸣、鹰祭鸟”;白露是“天地始肃、暴风至、鸿雁来”。

秋分,燕子飞回南方了,鸟儿们开始储藏食物过冬,雷声也渐渐消失了。

寒露节气,冬眠的虫子都躲到门缝里去了,寒气越来越重,阳气一天天衰弱。

霜降时节,水开始干涸,大雁成群结队地飞来,麻雀这种小鸟掉进水里就变成蛤蟆了。(这句有点夸张,是古人对自然现象的描述)

立冬,菊花开了黄花,豺狼开始祭祀猎物,河水也开始结冰。

小雪,地开始冻结,野鸡掉进水里就变成大蜃(一种传说中的生物),彩虹也看不见了。

大雪,冰层更厚了,地也开始裂开,乌鸦也不再鸣叫了。

接下来是关于推算上朔日的算法:把从纪元开始到所求年份的年数减一,再乘以六律,然后除以六旬,余数就用甲子来表示,算完之后,就是上朔日了。

接下来是关于推算五星(金木水火土)运行轨迹的第七种方法:从上元甲子年(公元前2697年)到《春秋》鲁隐公元年(公元前770年),己未年,一共是二十九万二千七百三十六个计算单位。从上元甲子年到魏兴和二年(公元222年),庚申年,一共是二十九万三千九百九十七个计算单位。

木星(岁星)的数值是六百七十二万三千八百八十八;火星(荧惑)是一千三百一十四万九千八十三;土星(镇星)是六百三十七万四千六十一;金星(太白)是九百八十四万三千八百八十二;水星(辰星)是一百九十五万三千七百一十七。

计算五星运行的方法是:把从上元以来到所求年份的年数减一,再乘以周天数,得到五星的实际数值;然后用各自的数值去除,所得的商就是积合数,余数就是合余。用合余减去法数,余数就是入岁度分。用日度法约分,所得的就是所求年份冬至后晨夕合度算及度余。对于金星和水星,用一合日数及合余减去合度算及度余,得到一就是晨,没有得到的就是夕;如果度余不够减,就减去合度算一,加上日度法再减。从牛宿前十二度开始计算,用宿次除之,不满一宿的,算外,就是所求年份冬至后晨夕合度及度余。

这段文字描述的是一种古代天文计算方法,看起来很复杂,咱们一句一句掰开了揉碎了来说。

第一段:它说要算某个年份的冬至那天早上和晚上星体运行到什么位置。首先,把从上元节(古代历法的一个纪元)到你要算的那一年,减去1,然后按照某种方法计算。计算结果如果超过了一天的度数,就减去一天的度数,再加1。如果最终结果还是超过一天的度数,就再减去一天的度数,然后加上一个叫“周虚”的数值。最后得到的数字就是你要找的那一年冬至后,早上和晚上星体运行的度数和余数。 金星和水星的计算方法也是一样的。

第二段:这一段讲的是怎么算星星、月亮和太阳在同一天相遇的时间。先算出冬至那天到朔日(农历初一)的天数,减去1,再加上之前算出来的合度算(前面一段算出来的那个数字)。然后把冬至的余数加上合度余数,如果超过一天的度数,就减去一天的度数,再加1。这时候,“合度算”就变成了“合日算”,“合度余”就变成了“日余”。从农历十一月开始,按照每个月的天数来减,如果不够一个月,就不用管了,剩下的就是星星、月亮和太阳相遇的时间。如果有闰月,那就按照闰月的天数来算。

第三段:这段讲的是怎么算星星、月亮和太阳下次相遇的时间。把上次相遇的天数和余数加上这次相遇的月数和余数,如果超过一天的度数,就减去一天,再加1。然后按照每个月的天数来减,从上次相遇的时间开始算,剩下的就是下次相遇的时间。金星和水星的计算方法,需要加上它们每天的运行度数和余数,早上相遇就加到晚上,晚上相遇就加到早上。

第四段:这段讲的是怎么算下次星体运行的度数。把星体的余数加上上次运行的度数和余数,如果超过一天的度数,就减去一天的度数。从上次运行的位置开始算,按照星宿的度数来减,如果不够一个星宿的度数,就不用管了,剩下的就是下次运行的余数。然后用一个数字(4117)来除以这个余数,得到一个分数。

第五段和第六段:这两段给出了岁星(木星)的具体数据,包括合终日数、合终日余、周虚、行星度数、度余等等,以及岁星在不同情况下每天的运行速度和运行方向,以及它与太阳相遇的时间和位置。这些数据非常具体,是用来进行实际计算的。 这些数字看起来很复杂,但它们是古代天文学家们长期观测和总结的结果,反映了他们对宇宙运行规律的理解。

火星运行情况是这样的:它和太阳完全重合的次数,一共是779次;和太阳重合后剩余的天数,一共是15143天;它运行一周所需要的时间,是1717天;它运行的度数是49度;剩余的度数是699度。

接下来是火星的另一个运行周期:早上火星和太阳重合,然后藏在太阳后面,持续71天,剩余天数16001天,运行度数55度,剩余度数13943度。然后,早上在东方可以看到火星,它运行的方向是顺行的,速度很快,每天运行十四分之十三度,184天运行112度。然后速度变慢,每天运行十二分之一度,92天运行48度后停止运行。停止运行11天后,它开始逆行,每天运行六十二分之十七度,62天运行17度。再次停止运行11天,然后又开始顺行,速度慢,每天运行十二分之一度,92天运行48度。之后速度又变快,每天运行十四分之十三度,184天运行112度。这时它在太阳前面,傍晚藏在西方,顺行,持续71天,剩余天数16002天,运行度数55度,剩余度数13943度,最终又和太阳重合了。

金星运行情况是这样的:它和太阳完全重合的次数,一共是378次;和太阳重合后剩余的天数,一共是981天;它运行一周所需要的时间,是15879天;它运行的度数是12度;剩余的度数是13724度。

金星的另一个运行周期:早上金星和太阳重合,然后藏在太阳后面,持续18天,剩余天数490天,运行度数2度,剩余度数6862度。然后,早上在东方可以看到金星,它运行的方向是顺行的,每天运行十二分之一度,84天运行7度后停止运行。停止运行36天后,它开始逆行,每天运行十七分之一度,102天运行6度。再次停止运行36天,然后又开始顺行,每天运行十二分之一度,84天运行7度。这时它在太阳前面,傍晚藏在西方,顺行,持续18天,剩余天数491天,运行度数2度,剩余度数6862度,最终又和太阳重合了。

水星运行情况是这样的:它和太阳完全重合的次数,一共是583次;和太阳重合后剩余的天数,一共是14502天;它运行一周所需要的时间,是2358天;它运行的度数是291度;剩余的度数是15681度。(这也可以说是它一次和太阳重合的天数。)

老白(太白金星)说:晚上和太阳一起出现的时候,它在太阳前面,藏了41天,大概一万五千六百八十一刻,走了51度,也大概一万五千六百八十一刻。晚上在西方看到它,它往前走,速度很快,一天走一度十三分之三,九十一天走一百一十二度。然后速度慢下来,一天走一度十三分之二,九十一天走一百一十五度。接着速度又变得飞快,一天走一度十五分之十二,四十五天走了三十三度然后停下来。停了八天后它又开始动。这次是往回走,一天走三分之二,九天倒退六度。在太阳前面,晚上藏在西方,藏了六天,倒退了四度,然后第二天早上又和太阳一起出现了。

接下来,老白又说:早上和太阳一起出现的时候,它在太阳后面,藏了六天,倒退了四度。早上在东方看到它,它往回走,一天走三分之二,九天倒退六度然后停下来。停了八天。然后它开始往前走,一天走一度十五分之十一,四十五天走了三十三度。速度加快,一天走一度十三分之二,九十一天走一百一十五度。速度再加快,一天走一度十三分之二,九十一天走一百一十二度。在太阳后面,早上藏在东方,往前走,藏了四十一 天,大概一万五千六百八十一刻,走了五十一度,也大概一万五千六百八十一刻,然后晚上又和太阳一起出现了。

然后是辰星:它和太阳一起出现,一共一百一十五天,大概一万四千八百一十八刻,转了一圈是两千四十四天,走了五十七度,(也可以说是一共一百一十五天)。大概一万五千八百三十八刻。(也可以说是一共一百一十五天)。

辰星说:晚上和太阳一起出现的时候,它在太阳前面,藏了十七天,大概一万五千八百四十八刻,晚上在西方看到它,它往前走,速度很快,一天走一度三分之一,十八天走了二十四度。然后速度慢下来,一天走七分之五,七天走了五度然后停下来。停了四天。在太阳前面,晚上藏在西方,往回走,十一天倒退了六度,然后第二天早上又和太阳一起出现了。

最后,辰星又说:早上和太阳一起出现的时候,它在太阳后面,藏了十一天,倒退了六度。早上在东方看到它,然后停下来,停了四天。然后它开始往前走,速度慢,一天走七分之五,七天走了五度。速度加快,一天走一度三分之一,十八天走了二十四度。在太阳后面,早上藏在东方,往前走,藏了十七天,大概一万五千八百三十八刻,走了三十四度,大概一万五千八百四十八刻,然后晚上又和太阳一起出现了。

咱们先说说这五星历的步法,书上这么说:用特殊的方法算出行星每天运行的度数和剩余的度数,如果剩余度数满了日度法(一万六千八百六十),就相当于满了一圈,再从头开始算,这样就能得到行星在某天可见的度数和剩余度数。然后,用行星运行的分母乘以可见的度数和分数部分,日度法当作1,得到分数部分,如果分数部分不满0.5,就舍去;如果大于等于0.5,就进位加1,再加到已经算出的运行分数里,如果分数部分超过了分母,就进一位变成一度。顺行和逆行的分母不一样,要根据行星当前运行的分母来计算之前的分数,把当前分母当作1,算出当前的运行分数。如果行星是留(停止运行)状态,就继承之前的度数,如果是逆行,就要减去。如果算出来的度数不满一整度,就除以斗分(指度数的单位),用行星运行的分母作为比例,分数部分会有增减,前后互相影响。

接下来,咱们说说怎么算五星的具体位置:用行星运行的分子乘以运行的天数,再除以分母,得到的结果就是行星在当天运行到的度数。