日出表上的时刻,怎样从三天的星历一步步算出来?
把天体自己的移动与地球转动放在同一条时间线上,求真正的升中落事件。
要预测何时升起,只看一张静态天空图不够。月亮和行星自己也在移动;一张三日星历表,加上观察地点、时间尺度差与标准高度,才能迭代出这一天的事件时刻。
打开互动课程 →
先猜一下
算月球几点升起,只用当天午夜一个固定赤纬就足够精确吗?
查看答案与解释
不够,它自己也在移动 — 需要用邻近星历描述它在一天内的坐标变化。
再把体验和科学连起来
先拿到真正的三日坐标表
不是只给一个赤纬画圆。前一天、当天、后一天0h TT的视赤经赤纬,用来描述天体在这一天里自身的移动。
α₁,δ₁;α₂,δ₂;α₃,δ₃
先估升起、中天与落下
当天0h UT1的视恒星时决定地球朝向。结合经纬度与标准高度h₀,先估三个事件的日分数。
m₀=(α₂−东经−θ₀)/360;m升落=m₀∓H₀/360
用ΔT对齐两套时间尺度
事件时刻用UT1,坐标表按TT取样,所以插值变量是n=m+ΔT/86400。赤经跨0°时要先展开成连续角度。
用三点插值求α(n)、δ(n)
反复改正,直到达到标准高度
升落用h−h₀改正,中天用时角H改正。输出只属于所选UT1日期;换成地方钟可能落在前一天。
Δm中天=−H/360;Δm升落=(h−h₀)/(360cosδcosφsinH)
m是从当日0时起的UT1日分数。用ΔT换成星历插值参数n,再迭代高度或时角残差;升、落使用不同H符号。h₀依天体与模型而定,不是一律为0°。
试一试
先看波士顿金星原书例,再换太阳/月球的计算表。标准高度可单独试验;下面都按同一个UT1日期列出事件,落下有可能排在升起之前。
动手看一遍 →
符号不用背
- m
- 当天UT1的日分数
- n
- TT星历的插值因子
- h₀
- 几何标准高度,包含选用的经验升落定义
- 东经
- 本站东正;原书L为西正,所以公式符号相反
算法、精度与适用范围
完整实现15.1/15.2初值、三点坐标插值、赤经跨圈展开、ΔT与视恒星时、升落/中天差分改正。书例为1988-03-20波士顿金星三日实表,视恒星时由既有算法求;可选择solar-coordinates、moon-position、planet-light-time生成其他TT日期的三日视位置。输入东经正;所有事件归入一个UT1日,不把跨日事件悄悄绕回。自动标准高度:星/行星−0.5667°、太阳−0.8333°、月球0.7275π−0.5667°(π取中心日),自选值仅为实验。近极区、相切或没有可用初值时报告不能给出普通事件,不以静态判据冒充实际全天结论。月球高度阈值在一天内固定,未含气象、地形、月缘与ΔT实测服务。UT1加整数偏移只是地方钟示意,不能声称精密UTC或历史夏令时转换。
我的理解检查
为什么插值变量要加ΔT/86400?
对齐UT1事件时刻与TT星历 — 两套时间尺度的标签需要先对齐。
赤经从359.8°变为0.2°,直接对这些数插值合适吗?
不合适,先展开跨圈 — 应看作359.8°到360.2°附近,避免插到错误的180°。
本课2:55 UT1的落下,换成约UT1−5小时的地方钟,可能属于?
前一天晚上 — 必须连同日期一起换算,不能只改钟面数字。
升落时刻是迭代出来的事件:先给三日坐标,再处理时间尺度、地球转动和标准高度。
Jean Meeus · Astronomical Algorithms, 2nd ed. · 第 15 章