切换到宽版
  • 5167阅读
  • 7回复

中国古代天文历法知识 [复制链接]

上一主题 下一主题
离线小李飞刀
 

发帖
2410
金币
1880
威望
68
贡献值
32
开心币
282
只看楼主 倒序阅读 使用道具 楼主  发表于: 2004-05-05

中国古代天文历法知识的纲要大概,高度浓缩地表述在《后汉书·历志》的一段话中[1] ,把这段话逐字逐句地弄清楚,进一步读历的ABC也就有了。下面将这段话分为五句,加以详释。


1.天之动也,一昼一夜而运过周,星从天而西,日违天而东。


地球在自西向东地自转,古人虽然不懂地动的道理,但是古人与今人一样,每天都看到整个天球在自东向西地运转,此即所谓“天之动也,一昼一夜而运过周。”(图一)地球又在自西向东地绕着太阳公转(请参图二),当地球从A点转到B点,地球上的人(无论古今)不觉自己之动,只是看到太阳原来在天球背景的C点,现在看到太阳在天球背景的D点,感觉上象是D点反向地(自东向西)转到我们眼前来了,又感觉到太阳同向地(自西向东)从C点转到了D点。自东向西,即顺时针方向,叫做“左旋”;自西向东,即逆时针方向,叫做“右旋”。左右旋的说法,古人早有;而左右旋在现代粒子物理学中,也是重要的概念。中国古代不象古希腊那样有明确独立的“天球”概念,但是说“星从天而西,日违天而东”,味其语义,显然“星”与“日”与“天”是三样东西,要之,“天”是独立实存的,这才可以被星所从,被日所违。就“一昼一夜而运过周”来说,日与星都是“从天”的,这是地球自转产生的唯象运动,“运周”沿着赤道进行。而星“从”日“违”,则是地球公转产生的唯象运动,是沿着黄道进行的。下面的解释要参照把赤道黄道结合起来的图三进行。


2.日之所行与运周,在天成度,在历成日。居以列宿,终于四七,受以甲乙,终于六旬。


此句讲的是由于地球公转引起的太阳的周年视运动。太阳在黄道上行走(从西向东,右旋),古人早知365又1/4日走完一圈,所以分黄道为365又1/4度,太阳每日走一度,此即“在天成度,在历成日”。古人的空间观念常须依托于具体的物象,围绕着黄道便有二十八星宿的存在。二十八宿,依右旋,即东宫七宿(苍龙),角、亢、氐、房、心、尾、箕;北宫七宿(玄武),斗、牛、女、虚、危、室、壁;西宫七宿(白虎),奎、娄、胃、昴、毕、觜、参;南宫七宿(朱鸟),井、鬼、柳、星、张、翼、轸。宿者,宿舍也,太阳依次住在二十八宿里,一圈完了,重新来过,故曰:“居以列宿,终于四七。”另外一个终始相接的周期是六十甲子,“受以甲乙,终于六旬”是也。甲子周期是人为制定的形式(完全可以采取别的周期,如以百日为周期,或以七七四十九天为周期等),而日月周期则是天行之常,“天人合一”的古人不加区分,此句的表述方式,便是反映古代思想混淆性的一例。


钱宝琮先生认为二十八宿最初是“为观察月之行度而建立的”[2] ,换言之,二十八宿是月离之所(月亮的住处),不是日躔之所(太阳的住处),月巢日占,乃是后来的事情。月球绕地的轨道叫白道,白道与黄道的交角,比黄道与赤道的交角小得多,观察不很精密,即可以认为黄白同道。月绕地转,经天一周的时间(经天月,不是朔望月,两者的区别详后)约二十七又三分之一日,取整数二十八日,月亮每日居一宿,恰需二十八宿。月离何舍,夜间随时可以直接观察到;然而赫日当空的时候,一切失色,日躔之所,何由知之?《左传·昭公四年》鲁申丰曰:“古者日在北陆而藏冰,西陆朝觌而出之。” [3] 北陆、西陆分别指北宫星宿和西宫星宿,日在北陆,是为冬天,故取冰藏之;“西陆朝觌”,意即,早晨太阳将出未出之际,在东方见到西宫星宿,因知日在西陆,这时候已经是春天了,故又出冰。可以朝觌,也可以昏见,但朝觌昏见太过粗疏,后来的办法是于望日(日月对望之日),依月所在星推日所在星,如望月在翼即可推知日在营室,此法自比以朝觌之星为日躔所在要精密。办法无论精粗,正大光明的太阳,它的居处却是隐蔽的,须靠侦察推知,这总有点不大自然,所以从“历史的认识论”(Historical Epistemology)之观点来看,益信二十八宿之起源,在古人的思想上,最初并不是日躔之所。


3.日月相推,日舒月速,当其同所,谓之合朔。舒先速后,近一远三,谓之弦。相与为衡,分天之中,谓之望。以速及舒,光尽体伏,谓之晦。晦朔合离,斗建移辰,谓之月。


