张子信

张子信
张子信
  张子信(生卒年不详);北魏末年河内(今沁阳)人,经历东魏和北齐,主要活动于6世纪20年代到60年代。青年时期颇爱文学,但其医术知名。北魏孝昌年间,为逃避战乱,隐居海岛。期间,北齐武成帝曾让他出任药典御。武平初年,后主高纬又任命他为太中大夫,让他执掌朝中议论,但都被谢绝。他在海岛埋头观测天象,长达三十年之久。张子信不仅发现了太阳视运动规律,日食月食的规律,在中国历史上还是最先发现五大行星运行周期变化的人。张子信历尽三十多年艰辛,经过观测步算,积累了大量的天象数据和资料。他的观测成果和天文成就,不仅在北齐,以至隋唐几代更制历法中发挥了更为精确的作用,促进了中国天文学和历法的发展,在国际上也曾产生过一定影响。史称张子信为中国古代科学家。在《北齐书》、《北史》、《隋书》和《河南古人科学家》等书中都有较为详细的记载。

张子信生平

  关于张子信的生平,史籍记载很少,只知道他经历北魏、北齐两个朝代,以“学艺博通,尤精历数”(《隋书· 天文志》)闻名于世。他在北齐时曾为“学士”。公元526—528年间,在华北一带发生过一次以鲜于修礼和葛荣为首的农民起义,这次起义声势浩大,震动朝野,为了躲避这一次农民起义的影响,张子信跑到了某一海岛隐居起来。在海岛上,他制做了一架浑仪,专心致志地测量日、月、五星的运动,探索其运动的规律。在这一相对安定的环境中,他孜孜不倦地工作了30多年。在取得大量第一手观测资料的基础上,张子信还结合他所能得到的前人的观测成果,进行了综合的分析研究。大约在公元565年前后,他敏锐地发现了关于太阳视运动(即地球运动的反映)不均匀性、五星视运动不均匀性和月亮视差对日食的影响的现象。他提出“合朔”多发生在黄道与白道的交点附近时,如月在黄道北则日食;月在黄道南,虽在食限内,也可能不发生日食,即“视差”对交食的影响。同时提出了相应的计算方法,它们在中国古代天文学史上是具有划时代意义的事件。经由张子信的学生张孟宾、刘孝孙等人的努力,这三大发现及其计算方法在孟宾历和孝孙历(公元576年)中大约已被应用,因为该二历均已失传,我们无由知其详情。而在刘焯的皇极历(公元604年)和张胄玄的大业历(公元607年)中,这三大发现的具体应用均有明确的记载,此后各历法无不遵从之,并不断有所改进。张子信的三大发现以这样快的速度为历家所承认和应用,可见他的工作是出色和令人信服的。

张子信的三大发现

  张子信花了三十多年的时间,隐居于一海岛,专心致志地用浑仪观测日月五星的运动。570年前后,他获得了在中国天文学史上具有重大意义的三大发现。

·太阳视运动不均匀性

  关于太阳视运动不均匀性的发现。张子信由观测得知:太阳视运动从平春分到平秋分(时经半年)所历的黄道度数,要比从平秋分到平春分(亦时经半年)所历度数少若干度,于是,前半年太阳视运动的速度自然要比后半年来得慢,这是他导出这一发现的途径之一。这一发现推翻了古时候把周天分为365.25度,太阳每天在黄道上移行一度,其速度在任何时候都是相等的说法(黄道,就是今天所说的太阳视运动的路径)。这个发现,对制定历法有着十分密切的关系,因为既然太阳运行速度有快有慢,那末,一年四季的时间长短,二十四节气的时间多少,也就不能完全相等了。
  途径之二,是循着与刘洪当年相似的方法达到的。张子信指出:欲使交食发生时刻的预推值与实际相吻合,除虑及月亮运动不均匀性的影响外,还须加上某一改正值(称为“入气差”),该值的正负、大小与二十四节气有密切和稳定的关系。这是刘洪“消息术”的再发现。更重要的是,张子信由此升华出太阳视运动不均匀性的结论,给予“入气差”以合理的解释。他还推算出了二十四节气“入气差”(即二十四节气时,视太阳实际行度与平均行度之差)的具体数值,这是中国古代对太阳视运动不均匀性现象所作的最早的明确的定量描述。

