选季节之前,先固定原始测量
来源是公开 OGLE 单对象文件,共 9672 字节,最后修改于 2017 年 6 月 29 日。SHA-256 为 6d6bb05178881e421ca2c03cf77bc100d51f74c87efbd523a9f017216c6e5a1b。旁边保存了官方 README 与匹配的 RRab 目录行,列含义和已发表周期由它们提供,与本次重跑的输出分开。
三列分别是日心儒略日减 2450000、I 波段星等,以及给定星等误差。不要改叫质心儒略日,也别从这个文件推定未说明的 TDB 或 UTC 时间约定。星等越小,恒星越亮。这里直接拟合星等,不把星等振幅当成线性流量振幅。
完整文件跨度约 2233 天。选择首个时刻起 160 天内、数值有限且误差为正的全部行。实际只留下首季二十五点,跨度 51.96797 天,然后就隔到了下一季。没有剔除离群点,也没有拿拟合曲线替换测量。
对应阅读:OGLE-IV LMC RR Lyrae official data README · Soszyński et al., OGLE Magellanic RR Lyrae catalog
按真实时刻设置频率网格
先减去首个时刻,在来源偏移约定下它是 5262.50439,再计算三角函数。这个平移只改变拟合相位,不改变物理周期。窗口和每一次模拟都用同样平移过的时刻。
网格从每天 0.2 周开始,到不超过每天六周的最后一点,间隔取所选基线的五倍倒数,并保存整个数组。上界是明确选择的搜索范围,不是由平均间隔计算的 Nyquist 频率。
用原始误差平方的倒数加权,同时拟合正弦、余弦和浮动常数。Python 采用加权正交投影,浏览器采用正规方程消元;独立的两种写法在模型测试中相符。
对应阅读:Zechmeister & Kürster, generalized Lomb–Scargle, arXiv v1 · Astropy 8.0.2 Lomb–Scargle documentation · VanderPlas, Understanding the Lomb–Scargle Periodogram, arXiv v1
运行完整离线重跑
将下方下载文件放在同一文件夹,在该文件夹打开终端运行命令。脚本先检查来源哈希,把实测点、完整频率和窗口数组、零假设最大值、随机种子与注入结果写进 ogle-replay-rerun.json。分析时不会下载新数据。第二条命令独立重分析已保存的合成曝光,不会把它们当作 OGLE 实测。
每套时刻都单独模拟 4096 个恒定源高斯样本,每个样本搜索同一个完整频率网格。再用另外 1024 个独立模拟验证百分之五阈值。另做 256 次标准化实测离差置换,保持时刻不动;它依赖可交换性,结果与高斯噪声校准分开命名。
真实 RRab 轮廓不是完美正弦,给定误差也可能漏掉相关天空或标定误差。重跑研究的是指定的单谐波、独立噪声程序会返回什么,没有为恒星建立完整物理模型。
python3 -W error replay-ogle.py
python3 -W error replay-synthetic.py
对应阅读:OGLE-IV LMC RR Lyrae official data README · Zechmeister & Kürster, generalized Lomb–Scargle, arXiv v1 · Astropy 8.0.2 Lomb–Scargle documentation
把实测光变与搜索放在一起读
完整首季的最强网格周期为 0.635355 天,功率 0.641815。目录行给出 0.6347521 天,目录误差小得多。短基线、较粗频率格和单谐波模型,无法重现那种精度。按搜索周期折叠实测点,可以看到重复图样;拟合正弦仍然只是模型。
全频搜索高斯噪声尾秩为 0.004882,另行置换标准化数据得到 0.01556,回答的是不同零假设与随机化问题。引用数字时,把噪声假设和模拟次数放在旁边。有限蒙特卡洛秩有抽样误差,只能给出有限分辨率的尾概率估计。
周期图显示标准 GLS 功率,以及单独校准的百分之五全频搜索阈值。峰来自对实测星等的拟合,阈值则来自人工恒定源抽样。
对应阅读:OGLE-IV LMC RR Lyrae official data README · Soszyński et al., OGLE Magellanic RR Lyrae catalog · Astropy 8.0.2 Lomb–Scargle documentation
丢掉观测,再重新校准
每三行只保留一行,连同原来的误差,共剩九个实测点。保留同一套声明频率网格,却要在这九个真实时刻重新校准高斯零假设。直接沿用二十五点的阈值,会用错参考分布。
稀疏样本功率升至 0.899168,网格周期 0.638477 天,高斯零假设尾秩却为 0.2060。它的百分之五阈值升至 0.943579,完整样本则为 0.545894。正弦只需配九点时,漂亮的高峰就没那么稀奇了。
独立验证误警报率分别为 4.39%、4.49%,与名义百分之五比较。它们是在同一独立高斯模型下的有限检查,不保证红噪声或别的巡天种群也有同样表现。
对应阅读:VanderPlas, Understanding the Lomb–Scargle Periodogram, arXiv v1 · Astropy 8.0.2 Lomb–Scargle documentation
注入信号,测周期到底认准多少
随后造 128 个明确标为人工的星等正弦信号,半振幅 0.1 星等,相位独立随机,频率在每天 0.3 到 4.8 周。按真实时刻与测量误差大小加入新噪声。这些数组不是 OGLE 恒星的新测量。
每次注入都跑同一个完整搜索。越过该计划的百分之五零假设阈值算探测;恢复频率还得落在注入频率的一个基线倒数以内,才算正确。完整样本探测到 112 次,其中 36 次落入正确邻域,76 次选成混叠,十六次没过阈值。稀疏样本只探测到十二次,全部选成混叠,另漏掉 116 次。
噪声误警报率低,不保证混叠错误也少。任何完备率说法,都应同时说明测试振幅和频率分布,并分开列出探测、正确周期恢复与漏检。
对应阅读:VanderPlas, Understanding the Lomb–Scargle Periodogram, arXiv v1 · Astropy 8.0.2 Lomb–Scargle documentation
让版本和范围跟着结果走
数据可公开下载,OGLE README 要求引用适当的合作组论文。这里保留来源、README、目录行与提取元数据,没有声称更宽的 Creative Commons 许可。LMC 目录里的致谢文字写了银河核球,因此实际引用对应的 LMC 目录与更新。
换一颗源时,先固定测量和误差,定义时间约定与筛选,再检查窗口、保存精确频率网格,在同样时刻校准整个搜索,最后注入声明过的信号族。同一份结果里同时列成功与混叠,周期结论就更容易判断。
对应阅读:OGLE-IV LMC RR Lyrae official data README · Soszyński et al., OGLE Magellanic RR Lyrae catalog · VanderPlas, Understanding the Lomb–Scargle Periodogram, arXiv v1