此句讲日与月的运动和位置关系,建立朔望月的概念。太阳和月亮都在违天右旋,太阳走得慢(“舒”),月亮走得快(“速”)。不妨把太阳比作时针,月亮比作分针(只是钟面上的指针乃作左旋)。日月同居一所(即日、月、地三点一线,以月居中)时叫做“合朔”,相当于两针重叠(如十二点整时)。日月相对(亦日、月、地三点一线,以地居中)时叫做“望”,相当于分时针连成一条直线。合朔到望之间有上弦月,望到下一次合朔之间有下弦月,文曰“舒先速后,近一远三,谓之弦”,可能还与另一种月行周期即“近点月”有关,但我不能精确解释,俟高明以教。不过这一困难是局域性的,可以封闭起来,不会影响理解别的文字。从一次合朔开始,月亮经过上弦、望、下弦,“以速及舒”,将追上太阳,再一次合朔。再一次合朔的前一日叫做“晦”。《说文》:“朔,苏也;晦,尽也。”《孙子·虚实篇》:“日有短长,月有死生。”屈原《天问》:“夜光何德,死则又盲?”皇侃《论语疏》:“月旦为朔,朔者苏也,生也。言前月已死,此月复生也。”朔是月初,晦是月末,从朔到晦的月行周期,在古人看来,类似于一个从复苏始生到终尽死亡的生命过程。须注意,月始生是在西方,终尽则在东方;黄昏西方微见月,此朔日也;早晨东方见微月,月光将尽,月体将伏,晦日至矣。把“晦朔合离”的全过程,当作一个单位,就是“月”,即一个朔望月。朔望月的长度,即两次合朔之间的天数,要略大于经天月,平均约二十九天半多一点。试想,日和月从合朔起跑,“日舒月速”,月亮跑完一圈回到原点时,太阳毕竟往前面跑了一段,要再次合朔,月还得再跑。就象从十二点整两针重叠开始,分针兜一圈后,还得再走一段至十三点零五分顷才能再次与时针重叠。时针兜一圈(一小时),相当于经天月;两次重叠之间的时间(一小时零五分多),相当于朔望月。


顺便补充一点。月行有朔望月与经天月的区别,相应地日行也有回归年与恒星年的区别。由于地球自转轴的进动,唯象地看,黄道与赤道的交点在恒星背景上发生着极微小的移动,因此,从春分日(或冬至日)到下一个春分日(或冬至日)的回归年,与太阳在恒星背景上的经天一周,是不同的,也有相应的微小差别,是为岁差。朔望月与经天月的区别容易观察,先秦时候就早已知道,岁差却迟至东晋的虞喜始有讨论。古人以冬至日为回归年的起讫点,虞喜发现,冬至的日躔“五十年退一度”(日行右旋为进,故“退一度”即向西移一度),从而提出“天为天,岁为岁”[4] 。“天”即太阳行天一周的恒星年,“岁”即从冬至到冬至的回归年)。祖冲之则第一次在历法计算中引用岁差。


朔望月与朔望月之间的推移,怎样标志呢?当然可以用序数来标志,一月,二月,三月,等等。但序数的标志是相对的,周正的一月,乃夏历的十一月;夏历的一月,则又是周正的三月。从历史的认识论观点来看,相对的标志方法应是后起的,早期应有一种绝对的客观的标志方法,此即“斗建移辰”。所谓“斗建”,是指北斗七星的斗柄所指向的地平圈上的方位。地平圈方位用十二支来表示,正北为子位,左旋经丑、寅、卯(东)、辰、巳、午(南)、未、申、酉(西)、戍、亥,回复到子位。初昏时分观察斗柄所指,以命其月,同时可知其月所在的季节,如斗建为子,其月为子月,冬至属焉,时在仲冬;斗建为寅,其月为寅月,立春属焉,时在孟春,等等。观察斗建移辰,可知时序推移,这乃是“观象授时”的重要一种。子月、寅月等是绝对的不动的标识,由客观的天象所确定。以哪一月为正月,则是人为的政治上的决定。“周正建子”,即周朝以子月为正月;现在的农历以寅月为正月,据说承用的是“夏正建寅”,所以农历又叫夏历。


4.日月之行,则有冬有夏;冬夏之间,则有春有秋。是故日行北陆谓之冬,西陆谓之春,南陆谓之夏,东陆谓之秋。


此句讲一年四季太阳在黄道上的位置。黄道二十八宿,划分成西、南、东、北四“陆”,分别是春、夏、秋、冬四季的日之所在。二十八宿明明在天上,却命其为“陆”,与上文所说天有独立的存在,与从之之星、违之之日应加以区分的观念是相符合的:星宿被看成了天上的陆地。天上的四陆与地平圈上的四个方位不能混淆,两者又有一定的联系。看图三,赤道和黄道的交点a、c分别代表春分点和秋分点,假定此时是春分日的初昏时分,太阳正位于 a点(即将下山),太阳所在的西陆便正好与地平的西方一致,于是南、东、北陆的位置也确定了,分别以b、c、d标识。但如假定此时是春分日的清旦时分,太阳应位于c点(刚要出山),西陆便应与地平的东方一致,因而南、东、北陆便应分别以d、a、b来标识了。有趣的是,冬天日在北陆,当冬天的中午,北陆“从天”依赤道方向左旋到了南方的上空,比起夏天的中午位于南方上空的南陆来,反而更南。