·五星运动不均匀性

  张子信是中国古代首先发现行星运动速度有周期性变化的人。张子信的发现,依据传统的方法推算得的五星晨见东方的时刻,往往与实际天象不相符,常有应见而不见,或不应见而见的情况发生。由进一步的考察,他确认五星晨见东方时刻的这种超前或滞后及其时间的长短(称为“入气加减”),也与二十四节气有紧密的、稳定的关系。张子信以为,这正是五星运动不均匀性的具体反映。同样,他也推算出了五星二十四节气“入气加减”的明确数值,从而实现了五星运动不均匀性的初始的定量描述。
  人们用肉眼能看到的金、木、水、火、土五大行星,张子信通过长期观测,发现五大行星有着复杂的运动情况,从中摸索出它的某些规律。由于这五大行星按照不同的轨道和不同的速度围绕着太阳公转,因此,在地球上的观测看来,它们的视运动的确是比较复杂的。这些行星的移动速度有时较快,有时较慢,有时顺行,有时停留,有时甚至看不到,它们在天空中的位置经常改变。张子信在当时的自然科学发展水平还比较低的情况之下,通过长期细心观测,发现这些行星的运动速度有周期性的变化,并且从中摸索出某些规律。这就为以后制定历法提供了有用的依据,使后来编制的历法精确性越来越高。北齐末年,张子信的学生张孟宾和另一位天文学家刘孝孙一起,根据他的观测结果,修订了当时的历法。这就是《隋书》上所记载的“张孟宾受业于张子信,并弃旧事,更新法。”后来隋朝刘焯唐朝僧一行等人在制定历法的时候,都继承了张子信的研究成果。张子信的科学成就,不仅对北齐和隋、唐时期天文学和历法的发展起了重大的促进作用,而且在国际上也产生过影响。例如:印度天文学者就受过张子信关于太阳视运动的不均匀性和四季时间长度不相等的发现的影响。法国人比约认为:“印度《苏利耶历法全书》关于同一问题的观点,是以张子信和张孟宾的著作为根据的。”

·关于食差

  张子信食差的发现,这是关于交食研究的一大进展。张子信认识到简单地根据传统的食限法,还不能断然判定日食发生与否,即在已入食限的条件下,如果当时月亮在黄道之北,则必发生日食无疑;而如果当时月亮在黄道之南,则不发生日食。这里,张子信是发现了月亮视差对日食的影响。月亮视差是指在地面上的观测者看来,月亮真实位置的天顶距(Z)总比视位置的天顶距(Z+△Z)来得小的一种天文现象。对日食而言,当月亮在黄道之北时,由于视差使月亮的视位置下降,令日月的距离更靠近,所以只要入食限则必发生日食;而当月亮在黄道之南时,也由于视差使月亮的视位置下降,遂令日月的距离增大,所以即使已入食限,还是不发生日食。这就是张子信关于食差的发现的真实天文含义。
  张子信的这三大发现都具有划时代的意义,它们为天文历法体系的完善增添了全新的内容。

张子信的天文发现及其可能来源

·神秘的发现

  在中国古代历法史上,张子信这一人物显得神秘而特殊,关于他的文字记载不多,但他发现的行星和太阳周年视运动不均匀性对其后的中国历法理论产生了深远影响。有关张子信的最详细的记载见于《隋书·天文志中》,今全文摘录如下:
  至后魏末,清河张子信,学艺博通,尤精历数。因避葛荣乱,隐于海岛中,积三十许年,专以浑仪测候日月五星差变之数,以算步之,始悟日月交道,有表里迟速,五星见伏,有感召向背。言日行在春分后则迟,秋分后则速。合朔月在日道里则日食,若在日道外,虽交不亏。月望值交则亏,不问表里。又月行遇木、火、土、金四星,向之则速,背之则迟。五星行四方列宿,各有所好恶。所居遇其好者,则留多行迟,见早。遇其恶者,则留少行速,见迟。与常数并差,少者差至五度,多者差至三十许度。其辰星之行,见伏尤异。晨应见在雨水后立夏前,夕应见在处暑后霜降前者,并不见。启蛰、立夏立秋霜降四气之内,晨夕去日前后三十六度内,十八度外,有木、火、土、金一星者见,无者不见。后张胄玄、刘孝孙、刘焯等,依此差度,为定入交食分及五星定见定行,与天密会,皆古人所未得也。
  《隋书·天文志中》的上述这一段记载,是史籍中对张子信天文成就叙述得最为详细的一种。说张子信为了躲避葛荣的叛乱,隐居到一座海岛中,连续三十多年,用浑仪观测日月五星的运行,发现了太阳和五大行星的周年视运动都不是均匀的。这座海岛在哪里?现在无从得知。张子信以个人之力,何以能携带浑仪,在海岛建立起一座天文台并维持其运转达三十多年?这也是未解之谜。但不管怎样,张子信的发现为后世历算家刘焯等采纳,大大提高了对日食和行星运动的推算精度,使得隋唐历法比前代历法上了一个新台阶。只是需要指出,张子信对太阳和行星周年视运动不均匀性的发现,主要是定性的而不是定量的,他提出的对不均匀性量的修正还不是很正确。
  根据《隋书·天文志中》的记载,可以发现张子信对其发现的描述中有如下几点采用了与中国传统历法完全不同的表述形式:
  1、“五星见伏,有感召向背”。
  2、月亮的视运动速度的变化与月亮和木、火、土、 金四颗行星的相对位置有关。
  3、“五星行四方列宿,各有所好恶”,认为行星遇其好者,留多行迟,见早;遇其恶者,则留少行速,见迟。
  4、首推水星“应见不见术”。
  5、将水星的伏、见与木、火、土、金四星的相对位置结合起来考虑,认为水星在“晨夕去日前后三十六度内,十八度外,有木、火、土、金一星者见,无者不见”。
  以上五条,贯穿着一条总的思想,就是“五星见伏,有感召向背”,即认为日月五星和二十八宿都有性情好恶,能互相感应,以此来解释太阳和行星运动的不均匀性。其中尤其以水星“应见不见”一术最为精致,对水星的“应见不见”规律给出了定量的描述。在汉译佛经《七曜攘灾诀》(No.1308)三十三年长的水星历表中,频繁标注了“应见不见”的字样,而《七曜攘灾诀》为一位西天竺婆罗门僧人所撰。因此下文从分析水星“应见不见”入手,来揭示张子信的神秘发现之后可能隐藏的秘密。

