唐虞夏商天象考

赵永恒

(中国科学院国家天文台,北京 100012

 

[摘要] 本文根据古代文献记载的尧舜禹、夏商之际和商周之际的五星会聚、日食和历日等天象,利用现代天文学的方法来推算这些天象的年代,从而可以对尧舜禹和夏商的年代进行一定的限制。

 

关键词:尧舜禹;夏商;五帝;天象;天文年代学。

 

尧舜禹是我国古代传说的帝王,是通过禅让来交接政权的。古文献记载尧属陶唐氏,舜属有虞氏。夏商周断代工程的研究成果[1]给出夏朝始于公元前2070年,商朝始于公元前1600年,周朝始于公元前1046年。在古文献中,记载了许多有关尧舜禹、以及夏商之间和商周之间的天象,本文对这些天象进行梳理,并利用现代天文学的方法来确定这些天象的年代,从而对这些帝王的年代做出一定的限制。

本文的天象回推计算主要由瑞士的Dieter KochAlois Treindl两人开发的瑞士星历表Swiss Ephemeris)软件(http://www.astro.com/swisseph/)进行。该软件是在美国NASA的喷气推进实验室(Jet Propulsion Laboratory, JPL)发布的精度最高的DE406行星历表和月亮表的基础上拓展而来的,它将DE406从公元前3000年至公元3000年的时间跨度拓展到公元前 5400年至公元5400年,并保证了0.001角秒的位置精度。因此该软件的时间跨度和位置精度完全适用于所在历史年代的判断。

 

一、五星会聚

通过计算太阳与水星、金星、火星、木星、土星的黄经,定义五星会聚的条件为五大行星会聚在黄道上黄经60度的范围内,并在太阳的同一侧;各行星到太阳的距离大到足够使它能被肉眼观测到[2]

1、商五星聚房

今本《竹书纪年》帝辛三十二年,五星聚于房。孟春六月,五纬聚房。《春秋元命苞》:之时,五星聚于房。

班大为认为这是公元前1059528日(甲子日)发生在鬼宿的五星聚合[3]。我们同意此结论(图1),同时可以指出:那段时间里黄昏时西方天空有五星聚时,房宿正好升上东方天空,特别是公元前105961日阴历十三的月亮恰在房宿和心宿附近(图2),在后世的传说中就将这次五星聚与房宿联系起来了。

1 公元前1059528日黄昏时所看到的天象,显示了日月五星和部分星宿在天空中的位置。横坐标表示地平坐标的方位角,90度为正东方,180度为正南方,270度为正西方;纵坐标表示地平坐标的高度角,0度表示地平线,正数为地平线以上,负数为地平线以下。日月五星的赤道坐标来自于Swiss ephemeris软件包,恒星数据来自欧洲空间局的Hipparcos星表[4],并进行了恒星自行的改正,岁差改正是依据P03模型[5]而得到的。(下同)

2 公元前105961日黄昏时所看到的天象。

 

2、夏桀时五星错行

今本《竹书纪年》记载:十年,五星错行,夜中星如雨。《帝王世纪》称:淫乱,灾异并见,两日斗射,摄提移处,五星错行,伊洛竭,彗星出,鬼哭于国,汤伐之。《路史》注称:《日月五星图》云,末年,两日并斗,五星交错,枉流,火神见。

班大为认为这是公元前15761226日发生的五星聚合[3]。但这并不是五星错行,而且与夏商分界年代公元前1600年相距过远。

从公元前1576年往前推,在公元前1600年左右有两次五星错行。一次是在公元前15981230日前后,黄昏时在西方天空可看到五星错行。在五大行星中,离太阳近的水星和木星相错而行,离太阳远的火星和土星相错而行,中间的是金星(图3)。另一次是在公元前16121126日前后,清晨时发生东方天空(图4),但五星错行不如公元前1598年那次显著。

因此,可定夏桀时五星错行的时间为公元前15981230日。

3 公元前15981230日黄昏时所看到的天象,其中水星和火星分别越过木星和土星而向左上方运动。

 

4 公元前16121126日清晨时所看到的天象,其中水星越过木星而向下方运动。

 

3、夏禹时五星连珠

《孝经钩命诀》记载:禹时五星累累若贯珠,炳炳若连壁。许多学者对此进行了推算[6],主要认定为1953226的五星聚。但实际上,五星累累若贯珠是说五星好像一串珠子似的,而不是聚合在一个小区域。

在公元前2100-2040年间,只有一次五星连珠,即在公元前2049117日前后的清晨,可在东方天空看到五星成一串而排列,即五星连珠(图5)。同时,公元前2049117日又是朔日,故可视为日月合璧。此后直到公元前2000年,则是在公元前203275日清晨(朔日)、公元前2031421日黄昏、公元前2029622日黄昏和公元前20121223日黄昏可看到五星连珠。

我们定禹时五星连珠为距夏始年最近的公元前2049117日。

5 公元前2049117日清晨时所看到的天象。

 

4、尧时五星连珠

今本《竹书纪年》和《宋书·符瑞志》均记载尧时日月如合璧,五星如连珠。日月合璧实际是指朔日。这样在公元前2100-2200年间,共有四次朔日时的五星连珠,分别发生在公元前2114612日黄昏、公元前2152214日黄昏、公元前2170829日黄昏、公元前2190316日清晨(图6)。

结合后文关于尧之年代的推算,文献记载的尧时五星连珠最有可能是在公元前2114612日黄昏。

 

 

 

 

6 五星连珠的天象,分别为公元前2114613日黄昏(左上)公元前2152214日黄昏(右上)、公元前2170829日黄昏(左下)、公元前2190316日清晨(右下)

 

二、日食

1、夏仲康日食

《书经》、《左传》、《史记》和今本《竹书纪年》所载的仲康日食,一直是众多学者研究的一个难题[7]

对于发生在仲康五年的日食,夏商周断代工程给出四种可能方案:公元前2043103日、公元前2019126日、公元前1970115日和公元前19611026[1]。考虑到《尚书·胤征》记载的季秋月朔,辰弗集于房、以及与夏始年的相距年代问题,可确定仲康日食发生在1970115

2、舜禹时三苗日食

《墨子·非攻下》在论及舜命禹征三苗时有昔者三苗大乱,天命殛之。日妖宵出,雨血三朝,龙生于庙,犬哭乎市,夏冰,地坼及泉,五谷变化,民乃大振。高阳乃命玄宫,禹亲把天之瑞令,以征有苗。古本《竹书纪年》将日妖宵出记为日夜出,昼日不出

有学者认为所谓日妖宵出可能是一次天再昏天再旦的日食现象,并做了研究。刘次沅认为公元前2072429日在三苗地区(中心在长江中游的江汉地区)发生的天再昏最有可能[7]

出土文献定州西汉中山怀王墓汉简《六韬》[8]中描述征三苗的有:

第十三,舜伐有苗武

“□曰:吾闻有苗雨血沾朝衣,是非有苗

有苗三日不见日,是非有苗之耶?对

有苗月蚀日断,三日不解,是非□”

乎?对曰:未有日月断蚀,有始

“□曰:然则有苗何以亡?对曰:有

有苗是谓所

蠡之水建土险也。

从中可看出在征三苗的时期,三苗地区发生了很多日月食。现将公元前2072年前后的日月食列于下表[9][10](日食的时刻与食分以湖北武汉计,月食的时刻与食分以北京计):

 

公元前

日食(时刻,食分)

月食(时刻,食分)

2075

630日环食(19:050.90

天再昏

616月偏食(5:320.29

1210月全食(1:391.09

2074

 

65月偏食(19:580.14

2073

113日环食(9:040.60

525月偏食(5:320.65

1117月偏食(21:490.14

2072

429日全食(18:101.03

天再昏

1023日环食(7:550.40

 

2071

419日全食(7:370.97

43月偏食(18:590.77

 

从表中可看出,以公元前2072429日的日全食作为造成天再昏现象是合适的。在公元前2073年至前2071年的三年间,除天再昏外,三苗地区还见到三次日偏食和三次月偏食。这种频繁的日月食必然造成三苗族的恐慌,苗师大乱(《墨子》),禹征三苗时班师振旅舞干羽于两阶,通过炫耀武力和诞敷文德(《尚书》),行德三年,而三苗服(《吕氏春秋》)。

3、商纣时天大曀

古本《竹书纪年》记载:帝受辛时,天大曀。刘次沅等人为天大曀很可能是食分很大的日食所造成的,并对周昭王时的天大曀做了推算[7][11]。这样,可以认为商纣时的天大曀也是一次食分很大的日食所造成的。

在商纣王时期,即公元前1075至前1046年间[1],在殷墟(河南安阳)所见食分大于0.8的日食有公元前10671013日(食分0.90)和1055831(食分0.82)日环食。相比较而言,公元前10671013日的日环食发生于日出时,不甚引人注意;而公元前1055831日的日环食发生于中午时分,则天大曀的效果会十分明显。

 

三、历日

1、周武王朔日

《新唐书·历志》录《大衍历议·日度议》曰:

故《周书》曰:维王元祀二月丙辰朔,武王访于周公。《竹书》:十一年庚寅,周始伐商。

从公元前1046年往前推,二月孟春丙辰朔(不超过两天)的年代是:公元前1049330日戊午朔和公元前1059321日丙辰朔。

古本《竹书纪年》记载的武王十一年庚寅,如果庚寅是纪年的,则庚寅年为公元前1051年,或是公元前1111年和991年,这显然是有问题的,因此庚寅应该是纪日的。而古本《竹书纪年》特别提到庚寅日,该日应该可以作为历元,即庚寅日既是朔日、也是冬至日。如此,从公元前1046年至前1100年,庚寅日是朔和冬至(不超过两日)的年代只有一个:公元前104912日庚寅朔,前10501231日戊子冬至。

综合两者来看,公元前1050文王崩,该年冬至是庚寅日朔;次年,即公元前1049年,武王即位。这与班大为的研究结果[3]是一致的。

       2、鸣条之战

       《吕氏春秋》称:“商凅旱,汤尤发师以信伊尹之盟。”又称:“殷汤良车七十乘,必死六千人,以戊子战于郕,遂禽移大牺,登自鸣条,乃入巢门,遂有夏。”《帝王世纪》《列女传》称:“汤来伐桀,以乙卯日战于鸣条之野。桀未战而败迹,乃与妹喜及诸嬖妾同舟浮海,奔于南巢之山而死。”《尚书序》称:“汤即黜夏命,复归于亳,做汤诰。”《史记·索隐》曰:“孤竹君,殷汤三月丙寅所封。”说明汤伐桀时戊子日战于郕,乙卯日战于鸣条、放桀,之后返回亳,三月作《汤诰》,三月丙寅日封孤竹君。

公元前15981230日夏桀时“五星错行”以后,以夏历“建寅”计,公元前1595416日为戊子日,513为乙丑日,524为三月丙寅日。故商汤灭夏在公元前1595年。

3、成汤十三年

《世经》引《殷历》曰:当成汤方即世用事十三年,十一月甲子朔旦冬至。从夏桀时发生五星错行的年代公元前1598年向后推,则十一月甲子日是朔旦冬至(不超过两日)的年代是:公元前159214日壬戌朔,13辛酉冬至。则成汤十三年是公元前1593年,而成汤元年为公元前1605年。

4、太甲元年

《尚书·伊训》曰:惟太甲元年十有二月乙丑朔。从成汤十三年向后推,十二月乙丑朔(不超过两日)的年代是:公元前158728日癸亥朔。则太甲元年是公元前1588年。

5、尧元年丙子

古本《竹书纪年》记载尧元年丙子。如果丙子是纪年的,则在夏朝以前,丙子年为公元前2085年、2145年和2205年。

但是,很多学者并不认为丙子是纪年的。那么,丙子就是纪日的,问题它是什么日子。由于尧时的历法是建子的,很可能尧的历法之元是丙子,即丙子既是尧元年的朔、也是冬至之日。

       从公元前2270年至前2070年两百年间,丙子日是朔和冬至(不超过两日)的年代有:

       公元前2230年:18丙子朔,18丙子冬至;

       公元前2173年:18乙亥朔,17甲戌冬至;

       公元前2127年:19戊寅朔,17丙子冬至;

       公元前2116年:18乙亥朔,16癸酉冬至。

在这四个年代中,公元前2230年似失之过早,公元前2116年似过晚,公元前2173年或前2127年作为尧元年是比较合适的。

       6、尧获《河图》

       今本《竹书纪年》和《宋书·符瑞志》均记载,尧二月辛丑获《河图》、后二年二月仲辛,率群臣东沉璧于洛,后遂让舜

       由于尧时的历法是建子的,在公元前2127年至2070年间,二月朔为辛丑(不超过两日)的年代是:一是公元前210525庚子朔,后二年二月仲辛为公元前2103225;二是公元前2095214壬寅朔,后二年二月仲辛为公元前2093223

7、舜即位

《帝王世纪》曰:“舜摄政二十八年而尧崩。三年丧毕。舜年八十一,以仲冬甲子、月次于毕,始即真。”舜即位于仲冬(含冬至的月)甲子日,其时月亮位于毕宿。在公元前2100年至2050年间,经计算有三个年代:公元前20931222日、公元前207722日和公元前206119日。

 

       四、唐虞夏商之可能年代

    根据上述有关天象的年代计算,可以给出唐虞夏商的可能年代如下:

       1、商周之际

       公元前1059年,528前后发生五星聚于房,被认为周受命于天

公元前1058年,文王受命之年

公元前1055年,831发生日环食,史载商纣时天大曀

公元前1050年,文王受命九年,文王崩;该年朔冬至为庚寅日(公元前104912日)。

公元前1049年,武王即位,该年二月丙辰朔(328),十一月周始伐商师渡孟津而还

公元前1047年,年末,武王伐纣。

公元前1046年,120甲子日周克商。

2、夏商之际

公元前1605年,汤始居亳,为成汤元年。

公元前1598年,1230日前后发生五星会聚现象,史载夏桀时五星错行

公元前1595年,513发生“鸣条之战”,成汤灭夏。

公元前1593年,成汤十三年,朔冬至为甲子日(公元前159216日)。

公元前1592年,成汤崩,外丙立,二年(《孟子》)。

公元前1591年,仲壬立,四年(《孟子》)。

公元前1588年,太甲立,十二月乙丑朔(公元前1587210日)。

3、夏朝前期

公元前1974年,仲康立。

公元前1970年,仲康五年,115发生日食,史称仲康日食

4、尧舜禹时期

古代文献中关于尧舜禹年代的记载散乱而不清,但历史大事的基本次序是清晰的。依据前面对该时期天象的考察,可以给出如下的年代限制:

1)尧元年为公元前2230年、2173年、2127年或2116年;

2)尧时“五星连珠”为公元前2190年、2170年、2152年或2114年;

3)尧获《河图》为公元前2105年或2095年,其后二年尧沉壁“荐舜于天”;

4)舜即位于公元前2093年、2077年或2061年;

5)禹征三苗为公元前2072年前后;

6)禹时“五星连珠”为公元前2049年或2032年;

7)禹卜阳城为约公元前2042[12]

 

 

 

参考文献

[1] 夏商周断代工程专家组. 夏商周断代工程19962000阶段成果报告(简本)[M]. 北京:世界图书出版公司,2000

[2] 江晓原,纽卫星. 回天——武王伐纣与天文历史年代学. 上海:上海人民出版社[M]2000

[3]班大为. 中国上古史实揭秘[M]. 上海:上海古籍出版社,2008

[4] Perryman, M.A.C. et al. Astronomy and Astrophysics[J].1997, 323: L49

[5] Capitaine, N. et al. Astronomy and Astrophysics[J].2003, 412: 567-586

[6]徐振韬、蒋窈窕. 五星聚合与夏商周年代研究[M]. 北京:世界图书出版公司,2006

[7]刘次沅. 中国早期日食记录研究进展[J]. 天文学进展,200321(1)1-10

[8]张守中. 定州西汉中山怀王墓竹简《六韬》释文及校注[J]. 文物, 2001(5): 79-85

 [9]刘次沅、马莉萍. 中国历史日食典[M],北京:世界图书出版公司,2005

[10]李广宇等. 夏商周时期的天象和月相[M],北京:世界图书出版公司,2007

[11]刘次沅. 从天再旦到武王伐纣[M],北京:世界图书出版公司,2006

[12]赵永恒.《周髀算经》与阳城[J].中国科技史杂志, 2009(1): 102-109.

 

Celestial Phenomena of Yao, Shun and Yu Emperors and Xia, Shang Dynasties

 

According to historical records about celestial phenomena of conjunctions of five planets, solar eclipses and calendar dates, we calculated the chronology of those phenomena by using of the newest astronomical ephemeris and star catalog.

 

Keywords: Five Emperors; chronology; astrochronology

 

(发表于《重庆文理学院学报(社会科学版)2011年第02期)