5.日道发南,去极弥远,其景弥长,远长乃极,冬乃至焉。日道敛北,去极弥近,其景弥短,近短乃极,夏乃至焉。二至之中,道齐景正,春秋分焉。


此句中的“日道”,并不是太阳周年视运动走的黄道,而是太阳每天“从天而西”(左旋)所循的轨道,用数学的术语,可以说为“以黄道为准线、天球上与赤道圈平行的一束圆圈”,天球的北极正好是北极星所在的位置,这束圆圈也可以看作天球的纬度圈。春、秋分日的日道即是赤道,冬、夏至日的日道(图三中的dd'和bb')关于赤道成对称,其余所有的日道都夹在dd'和bb'之间。从秋分日起,日道与北极星越来越远,向南发散(发南),中午太阳的影子就越来越长,长到极点,也就是“发南”到极处,以dd'为日道,就是冬至日。反之,从春分日起,日道与北极星越来越近,向北收敛(敛北),中午太阳的影子就越来越短,短到极点,也就是“敛北”到极处,以bb'为日道,就是夏至日。


以上所解释的短文,不足三百字,包含着丰富的内容,所述的知识呈现出立体相,结构相,系统相,所以必须立体地、结构地、系统地读之,始能明白。



历之法数——岁实和朔策



《史记》八书,律、历、天官分为三书。前后《汉书》诸志,则律、历并为一志,天文志另立。律管音乐,历讲历法,以今日观之,明明音律与历法关系疏远,天文与历法关系密切,但《汉书》之后的正史里,却基本上都是律历合志,天文另志。如此分合之际,颇能反映出古代思想的情实。


天文志主要记载星宿分布,亏食异常等等,是自然客观的现象;而律历之事,却有人为主观的作用在里面。《书·尧典》:“乃命羲和,钦若昊天,历象日月星辰,敬授人时。”“历象”是动词,作谓语;“日月星辰”是名词,作宾语。尧命重黎之后羲氏与和氏做一种官,他们不管理人事,专门“掌天地四时”。但这和现在国家设天文局等机构有着本质的区别。现在天文局的基本立场和指导思想是主客二元分化下的“认知”,原则上私人天文家也可以做同样的事情,只是私人条件不够,往往做不了而已。羲和之官则是天人合一的宇宙总秩序下的一个环节,不可僭代,居此官者最要紧的是必须对天抱持恭敬顺从的道德态度(钦若昊天)。李约瑟《中国科学技术史》天文卷引了一句话作卷首语:“许多欧洲人把中国人看作是野蛮人的另一个原因,大概是在于中国人竟敢把他们的天文学家——这在我们有高度教养的西方人眼中是最没有用的小人——放在部长和国务卿一级的职位上。”虽然说的是制度,却牢牢地抓住了关于中国古代天人之际思想的这个本质。电视剧《编辑部的故事》里,某位业余天文爱好者用自制望远镜看到一个不知什么星星正向地球撞来,断言地球马上就要大爆炸,引得人们恐慌万状。立场坚定的牛大姐始则不信,理由是“中央没有发过文件”,继则犹豫彷徨,终于抗不住周围形势的压力,也相信了大爆炸的鬼话,沮丧地说:“看来中央也有疏忽的时候。”牛大姐关于天人之际的思想,首先当然是现代的科学认知观,而不是古代的道德敬顺态度,但她同时又坚信在科学认知上存在着一个虽非上帝却全知全能的人间主体。这是一种比较特殊、比较怪异、很有中国特色的现代思想,信者颇众。


“历象日月星辰”是人对日月星辰有所作用,怎么个作用法呢?查许氏《说文》,“历”字凡三见。一见于“厂”部,作“厤”,释文:“治也”,段注:“厤者调也,按调和即治之义也。”一本身即是部首,作“秝”,释文:“稀疏适厤也”,段注偏引众说,终归于“调和”、“均调”之义。一见于“甘”部,作“曆”,释文:“和也,从甘厤。厤调也。”段注:“厂部曰,厤治也。私生活秝部曰,稀疏适也。稀疏适者,调和之义。周礼,凡和,春多酸,夏多苦,秋多辛,冬多咸,调以滑甘。此从甘厤之义也。”这第三种写法,恰恰就是后来的“曆”字。调和即治,治即调和,是温和轻柔的作用。中国古代的调历之法,确实象调味一样,味道太咸,加点滑甘,只是一种“微调”。


