36304 評康熙朝的一場天文比試
評康熙朝的一場天文比試

楊光先和吳明烜原是康熙朝的欽天監監正和監副(國家天文局局長和副局長)。 康熙親政之後, 命令這對難兄難弟與傳教士南懷仁比賽, 預測立竿的日影和太陽的仰角, 結果楊吳一敗塗地, 幾遭問斬。 此後百餘年, 欽天監的業務盡交洋人主持。直到道光年間, 洋天文學家或歸國或老死, 而欽天監的中國官員也已學會西法, 才停止延請洋人入監。 1 1 這場比試可參考史景遷著《改變中國》中文譯本 30, 31頁(時報文化出版公司, 2004年)或是 GOOGLE 「楊光先」。

立竿見影這套設計又名日晷, 功能之一是利用每天正午時的竿影來判斷一年中的時序。 在北回歸線以北的地帶, 亦即緯度高於北緯 $23.5^\circ$ 的地帶, 夏至 (約 6 月 22 日) 這一天的日影最短, 冬至 (約 12 月 22 日) 這一天的日影最長。 由於每一天太陽直射地球的緯度不同, 因此正午時的日影也隨之而有消長, 請看下圖 (以下的討論均假設竿子立在位於北緯 $40^\circ$ 的北京):

圖中, 太陽直射北緯 $\delta$。 由於北京位於北緯 $40^\circ$, 因此陽光與立竿的夾角是 $40^\circ -\delta$, 再從下圖這個直角三角形看出影長與竿長之比是 $\tan(40^\circ -\delta)$。

以夏至這一天為例, $\delta=23.5^\circ$, $\tan(40^\circ -23.5^\circ )\approx 0.3$。 因此如果立竿高 200 公分, 正午的影長就是 60 公分。 到了冬至這一天, 影長與竿長之比變成 $\tan(40^\circ +23.5^\circ )\approx 2.0$, 竿長 200 公分對應的影長大約是 400 公分。

至於太陽的仰角, 從上圖可以看出正午的時候, 這個仰角就是 $40^\circ -\delta$ 的餘角, 亦即 $50^\circ +\delta$。 因此在夏至的時候是 $73.5^\circ$, 冬至的時候是 $26.5^\circ$, 不過這是正午的情形。 如果問的是北京某日, 下午三點時的仰角, 那又另當別論, 因為如圖 ($y$ 軸指向正南):

正午時太陽在正南, 對應 $\theta =0^\circ$, 此時太陽的方向向量是 $(0, \cos\delta, \sin\delta)$。 由於地球由西向東繞北極自轉, 因此在正午以後, 太陽的方向向量 $(0, \cos\delta, \sin\delta)$ 向著 $x$ 軸 (指向西方), 繞 $z$ 軸轉了 $\theta$ 角, 新的方向是 $(\cos\delta \sin\theta, \cos\delta \cos\theta , \sin\delta)$。 如果要了解這個方向在北京的仰角 $\gamma$, 或者 $\cos(90^\circ -\gamma )$, 就要將此方向與在北京立竿的方向 $(0, \cos 40^\circ , \sin 40^\circ)$ 作內積而得到 $\gamma$、 $\theta$ 和 $\delta$ 的關係式: \begin{equation} \sin\gamma = \cos(90^\circ -\gamma ) = \cos 40^\circ \cos\delta \cos\theta + \sin 40^\circ \sin\delta \label{1} \end{equation} 而此刻竿影與竿長之比就是 $\tan(90^\circ -\gamma )$。

例如, 在正午的時候, $\theta =0^\circ$, $\sin\gamma = \cos 40^\circ \cos\delta + \sin 40^\circ \sin\delta= \cos(40^\circ -\delta)$, 亦即 $\gamma = 90^\circ - (40^\circ -\delta) = 50^\circ + \delta$, 與前文所求相符。 若是要求下午 3 時的仰角 $\gamma$, 則在公式中, $\theta$ 要以 $45^\circ$ 代入, 或是要求上午 9 時的仰角, 公式中的 $\theta$ 要以 $-45^\circ$ 代入, 這是因為每一小時地球自轉 $15^\circ$, 注意到式中 $\delta$ 代表太陽直射地球的緯度。

前面提到, 夏至的時候, $\delta=23.5^\circ$, 冬至的時候, $\delta=-23.5^\circ$, 其間春秋分的時候, $\delta=0^\circ$。 上述二至和二分是一年中四個最重要的節氣, 通常發生在 6 月 22 日、 12 月 22 日、 3 月 21 日和 9 月 23 日。 然而在這四個節氣之間, $\delta$ 與日期的關係並非線性, 而是要看地球當日在公轉軌道上的位置。

我們在夜晚從地球觀天, 極目所見, 只有角度(方向), 沒有遠近, 這就是所謂的天球, 球面上繁星點點, 是所謂的恒星, 它們之間的相對位置關係不變, 但是每天繞北極星旋轉一圈。 若將地球的經緯度從地心投射到天球, 則在天球上就有了所謂的赤經和赤緯, 並且又將地球所見太陽的軌跡也投射到天球, 就是所謂的黃道。 我們以黃道為黃經和黃緯系統的赤道, 換句話說, 黃道相當於黃緯的零度。

