选一帧曝光,以实际观测时刻为准
采用 13198 项目、PI J.-Y. Li 的 HST/WFC3 F606W 数据集 ic7301ooq。单帧曝光的 UTC 修正儒略日从 56392.21727116 到 56392.22041947,曝光时长二百七十二秒。两端平均得到 2013 年 4 月 10 日 05:15:08.235216 UTC,几何以这个中点为准。
固定 FITS 的处理日期是 2026 年 6 月 1 日,CAL_VER 为 3.7.3,版本日期 Jan-07-2026。处理日期、2013 年曝光日期和公开图片发布日期是不同的。Li 等论文采用较长观测序列与当年的合成处理;这里复算的是明确选定的档案单帧诊断。
原始 FITS 为 13,579,200 字节,SHA-256 和 MAST 直链均在出处文件中。按 MAST 公共任务政策使用并注明 HST/MAST 来源;未经修改的档案 JPEG 与比较图一并提供。它们分别保留观测预览和测量像素,交互粒子另作教学展示。
对应阅读:MAST HST program 13198 and public data-use policy · Li et al.
在空目录里运行
新建空目录,下载五个必需文件后执行下面命令。无需网站源码、Lab 引擎、Python 扩展包或账号。脚本先检查两个输入的哈希,再输出完整数字与 SVG;SVG 灰度来自实际图像像素。保存的结果由 Python 3.12.14 生成。Python 3.9 及更高版本都可重算,但求和、数学库与 PNG 压缩的差别,可能改变末位数字或文件字节。
若要重算相对摄动力检验,再下载 ison-perturbers.json 与 relative_release_reference.py,并加上 --force-check。它会积分采样的行星差分加速度和彗核出气项,比基础方向比较慢。固定参考结果包含这一步。
mkdir ison-tutorial
cd ison-tutorial
curl --fail --remote-name https://sandboxphysics.com/stories/comet-dust/reproduce-ison.py
curl --fail --remote-name https://sandboxphysics.com/stories/comet-dust/comet_orbits.py
curl --fail --remote-name https://sandboxphysics.com/stories/comet-dust/svg_figure.py
curl --fail --remote-name https://sandboxphysics.com/stories/comet-dust/ison-image.json
curl --fail --remote-name https://sandboxphysics.com/stories/comet-dust/ison-ephemeris.json
python3 reproduce-ison.py --directory . --output result.json --figure comparison.svg
对应阅读:MAST HST program 13198 and public data-use policy · JPL Horizons API and observer/vector conventions
分清接收时刻与发光时刻
Horizons 观测量 30 给出曝光中点的 TDB 比 UTC 快 67.185633 秒,查询 TDB 向量前先加上这个间隔。观测量 21 给出地心光行时 35.28174224 分钟。彗星取较早的发光时刻,地球取接收时刻。
所有冻结向量使用 ICRF 轴和 FRAME 参考平面。彗星释放状态是未作光行时修正的日心几何向量。先取地球接收时刻与太阳发光时刻各自的质心位置,相减得到同一原点下的观察者位置。若直接拿同一时刻日心地球相减,就可能混用移动原点。重建彗星方向与另查的 Horizons 光行时修正天体测量方向,在保存精度下吻合。
对应阅读:JPL Horizons API and observer/vector conventions · MAST HST program 13198 and public data-use policy
给太阳模型配上同一条参考母轨道
每个释放状态都传播两条太阳圆锥轨道:尘粒用减弱引力,配对母体用正常引力。到发光时刻后,先取两者的相对位移,再加到 JPL 彗核上。这是以 JPL 几何为基准的太阳相对释放近似,不是完整 JPL 尘粒轨道。
配对母体很关键。从一百二十日前释放状态出发的纯太阳母体,最终与 JPL 彗核相差约二万八千五百七十七千米;若直接相减,零光力也会出现假尘尾。相对构造在力比和释放速度都为零时,位移严格为零。
独立检验沿每日 JPL 彗核路径积分,加入八个行星系统的差分加速度,以及彗核独有 Marsden A1/A2 出气加速度的负项。行星力既有共同部分也有差分部分;彗核出气不能默认由尘粒共享。十六组测试中,相对位移变化最大约百万分之二点八,位置角变化最大约零点零零零零七四度;单独的彗核出气影响小于零点零一千米。步长细化也作了比较。这些是采样敏感性结果,不是所有释放参数的严格误差界;行星多极项、小行星摄动和相对论仍未纳入。
对应阅读:JPL Horizons API and observer/vector conventions · Finson & Probstein · Burns
投影到原生像素,保留图像的手性
先把视线方向投到档案参考天区的切平面。设目标方向为 q,参考东、北与中心各取一个单位向量,则切平面坐标是 与 。把弧度换成度,乘档案 CD 矩阵的逆,再加 CRPIX。脚本采用完整 TAN 投影。
FITS 参考像素从一开始编号,原生数组行沿像素正 y 增加;显示时才反转行。CD 行列式为负,若不看它的符号、直接套“北上东左”的通用画法,就可能把图像镜像。图像正 y 轴为从北向东量负四十二点八二一度,与档案 ORIENTAT 一致。
另将日彗向量与反日心速度独立投影,同 Horizons 观测量 27 比较,分别得到九十二点一八七度和七十九点二七七度。故意镜像罗盘后,尘尾扇区峰从九十度转到约一百八十五度。JPL 彗核在从零编号的原生像素约为 (514.48, 528.54),在这里的粗采样尺度下与中央天体位置一致。
对应阅读:MAST HST program 13198 and public data-use policy · JPL Horizons API and observer/vector conventions
测量宽尾,再看还剩几种解释
图像输入把有限、覆盖权重大于零的原生八乘八像素块取中位数,同时保存覆盖比例,负背景也保留。这能压低孤立亮点,却不是保流量孔径测光。若直接取全帧最亮原生像素,会选到远离彗核的 (201, 803)。
每隔五度放一个二十度宽的扇区,统计亮度中位数。二至六、四至十、六至十二、八至十五角秒四个重叠径向范围,峰都在九十度。它们检验的是半径选择敏感性,共享像素又含 drizzle 相关噪声,不能当作四次独立探测;五度步长也不是误差棒。内两角秒被排除,因为内彗发含有向日喷流。
下面两组实际输出中,三十日、力比零点一,与六十日、力比零点零三的粒子都到约八角秒处,方向只差半度左右,均与粗略宽尾方向相容。要反推尺寸或喷发日期,还需亮度模型、生产历史与多期图像。计算对尘粒采用同一发光时刻;对十五角秒内的采样点,保存的差分光行时位移估计小于十千米,适合这里的粗方向比较,不适合精密天体测量拟合。
| 年龄(日) | 力比 | 分离(角秒) | 从北向东位置角(度) |
|---|---|---|---|
| 30 | 0.1 | 7.92 | 91.558 |
| 60 | 0.03 | 8.58 | 91.007 |
| 120 | 0.005 | 4.79 | 90.081 |
| 观测扇区峰 | 多种值相容 | 测试 2—15 | 90,按五度网格 |
对应阅读:Li et al. · MAST HST program 13198 and public data-use policy · Finson & Probstein