·有关水星“应见不见”的文献

  水星作为一颗内行星,中国古代历法对其运动的正确把握相对落后。在隋唐历法对木、火、土三颗外行星的运动不均匀性能作比较正确的改正时,对水星运动不均匀性改正的描述被认为仍“是粗疏的、充满矛盾的,甚至是无益有害的”。但是不管怎样,张子信发现的水星“应见不见”现象是中国古代历法对水星运动认识过程中的一个阶段性突破,因此有必要对该项天文发现作一详细的阐述并给予适当的评价。
  张子信对水星“应见不见”的描述见于《隋书·天文志中》,已引述如前。后世历法家在对水星运动不均匀性进行改正时,所采用的方法大多与上引张子信所首先表述过的方法相类似,可见于以下几种“律历志”的记载:
  水,晨平见,在雨水后、立夏前者,应见不见。启蛰至雨水,去日十八度外、三十六度内,晨有木、火、土、金一星以上者,见;无者不见。立夏至小满,去日度如前,晨有木、火、土、金一星以上者,见;无者不见。……夕平见,在处暑后、霜降前者,应见不见。立秋至处暑,夕有星,去日如前者,见;无者不见。霜降至立冬,夕有星,去日如前者,见;无者亦不见。……初见伏去日各十七度。(《隋书·律历志中》之《大业历》)
  (水)见去日十七度。夕应见,在立秋后小雪前者不见;其白露前立夏后,时有见者。晨应见,在立春后小满前者不见;其惊蛰前立冬后,时有见者。(《隋书·律历志下》之《皇极历》)
  天竺历以《九执》之情,皆有所好恶。遇其所好之星,则趣之行疾,捨之行迟。张子信历辰星应见不见术,晨夕去日前后(四)三十六度内,十八度外,有木、火、土、金一星者见,无者不见。……其入气加减,亦自张子信始,后人莫不遵用之。(《新唐书·历志三下》之《大衍历议·五星议》)
  辰星初见,去日十七度。夕见:……入立秋,毕霜降,应见不见。其在立秋及霜降二气之内者,去日十八度外,三十六度内,有木[8]、火、土、金一星以上者,见。……晨见:……其在雨水气内,去日度如前,晨无木、火、土、金一星以上者,不见。入惊蛰,毕立夏,应见不见。其在立夏气内,去日度如前,晨有木、火、土、金一星以上者,亦见。(《新唐书·历志五》“建中正元历”)
  这里值得一提的是,《大业历》是首部描述了水星“应见不见”现象的正式颁行历法,而《大业历》的作者张胄玄,根据《隋书·艺术传》之“张胄玄传”记载:
  其超古独异者有七事。…… 二、辰星旧率,一终再见,凡诸古历,皆以为然。应见不见,人所未测。胄玄积候,知辰星一终之中有时一见。及同类感召,相随而出。即如辰星,晨平见在雨水气者,应见,即不见;若不晨见在启蛰气者,去日十八度外,三十六度内,晨有木、火、土、金一星者,亦相随见。
  这里,《隋书·张胄玄传》把水星“应见不见”术列为张胄玄“超古独异”七事之二,认为是“胄玄积候”所知。这似乎与《隋书·天文志》的记载相矛盾。都是《隋书》里材料,在史料可靠性上原本不该分高下。但是在这里我们可能得考虑到古人在为前人作传时容易发生的“通病”——往往多溢美之辞、有拔高之处。另一方面,《大业历》是首部把水星“应见不见”术写入其中的正式颁行的历法,所以参照现行学术界的做法——成果以发表为准,《隋书·张胄玄传》中的溢美之辞还不算过分。
  事实上,上引刘焯《皇极历》中也有水星“应见不见”术的描述。刘焯《皇极历》虽然被后来历法家公认为是部好历法,但在历法争论中因为非科学的因素而失败。刘焯在仁寿四年上皇太子书中指责张胄玄抄袭自己的历法,所谓“焯作于前,玄献于后”,并指出了75条抄袭的证据。现在虽然不能明确这75条具体是什么,但基本上可以肯定在《大业历》颁行之前,刘焯已经完成了他自己的比较完整的历法。因此刘焯对水星“应见不见”术的描述应该早于张胄玄。
  上引《隋书·天文志》在叙述了张子信的天文学成就后说“后张胄玄、刘孝孙、刘焯等,依此差度,为定入交食分及五星定见定行”,我们认为这基本上是一种可信的陈述,说明张子信的天文学发现对张胄玄等人的天文工作确实是产生了影响的。事实上,上引一行在《大衍历议·五星议》中也把水星“应见不见”术的发明归功于张子信。一行的陈述应该有所根据。
  另一方面,在《大业历》中能完整出现水星“应见不见”术,是因为《大业历》在历法争论中获胜,历法术文得到了完整保存。当然,事实上张胄玄也可能做过实测的,因为起先他毕竟只是一个“以算术直太史,久未知名”的低级天文官吏,后来在历法争论中投机得当而做到太史令。所以水星“应见不见”术的发现权虽然不能归于他,但他很可能对这种现象进行过实测检验。
  作了上述澄清之后,我们归纳出张子信发现的、被后世部分历法家所采纳的水星“应见不见”现象主要有以下三层含义:
  1、 水星作为晨星或昏星应该出现于天空时,有可能会不出现。
  2、 水星的这种“应见不见”现象与一年中某几个节气有固定的关系。
  3、 在某几个特别的节气里,水星是否可见,还与木、土、火、金四颗行星距离太阳的距角有关。
  上面所引各段文字描述的水星应见不见与各节气的关系可以总结成下表1。