《尧典》又云:“咨尔舜,天之历数在尔躬。”协律和调历之所以能视同一事,因为它们都是数的运用:“夫一、十、百、千、万,所同用也;律、度、量、衡、历,其别用也。故体有长短,检以度;物有多少,受以量;量有轻重,平以权衡;声有清浊,协以律吕;三光运行,检以历数。”[5] 这里表达的思想与古希腊毕达哥拉斯学派数的本质主义很相象。应将历史上的“算术”和“数术”看作两码事,算术倾向于摆脱数字的具体意义,只对数字作形式的运作;“数术”则偏偏要从数字里头抉发,或向数字里头注射许多意义。另一方面,历史上的算术又往往是受“数术”指导、为“数术”服务的。太初历“以律起历”[6] ,《汉书》首开律历合志,就体现了“数术”的统领地位和指导作用。这是否略同于文革期间某种哲学对所有自然科学和社会科学的统领地位和指导作用呢?一笑。


历法中的数据古人称为“法数”,最重要的“法数”是回归年的日数(岁实)和朔望月的日数(朔策),以及将岁实与朔策协调起来的“闰周”。祖冲之说:“古之六历,并同四分”[7] ,即黄帝、颛顼、夏、殷、周、鲁六历,都以365又1/4为岁实。这个数据来自实测。《后汉书·历志》云:“日发其端,周而为岁,然其景不复,四周千四百六十一日,而景初复,是则日行之终。”[8] 太阳在冬至日的中午,影子最长,但相邻两个冬至,中午的日影并不重合,必须日行四周积1461天,日影才比较严格地重合,所以,经过这“千四百六十一日”,太阳才算达到了它的终点(日行之终)。太阳的这又一个周期,1461日,等于四个365日加一日,这多出来的一日平分给四年,故每年有365又1/4日。


协调岁实与朔策是有实际需要的。朔望月约29天半多一点,一个大月一个小月地排列(有时候会有两个连大月),一年12个月共计354天,或355天,比日行一周少11天左右,不到三年就将差一个月,要是不作协调,朔望月的排列就不能反映四季气候的推移变化,如本应是孟春的夏历正月十年后会前移到秋天去了。所以需要适时地置闰,“以闰月定四时成岁”。《左传·文公六年》:“闰以正时,时以作事,事以厚生,生民之道于是乎在矣。” [9] 以时而作的事当然主要是农事,农事必须根据四时气候,四时气候根据太阳运行,置闰则是以调整月行周期的排列来反映日行周期。可见中国古代的历法,表面上是阴历,骨子里是阳历,是一种相当合理的阴阳合历。

一年不务农桑,一年忍饥受冻  一日不看江恩,半月被套亏损
离线小李飞刀

发帖
2410
金币
1880
威望
68
贡献值
32
开心币
282
只看该作者 沙发  发表于: 2004-05-05
中国古代天文历法知识


从颛顼历起,各家历术长期遵用十九年七闰的闰法,或者说,一个回归年有12又7/19个朔望月。这个数据也是观察的结果,《后汉书·历志》:“察日月俱发度端,日行十九周,月行二百五十四周,复会于端,是则月行之终也。” [10] 日行十九周,即19年;月行二百五十四周,即月亮254次经过恒星天背景上同一点,也即254个经天月。这段期间里,日月合朔的次数只须以254减去19即得,等于235,即19年里有235个朔望月。这个简单的算法也可以用钟表来例示:从随便什么时分如一点钟,到下一个一点钟,时针走了1圈,分针走了12圈,时分针相合的次数为12-1=11。19年有235个朔望月,而235=12×19+7,可见19年须置7个闰月。

只要坚持长期观察,这个数据不难得到,这点耐心,古人是有的。但是在古代的技术水平下,朔策却碍难直接观测。月行速率很不稳定,在同一个周期里,月行有迟疾,不同的朔望月,它们的长度也不一,在29天6小时到29天20小时之间,据现代测定,月平均时间为29.530588日。先秦古人的朔策是从岁实和闰法间接算得的,19年有235个朔望月,而1年有365又1/4日,故朔望月平均长度为365又1/4乘以19再除以235,等于29又499/940日(29.530851日)。

十九年是又一个周期,是月(朔望月)与岁(回归年)的最小公倍数。“岁首至也,月首朔也,至朔同日谓之章。” [11] 冬至作为岁首,朔日作为月首,如果冬至合朔在同一日,那么经过19年,又将出现冬至与合朔同日,这个周期称为“章”。但一章19年共计6939又3/4日,并不是整日数,于是更以4乘19等于76年,共计27759日,得到另一个周期,称为“蔀”。蔀是日、月、岁的最小公倍数。我们可以模仿着说:“岁首至也,月初朔也,日起夜半也,至朔夜半同刻谓之蔀。”但是如果考虑干支计日,一蔀的日数不能被60整除,不是整数个甲子周期,于是又以20乘一〖FJF〗踚〖FJJ〗之年数76,等于1520年,称为“一纪”。纪是日、月、岁、六十甲子的最小公倍数了,可以再模仿说:“岁首至也,月初朔也,日起夜半也,甲子始甲子也,至朔夜半甲子所同谓之纪。”《左传·襄公三十年》:“二月癸未,晋悼夫人食舆人之城杞者,绛县人或年长矣,无子而往,与于食。有与疑年,使之年。曰:‘臣,小人也,不知纪年。臣生之岁,正月甲子朔,四百有四十五甲子矣,其季于今三之一也。’” [12] 一个平头百姓,不知道自己的岁数,但记得活了多少个甲子,可见古代甲子计日的普遍性。当制订历法时,考虑将其与别的周期协调起来,也就不是什么勉强的要求了。

