出品:科普中國(guó)
作者:柯棋瀚(中國(guó)科學(xué)院自然科學(xué)史研究所)
監(jiān)制:中國(guó)科普博覽
今天是冬至,北半球一年中白晝最短的日子。大早醒來(lái)看到這篇文章的你,也許還沒(méi)能看到太陽(yáng)從窗外升起。
熟悉天文學(xué)的讀者可能知道,現(xiàn)代天文學(xué)是以春分作為一年的開(kāi)始,兩次春分之間的間隔就是一個(gè)回歸年。
但在中國(guó)歷法中,卻將冬至作為一歲之始,一歲的長(zhǎng)度(歲實(shí))是兩次冬至之間的間隔。在中國(guó)人的觀念中,冬至的時(shí)候寒冷到達(dá)了極點(diǎn),陰氣盛極而衰,陽(yáng)氣開(kāi)始生發(fā),因此是生命的起點(diǎn),于是把冬至作為一個(gè)太陽(yáng)年的起始,這是中國(guó)天文學(xué)的獨(dú)特之處。
今天,我們有各種各樣的電子日歷提醒我們各種節(jié)氣的到來(lái),但在古代,人們是怎么判定冬至的到來(lái)呢?
立桿為影
在冬至附近的一段時(shí)間,歷家(即研究、制定歷法的人)會(huì)用“圭(guī)表”測(cè)量正午影子的長(zhǎng)度,以此確定冬至的確切時(shí)刻。立起來(lái)的桿稱作“表”,表高為八尺(約1.8米),地面上測(cè)量影子長(zhǎng)度的大尺子叫做“圭”(又叫量天尺),圭表朝向正北,每日正午的時(shí)候,太陽(yáng)在正南,就可以測(cè)得一天中最短的影子。有了冬至附近數(shù)日的正午影長(zhǎng)數(shù)據(jù),便能算出冬至的確切時(shí)刻了。
圭表測(cè)量示意圖
(圖片來(lái)源:《中國(guó)古代天體測(cè)量學(xué)及天文儀器》圖11-3)
冬至測(cè)影在中國(guó)有著非常悠久的歷史。在中國(guó)古代天文學(xué)中,圭表測(cè)影最主要的作用是推定冬至?xí)r刻,因此觀測(cè)精度就非常重要。
位于北京古觀象臺(tái)后院的圭表模型
(圖片來(lái)源:北京古觀象臺(tái)官網(wǎng))
而在古希臘天文學(xué)中,測(cè)影則主要是為了論證宇宙模型,因此古希臘人并不需要過(guò)分追求精度。這樣的思路也影響到中世紀(jì),圭表測(cè)影技術(shù)在歐洲一直沒(méi)有得到很好的發(fā)展,這也使得歐洲在很長(zhǎng)一段時(shí)間里都將一年的長(zhǎng)度定為365.25天。
在阿拉伯世界,對(duì)太陽(yáng)的觀測(cè)主要靠日晷而非圭表,原因在于穆斯林每天需要做五次禱告,這就要求要有準(zhǔn)確的時(shí)間。
實(shí)際上,如果從天文觀測(cè)的角度來(lái)說(shuō),太陽(yáng)直射點(diǎn)在冬至附近移動(dòng)緩慢,好幾天內(nèi)可能都難以觀察到日影長(zhǎng)度的變化,而在春分秋分點(diǎn)附近移動(dòng)最快,很容易就能觀察到日影變化,選用春分來(lái)測(cè)量晷影、考算歲實(shí)是更好的選擇。但很多事情并不是單一因素可以決定的,中國(guó)人對(duì)天道的認(rèn)知在此時(shí)勝過(guò)了出于天文觀測(cè)的考量。
冬至的具體時(shí)刻如何計(jì)算?
在測(cè)得冬至附近幾個(gè)正午影長(zhǎng)的數(shù)據(jù)之后,應(yīng)該怎樣計(jì)算冬至的具體時(shí)間呢?換句話說(shuō),怎樣通過(guò)計(jì)算得知一年中影長(zhǎng)最長(zhǎng)的時(shí)刻呢?
《宋書(shū)·律歷志》留下了一段祖沖之計(jì)算冬至?xí)r刻的方法,翻譯成現(xiàn)代語(yǔ)言,參照示意圖,就是:
大明五年十月十日(公元461年11月27日)(A),測(cè)量得到影長(zhǎng)a=10.7750尺(約2.5米);
十一月二十五日(公元462年1月11日)(B),影長(zhǎng)b=10.8175尺;
十一月二十六日(C),影長(zhǎng)c=10.7508尺。
祖沖之假設(shè)影長(zhǎng)以冬至為中心對(duì)稱,影長(zhǎng)的變化是一條直線(當(dāng)然,實(shí)際情況是類(lèi)似拋物線的曲線,且并不以冬至為中心對(duì)稱)。
a和b、c很接近,所以冬至日期在十月十日和十一月二十五、二十六日的中點(diǎn),該年十月有30天,所以十月十日到十一月二十五日有45日,所以冬至在十一月三日。那么具體時(shí)刻是什么呢?
祖沖之這樣算:“令后二日影相減,則一日差率也。倍之為法,前二日減,以百刻乘之為實(shí),以法除實(shí),得冬至加時(shí)在夜半后三十一刻?!奔?b-a)/[(b-c)*2]=(10.8175-10.7750)/[(10.8175-10.7508)*2]≈0.3186,也就是三日零點(diǎn)加上0.3186日,1日=100刻,得到冬至在十一月三日31刻。
祖沖之測(cè)算冬至?xí)r刻法示意圖
(圖片來(lái)源:作者據(jù)《中國(guó)科學(xué)技術(shù)史(天文學(xué)卷)》圖4-13重制)
祖沖之并沒(méi)有解釋為什么要這樣算,我們可以按下面這樣理解。設(shè)A為十月十日正午,B為十一月二十五日正午,C為十一月二十六日正午,a、b、c分別為這三日的正午影長(zhǎng)。則必可在B、C之間找到影長(zhǎng)也等于a的F點(diǎn)。祖沖之假設(shè)影長(zhǎng)以冬至點(diǎn)為中心對(duì)稱,作均勻線性變化。則BC之間影長(zhǎng)每日變化b-c尺,每刻變化(b-c)/100尺。所以BF=(b-a)/(b-c)日=(b-a)/(b-c)×100刻。
又設(shè)D為AB的中點(diǎn)(即AD=DB),則D為十一月三日夜半。設(shè)E為AF中點(diǎn),即E為冬至?xí)r刻,在十一月三日的某一刻。
由圖可見(jiàn),DE+EF=DB+BF,已知AD=DB,AE=EF,則DE+AE=AD+BF,因此BF=DE+(AE-AD)=2DE,所以DE=1/2BF=(b-a)/[(b-c)×2]。
**這就是中國(guó)古代推算冬至?xí)r刻的算法。**我們只要找出三個(gè)點(diǎn)A、B、C,其中A在冬至前,B、C是冬至后相鄰的兩天,且A的數(shù)值在B、C之間,那么冬至的日期就在AB中點(diǎn)的那天,具體時(shí)刻就是(B-A)/(B-C)/2。如果連續(xù)測(cè)量幾年的冬至?xí)r刻,取平均值,就能算出一個(gè)回歸年的長(zhǎng)度。
分毫畢現(xiàn)
從祖沖之以來(lái),冬至測(cè)影的算法至少就一直沒(méi)變過(guò),那么冬至?xí)r刻觀測(cè)精度的提高是怎么實(shí)現(xiàn)的呢?
靠的是觀測(cè)儀器的改進(jìn)。
測(cè)影的表自古以來(lái)都是八尺高,到了元代,郭守敬將表加高到四丈(1丈=10尺,合9.81米),在大都、上都、陽(yáng)城等全國(guó)五處地方都設(shè)立了高表,可惜留存至今的僅有位于陽(yáng)城(今登封告成鎮(zhèn))的一處。陽(yáng)城高表直接用磚石修造的觀星臺(tái)來(lái)代替銅表,這樣做的好處是節(jié)省費(fèi)用,省時(shí)省工。
臺(tái)頂架了一條橫梁,橫梁和下方的直壁留有一些空隙。圭則直接躺在地上,由水槽來(lái)保證水平。正午陽(yáng)光穿過(guò)橫梁,在圭上投下一道陰影,這就是影子的長(zhǎng)度。影子相較以前的測(cè)量方法更長(zhǎng),因此測(cè)量就會(huì)更加精確。
位于登封告成鎮(zhèn)的郭守敬觀星臺(tái)
(圖片來(lái)源:大河網(wǎng))
有一個(gè)小細(xì)節(jié)值得注意。新表的長(zhǎng)度(四丈)是舊表的五倍(八尺)。為什么設(shè)計(jì)成五倍,而不是四倍或者六倍呢?
在中國(guó)古代,最小長(zhǎng)度單位是毫,約等于現(xiàn)在的0.024毫米;那么五毫就相當(dāng)于0.12毫米(0.024*5=0.12mm)。
郭守敬希望“毫厘差異分別”,也就是影長(zhǎng)要能夠精確到一毫(0.024毫米),但是肉眼能夠識(shí)別的最小長(zhǎng)度大約是0.1毫米,在傳統(tǒng)的八尺表下無(wú)法實(shí)現(xiàn)這樣的讀數(shù)。若將圭表放大五倍,就能讀取最小五毫(1.2毫米)的數(shù)據(jù),折算成八尺表,就是一毫。這是郭守敬選擇四丈高表的原因。
但是還有一個(gè)問(wèn)題是,當(dāng)表的長(zhǎng)度增加之后,影子就會(huì)變得模糊。我們?cè)谏钪幸材芨惺艿玫?,太?yáng)底下,自己的影子邊緣似乎很柔和,一點(diǎn)也不分明。
為解決這個(gè)問(wèn)題,郭守敬發(fā)明了“影符”,實(shí)際上就是一個(gè)傾斜著的有一個(gè)小孔的銅板。
將影符放在量天尺上影端虛影處,使得太陽(yáng)、橫梁、小孔呈一條直線,光線透過(guò)小孔,在量天尺上投一下個(gè)小光斑,橫梁的陰影在光斑上顯現(xiàn)出一道米粒大小的陰影,邊角分明,微調(diào)影符位置,使得陰影正好處在光斑的中間,這樣就可以讀到準(zhǔn)確的數(shù)據(jù)。這正是利用的小孔成像原理。
復(fù)原銅制影符
(圖片來(lái)源:肖堯《登封四丈高表與圭表測(cè)影》)
通過(guò)這兩項(xiàng)改進(jìn),再加上連續(xù)數(shù)年的不懈觀測(cè),以及古代的觀測(cè)記錄,郭守敬測(cè)量出了自古以來(lái)最準(zhǔn)確的回歸年數(shù)值:365.2425日,與當(dāng)時(shí)的精確數(shù)值365.2422日相比,誤差只有26s。巧合的是,我們現(xiàn)在使用的格里高利歷一年的長(zhǎng)度也是365.2425日。
貫通古今的理想
冬至測(cè)影在中國(guó)有著非常悠久的歷史。傳說(shuō)冬至測(cè)影從三千年前的周公就開(kāi)始了,但真正的起點(diǎn)應(yīng)該更早,部落時(shí)代的人們可能就已經(jīng)會(huì)測(cè)量日影了。而留存至今最早的有明確數(shù)據(jù)的記載,是上文祖沖之的觀測(cè)結(jié)果。
此后,歷代歷家測(cè)量了六組數(shù)據(jù),得出六個(gè)可靠的冬至?xí)r刻。在祖沖之測(cè)量冬至日的817年之后,郭守敬也接過(guò)了接力棒,進(jìn)行了自古以來(lái)最準(zhǔn)確的測(cè)量。
郭守敬在《授時(shí)歷議》中說(shuō),將這六組數(shù)據(jù),取相距日數(shù),用相距年數(shù)來(lái)除,就能得到相應(yīng)那段時(shí)間的回歸年長(zhǎng)度,用祖沖之測(cè)影(公元461年)到他自己測(cè)影(公元1278年)的日數(shù)除以年數(shù),得到每年長(zhǎng)度為365.2425日。
他具體是怎么算的呢?郭守敬也沒(méi)有給出解釋,我們可以自己來(lái)算算。
上文已知,祖沖之推算出的461年冬至是十一月三日3186分,郭守敬測(cè)算出來(lái)的1278年冬至是十一月二十九日未初三刻,換算成萬(wàn)分制就是5750分,兩次測(cè)影相隔298403日、817年。用日數(shù)除以年數(shù),(298403.5750-0.3186)/817=365.242664,和郭守敬說(shuō)的365.2425略有差距,這說(shuō)明他應(yīng)該還考慮了其他多方面因素。
數(shù)百年測(cè)量的價(jià)值還在于極小的誤差。在計(jì)算回歸年長(zhǎng)度時(shí),即使我們把具體時(shí)刻都去掉,只保留整數(shù)日,298403/817=354.242350,這比365.2425更符合當(dāng)時(shí)的理論值。也就是說(shuō),在這么長(zhǎng)的時(shí)間跨度中,我們只要知道冬至是在哪一天,就能算出非常精密的回歸年長(zhǎng)度。這正是這項(xiàng)超長(zhǎng)期觀測(cè)的意義所在。
結(jié)語(yǔ)
古代歷家相信,天道流轉(zhuǎn)恒常不變,歷法的追求就是盡量吻合天道。因此在制定歷法時(shí),歷家一方面自己測(cè)算當(dāng)時(shí)的影長(zhǎng),一方面又要利用古代的天象記錄,把盡可能多的數(shù)據(jù)納入自己的歷法之中,這樣才能下可推今,上可考古。古代天文記錄不僅有冬至?xí)r刻(用來(lái)測(cè)定一歲起始、測(cè)算回歸年),還有中星記錄(用來(lái)計(jì)算歲差)、日月食記錄等等,這些記錄都是在制作歷法時(shí)需要考慮到的。不過(guò),受限于天象記錄的模糊性以及歷法技術(shù)本身的水平,還是有相當(dāng)一部分古代記錄難以符合歷法,在預(yù)測(cè)日食時(shí)也不時(shí)失敗,歷家雖然盡量擴(kuò)大“歷數(shù)之常”的范圍,但也對(duì)“天道之變”無(wú)可奈何。昭明而又難測(cè)的天道一直高懸在歷家頭頂,敬天法古的精神同樣在歷法中流淌著。
參考文獻(xiàn):
1.沈約《宋書(shū)·律歷志下》,北京:中華書(shū)局,2018年
2.宋濂《元史·歷志一》,北京:中華書(shū)局,1976年
3.肖堯《登封四丈高表與圭表測(cè)影》,《自然科學(xué)博物館研究》2020年第4期
4.王玉民《冬至圭表測(cè)影新探》,《中國(guó)科技史雜志》2013年第4期
5.陳美東《中國(guó)科學(xué)技術(shù)史(天文學(xué)卷)》,北京:科學(xué)出版社,2003年,頁(yè)269—270
6.吳守賢、全和鈞主編《中國(guó)古代天體測(cè)量學(xué)及天文儀器》,北京:中國(guó)科學(xué)技術(shù)出版社,2013年,頁(yè)376
7.王雨桐《漢唐間的經(jīng)學(xué)、歷數(shù)與古史年代建構(gòu)》,北京大學(xué)中國(guó)語(yǔ)言文學(xué)系博士論文,2023年
8.古代是怎么算出來(lái)一年 365 天的?-知乎:三種不同的紅色的回答
9.有哪些需要幾代人才能完成的科學(xué)實(shí)驗(yàn)?-知乎:尞祡的回答