表1    文献所载水星应见不见与各节气的关系
  从表1可见,《隋书·天文志中》、《大业历》和《建中正元历》对水星“应见不见”有比较一致的描述:在惊蛰、春分、清明、谷雨四个节气里,水星作为晨星发生“应见不见”;在处暑、白露、秋分、寒露四个节气里,水星作为昏星发生“应见不见”;至于在雨水、立夏两个节气里水星作为晨星和立秋、霜降两个节气里水星作为昏星水星是否可见,要根据其他四颗行星距离太阳的角度来确定。
  那么什么是水星的“应见不见”现象呢?我们认为张子信以前的天文学家对水星的视运动规律已经有了一定的认识,他们应该找到了一种推算水星周期性地可见于东方和西方天空的经验方法,根据这种方法能大致预推水星大距发生的时刻(即所谓的“应见”)。然而在某些特定的节气里,按照原来的方法推算得水星“应见”,但实际上却不能被观测到,于是这种情形就被叫做“应见不见”。
  对水星视运动的这一特殊现象,张子信及其后的天文学家的解释是“五星见伏,有感召向背”。显然这种认为行星有性情好恶的拟人化解释是不正确的。那么张子信发现的水星“应见不见”这一现象本身是否真实呢?其物理本质是什么?张子信的发现是不是建立在观测事实基础上?为了回答这些问题,有必要使用现代天文学作为工具,先从运动学角度对水星的运动作一定性分析,然后利用精确的星历表对水星运动进行定量计算,从数值上来精确模拟水星的见伏情况与节气和其他行星的关系。

