天地运行就像个圈,没个头没个尾,编历法的人必须得抓住阴气消退阳气生长或者反过来的这个关键点,才能开始制定历法。 这阴阳消长变化的关键点,怎么才能观察到呢? 只有观察太阳影子伸缩变化,才能找到这个关键点。观察的方法,说白了就是立一根竿子测量影子,来研究太阳运行的起始点。 聪明人总能总结经验,前人已经把方法总结得差不多了,只要你认真思考,用心体会,说不定还能在前辈的基础上有所创新。
以前的方法是选一块平坦的地方,用水准仪和墨线校准,在中间立一根竿子,用来测量影子的长度。但是,如果竿子太短,那么一寸以下的分秒、半秒、少许这些细微的差别,就很难区分了。如果竿子太长,虽然分寸能精确一些,但问题是影子变得虚淡,难以看到清晰的影子。以前的人为了在虚淡的影子中找到真实的影子位置,有的用望远镜,有的用短竿子,有的用木头做个规尺,总之都是想办法让竿子顶端的阳光准确地照射到圭面上。现在我们用铜做竿子,高三十六尺,竿子顶端用两个龙的形状装饰,再架起一根横梁,一直延伸到圭面,总共四十尺,也就是八尺五的竿子。圭表刻度也改进了,以前是一寸一格,现在改成一寸五格,这样细微的差别就更容易区分了。我们还另外设计了一种“景符”,用来捕捉真实的影子。它用铜片做成,宽两寸,长是宽的两倍,中间穿个小孔,像针眼一样小,下面用方形的底座支撑,一端做成可以开合的轴,让它可以倾斜,北边高南边低,可以前后移动,来捕捉虚淡的影子,小孔透过的阳光,只有米粒大小,隐约能看到横梁在里面。以前的方法是用竿子顶端测量影子,得到的是太阳边缘的影子,现在用横梁来测量,得到的是太阳中心的影子,这样就不会有丝毫偏差了。
古人测算冬至,用一根八尺长的表来测量日影长度。冬至那天,日影长达一丈三尺多,夏至时则只有五寸长。现在京城用的测量日影的表很长,冬至时日影长达七丈九尺八寸多,相当于用八尺表测量的 一丈五尺九寸六分;夏至时日影长一丈一尺七寸多,相当于用八尺表测量的二尺三寸四分。虽然各地日影长短不同,但都遵循冬至日影最长,夏至日影最短的规律。
关键在于精确测定冬至时刻比较困难,因为只有在冬至这天正午,一年中的节气才算真正准确。南北朝的刘宋时期,祖冲之曾经选取冬至前后二十三四天里的日影数据,取中间值来确定冬至,并用每日日影长度变化的比例来推算冬至的具体时刻。宋朝皇祐年间,周琮则选择立冬和立春两天的日影数据来推算,因为他认为这两天距离冬至较远,日影变化比较明显,更容易推算。
元朝以后的历法,计算方法更加详尽,但基本还是沿用祖冲之的方法。新历法则积累了多年实测的日影数据,从日影最长到最短,选择前后几天日影变化率相近的数据进行比较分析,并非仅仅选择一两天的数据,而是取数据最多、最可靠的来确定冬至。这样算下来,比《大明历》少了十九刻二十分。新历法仍然通过多年实测的日影数据和每日变化的差值,来精确确定二至的时刻。
【推至元十四年丁丑岁冬至】
那年十一月十四日己亥日,日影长七丈九尺四寸八分五厘五毫;到二十一日丙午日,日影长七丈九尺五寸四分一厘;二十二日丁未日,日影长七丈九尺四寸五分五厘。 我们比较己亥日和丁未日的日影长度,相差三分五毫,这个差值乘以一百;再比较丙午日和丁未日的日影长度,相差八分六厘,作为除数;相除后得到三十五刻。用这个结果减去两日相隔的八百刻,余下七百六十五刻;取中间值,再加上半天(三百刻),一共是四百三十二刻半;除以一百约等于四天;余数乘以十二,再除以一百约等于三小时,满五十刻再加一小时,一共是四小时;余数再除以十二,得到三刻。从己亥日开始算,加上四天三小时三刻,得出癸卯日辰初三刻为丁丑年的冬至。这个方法是根据冬至前后四天的日影数据计算出来的。
十一月九号,星期几记不清了,反正那天日影长七丈八尺六寸三分五厘五毫。一直到二十六号,日影长到了七丈八尺七寸九分三厘五毫;二十七号,日影又短了点,只有七丈八尺五寸五分。 我把九号和二十七号的日影长度一减,再把二十六号和二十七号的日影长度一减,按照之前的计算方法算了一下,结果都指向癸卯日辰时三刻。 到了二十八号,日影更短了,只有七丈八尺三寸四厘五毫,我用二十七号和二十八号的日影长度,以及九号的日影长度,再算了一遍,结果还是一样。 这些数据都是前后八九天日影长度的记录。
接下来,十一月的第一个丙戌日,日影长七丈五尺九寸八分六厘五毫;第二天丁亥日,日影长七丈六尺三寸七分七厘;一直到十二月初六庚申日,日影长七丈五尺八寸五分一厘。 我用同样的方法算了一遍,得出的结果还是辰时三刻。这次我用的是前后十七天的日影数据。
再往前推,十月二十一日丙子日,日影长七丈九寸七分一厘;到十二月的十六日庚午日,日影长七丈七寸六分;十七日辛未日,日影缩短到七丈一寸五分六厘五毫。 我照样算了一遍,结果还是辰时三刻,这次用的是前后二十七天的数据。
最后,我查了六月初五癸亥日,日影长一丈三尺八分;和十五年前五月癸未朔日的日影长一丈三尺三分八厘五毫做了对比;六月初二日甲申日,日影长一丈二尺九寸二分五毫。 用同样的方法算了一遍,结果也符合。这次我用了前后一百六十天的日影数据。
【推十五年戊寅岁夏至】
五月十九号,那年是辛丑年,我测得日影长度是一丈一尺七寸七分七厘五毫;到了五月二十八号,庚戌日,日影长度是一丈一尺七寸八分;二十九号,辛亥日,日影长度是一丈一尺八寸五厘五毫。我把五月十九号(辛丑)和五月二十八号(庚戌)的日影长度一减,差了二厘五毫,这相当于实际的二分;再把五月二十八号(庚戌)和五月二十九号(辛亥)的日影长度一减,差了二分五厘五毫。然后用二分除以二分五厘五毫,结果是九刻。九百刻减去九刻,还剩八百九十一刻;再除以二,加上半天(三百刻),大概算一下,得四天;再乘以十二,大概算一下,得十一个时辰;最后再用十二除,得到三刻。从五月十九号(辛丑)开始算,那就是乙巳年的亥时三刻,正好是夏至。 我这是用夏至前后四天的日影长度来计算的。
十四年十二月十五日,己巳日,我测得日影长度是七丈一尺三寸四分三厘;到十五年十一月初二日,辛巳日,日影长度是七丈七寸五分九厘五毫;初三日,壬午日,日影长度是七丈一尺四寸六厘。 我用己巳日和壬午日的日影长度相减,再用辛巳日和壬午日的日影长度相减去除,结果也一样对得上。 这次我用的是夏至前后一百五十六天的日影长度来计算的。
十四年十二月十二日,丙寅日,我测得日影长度是七丈二尺九寸七分二厘五毫;十三日,丁卯日,日影长度是七丈二尺四寸五分四厘五毫;十四日,戊辰日,日影长度是七丈一尺九寸九厘;到十五年十一月初四日,癸未日,日影长度是七丈一尺九寸五分七厘五毫;初五日,甲申日,日影长度是七丈二尺五寸五厘;初六日,乙酉日,日影长度是七丈三尺三分三厘五毫。 前后都分别取数据计算,算出来的时刻都一样。 这次我用的是夏至前后一百五十八九天的日影长度来计算的。
12月7号,辛酉日,那天日影的长度是7丈5尺4寸1分7厘;8号,壬戌日,日影长7丈4尺9寸5分9厘5毫;9号,癸亥日,日影长7丈4尺4寸8分6厘;然后是15年11月9号,戊子日,日影长7丈4尺5寸2分5毫;10号,己丑日,日影长7丈5尺3厘5毫;11号,庚寅日,日影长7丈5尺4寸4分9厘5毫。咱们用壬戌日和己丑日的日影长度相减得到一个差值,作为结果;再用辛酉日和壬戌日的日影长度相减,得到另一个差值,作为除数,然后用结果除以除数;或者用壬戌日和癸亥日的日影长度相减,或者用戊子日和己丑日的日影长度相减,甚至用己丑日和庚寅日的日影长度相减,用同样的方法计算,结果都一样。这些数据都是取自前后一百六十三四天里的日影长度。
【推算十五年戊寅年冬至】
十五年,也就是戊寅年,11月19号,戊戌日,那天日影的长度是7丈8尺3寸1分8厘5毫;然后是闰十一月9号,戊午日,日影长7丈8尺3寸6分3厘5毫;10号,己未日,日影长7丈8尺8分2厘5毫。我们用戊戌日和戊午日的日影长度相减,差值是4分5厘,这个差值乘以一百倍;再用戊午日和己未日的日影长度相减,差值是2寸8分1厘,作为除数,然后用前面那个乘以一百倍的差值除以这个除数,得到16刻,再加上相隔的天数(换算成刻数)2000刻,再除以2,再加上半天(换算成刻数)的刻数,然后进行四舍五入,得到10天;然后用这个10天乘以12,再进行四舍五入,得到时间,满50就进1个小时,一共是7个小时;剩下的部分再用12除,得到刻数;最后从开始计算的那天(己亥日)往前推算,最终算出戊寅年冬至是戊申日未初三刻。这些数据都是取自前后十天里的日影长度。
十一月十二号,辛卯日,日影长七丈五尺八寸八分一厘五毫;十三号,壬辰日,日影长七丈六尺三寸一厘五毫;闰十一月十五号,甲子日,日影长七丈六尺三寸六分六厘五毫;十六号,乙丑日,日影长七丈五尺九寸五分三厘;十七号,丙寅日,日影长七丈五尺五寸四厘五毫。 咱们用壬辰日和甲子日的日影长度相减得到一个数值当作被除数,再用辛卯日和壬辰日的日影长度相减得到一个数值当作除数,一除,结果算出来是戊申日未初三刻。或者用甲子日和乙丑日的日影长度相减来推算,结果也一样。要是用辛卯日和乙丑日的日影长度相减当作被除数,用乙丑日和丙寅日的日影长度相减当作除数,结果也一样。这些计算都是用前后十六七天日影长度的数据算出来的。
十一月初八日丁亥,日影长七丈四尺三分七厘五毫;闰十一月二十日己巳,日影长七丈四尺一寸二分;二十一日庚午,日影长七丈三尺六寸一分四厘五毫。用丁亥日和己巳日的日影长度相减作为被除数,用己巳日和庚午日的日影长度相减作为除数,算出来的结果也一样。这些计算都是用前后二十一天日影长度的数据算出来的。
六月二十六日戊寅,日影长一丈四尺四寸五分二厘五毫;二十七日己卯,日影长一丈四尺六寸三分八厘;到十六年四月二日戊寅,日影长一丈四尺四寸八分一厘。用两次戊寅日的日影长度相减,再用后一次戊寅日和己卯日的日影长度相减来推算,结果也一样。这些计算都是用前后一百五十天日影长度的数据算出来的。
五月二十八日庚戌,日影长一丈一尺七寸八分;到十六年四月二十九日乙巳,日影长一丈一尺八寸六分三厘;三十日丙午,日影长一丈一尺七寸八分三厘。用庚戌日和丙午日的日影长度相减作为被除数,用乙巳日和丙午日的日影长度相减作为除数,算出来的结果也一样。这些计算都是用前后一百七十八天日影长度的数据算出来的。
【推十六年己卯岁夏至】
四月十九号,那天日影的长度是12尺3寸6分9厘5毫;二十号,日影长度是12尺2寸9分3厘5毫;到了五月十九号,日影长度是12尺2寸6分4厘。咱们把二十号和五月十九号的日影长度一减,差了2分9厘5毫,这个差值乘以一百;再把十九号和二十号的日影长度一减,差了7分6厘,用前面那个差值除以这个差值,结果是38刻;加上这期间相隔的天数,一共是2900刻,再把这个数除以2,加上半天也就是500刻,大概算一下,就是15天;然后把15天乘以12,再大概算一下,是2个时辰;最后再用12除一下,是2刻。从二十号开始算,加上15天,就是辛亥日的寅时二刻,这就是夏至。这个方法是用夏至前后十五天的日影长度来计算的。
三月二十一日,日影长度是16尺3寸9分5毫;六月十六日,日影长度是16尺9分9厘5毫;十七日,日影长度是16尺3寸1分1厘。用三月二十一日和六月十七日的日影长度相减,再用六月十六日和十七日的日影长度相减,用同样的方法推算,结果也一样。这个方法是用夏至前后四十二天的日影长度来计算的。
三月二日,日影长度是21尺3寸5厘;七月初七,日影长度是21尺1寸9分5厘5毫;初八,日影长度是21尺4寸8分6厘5毫。用三月二日和七月初七的日影长度相减,再用七月初七和初八的日影长度相减,按照之前的方法推算,结果也一样。这个方法是用夏至前后六十一二天的日影长度来计算的。
三月初一(戊申朔),日影长度是21尺6寸1分1厘;七月初八,日影长度是21尺4寸8分6厘5毫;初九,日影长度是21尺9寸1分5厘5毫。用三月初一和七月初八的日影长度相减,再用七月初八和初九的日影长度相减,按照之前的方法推算,结果也一样。这个方法是用夏至前后六十二三天的日影长度来计算的。
二月十八号,乙未日,测得日影长度是二丈六尺三分四厘五毫;到七月二十一号,丙寅日,日影长度是二丈五尺八寸九分九厘;二十二号,丁卯日,日影长度是二丈六尺二寸五分九厘。咱们把乙未日和丙寅日的日影长度相减,再把丙寅日和丁卯日的日影长度相减,以此类推,都一样。这样,我们取前后大约七十五六天的日影数据。
接下来,二月三日,庚辰日,日影长度是三丈二尺一寸九分五厘五毫;到八月初五,庚辰日,日影长度是三丈一尺五寸九分六厘五毫;初六,辛巳日,日影长度是三丈二尺二分六厘五毫。我们用前面庚辰日的日影长度减去辛巳日的日影长度,然后用后面的庚辰日和辛巳日的日影长度相减,也是一样的方法推算。这次我们取前后九十天的日影数据。
正月十九日,丁卯日,日影长度是三丈八尺五寸一厘五毫;到八月十八日,癸巳日,日影长度是三丈七尺八寸二分三厘;十九日,甲午日,日影长度是三丈八尺三寸一分五毫。我们用丁卯日和甲午日的日影长度相减,再用癸巳日和甲午日的日影长度对比一下,然后像前面那样推算,也一样。这次我们取前后一百三四天的日影数据。
【推十六年己卯岁冬至】
十月二十四日,戊戌日,日影长度是七丈六尺七寸四分;到十一月二十五日,己巳日,日影长度是七丈六尺五寸八分;二十六日,庚午日,日影长度是七丈六尺一寸四分二厘五毫。用戊戌日和己巳日的日影长度相减,余下一寸六分,这是晷差,进两位;然后用己巳日和庚午日的日影长度相减,余下四寸三分七厘五毫作为除数;相除,得到三十六刻;用相减的日期间隔(以刻为单位)三千一百刻,减去三千六十四刻;结果除以二,再加上五十刻,再进行一百约简,得到十五日;然后用这个结果乘以十二,再进行一百约简,得到时辰,满五十刻进一时,一共得到十时;剩下的再用十二除,得到二刻;从最初测量的戊戌日开始算,算到癸丑日戌初二刻,这就是冬至。这次我们取前后十五六天的日影数据。
咱们来看看这记录的日景长度。十月十八号,也就是壬辰日,日景长七丈四尺五分二厘五毫;十九号癸巳日,是七丈四尺五寸四分五厘;二十号甲午日,七丈五尺二分五厘。一直到十一月二十八号壬申日,日景是七丈五尺三寸二分;二十九号癸酉日,七丈四尺八寸五分二厘五毫;十二月初一甲戌日,七丈四尺三寸六分五厘;初二乙亥日,七丈三尺八寸七分一厘五毫。你看,把甲午和癸酉的日景长度一减,癸巳和甲午的日景长度一减,以此类推,结果都一样。 这都是前后差不多十八九天的日景数据。
接下来,我们再看看另一种算法。如果用癸巳日和甲戌日的日景长度相减,或者用壬辰日和癸巳日的日景长度相减,再或者用癸巳日和甲午日、甲戌日和癸酉日、甲戌日和乙亥日,甚至壬辰日和乙亥日的日景长度相减,结果都一样! 这次用的是前后大约二十天的日景数据。
再看一组数据。十月十六日庚寅,日景七丈三尺一分五厘;十二月三日丙子,日景七丈三尺三寸二分;初四日丁丑,日景七丈二尺八寸四分二厘五毫。用庚寅日和丁丑日的日景长度相减,或者丙子日和丁丑日的日景长度相减,结果也是一样的。 这组数据涵盖了前后大约二十三天的日景变化。
最后,我们来看最后一组。十月十四日戊子,日景七丈一尺九寸二分二厘五毫;十五日己丑,日景七丈二尺四寸六分九厘;十二月五日戊寅,日景七丈二尺二寸七分二厘五毫。用己丑日和戊寅日的日景长度相减,或者戊子日和己丑日的日景长度相减,或者己丑日和庚寅日的日景长度相减,结果都一样。 这组数据包含了前后大约二十四天的日景变化。
十月的初七,辛巳日,日影长六丈七尺七寸四分五厘;初八,壬午日,日影长六丈八尺三寸七分二厘五毫;初九,癸未日,日影长六丈八尺九寸七分七厘五毫;十二月的十二日,乙酉日,日影长六丈八尺一寸四分五厘。把壬午日和乙酉日的日影长度一减,辛巳日和壬午日的日影长度也一减,以此类推,壬午日和癸未日的日影长度一减,结果都一样。 这些数据是前后大约三十一到三十二天日影长度的测量结果。
接下来,十月的乙亥朔日,日影长六丈三尺八寸七分;十二月的十八日,辛卯日,日影长六丈四尺二寸九分七厘五毫;十九日,壬辰日,日影长六丈三尺六寸二分五厘。 把乙亥朔日和壬辰日的日影长度一减,辛卯日和壬辰日的日影长度也一减,结果也一样。 这些数据是前后大约三十八天日影长度的测量结果。
九月的二十二日,丙寅日,日影长五丈七尺八寸二分五厘;十二月的二十八日,辛丑日,日影长五丈七尺五寸八分;二十九日,壬寅日,日影长五丈六尺九寸一分五厘。 把丙寅日和辛丑日的日影长度一减,辛丑日和壬寅日的日影长度也一减,结果也一样。 这些数据是前后大约四十七到四十八天日影长度的测量结果。
九月的二十日,甲子日,日影长五丈六尺四寸九分二厘五毫;到十二月的二十九日,壬寅日,日影长五丈六尺九寸一分五厘;到十七年正月癸卯朔日,日影长五丈六尺二寸五分。把甲子日和癸卯朔日的日影长度一减,壬寅日和癸卯朔日的日影长度也一减,结果也一样。 这些数据是前后大约五十天日影长度的测量结果。
通过多年来的这些观测数据,以冬夏二至时刻为准,推算出至元十八年辛巳年的冬至,应该在己未日的夜半之后六刻,也就是丑时一刻。
【岁余岁差】
一年有三百六十五天,这是大家都知道的。不过,除了这三百六十五天,还有一些零头,大概相当于四分之一天。从今年冬至到明年冬至,一共三百六十五天,太阳绕地球一圈,一共要绕四圈,那就是一千四百六十天,多出来一天,再把它分成四份,就是四分之一天。实际上,天数的零头总是多一些,而年的天数总是少一些,两者总是不完全对等的。不过,这个差值很小,以前的人都没太在意。直到汉朝末年的刘洪,才发现冬至之后的天数,也就是一年多出来的部分太多了,于是他编制了《乾象历》,把一年多出来的天数从2500分之几减少到2462分之几。后来,晋朝的虞喜,宋朝的何承天、祖冲之,都认为一年天数应该有个微小的差异,于是就建立了岁差的计算方法。这个方法呢,就是减少一年多出来的天数,增加太阳运行一周的天数,让一年多出来的天数慢慢减少,太阳运行一周的天数慢慢增加,这样一来,通过强弱相减,就能算出太阳运行和回归年之间的差异了。一年多出来的天数和太阳运行一周的天数,这两个其实是相互关联的,岁差就是这么算出来的,太阳运行的具体数值也是这么得来的。如果其中一个计算错了,那肯定跟实际情况对不上了。
从刘宋大明壬寅年开始,我们一共精确测量了六次冬至的时刻,然后把这些时刻之间相隔的天数,除以相隔的年数,就能算出每一年的剩余天数。我们又从大明壬寅年算到元朝戊寅年,把这期间的天数除以年数,算出平均每年是三百六十五天,二十四分二十五秒。这比《大明历》少十一秒,这就是我们现在用的每年剩余天数。剩下的七十五秒,用来增加那四分之一天,一共就是三百六十五度,二十五分,七十五秒,这就是太阳运行一周的天数。把一年多出来的部分和太阳运行一周的天数的差值算出来,是一分五十秒,用这个差值除以全度,就能算出大约六十六年,太阳运行的位置会后退一度。用六十六年除以全度,正好得到一分五十秒,这就是岁差。
咱们用《尧典》里记载的星象来推算,那时候冬至太阳的位置在女宿和虚宿之间。翻翻以前的史料,汉元和二年,冬至太阳在斗宿二十一度;晋太元九年,在斗宿十七度;宋元嘉十年,在斗宿十四度末;梁大同十年,在斗宿十二度;隋开皇十八年,还在斗宿十二度;唐开元十二年,在斗宿九度半;现在呢,退到了箕宿十度。你看,从现在算起,时间跨度长的有七十多年,短的也有五十年,太阳的位置就差一度了。宋庆元年间,改用了《统天历》,它取大衍历的岁差率八十二年,和开元时测得的五十五年差值,取个平均值,算出六十七年差一度。用这个方法算到今天,跟实际的天象比对,非常接近。
但是,古今的历法啊,跟现在对得上,未必跟古代对得上;跟古代对得上,未必在现在也适用。咱们现在用的《授时历》,拿它来推算古代,就会多算些年份,少算些岁差;拿它来推算未来,就会多算些岁差,少算些年份。不过,推算春秋时代以来的冬至,大多都挺准的;推算未来的冬至,也能长期使用,不会出错,这可不仅仅是现在准而已。我还用《大衍》等等六种历法,检验了春秋以来冬至的准确性,一共四十九个例子,都列在后面。
【冬至刻】
《大衍》 《宣明》 《纪元》 《统天》 《大明》 《授时》
献公十五年戊寅年,正月甲寅朔旦冬至。
丙辰(22) 乙卯(88) 丁巳(33) 乙卯(2) 丁巳(35)甲寅(99)
僖公五年丙寅年,正月辛亥朔旦冬至。
辛亥(94) 辛亥(66) 壬子(74) 辛亥(27) 壬子(89)辛亥(14)
昭公二十年己卯年,正月己丑朔旦冬至。
己丑(45) 己丑(20) 庚寅(25) 戊子(92) 庚寅(29)戊子(83)
宋元嘉十二年乙亥年,十一月十五日戊辰景长。
戊辰(35) 戊辰(32) 戊辰(39) 戊辰(51) 戊辰(41)戊辰(47)
元嘉十三年丙子年,十一月二十六日甲戌景长。
这些数字和干支纪年,看着就头大!不过,咱们慢慢捋顺。先说第一段,是公元442年到446年,记的是一些日子,具体是哪天,用的是干支纪年法,比如“癸酉(59)”,“癸酉”是年号,“59”可能指的是某件事情发生的第几天,或者其他什么编号吧。反正,这段记录了连续五年的十一月里,每天都发生了什么事情,具体是什么,我可不知道。
接下来,这段是公元443年到447年,也是连续五年的十一月,同样的记录方式。 看来,这个人每年十一月都特别忙,或者说,每年十一月都有特别重要的事情发生,需要用这种方式记录下来。
公元444年到448年,也是同样格式的记录,又是连续五年的十一月。
公元448年到449年,记录方式略有不同,出现了“冬至”的说法。
公元449年到451年,又是连续三年的记录,年份、月份、日子,以及一些编号,都清清楚楚地写着。
公元452年到456年,最后这段记录,年份、月份、日子,以及一些编号,也和前面一样。 总而言之,这段文字像个流水账,记录了某人好几年十一月里每天发生的事情,用的是古代的纪年方法,具体内容是什么,就不得而知了。 这年年岁岁,月月日日,都得记下来,真是够细致的!
这串数字,应该是记录了什么日子吧? 癸巳年,又是癸巳年,还有壬辰年…… 看起来像是记了好多年的日子,每个年份后面都跟着好几个数字,不知道是什么意思。
太建十年,戊戌年,十一月五日,戊戌日,景长。 这句是说,在太建十年戊戌年十一月五日这天,是戊戌日,并且是景长。 后面那些戊戌(30)之类的,估计也是记录的具体时间,或者其他相关信息。
隋朝开皇四年,甲辰年,十一月十一日,己巳日,景长。 跟前面一样,也是记录某一天的具体时间和日期。 开皇五年乙巳年,十一月二十二日,乙亥日,景长;开皇六年丙午年,十一月三日,庚辰日,景长;开皇七年丁未年,十一月十四日,乙酉日,景长;这些都是类似的记录。
开皇十一年辛亥年,十一月二十八日,丙午日,景长。 开皇十四年甲寅年,十一月辛酉朔旦冬至。 这一句和前面的不太一样,是说冬至这天是辛酉日。 这些记录,跨越了好几年,感觉像是某种历法记录或者天文观测记录。
唐朝贞观十八年,甲辰年,十一月乙酉日,景长。 贞观二十三年己酉年,十一月辛亥日,景长。 龙朔二年壬戌年,十一月四日,从己未日到戊午日,景长。 这几个都是唐朝时期的记录,跟前面隋朝的记录很像。
最后是仪凤元年丙子年,十一月壬申日,景长。 看来这些记录,从隋朝一直记到了唐朝,时间跨度还挺长的。 这些数字和日期,背后一定隐藏着什么故事吧,可惜现在看不太懂了。
壬申年,具体哪一天记不清了,反正就那几年,是二十五、二十八、十、二十八、十二、二十二这些日子。
永淳元年,是壬午年,十一月癸卯日,天气很好。
癸卯年,具体是哪几天,记着呢:七十二、七十五、五十七、七十六、五十八、六十八。
开元十年,是壬戌年,十一月癸酉日,天气也很好。
癸酉年,记着呢:四十九、五十四、三十一、五十、三十二、四十六。
开元十一年,癸亥年,十一月戊寅日,天气很好。
戊寅年,记着呢:七十四、七十七、五十五、七十四、五十六、七十。
开元十二年,甲子年,十一月癸未日,是冬至。
癸未年,记着呢:九十八、甲申年(第三天)、八十、九十九、八十一、九十五。
宋景德四年,丁未年,十一月戊辰日,是冬至。
戊辰年,记着呢:十五、二十六、丁卯年(七十四、八十二、七十四、八十)。
皇祐二年,庚寅年,十一月三十日,癸丑日,天气很好。
癸丑年,记着呢:六十五、七十九、二十二、二十五、二十二、二十三。
元丰六年,癸亥年,十一月丙午日,天气很好。
丙午年,记着呢:七十三、八十五、二十六、二十七、二十六、二十六。
元丰七年,甲子年,十一月辛亥日,天气很好。
辛亥年,记着呢:九十七、壬子年(第十天)、五十、五十一、五十、五十一。
元祐三年,戊辰年,十一月壬申日,天气很好。
壬申年,记着呢:九十四、癸酉年(第八天)、四十八、四十八、四十八、四十八。
元祐四年,己巳年,十一月丁丑日,天气很好。
戊寅年,记着呢:十九、三十二,丁丑年(七十二、七十二、七十二、七十二)。
元祐五年,庚午年,十一月壬午日,是冬至。
癸未年,记着呢:四十四、五十六、壬午年(九十六、九十七、九十六、九十六)。
元祐七年,壬申年,十一月癸巳日,是冬至。
公元92年,甲午年,还有好几个92年……总之,元符元年,也就是公元1098年,11月甲子日,冬至那天。
公元1098年冬至那天发生了什么?记不清了,只记得一些数字,39,52,91,91,91,91……这些数字具体指什么,我也不知道。
然后是崇宁三年,公元1104年,11月丙申日,冬至。
又是那些数字,86,99,37,36,37,37…… 我记性不太好,这些数字代表什么,我实在想不起来了。
到了绍熙二年,公元1192年,11月壬申日,冬至。
又是数字,12,27,57,47,57,46……这些数字,我完全记不住它们的含义了。
庆元三年,公元1197年,11月癸卯日,南至。
59,74,3,92,3,92…… 这些数字,我只能记下,却不知道它们代表什么。
嘉泰三年,公元1203年,11月甲戌日,南至。
5,21,49,37,49,37…… 这些数字,我已经记不清是什么意思了。
嘉定五年,公元1212年,11月壬戌日,南至。
25,41,69,56,68,56…… 这些数字,我记不住了,真的记不住了。
绍定三年,公元1230年,11月丙申日,南至。
65,83,7,63,7,92…… 这些数字,我完全记不起来了。
淳祐十年,公元1250年,11月辛巳日,南至。
94,71,96,77,94,78…… 这些数字,我已经记不清楚了。
最后是至元十七年,公元1280年,11月己未日,过了半夜六刻,冬至。
87,5,25,4,24,6…… 这些数字,我记不住了,真的记不住了。 这些年,这些日子,这些数字……到底是什么啊?
从春秋时期献公开始,到现在已经两千一百六十年多了,咱们用过《大衍》、《宣明》、《纪元》、《统天》、《大明》、《授时》这六种历法来推算冬至,一共算过四十九次。
这四十九次推算的结果呢,用《大衍历》算,有32次是对的,17次是错的;用《宣明历》算,有26次是对的,23次是错的;用《纪元历》算,有35次是对的,14次是错的;用《统天历》算,有38次是对的,11次是错的;用《大明历》算,有34次是对的,15次是错的;最后,用《授时历》算,有39次是对的,只有10次是错的。
好家伙,这篇文章讲的是古代历法和实际观测结果的差异啊!咱们一句一句地捋捋。
首先,他说根据《春秋》记载,献公十五年正月甲寅朔旦冬至,用《授时历》算出来是甲寅,和实际情况对得上;用《统天历》算出来是乙卯,比实际情况晚一天。到了僖公五年,两个历法都算对了。再到昭公二十年,两个历法都比实际情况早一天。如果硬要调整历法来迎合其中某一个,那献公和僖公的记录就对不上了。所以,他认为《春秋》里记载的昭公冬至,其实就是因为日度计算有误差导致的。这就是第一个例子。
接下来,他举了刘宋元嘉十三年的例子。根据《大衍历》记载,那年十一月甲戌日是冬至,《大衍历》、《皇极历》、《麟德历》都算出来是癸酉,比实际情况早一天,这说明是日度计算有误差,而不是历法本身的问题。用《授时历》算,结果也是癸酉,印证了这一点。这就是第二个例子。大明五年辛丑年十一月乙酉冬至,几个历法都算错了,大概也是日度计算的误差。这是第三个例子。
然后他又提到了陈朝太建四年和太建九年。太建四年,壬辰年十一月丁卯日是景长(冬至前后),《大衍历》和《授时历》都算出来是丙寅,早一天;太建九年,丁酉年十一月壬辰日是景长,《大衍历》和《授时历》都算出来是癸巳,晚一天。也就是说,如果调整历法来符合其中一个,另一个就错得更离谱了,这还是日度计算误差的问题。第五个例子。
开皇十一年辛亥年十一月丙午日景长,三个历法都算对了;但到了开皇十四年甲寅年十一月辛酉日冬至,三个历法都算成了壬戌,和实际情况对不上。如果调整历法来符合辛亥年,甲寅年就错;如果符合甲寅年,辛亥年就错。所以开皇十四年甲寅年的冬至,也是日度计算有误差。第六个例子。
唐朝贞观十八年和贞观二十三年,他认为史官是根据当时的历法记录的,而不是实际观测的结果,所以和计算结果对不上。《授时历》的计算结果也证明了这一点。第八个例子。
最后,他总结了宋朝以来的十七次观测记录。景德年和嘉泰年的观测结果,一个早一天,一个晚一天。如果调整历法来符合景德年的结果,其他十六次观测结果就大多晚于实际情况;如果符合嘉泰年的结果,其他十六次观测结果就大多早于实际情况。这再次证明了日度计算的误差。第十个例子。
总而言之,这篇文章列举了十个例子,说明古代历法在计算冬至日期时,经常出现与实际观测结果不符的情况,这主要是因为日度计算的误差。
前面十件事,《授时历》都对不上号。但是,用这个道理推算,其实并非完全对不上,关键在于抓住共同点就能了解其规律,辨别差异就能明白它的变化。现在咱们来说说冬至这天,根据史官用旧历记录的十件事来看,《授时历》全对上了三十九件事;《统天历》只在献公那件事上不对,《大衍历》推算献公冬至是后推两天,《大明历》是后推三天,只有《授时历》跟实际情况完全一致。再往前推到元庚辰年的冬至,《大衍历》推算后推了八十一刻,《大明历》后推了十九刻,《统天历》是提前了一刻,只有《授时历》跟实际情况相符。和以前那些历法比起来,《授时历》的精准度最高,大概几百年后的冬至日期,都能准确推算出来。
【古今历参校疏密】
把《授时历》和以前的历法相比,就能看出它的精准程度。如果能准确推算几百年前的日期,那么未来也能一直用下去,这是前人的经验之谈。古代那些精通历法的人,比如宋朝的何承天,隋朝的刘焯,唐朝的傅仁均、一行和尚等等,都是非常厉害的人物。现在咱们用他们的历法和至元庚辰年的冬至实际情况对比一下,没有一个完全准确的,但是用新历法《授时历》往前推算古代的日期,却都完全吻合,所以它的精准度由此可见一斑。
宋文帝元嘉十九年,壬午年十一月乙巳日十一刻冬至,距离元朝至元十七年庚辰年,一共是八百三十八年。那一年十一月,实际情况是己未六刻冬至,《元嘉历》推算的结果是辛酉,比《授时历》晚了二天;而《授时历》往前推算元嘉壬午年冬至,结果是乙巳,和《元嘉历》一致。
隋朝大业三年,丁卯年十一月庚午日五十二刻冬至,距离元朝至元十七年庚辰年,一共是六百七十三年的时间。《皇极历》推算的结果是庚申冬至,比《授时历》晚一天;而《授时历》往前推算大业丁卯年冬至,结果是庚午,和《皇极历》一致。
唐朝武德元年,戊寅年十一月戊辰日六十四刻冬至,距离元朝至元十七年庚辰年,一共是六百六十二年。《戊寅历》推算的结果是庚申冬至,比《授时历》晚一天;而《授时历》往前推算武德戊寅年冬至,结果是戊辰冬至,和《戊寅历》一致。
开元十五年,也就是丁卯年(公元727年)十一月己亥日,冬至是七十二刻。从那年到至元十七年庚辰年(公元1280年),一共过去了五百五十三年的时间。《大衍历》推算的结果是己未日的冬至,比《授时历》晚八十一刻;而《授时历》回过头来查开元丁卯年的记录,冬至是己亥日,这和《大衍历》的结果一致,只是早了四刻。
长庆元年,也就是辛丑年(公元821年)十一月壬子日,冬至是七十六刻。从那年到至元十七年庚辰年,一共过去了四百五十九年。《宣明历》推算的结果是庚申日的冬至,比《授时历》晚一天;而《授时历》回过头来查长庆辛丑年的记录,冬至是壬子日,这和《宣明历》的结果一致。
宋朝太平兴国五年,也就是庚辰年(公元980年)十一月丙午日,冬至是六十三刻。从那年到至元十七年庚辰年,一共过去了三百年。《乾元历》推算的结果是庚申日的冬至,比《授时历》晚一天;而《授时历》回过头来查太平兴国庚辰年的记录,冬至是丙午日,这和《乾元历》的结果一致。
咸平三年,也就是庚子年(公元1000年)十一月辛卯日,冬至是五十三刻。从那年到至元十七年庚辰年,一共过去了二百八十年。《仪天历》推算的结果是庚申日的冬至,比《授时历》晚一天;而《授时历》回过头来查咸平庚子年的记录,冬至是辛卯日,这和《仪天历》的结果一致。
崇宁四年,也就是乙酉年(公元1105年)十一月辛丑日,冬至是六十二刻。从那年到至元十七年庚辰年,一共过去了 一百七十五年。《纪元历》推算的结果是己未日的冬至,比《授时历》晚十九刻;而《授时历》回过头来查崇宁乙酉年的记录,冬至是辛丑日,这和《纪元历》的结果一致,只是早了二刻。
金朝大定十九年,也就是己亥年(公元1179年)十一月己巳日,冬至是六十四刻。从那年到至元十七年庚辰年,一共过去了 一百一年。《大明历》推算的结果是己未日的冬至,比《授时历》晚十九刻;而《授时历》回过头来查大定己亥年的记录,冬至是己巳日,这和《大明历》的结果一致,只是早了九刻。《大明》冬至的推算结果,看来测量还不够精确。
1278年冬至那天,是农历十一月己酉日,十七刻。这距离元世祖至元十七年(1350年)庚辰年,一共过去了八十二年。用《统天历》推算,那年的冬至应该是己未日,比《授时历》早一刻;而《授时历》推算庆元四年戊午年的冬至,是己酉日,这和《统天历》的结果一致。
接下来是关于星宿度数的记录。天上布满了星宿,一共二十八宿,周天度数是三百六十五度多一点。想要测量星宿的度数,就必须依靠太阳的运行来校准,也必须以星宿的位置来记录。周天度数就是通过这两者得到的。天体是圆的,以南北两极为中心,赤道环绕其间,日月五星的运行,总是出入于赤道附近。天体自西向东旋转,日月五星则自东向西运行,古人观测日月星辰就是这么做的。但是,各个星宿之间的距离,历代测量的结果都不一样,这要么是因为星宿本身有细微的移动,要么就是前人的测量不够精确。古代用窥管观测,现在新制成了浑仪,用两条线来测量,所以现在测得的度数,精确到分秒,和前代的结果有所不同,具体数据如下:(此处省略表格)
然后是关于太阳运行轨迹的记录。太阳在天空中运行,是最显眼的星象,它光芒万丈,其他的星宿都黯然失色。古人想要测量太阳运行的度数,必须通过黄昏、黎明、午夜时分,观测中星的位置来推算太阳的位置;但是,黄昏、黎明、午夜的时刻很难精确掌握,时间一有偏差,推算出的太阳位置就会有误差。晋朝的姜岌最早利用月食来校正,从而知道太阳运行的位置;《纪元历》则利用金星来确定太阳与星宿的距离,在黄昏后和黎明前验证星宿的度数,从而确定太阳的运行轨迹。现在,我们利用至元十四年(1347年)四月癸酉日发生的月食,推算出冬至日太阳位于赤道箕宿十度,黄道九度多一点。我们还从那年正月到己卯年(1350年)年底,三年间,持续观测月亮经过的星宿以及岁星、金星的距离,反复验证,一共得到一百三十四条数据,都显示太阳位于箕宿,这与月食的观测结果完全吻合。用金赵知微修订的《大明历法》推算,冬至时太阳位于斗宿初度三十六分六十四秒,这与我们新测量的结果相差七十六分六十四秒。
最后是关于太阳运行速度变化的记录。(此处内容待续)
太阳每天的运行轨迹,冬天和夏天不一样。以前人们只知道太阳每天走一度,一年转一圈,却不知道它运行的快慢,一年四季变化的原因。北齐的张子信通过观测星象和日食,发现太阳运行速度有偏差,但没完全搞清楚快慢变化的规律。赵道严根据日影长短来确定太阳运行的快慢,还计算出它的盈亏变化来预测日食。后来刘焯建立了新的历法,把太阳运行的快慢和四季变化联系起来,虽然计算方法和以前不一样,但后来的历法都沿用了他的方法。
你看啊,阴阳变化,日积月累就会产生差异。冬至那天,太阳每天走一度多一点,离赤道大约二十四度。从冬至开始,太阳的运行轨迹逐渐向北移动,经过八十八天九十一分,在春分前三天,到达赤道,这时太阳每天走九十一度三十一分,速度适中。之后,太阳运行速度逐渐变快,再经过九十三天七十一分,到了夏至,它又离赤道大约二十四度,每天运行九十一度三十一分,速度比冬至时慢一些,之前增加的速度全部抵消了。从夏至开始,太阳运行轨迹逐渐向南移动,经过九十三天七十一分,在秋分后三天,再次到达赤道,每天运行九十一度三十一分,速度又恢复到适中。之后,太阳运行速度逐渐变慢,经过八十八天九十一分,离赤道大约二十四度,每天运行九十一度三十一分,又回到了冬至,之前减少的速度全部抵消了。太阳运行速度的盈亏变化,开始是增加,最后是减少。从冬至到春分,从春分到夏至,太阳的运行轨迹从北向西,再向南移动,速度先增加到最大,然后减少到零。从夏至到秋分,从秋分到冬至,太阳的运行轨迹从南向东,再向北移动,速度先减少到最小,然后增加到零。速度增加到最大和减少到最小,都用了八十八天九十一分,完成一个周期;速度减少到最小和增加到最大,都用了九十三天七十一分,完成一个周期;速度变化的极差是二度四十分。这些都是通过实际测量日影长度,再用数学方法推算出来的,结果和实际测量非常吻合。
【月行迟疾】
古时候,人们认为月亮在一个月里运行的平均速度是十三度十九分之七。汉朝的耿寿昌认为,当太阳和月亮运行到牵牛星和东井星附近时,太阳运行的度数比月亮多,月亮运行到娄宿和角宿才和太阳运行的度数差不多,这是因为赤道的缘故。贾逵认为,当时计算朔、弦、望、月食的时间总是不准,原因是没搞清楚月亮运行速度的快慢变化。李梵和苏统都认为月亮的运行速度有快有慢,并不一定只在牵牛星、东井星、娄宿和角宿之间发生变化,而是由于月亮运行的轨道远近不同造成的。刘洪花了二十多年时间潜心研究,最终弄明白了其中的道理,在他的《乾象历》中列出了月亮运行速度快慢变化的数值,用来计算月亮运行的进退损益。后来的历法都沿用了他的方法。到了唐朝的一行,他仔细研究了月亮运行轨道的弯曲变化,更精确地掌握了月亮运行速度快慢的规律。
以前的人认为,月亮和五颗行星一样,靠近太阳时运行速度快,远离太阳时运行速度慢。历法制定者根据月亮绕地球一周所需的时间,制定了快慢两种历法,分别设立了开始和结束两个界限。开始阶段是速度增加的阶段,结束阶段是速度减少的阶段。在快速运行的开始和缓慢运行的结束阶段,月亮运行的度数比平均速度要快;在缓慢运行的开始和快速运行的结束阶段,月亮运行的度数比平均速度要慢。从月亮运行开始的那一天算起,每天运行十四度半多一点,然后逐渐减慢,七天后达到平均速度,这叫做“疾初限”,这时运行的总度数比平均速度多出五度四十二分。之后,速度继续减慢,再过七天,每天运行十二度多一点,之前增加的度数全部抵消,这叫做“疾末限”。从这时起,月亮运行速度变慢,再过七天,又达到平均速度,这叫做“迟初限”,这时运行的总度数比平均速度少五度四十二分。之后,速度继续减慢,运行度数逐渐增加,再过七天,又达到十四度半多一点,之前减少的度数也全部抵消,这叫做“迟末限”。月亮绕地球一周实际需要二十七日五十五刻四十六分,快慢速度的差值都是五度四十二分。旧历法把一天作为一个界限,一共用二十八个界限。现在经过验证发现,月亮运行速度的快慢变化在不同时间段是不一样的,现在把一天分成十二个界限,一共三百三十六个界限,一半是一周的界限,再分成四份就是象限。
【白道交周】
咱们先说说天上的那些道道。
你看这地球,南北极之间,有个圈圈横着穿过,那就是赤道。太阳每天走的路,就叫黄道,它跟赤道是交叉的。月亮走的路呢,叫白道,它也跟黄道交叉。古人为了方便,把这些路分成八条,加上黄道一共九条,其实说白了,都是一条路,只是因为月亮和太阳的位置老变,所以古人才用不同的名字来区分。
月亮的路和太阳的路交叉的时候,就会发生日食和月食。月亮挡住太阳就是日食,太阳挡住月亮就是月食。 发生日食月食的时候,月亮和太阳离得远近不一样,食的程度也就深浅不一,这些都能算出来。 月亮的路绕太阳的路一圈,这时间就叫“交周”。太阳的路离赤道最远是24度,月亮的路离太阳的路不会超过6度,离赤道最远不超过30度,最近不低于18度。月亮的路在黄道外面是“阳”,在黄道里面是“阴”,阴阳交替一圈,就分成了四个象限,叫“四象”。月亮在黄道上是“正交”,在黄道外6度是“半交”,回到黄道上是“中交”,在黄道内6度又是“半交”,这四个象限,每个象限七天,各走90多度,四个象限走完,就算一个交点周期结束了,一共是27天21小时22分24秒。每个交点周期,月亮的路会往后移1.2093度,大概249个周期后,它就又回到原点了,周而复始。
春分的时候,正交在赤道上,半交在赤道内18度,黄道外6度;秋分的时候,正交在赤道上,半交在赤道外30度,黄道外6度;春分的时候,中交在赤道上,半交在赤道内30度,黄道内6度;秋分的时候,中交在赤道上,半交在赤道外18度,黄道内6度。月亮的路和赤道正交的时候,跟春秋分黄赤道交点的位置,东西方向相差不会超过14.2度。 夏至的时候,如果月亮的路在阴历里面,冬至在阳历外面,那么月亮的路和赤道相差的就比较多;反过来,夏至在阳历外面,冬至在阴历里面,相差的就比较少。这是因为月亮的路和赤道交叉的角度不一样,有的斜,有的直,所以阴历和阳历的位置也不一样,直的交叉角度小,斜的交叉角度大,所以相差的度数也不一样。我们用现在的方法计算,这个相差的度数最多不会超过3.5度,最少也不会低于1.3度。这就是月亮的路和赤道之间度数差的范围。
【昼夜刻】
太阳升起就是白天,太阳落下就是晚上,一天一夜一共一百刻。我们用十二个时辰来划分,每个时辰大约是八刻多一点儿。不管你在南北哪个地方,都是这样算的。白天短了,晚上就长;晚上短了,白天就长,这是自然规律。
春分和秋分的时候,太阳正好从赤道升起落下,白天和黑夜一样长,各五十刻。从春分到夏至,太阳在赤道以南运行,离北极越来越近,所以白天越来越长,晚上越来越短。从秋分到冬至,太阳在赤道以北运行,离北极越来越远,所以白天越来越短,晚上越来越长。
在地球的中间地带,白天最长不会超过六十刻,最短不会少于四十刻。在地球中间地带以南的地方,夏至的时候太阳运行的轨迹离我们比较远,所以白天最长可能不到六十刻;冬至的时候太阳运行的轨迹离我们比较近,所以白天最短可能超过四十刻。在地球中间地带以北的地方,夏至的时候太阳运行的轨迹离我们比较近,所以白天最长可能超过六十刻;冬至的时候太阳运行的轨迹离我们比较远,所以白天最短可能不到四十刻。
现在北京,冬至那天太阳在辰时二刻升起,申时二刻落下,所以白天只有三十八刻,晚上有六十二刻;夏至那天太阳在寅时二刻升起,戌时二刻落下,所以白天有六十二刻,晚上只有三十八刻。这都是因为地球有南北之分,南北极的高度不同,太阳升起和落下的时间早晚不一样,所以才会有这样的差异。《授时历》里记录的昼夜刻数,都是以北京为标准的,各地北极高度的具体测量数据,都可以在《天文志》里查到。