前 260 阿里斯塔克日心說:早了一千八百年的真相#
案發現場#
西元前三世紀的亞歷山大城,希臘天文學正處於黃金時代。薩摩斯的阿里斯塔克(Aristarchus of Samos,約前 310–前 230)在這裡做出了一件震驚後世、卻被同代人棄如敝履的事:他主張太陽才是宇宙的中心,地球一邊自轉、一邊繞日運行,恆星則遠在遙不可及的距離上。
這不是模糊的哲學猜想。阿基米德在《沙粒計算》(The Sand Reckoner)中記錄了阿里斯塔克的主張,明確指出:恆星與太陽所在的「固定球殼」不動,太陽位於宇宙中心,地球繞太陽運轉。換言之,這是一套完整的幾何宇宙模型——與哥白尼在 1543 年提出的模型(見 1543-哥白尼日心說.md)結構幾乎相同,早了一千八百年。
但整個希臘知識界的地基是亞里士多德的物理學:地球是宇宙中靜止的中心,重的物體自然落向宇宙中心,天體由完美的圓周運動驅動。阿里斯塔克的主張,不是修正一個細節,而是掀翻整座大廈。
偵查過程#
阿里斯塔克不是只靠思辨——他設計了兩個可以動手測量的幾何實驗:
實驗一:月食測地球大小。 月食時,地球的影子掃過月面。阿里斯塔克測量月面地影的寬度,估計地影在月球軌道處的直徑約為月球直徑的 2 倍,再結合視差資料,推得地球直徑約為月球的 3 倍(真值約 3.7 倍)——方法完全正確,數值偏小但量級正確。
實驗二:半月測日地距離。 半月(上弦或下弦)時,日—地—月構成直角三角形,太陽—月球—地球的夾角恰好 90°,而地球一側的日—月夾角略小於 90°。阿里斯塔克測得這個角約 87°,用三角學即可算出日地距離約為月地距離的 18–20 倍(真值約 390 倍,因為 87° 實際應為 89°51′,差之毫釐、繆以千里——他沒有能測出這 3 分角的儀器)。但方法論的骨架是對的:用幾何測量宇宙的尺度。
正是這個測量把他推向日心說:日地距離如此之遠,太陽比地球大得多,「讓大物體繞小物體轉」說不通;更合理的圖像是太陽居中、地球繞行。
而正因為這些測量,反駁者也有一個致命武器:如果地球在動,我們為什麼看不到恆星視差? 這個問題阿里斯塔克只能回答「恆星太遠了,視差小到看不見」——在沒有望遠鏡的時代,這個正確的回答聽起來就像逃避。斯多噶學派的克leanthes(Cleanthes)甚至主張控告他不敬神,理由是「把宇宙的爐灶搬動了」。
結案報告#
阿里斯塔克之後,日心說在古代世界幾乎沒有繼承人。取而代之的是喜帕恰斯(Hipparchus)與托勒密(Ptolemy)的地心說本輪系統——它不違反亞里士多德物理學、不違反常識、且預測精度夠用,此後統治天文學一千四百年。阿里斯塔克的名字只在阿基米德與普魯塔克的引述中留下微光。
1800 年後,哥白尼重新點燃這把火——但哥白尼同樣答不出視差問題(望遠鏡前的視差要到 1838 年 Bessel 才測到,見 1842-都卜勒效應.md 同時代的天文學脈絡),同樣受到常識與教會權威的抵抗。直到伽利略把望遠鏡指向天空(見 1609-伽利略望遠鏡.md),金星盈虧、木星衛星接連出現,日心說才第一次拿到「對接的實驗工具」。阿里斯塔克沉睡的真相,等了一千八百年才被重新點火。
冷落分析#
為什麼被忽視? 1. 缺乏對接的實驗工具——日心說需要望遠鏡(金星盈虧、木星衛星)與高精度視差測量才能站穩,這些技術晚了近兩千年。阿里斯塔克的 87° 測量本身已經暴露問題:差 3 分角,結論差 20 倍——沒有儀器,正確的理論拿不出過硬的數據。 2. 觸犯常識與權威——「地球在動」違反直接經驗(我們感覺不到風、感覺不到離心力),更違反亞里士多德物理學的整體框架;Cleanthes 的「不敬神」控罪顯示社會結構可以把正確的聲音直接消音。 3. 無法反駁的反駁——恆星視差問題在當時無解;「恆星太遠」是正確答案,卻無法被驗證,只能被當成託辭。
為什麼後來被接受? 哥白尼重提之後,迴路的其餘環節才逐漸到位:伽利略的望遠鏡(1609,技術)提供了直接觀測證據;克卜勒的橢圓軌道(1609,理論)提供了更好的預測;牛頓力學(1687,理論)解釋了「為什麼地球動我們感覺不到」;Bessel 的視差測量(1838,實驗)蓋下最後的章。單點的正確不足以啟動科學——必須等整個理論—實驗—技術循環的其餘環節趕上。
證據與工具#
# 用 Python 重現阿里斯塔克的 87° 法:半月時估計日地距離 / 月地距離
import math
# 半月時:日-地-月 夾角為 90°(地球為直角頂點)
# 地球處的 日-月 夾角 = 90° - α,阿里斯塔克測得太陽方向偏離 90° 約 3°(87°)
alpha = math.radians(3.0) # 阿里斯塔克:日-月-地 三角中地球處偏角 = 3°
ratio_aristarchus = 1 / math.sin(alpha) # 日地距 = 月地距 / sin(α)
print(f"阿里斯塔克的估計:日地距離 = 月地距離 × {ratio_aristarchus:.1f}")
# 輸出約 19.1 → 與他記載的 18-20 倍一致
# 真實情況:α 其實只有約 8.8 分角(0.147°),因為太陽遠得多
alpha_true = math.radians(0.147)
ratio_true = 1 / math.sin(alpha_true)
print(f"用真實偏角(約 8.8'):日地距離 = 月地距離 × {ratio_true:.0f}")
print(f"(真值約 390 倍)→ 3 分角的誤差讓結果偏小 20 倍,但幾何方法正確")
# 月食法:地影寬度 → 地球/月球直徑比
# 阿里斯塔克估地影在月球處寬度為月徑的 2 倍
print(f"\n月食法估計:地球直徑 ≈ 月球直徑 × 3(真值 3.67)")
print(f"結合兩法可得太陽體積 ≈ 地球體積的 {ratio_aristarchus**2 * 3:.0f} 倍以上")
print("→ 『大物體不該繞小物體轉』正是他走向日心說的推理起點")