·水星之“应见”的运动学解释

 
  如左图上图,S、M、E分别代表太阳水星地球,水星和地球在各自的轨道上绕日公转。当?SME为直角时即发生水星大距,此时角SEM即为水星大距时的距角(用a表示)。令表示从太阳(S)指向水星(M)的矢径;表示从太阳(S)指向地球(E)的矢径。显然有
  
   (1)
  根据二体问题的运动规律,行星绕日运动的矢径 可以表示为:
  
  (2)
  其中,
  
   (3)
  以上α为行星绕日运动轨道半长轴,e为轨道偏心率,E为偏近点角,ω为近日点黄经,Ω为升交点黄经,i为轨道倾角。分别用下标m和e来区别水星和地球的六个轨道根数。
  将(3)式代入(2)式,再一起代入(1)式,假设水星轨道与地球轨道在同一平面内,即认为水星的轨道倾角等于0°,并认为地球的轨道偏心率为0,进行化简,最后得到:
  
   (4)
  以为1个天文单位,则为0.387个天文单位,等于0.206。不难求出(4)式中 的最大值为27.8°, 的最小值为17.9°。可见,水星大距时的距角是在变化的,变化幅度将近达10°之多。引起这种变化的主要原因是水星轨道的偏心率较大。
  在中国古代历法中,行星的“见”和“伏”根据给定的“初见去日度数”来确定。古代历法给出水星的“初见去日度数”是17中国古度,约合16.76°。这一数值比水星大距的最小值小1°左右。因此按照中国古历判断行星“见”、“伏”的方法,水星在发生大距时以及邻近几天里一般总能被观测到,只是有时能见到的时间长一点——对应于水星大距达到最大值的时候;有时可见到的时间短一点——对应于水星大距达到最小值的时候。总而言之,水星在大距及前后数天能够被观测到,这正是古代天文学家认识到的水星“应见”的规律。
  但是在日出前东方和日落后西方低空行星是否能被观测到,与该行星距离太阳的距角固然有关,但是真正决定行星能否被观测到的是它当时的地平高度。以下我们用数学模拟的方法对这个问题作一分析。

·水星“应见不见”的数值模拟

  葛荣之乱发生在北魏孝昌二年(526 AD)到武泰元年(528 AD)。张子信因避乱,隐居海岛三十余年,他的许多天文发现就是在这三十左右的时间里完成。现在就来推算这段时间内水星与太阳的运动。
  根据对太阳系天体运行规律的掌握,在一定精度范围内,理论上可以求出有史以来任何时候水星与太阳在地心坐标系中的位置。在此,作者利用了一份精密的太阳、行星位置历表DE404,逐日求出在地心坐标系中水星和太阳的黄经,并计算它们的差;然后再进一步求出,每日太阳处在地平线以下7°时,水星的地平高度。这里显然要区分水星作为晨星和昏星两种情况,并且要涉及观测地点的地理纬度,在计算中我们取观测点在北纬30°。把水星距离太阳的距角和水星的地平高度随节气改变而变化的情况绘作图2和图3。计算范围覆盖526 AD到557 AD共32年,但限于篇幅,取前8年的结果来作说明。
图2 水星为晨星时(526-533AD)离太阳的距角和地平高度
 