另一方面,历法上章、蔀、纪这样越来越长的周期系列,确实也反映了古人将政道与天道混为一谈,以图政治之长久的思想。制订历法时,总希望千年一系地管用,验诸事实,则中国历史上改历之频繁,可谓首屈一指,举世无双。据朱文鑫《历法通志》统计,从古六历到太平天国的天历,共有过102种历法,其中私撰不曾行用的只占极少数,改历很多是出于政治上改朝换代的原因,更重要的则是所行用之历的法数,积久而与实际天象不能相符,“闰余乖次,孟陬殄灭,摄提无纪,历数失序” [13] ,疏阔到了不得不改的程度。汉初承秦,用颛顼历,武帝元封七年改历,改当年为太初元年。“太初历”闰法依旧,为19年7闰,故“至朔同日谓之章”不变;而改朔策为29又43/81日,岁实相应为365又385/1539日。现在太初历一章的日数是6939又61/81日,为了取得整日数,使得“至朔夜半同刻”,便须以81乘一章,得1539年,称为“一统”。“一统”的日数也不能被60整除,甲子不复,故须“三统”,即1539乘以3等于4617年,称为“一元”,才是日、月、岁、六十甲子的最小公倍数,所以太初历又称“三统历”。总而言之,日、月、岁、章、〖FJF〗踚〖FJJ〗、纪,是四分历的周期系统;日、月、岁、章、统、元,是三统历的周期系统。

已知四分历是先有岁实,再算朔策,岁实(主要是那个“斗分”1/4)乃是实测所得,其他的数据都不难从它算出来(根据19年7闰的规则)。太初历反之,是先有朔策,再算岁实和其他数据。那么,朔策29又43/81=2392/81,又其来何自呢?

《汉书·律历志》对这个朔策2392/81的来历作了说明:“日法八十一。元始黄钟初九自乘,一龠之数,得日法。”“月法二千三百九十二。推大衍象,得月法。” [14] 古代历算术语中,“法”与“实”相对,例如以5乘10或除10,则10为“实”(被乘数或被除数),5为“法”(乘数或除数)。将一日等分为81份,以每一小份为“实”,则一日所有的份数81即为“日法”,而一月的总份数2392,即叫“月法”。体现“法”与“实”的概念区分,43/81日,应读作“八十一分日之四十三”,不能读作“八十一分之四十三日”。成语“三分天下有其二”,不说“有三分之二之天下”。这些似乎反映古代历算中的“分数”尚未从对具体事物或意义的依附中抽象出来。

太初历法数是从“黄钟之数”依易理推出来的。《汉书·律历志》云:“数者,一、十、百、千、万也,所以算数事物,顺性命之理也。《书》曰:‘先其算命’(颜师古注:‘先立算数以命百事也。’)。本起于黄钟之数,始于一而三之,三三积之,历十二辰之数,十有七万七千一百四十七,而五数备矣。(师古引孟康注:‘五行阴阳变化之数备于此矣。’)” [15] 1、3、9、27、...直至3的11次方177147,这12个数是“黄钟之数”,万物皆备于此,都可以从这里得出来。日法81,即是“黄钟之数”之一。《志》又云:“以易大衍之数五十,用其四十九,成阳六爻,得周流六虚之象也。夫推历生律制器,规园矩方,权重衡平,准绳嘉量,探颐索隐,钩深致远,莫不用焉。” [16] 且看它是怎样“推大衍象,得月法的”:“元始有象一也,春秋二也,三统三也,四时四也,合而为十,成五体。以五乘十,大衍之数也,而道据其一,其余四十九,所当用也,故蓍以为数。以象二二之(49×2=98),又以象三三之(98×3=294),又以象四四之(294×4=1176),又归奇象闰十九及所据一加之(1176+19+1=1196),因以再〖FJF〗*=〖FJJ〗两之(1196×2=2392),是为月法之实。如日法得一,则一月之日数也。” [17] 最后一句是说,以日法81除月法2392,等于29又43/81,即一个朔望月的日数。“实如法得一”,是古代历算里关于除法的典型说法。