現在, 以地球為原點(球心), 在天球上有兩組球座標, 一是黃經黃緯, 一是赤經赤緯。 如圖:

圖中天赤道這一圈是從地心將地球赤道投射到天球的軌跡, 在天球上定為赤緯 $0^\circ$, 黃道這一圈是太陽在天球上的軌跡, 定為黃緯 $0^\circ$。 這兩個大圓有兩個交點, 一個點是春分定為黃(赤)經 $0^\circ$, 另一個點是秋分定為黃(赤)經 $180^\circ$。以下是二至二分的經緯度:

赤經赤緯黃經黃緯
春分$0^\circ$$0^\circ$$0^\circ$$0^\circ$
夏至$90^\circ$$23.5^\circ$$90^\circ$$0^\circ$
秋分$180^\circ$$0^\circ$$180^\circ $$0^\circ$
冬至$270^\circ $$-23.5^\circ$$270^\circ$$0^\circ$

習慣上, 我們以 $(\lambda ,\beta )$ 表示黃經黃緯, 以 $(\alpha ,\delta)$ 表示赤經赤緯; 兩者有下列的換算公式: \begin{eqnarray} &&\sin\delta = \sin\varepsilon \sin\lambda \cos\beta + \cos\varepsilon \sin\beta\nonumber\\ &&\cos\alpha \cos\delta = \cos\lambda \cos\beta\nonumber\\ &&\sin\alpha \cos\delta = \cos\varepsilon \sin\lambda \cos\beta - \sin\varepsilon \sin\beta\label{2}\\ {\hbox{或}} &&\sin\beta = \cos\varepsilon \sin\delta - \sin\alpha \cos\delta \sin\varepsilon\nonumber\\ &&\cos\lambda \cos\beta = \cos\alpha \cos\delta\nonumber\\ &&\sin\lambda \cos\beta = \sin\varepsilon \sin\delta + \sin\alpha \cos\delta \cos\varepsilon\nonumber \end{eqnarray} 式中 $\varepsilon$ 代表黃赤夾角, 大約是 $23.5^\circ$。 2 2 我們略證第一組換算公式: 如圖, 原點是地球, 春分在 $(1,0,0)$, $xy$ 平面是天赤道面, $z$ 軸指向北極星。黃經黃緯系統的三個互相垂直的單位向量依序為 $(1,0,0)$, $v=(0, \cos\varepsilon, \sin\varepsilon)$ 和 $w=(0,-\sin\varepsilon ,\cos\varepsilon )$, 其中 $(1,0,0)$ 和 $v$ 張出黃道面, $w$ 是黃道面的法向量, 其與北極方向的夾角是 $\varepsilon = 23.5^\circ$。 在天球面上赤經赤緯是 $(\alpha,\delta)$ 時, 代表空間向量 $$(\cos\delta\cos\alpha,\cos\delta \sin \alpha,\sin\delta){(3)}$$ 而黃經黃緯是 $(\lambda,\beta)$ 時, 代表空間向量 $$\cos\beta\cos\lambda (1,0,0)+ \cos\beta \sin\lambda (0, \cos\varepsilon, \sin\varepsilon)+ \sin\beta (0, -\sin\varepsilon, \cos\varepsilon){(4)}$$ 令 $(3)=(4)$ 就得到第一組換算公式, 至於第二組, 可由第一組中 $\varepsilon$ 代以 $-\varepsilon$, $(\lambda,\beta)$ 和 $(\alpha,\delta)$ 交換而得。

回到楊吳與南懷仁的比試。若要知道某月某日太陽直射地球的緯度, 等於是要知道當天太陽的赤緯 $\delta$。 以 4 月 20 日這一天為例, 由於這一天太陽約在黃經 $30^\circ$, 亦即將 $\lambda =30^\circ$、 $\beta =0^\circ$、 $\varepsilon =23.5^\circ$ 代入換算公式 \eqref{2} 得到 $$\sin\delta = \sin 23.5^\circ \sin 30^\circ \cos0^\circ\approx 0.4\times 0.5 = 0.2$$ 因此 $\delta$ 大約是 $11^\circ 40'$。

再由 \eqref{1} 式, 求 4 月 20 日上午 9 時 $(\theta = -45^\circ )$, 太陽在北京的仰角 $\gamma$ $$\sin\gamma = \cos 40^\circ \cos11^\circ 40' \cos(-45^\circ ) + \sin 40^\circ \sin 11^\circ 40' \approx 0.66$$ $\gamma$ 大約是 $41^\circ$。 但是在同一天正午太陽的仰角卻是 $50^\circ +\delta = 50^\circ +11^\circ 40'$, 約為 $61^\circ 40'$, 兩者相差 $20^\circ$ 左右。

從上面的計算看來, 中國的天文官如果不知道幾何及三角, 又不能理解地球是球形, 乃至於不清楚北京城的緯度, 在這種劣勢之下如何進行最基本的預測? 無怪乎楊吳大敗於南懷仁, 一言以蔽之, 數學太差, 理所當敗。

---本文作者為台大數學系退休教授---