图3 水星为昏星时(526-533AD)离太阳的距角和地平高度
  图2、图3中纵坐标单位为度;横坐标单位为节气,0代表春分,1是清明,12是秋分,等等;图2、图3中的虚(曲)线为水星距离太阳的距角随节气改变而变化的情况;图2中的实(曲)线是水星作为晨星时的地平高度随节气改变而变化的情况。图3中的实(曲)线是水星作为昏星时的地平高度随节气改变而变化的情况。
  从图2、图3中不难发现水星距离太阳的距角有时达到正的极大值,有时达到负的极大值,有时为零。达到正的极大值时水星发生东大距,水星为昏星;达到负的极大值时水星发生西大距,水星为晨星;为零时发生上合或下合。在图2、图3的坐标框中,在纵坐标等于+17°和-17°处各画了一条点划线。17°这一角度与上文提到的水星“初见去日度数”大致相等。不难发现,图2、图3中虚线的正负极值是在变化的,有时超出±17°线很多,有时则超出很少。超出很多对应水星大距时有较大的距角;超出很少对应水星大距时距角很小。只要超出这条±17°线,对于中国古代历法判断水星“见”、“伏”的标准来说,水星就是“应见”的,这一结果与上一节用运动学分析得出的结果基本一致。
  图2中的实线是太阳位于东方地平以下7°时,水星地平高度的逐日变化。显然水星有时在地平以上,有时在地平以下,所以实线的取值有正有负。图中虚线达到负的极大值时对应于水星发生西大距,“理论上”这是水星作为晨星最容易被观察到的时刻。留意与这些负的极大值相对应的水星地平高度的变化,不难发现当虚线达到负的极大值时,实线固然也同时达到正的极大值。但是虚线达到负的极大值越大,并不对应于实线达到正的极大值也越大。特别地,如果在春分前后虚线的变化达到负的极大值即水星发生西大距时,并且尽管这次西大距的距角比相邻两次西大距的距角都要大,但水星地平高度达到的极值总比相邻的两个极值小。在图2中纵坐标等于+7°处画了一条点划线[19],以这条线为界,可以发现水星西大距时地平高度值有时超过这条线,有时不到或接近这条线。不到或接近+7°线的有526、527、532、533等年份的毗邻春分的几个节气。而这几年的春分前后水星西大距都达到相当大的数值,都超过25°甚至达到 28°。因此按照“水星初现去日17°”的标准来衡量,526、527、532、533等年份的春分前后水星毫无疑问是“应见”的,但事实上,根据地平高度来判断,这些时候的水星是最不容易被观测到的。因此在春分前后水星“应见不见”。
  同样地,图3中的实线是太阳位于西方地平以下7°时,水星地平高度的逐日变化。虚线的变化达到正的极大值时对应于水星发生东大距。当虚线达到正的极大值时,实线固然也同时达到正的极大值。但是虚线达到正的极大值越大,并不对应于实线达到正的极大值也越大。特别地,如果在秋分前后虚线的变化达到正的极大值即水星发生东大距时,并且尽管这次东大距的距角比相邻东大距的距角要大,但水星地平高度达到的极值总比相邻的极值要小。在图3中纵坐标等于+7°处画了一条点划线,可以发现水星东大距时的地平高度值有时超过这条线,有时不到或接近这条线。不到或接近+7°线的有526、527、528、532、533等年份的毗邻秋分的几个节气。而这几年的秋分前后水星西大距都达到相当大的数值,都接近或超过25°。因此按照“水星初现去日17°”的标准来衡量,526、527、528、532、533等年份的秋分前后水星毫无疑问是“应见”的,但事实上,根据地平高度来判断,这些时候的水星是最不容易被观测到的。因此在秋分前后水星“应见不见”。
  经过以上的数值计算和图示表明,在张子信活动的那个年代,尽管在春分前后水星作为晨星发生西大距、秋分前后水星作为昏星发生东大距,水星也是难以被观测到的。扩大计算年限范围后发现,这一结论不仅仅适用于526年到557年的30余年,而是水星视运动的一条基本规律。因此,结合中国古代历法对水星 “见”、“伏”距角的规定,春分前后水星作为晨星、秋分前后水星作为昏星将会发生“应见不见”。这一陈述是正确的,并且是有实测依据的。