改岁实和朔策,是一种“微调”。朔望月29天半略多,29是铁定之数,关键在那个余数,怎样调得恰到好处呢?揆度古人的实际思路,取“黄钟之数”81为“日法”,可能真的是出于对此类数的特殊信任和爱好,而一旦取定,朔余之分母43也就定了,因为只有它才使得新旧朔余的差最小。不取同样是“黄钟之数”的27或243的理由也在这里:若取27,则分子只能取15,但15/27比43/81误差大;若取243,则计算太繁复。朔策29又43/81,化成假分数得分子2392,即是月法。太初历的作者偏不这样说,偏要通过“元始之象”、“大衍之数”、“以象二之”、“以象三之”一连串复杂的说辞把它重新凑合出来,明明是凑合,却又说成是推衍。这种用易理来网罗一切事实的做法,在中国思想史上,甚至在现代中国人的思想中,是普遍存在着的。始作俑者或许是故弄玄虚,传述者则信以为真,承前启后,辗转滋乳,越讲越玄。越玄,也就越容易给人一种什么都说通了的似是而非的满足。在对自然和社会人际事物的认知、解释上,有易理的那一套在起作用,科学那一套既有普遍概念的规定性、又有具体实证的规定性的认知活动就无从生起。李约瑟说:“我们对阴阳和五行的理论的讨论,指示它们对中国科学思想的发展,是有助益而非阻碍的。...但是如果以中国的科学哲学的第三个伟大成分-《易经》-言,则不易作如是良好的评价。” [18] 诚哉斯言。


古代改历的基本原理

阳历好办,阴历难弄,原因在于,岁实容易测,朔策极难量。相对而言,日行比月行稳定得多,岁实只要足够精确,其误差得经很长时间才会积累至明显程度,而且容易预见,容易调整。如现行公历格利高里历,系1582年改订也属“四分历”的儒略历而成。四分历岁实偏大,四百年后会多出三日,冬至将“后天”三日,即历上的冬至比实际的冬至晚三天。格利高里历规定:逢整百数的年份,必须能被四百整除,才算闰年,便把多出的三天打发掉了。格利高里历已非常精确,要一万年后才会又多出三天,“一万年太久”,现在正大可不必担心。《孟子.离娄》:“苟求其故,千岁之日至,可坐而致也。”岁实在手,一千年后的冬至日,立马可以算得。雄辩滔滔的孟夫子可并不敢说“千岁之月朔可坐而致也。”“其故”即在于月行很不稳定,而古人排历日只能根据朔策对月份作平均的安排(所谓“平朔”),结果常常出现历上之朔与实际之朔错位的情况,月朔的推算比冬至日的推算复杂得多,一般人民自己不会算(也不容许算),只能由统治者来告诉他们,于是有“颁告朔”的仪式。可以说,“千岁坐致”是长期预报,“颁告朔”则是一年一度的短期预报。

周礼.春官.太史》:“颁告朔于邦国。”《论语.八佾》:“子贡欲去告朔之饩羊。子曰:‘赐也,尔爱其羊,我爱其礼。’”朱熹注:“告朔之礼,古者天子常以季冬,颁来岁十二月之朔于诸侯,诸侯受而藏之祖庙。月朔,则以特羊告庙,请而行之。饩,生牲也。鲁自文公始不视朔,而有司犹供此羊,故子贡欲去之。子贡盖惜其无实而枉费。然礼虽废,羊存,犹得以识之而可复焉。若并去其羊,则此礼遂亡矣,孔子所以惜之。” [19] “颁告朔”就是每年年底预先告知来年的月日安排,“凡岁将终,奏新年历” [20] ,与现在人家每年买日历簿差不多,不同处在于,买日历簿是百姓日用,而告朔则是“诸侯所以禀命于君亲”的“礼之大者” [21] 。

告朔之礼名存实亡以至于名实俱亡后,历法方面就出现了混乱。日食必定发生在朔日,所以根据历史上关于日食的记载,可以探知当时历朔的安排情况。《汉书·五行志》统计:“凡春秋十二公,二百四十二年,日食三十六。《谷梁》以为朔二十六,晦七,夜二,二日一。《公羊》以为朔二十七,二日七,晦二。《左氏》以为朔十六,二日十八,晦一,不书日者二。” [22] 这个统计表明,《春秋》三传所依据的历法各不相同。王韬在《春秋朔闰至日考》中解释说:“周既东迁,王室衰微,天子未必颁朔,列国自为推步,故经、传日月常有参差。” [23] 所谓“古六历”,学者早已论定:其实并不如其名称所说的那么古,不过是“列国自为推步”,而又假托于古罢了。

月行的周期与周期之间,长短相差可观,象《公羊》、《谷梁》所依据的历法,以“平朔”的方法推算月朔,而能让36次日食中,有四分之三发生于朔日,应该说相当不错了。问题在于,既然“古之六历,并同四分”,岁实、朔策和闰周都相同,为什么排出来的历日会彼此不同,有的精确,有的粗疏呢?《汉书.历志》:“汉兴,方纲纪大基,庶事草创,袭秦正朔。以北平侯张苍言,用颛顼历,比于六历,疏阔中最为微近。” [24] 到了元封年间,汉兴已百年,出现了“朔晦月见,弦望满亏,多非是” [25] 的情况,武帝下诏改元封七年为太初元年,同时改历,太初历的岁实、朔策都比四分历的误差大,后世刘宋朝的何承天批评太初历“尤复疏阔” [26] ,事实上,以今测岁实365.24220天,朔策29.530588天为标准,在中国历史上有过的一百多种历法中,太初历恰恰是“微近中最为疏阔”的一种,为什么一段时期内,竟能做到“晦朔弦望,皆最密” [27] ,以致于班固盛称其“推法密要” [28] 呢?太初历行用近二百年,“失天益远,日、月宿度相觉浸多” [29] ,东汉元和二年,章下诏复行四分历,而“后年历数遂正” [30] ,这又究竟是怎么回事呢?

