Celestia 中文文档 下载 App

日食与月食模拟:Celestia 里精确到分钟的天体事件

Celestia 怎么算日食月食

Celestia 依赖 JPL DE(NASA 喷气推进实验室开发的行星/月球星历表)——目前使用 DE441 或更新版本,精度是米级的。这意味着 Celestia 可以精确到分钟甚至秒级地知道:

2024 年 4 月 8 日日全食(最近一次跨越墨西哥→美国→加拿大)

跳过去看

@cel

-- 跳到 2024 年 4 月 8 日全食开始前一小时
SetTime { Date "2024 04 08 17 00 00" }

-- 选中地球、跟随,飞到能看到北美洲的位置
Select { object "Earth" }
Follow { }
Lander { Latitude 30 Longitude -100 Duration 5 }  -- 着陆到德克萨斯州

Wait { Duration 2 }

-- 加速时间观察日食发展
SetTimeRate { Value 0.1 }  -- 慢一点看
Print { "2024 日全食开始" }
Wait { Duration 600 }  -- 等待 10 分钟(1 分钟模拟时间 = 10 分钟现实)

运行后你会看到:月球圆面从太阳面前掠过,太阳被逐渐"咬"出一个缺口——先是偏食,然后月球完全覆盖太阳(全食),然后退出全食阶段、偏食恢复、最后日食结束。全过程大约 2 小时(现实时间)。

关键时间点(JPL 精确值)

事件UTC 时间Celestia 模拟时间
偏食开始15:42可精确匹配
全食开始16:38可精确匹配
全食最大17:18可精确匹配
全食结束17:55可精确匹配
偏食结束18:52可精确匹配

跳到这些时刻附近(SetTime),把时间倍率调到 0.1x(放慢看细节),你会看到 Celestia 的模拟画面和 JPL 预测的精确吻合。

2024 年 9 月 18 日的月偏食

SetTime { Date "2024 09 18 02 30 00" }  -- 偏食开始时刻 UTC
Select { object "Moon" }
Follow { }

这次月偏食全食阶段很短(只有几分钟),所以加速倍率不要太高(0.5x 左右就行)。

在地球上不同位置看日食效果

日食的可观测范围(本影/半影区)取决于你在地球上的位置。用 Celestia 的 Lander 模式着陆到不同地点:

跳过去着陆就能"站在那个位置"亲眼确认你所在地能看到什么。

Celestia 日食月食的精度限制

Celestia 的星历表精度确实很高,但:

脚本化日食演示

可以把未来几年的全部日食月食做成一个循环脚本:

@cel

events = {
    "2025 03 29 10 00 00",   -- 2025 年日偏食
    "2025 09 21 14 30 00",   -- 2025 年日偏食
    "2026 08 12 16 00 00",   -- 2026 年日全食
    "2026 02 17 20 00 00",   -- 2026 年日环食
    ...
}

for i = 1, #events do
    SetTime { Date events[i] }
    Select { object "Sun" }
    Goto { Duration 2 }
    SetTimeRate { Value 0.05 }  -- 放慢到能看清细节
    Wait { Duration 60 }
    Print { "事件 " .. i .. " 完成" }
end