·水星与其他行星的关系

  根据文献记载,在雨水、立夏两个节气里水星作为晨星和立秋、霜降两个节气里水星作为昏星的可见情况,要根据其他四颗行星距离太阳的角度来确定。具体来说,就是在雨水、立夏这两个节气里,如果在日出前的东方天空距离太阳18°外、36°内有木、火、土、金四颗行星中的一颗以上出现的话,那么水星也可以被观察到;在立秋、霜降这两个节气里,如果在日落后的西方天空距离太阳18°外、36°内有木、火、土、金四颗行星中的一颗以上出现的话,那么水星也可以被观察到。
  对于这样的陈述,同样不难用现代天文学方法来检验。作者通过对526年到557年这32年间太阳和五大行星位置的计算,结果发现:
  (1)在这32年的雨水节气里,满足日出前的东方天空距离太阳18°外、36°内有木、火、土、金四颗行星一颗以上出现的条件的只有526、527、 534、539、540、542、550、557这八个年份。计算这八个年份的雨水节里日出前(太阳低于地平7°,下同)水星的地平高度后,我们发现这几次都不合适观察水星。
  (2)在这32年的立夏节气里,满足日出前的东方天空距离太阳18°外、36°内有木、火、土、金四颗行星一颗以上出现的条件的只有526、529、 537、542、544、545、556、557这八个年份。计算结果表明在这八个年份的立夏节也都不是观察水星的合适时机。
  (3)在这32年的立秋节气里,满足日落后的西方天空距离太阳18°外、36°内有木、火、土、金四颗行星一颗以上出现的条件的只有526、534、 537、541、542、550、556这七个年份。计算结果表明在这七个年份的立秋节也都不是观察水星的合适时机。反而是在不满足行星出现条件的549 年立秋节里,相对来说是比较理想的观察水星的机会。
  (4)在这32年的霜降节气里,满足日落后的西方天空距离太阳18°外、36°内有木、火、土、金四颗行星中的一颗以上出现的条件的只有529、536、537、543、544、545这六个年份。计算结果表明在这六个年份的霜降节也都不是观察水星的合适时机。
  为了验证水星的这种“同类感召,相随而出”的视运动特性有没有可能是张胄玄的实测结果,我们把计算范围从张子信时代延伸到开皇末年(公元600年)。计算结果表明,即使在雨水、立夏节气里水星达到西大距;在立秋、霜降节气里水星达到东大距,水星的地平高度也总是很低的(在太阳低于地平7°的宽松条件下),这是因为对应时刻黄道相对于地平比较倾斜,而这一特点与年代无关。
  特别地,计算表明,在立夏节气里水星作为晨星和霜降节气里水星作为昏星,它的地平高度最高不超过5.5度,所以无论其他四大行星与太阳的位置关系如何,水星也总是难于被观测到。所以对立夏和霜降这两个节气,我们甚至不必计算其他行星跟太阳的位置关系,就可以断定,水星可见与否与其他行星跟太阳的相对位置关系无关。
  对于在立秋节气里水星为昏星的情况,我们另外算得在558年到600年的43年间有566、567、568、569、573、574、581、 582、586、588、590、593、596共13个年份,满足日落后的西方天空距离太阳18°外、36°内有木、火、土、金四颗行星中的一颗以上出现的条件。其中只有568、569、574、581、582、588这六个年份的立秋节气里,水星的地平高度能达到5.0°以上,但都小于7.5°。在这样的地平高度上,水星很难被观察到。
  对于在雨水节气里水星为晨星情况,我们另外算得在558年到600年的43年间有562、566、572、574、579、580、582、586、 589、590、593共11个年份,满足日出前的东方天空距离太阳18°外、36°内有木、火、土、金四颗行星中的一颗以上出现的条件。其中只有 562、566、574、580、586、593六个年份的雨水节气里,水星的地平高度能达到5.0°以上,但都在10°以下。又其中574年2月17日水星地平高度高达9.8°、580年2月26日水星地平高度达8.9°、593年3月3日水星地平高度达8.5°。在这三个年份的雨水节气里,水星作为晨星似乎可以勉强可见。但是在并不满足日出前的东方天空距离太阳18°外、36°内有木、火、土、金四颗行星中的一颗以上出现条件的561年、581年和 600年这三个年份的雨水节气里,水星的地平高度也都达到9°以上。
  可见,在某个特定节气里要满足“晨夕去日前后三十六度内,十八度外,有木、火、土、金一星”出现的条件是不容易的,而在满足这一条件下使水星能够被观察到的可能性更小。根据作者的计算,在张子信进行天文观测活动的三十多年里,在满足“启蛰(雨水)、立夏、立秋、霜降四气之内,晨夕去日前后三十六度内,十八度外,有木、火、土、金一星”的情况下,水星并不能被观察到。也就是说张子信的这一部分关于水星运动的陈述不是在实际观测的基础上得出的。在所指定的节气里,在不满足行星出现的情况下,有时反而能观测到水星,因此所谓“无者不见”的说法也是不正确的。
  以上的计算和分析表明,水星在雨水、立夏、立秋、霜降四个节气里能否被观察到,与其他四颗行星距离太阳距角的大小无关。这一判断也同样适用于张胄玄可能作观察的年代。