? 这里涉及到古代制历的一个基本原理。朱文鑫《历法通志》有“各历岁实朔策表”一节。从表中不难看出,一百多种历法的数据例多大于今测,例外是极少数。而且,每次改历也往往并不是把数据改得更精密些,太初改四分历,固然把数据改坏了,但是这种情况后世多有;坏数据的历法,反而比数据较好的前历,与实际天象符合得好一些,也屡见不一见。可见,这里重要的并不是数据。由于数据例多偏大,一种历法行用年久以后,就会出现“历后天”,也不妨说为“天先历”。改进的办法:即使仍用原数据,甚至更坏的数据,只要将新历的“历元”(起始点)适当地前移,就能使新历在一段时期内较好地符合天象。中国历史上频繁地改历,除了政治因素外,原因和原理都在这里了。

请以太初改历具体说明。

西汉元封七年,武帝因大中大夫公孙卿、壶遂、司马迁等言“历纪坏废,宜改正朔” [31] ,乃诏御史曰:“十一月甲子朔旦冬至已詹,其更以七年为太初元年。” [32] “詹”,训作“雠”,《集解》:“雠,比校也”,“相应曰雠”。“已詹”,即已经测候校定。“已詹”在先,更年号在后,可知“十一月甲子朔旦冬至”是上一年(元封六年)的事。至朔甲子同日是很难得的,所以决定以这一日的夜半为“太初本星度新正” [33] 。

《史记.历书.历术甲子篇》:

“太初元年,岁名‘焉逢摄提格’,月名‘毕聚’,日得甲子,夜半朔旦冬至。正北(案:夜半为子时,子位正北)。十二(岁有十二月,有闰则云十三也)。无大余,无小余;无大余,无小余。”

“焉逢摄提格太初元年。十二。大余五十四,小余三百四十八;大余五,小余八。”

“端蒙单阏二年。闰十三。大余四十八,小余六百九十六;大余十,小余十六。” [34]

案:上面第一段话是确定太初历的历元“新正”,太初元年的起点,既然是从新从零开

始,无论什么意义上都没有余数,所以连续两个“无大余,无小余”。

第二段话是说太初元年年终的情况,用的是四分历的“法数”,阴历一年十二月积日35

4又348/940日,减去5个甲子循环,尚余54又348/940日,所以说:“大余五十四,小余三百四十八”。冬至周365又1/4日,等于365又8/32日,减去6个甲子循环,尚余5又8/32日,所以又说:“大余五,小余八”。

第三段话是说太初二年,这年闰,有十三个月,但计算阴历年积日时只计十二个月,而将闰月日数加于下年积日中,上年之余加本年积日为:54又348/980+354又348/980=408又696/980,减去6个甲子循环,余48又696/980日,故曰:“大余四十八,小余六百九十六。”冬至周积日为上年之余加上本周日数:5又8/32+365又8/32=370又16/32,减去6个甲子循环,余10又16/32日,故曰:“大余十,小余十六。”

《甲子历术篇》往下的条文,都可以上面所说的方法来解读和推算。《历术篇》共排列了一蔀七十六年,等于一本简易的“蔀历”。有趣的是,司马迁虽是太初改历的建议者,《历术篇》中却不用太初历法数,而仍袭用四分历法数,他承认新的历元,但不满邓平的八十一分术,这也说明,改历时历元的确定比“法数”更重要。另一个值得注意之点是,司马迁把闰月日数都加于下年积日,这似乎可以作为年终置闰的一种表示,冬至日是太阳岁行的起讫点,闰月之置,或在冬至后,或冬至在其中,都可以合乎情理地将其月之日数加积于下一年。

令人最感兴趣的是:太初新历的历元究竟是怎样前移的?相对于前历来说,又前移了多少?《汉书.历志》有一段关于昭帝元凤年间,太史令张寿王屡屡攻击太初历的记载。张寿王是个顽固保守分子,他上书胡说汉元以来用的是黄帝调律历,攻击说“今阴阳不调,宜更历之过也。”诏下各有关人等“杂候上林清台,课诸历疏密。凡十一家。”“历本之验在于天”,让各家历法比赛,看谁与天象符合得最好,这里有一点用观察和实验检验理论优劣的科学思想的味道。结果,“寿王课疏远。”他不服,“复候”,还是他和他的信从者“课皆疏阔”。比赛比输了,寿王仍死不买账,“妄言”如故,“诽谤益甚,竟以下吏”。张寿王的“妄言”中,倒有一句正好对我们感兴趣的问题透露了实质性的消息。“太初历亏四分日之三,去小余七百五分,以故阴阳不调,谓之乱世。” [35]