·结论和讨论

  上述对水星运动的运动学分析和数值模拟结果表明,张子信所陈述的水星在春分前后作为晨星和在秋分前后作为昏星会发生“应见不见”现象,在理论上确实成立。仔细、熟练的观测者在良好的观测条件下有可能发现这一现象。但是水星在“启蛰(雨水)、立夏、立秋、霜降四气之内,晨夕去日前后三十六度内,十八度外,有木、火、土、金一星者见,无者不见”的陈述没有实测根据。
  这种以其他行星与太阳的位置关系来判断水星的“见”、“伏”,是张子信关于水星“应见不见”陈述中最不合理的一部分,但正是这一点却向我们提供了某种线索,来探讨张子信神秘发现的原因。在《大衍历·五星议》中,一行在陈述了“天竺历以九执之情,皆有所好恶。遇其所好之星,则趣之行疾,捨之行迟。”之后,紧接着就陈述了张子信的上面这一发现。显然一行认为张子信悟到的“五星见伏,有感召向背”与印度历法中的“九执之情,皆有所好恶”是同一回事。“晨夕去日前后三十六度内,十八度外,有木、火、土、金一星”出现时,为什么水星就能被看见呢?原因就是该行星的出现对水星有“感召”之力,使得水星“趣之行疾,捨之行迟”,因而尽量停留在“去日前后三十六度内,十八度外”的地方,因此也就容易被观测察到了。
  日、月、行星等天体有性情好恶,从而影响他们的运动。这样的说法在张子信以前的中国古代历法中从未出现。而正如一行指出的,在印度天文学中却一直有这样的传统。《大衍历》“交食术”载天竺僧俱摩罗所传断日蚀法云:“诸断不得其蚀,据日所在之宫,有火星在前三后一之宫并伏日下,并不蚀。若五星总出,并水见,又水在阴历,及三星以上同聚一宿,亦不蚀。” 这里将是否发生日食与行星的位置关系联系起来,显然没有实测依据,但这种说法与张子信的陈述如出一辙。处于不同文化的人们在对同一事物的认识过程中,各自独立地发现相同的真理是可能的,因为真理只有一个,但犯同样错误,尤其是犯很有特点、相当系统和复杂的错误,其可能性很小。
  五星和二十八宿各有星神,其星神性情各异,特别是五星星神与四方列宿星神的不同组合,具有不同的星占学含义──这些内容在汉译佛经中非常常见。张子信将五星和二十八宿拟人化的做法与印度天文星占学中性情各异的五星、二十八宿星神非常相似。西天竺婆罗门僧人撰集的《七曜禳灾诀》(No.1308)虽然晚出,但其中用“应见不见”注水星历表的做法很可能是一种印度编制行星历表的传统。
  因此,说张子信在某海岛隐居的时候接触到某些印度天文学内容,并把它们容纳到他的中国传统天文学知识里去,这种可能性是存在的。特别是水星 “应见不见”现象,张子信虽然正确地指出了这一现象,但某些具体的描述却与观测事实不符合。这反过来也说明张子信的发现并不都是建立在观测基础上的。这预示着张子信的天文学知识结构中包含着某些来自域外天文学体系的间接知识。
  至于张子信具体怎样接触了印度天文历法,由于史籍所载张子信事迹甚少,因此还无法作出明确的解释,然而以下几点有利于作出上述推测。
  首先,佛教在北魏时的黄河流域已广为传播,深入人心。张子信与随佛教传来的印度天文历法接触是有可能的。
  其次,据《北史·艺术上》载,张子信“少以医术知名。又善《易》筮及风角之术”。佛教常以高明的医术治病救人,以为弘教的手段。医术和天文星占之术往往是宗教传播的两大法宝,张子信很可能从当时来华的印度僧人那里接触高明的印度医术和天文学知识。
  第三,《隋书·律历志中》载“广平人刘孝孙、张孟宾二人,同知历事。孟宾受业于张子信,并弃旧事,更制新法”,后来刘焯“增损孝孙历法,更名《七曜新历》”。史籍特别强调张子信所传历法之新,可见他与旧法之不同。从“并弃旧事”一语来看,张子信历法对旧法的继承也很少。
  第四,《魏书·律历志上》载北魏《正光历》为“九家共修”,其中有一家是雍州沙门统道融,这可能是佛门弟子参与国家历法制定的先例,其中另两家附马都尉卢道虔、钜鹿人张僧豫的名字中包含有浓郁的佛教气息,这虽然不说明他们一定接触了印度天文历法,但至少可以证明当时佛教普及,佛教学者也参与国家的编历。一部历法有九家共修,其中几家并没有官方身份,说明历算之学在民间有流传。这种情况首先可能是战乱的结果,中央政府失去对天文学的垄断,其次有可能是随佛教而来的印度天文历法已在民间流行。
  最后,无须讳言,类似于对水星“应见不见”现象的描述在古代巴比仑和古代希腊天文学中早就出现。然而不管张子信是受了域外天文学的影响而得到启发,还是经过观测独立发现的水星“应见不见”现象,他的这一发现连同其他有关行星运动不均匀性的发现,在中国古代历法史上是具有相当重要的地位。正如前文指出的那样,所谓“应见”是相对于某条业已存在的规律而言的。对水星“应见不见”的描述,意味着对水星运动规律已经有了很好的掌握,甚至应该有了一种在观测事实基础上总结出来的水星运动模型,其中包括了对水星视运动规律的比较精确的定量描述。遗憾的是我们现在见到的有关张子信天文发现的记述都是后人转载,而且太过简略,因而无法全面认识张子信的天文发现。但仅就所见而言,张子信及后世历法家描述的水星运动不单单是简单的定性描述,而是建立在比较精确的观测事实和水星运动定量模型基础上的,除了一小部分来历可疑的错误认识外,总体上并无自相矛盾之处。