太初六年的十一月,至、朔、甲子同日,这是客观的符同,已经测候詹定。不难算出四分历的误差是三百年朔差一日,四百年至差三日,原用颛顼历虽有违失,但误差还没有积累到“后天”一日以上,故颛顼历上,那一个甲子日也是至朔并同。问题在于,一日是一段时间,有十二个时辰,至朔所交的时分,可以各历并不相同。马迁《历术篇》规定至朔并交于那一日的夜半时分,建立了一个新的起点,张寿王攻击这种做法是“亏四分日之三,去小余七百五分”,造成“阴阳不调”的“乱世”。夜半以后经过“四分日之三”,那是傍晚;“小余七百五分”,除以“〖FJF〗踚〖FJJ〗月”九百四十,也约等于四分之三,可见在原用颛顼历上,那一天至朔都交于傍晚时分。“亏”掉“四分日之三”,“去”掉“小余七百五分”,将历元前移到那一日的夜半,这就是太初历的主要改进。这一步改进,把颛顼历已经有所积累的“后天”因素一下子潜移掉了,从而使得数据“尤复疏阔”的太初历一段时间内反而更管用。张寿王的“妄言”,不仅使我们得以探明太初改历的具体要点,且使我们可以藉此溯知前用颛顼历的某些情况。

用“前移”的方法克服“历后天”,西方人也这么做过。西方人重视春分,因为它与原来根据阴历推算的复活节密近。公元325年的春分在3月21日,当年召开的尼西亚主教会议,索性将复活节规定在3月21日春分那一天。到了1582年教皇格利高里十三世下令改革儒略历时,春分已经飘移到3月11日去了,历后天达10日之多。为了让复活节和春分仍在同一日,教皇乃下令当年十月份减去10天,10月4日星期四的翌日便是10月15日星期五。于是第二年,即1583年,春分又在3月21日了。关于这一点,格利高里改历和太初改历,本质上没有什么不同。所不同的是,阳历不需考虑月行,不存在历对月相的先天后天问题,所以好办得多,格利高里改历使回归年日数高度精密化,一次前移,便可千年不移。而中国所行阴阳合历,历日要同时符合日躔月离,稍有差失,即须改动,中国虽然历史悠久,但行用最久的明大统历,也只不过用了276年,而明代以前的近百种历法,没有行用超过200年的,多数只用了几十年,甚至只有几年。

且不谈同时行用几种不同历法的情况。频繁改历,历与历接榫处往往情况复杂,后人要排出前面世代的明细长历,做到绝对精确,是极其困难的。陈寅恪《柳如是别传》第三章,有一段考证,因云间陈卧子“癸酉长安除夕”诗(有“去年此夕旧乡县,红妆绮袖灯前见”句),考得“卧子等实于崇祯五年壬申除夕参预河东君在内之花丛欢宴。”又考得钱肇鼇《质直谈耳》中柳如是约徐三公子“腊月三十日当来”一事,当亦指崇祯五年除夕而言。陈寅恪接着发问:“检近人所推算之明代年历,崇祯五年六年七年,十二月皆小尽。唯四年八年,十二月大尽。肇鼇是否未曾详稽当时所用之官历,遂以五年除夕为腊月三十日。抑或肇鼇所言无误,而近人所推算之明历,不合实际?” [36] 陈寅恪又检出钱牧斋“(崇祯十四年)二月十二日横山晚归作”诗,“最是花朝并春半”句,而云:“可证牧斋当日所依据之官历,崇祯十四年二月十二日为春分节。但近人所推算之明代年历,则崇祯十四年春分节在二月十日,相差两日。吾人今日因未得见明代官历,不能决定其是非。故此问题,可置不论。” [37] 陈寅恪以严谨的读史态度,对后人推算之前历,不敢尽信。明代尚属近古,至中古甚至上古,更何敢尽信乎?

上海社会科学院历史研究所主办  上海市中山西路1610号14楼1414室 陈克艰
电话:021-64862266-2404  Email:shilin33@historyshanghai.com

一年不务农桑,一年忍饥受冻  一日不看江恩,半月被套亏损
离线小风
发帖
9
金币
20
威望
0
贡献值
0
开心币
0
只看该作者 板凳  发表于: 2008-01-18

学习知识

离线甘道
发帖
51
金币
77
威望
0
贡献值
0
开心币
0
只看该作者 地板  发表于: 2008-07-09
学习

发帖
1092
金币
2212
威望
2
贡献值
1
开心币
2
只看该作者 4楼 发表于: 2008-10-02
谢谢!!
离线shdw

发帖
62
金币
106
威望
0
贡献值
0
开心币
10
只看该作者 5楼 发表于: 2008-11-03
用户被禁言,该主题自动屏蔽!
离线无可厚非
发帖
52
金币
165
威望
1
贡献值
0
开心币
0
只看该作者 6楼 发表于: 2008-11-07

古历法好啊。。。

离线东方海洋

发帖
1119
金币
2409
威望
1
贡献值
0
开心币
3
只看该作者 7楼 发表于: 2008-11-09
快速回复
限100 字节
批量上传需要先选择文件,再选择上传
 
上一个 下一个