0

我正在使用 Stingray 的 CrossCorrelation 函数来确定两条光曲线之间的时间滞后,但遇到了一些麻烦。

一方面,如果我计算两个相同光曲线之间的时间滞后,则 stingray.crosscorrelation.time_shift 的结果取决于数据点的数量。正如人们所期望的那样,奇数个点会产生 0 的时移。但是,偶数个点会产生一部分时间采样。这也反映在绘制各种时间滞后的互相关时。

重现代码:

from stingray import Lightcurve as LC
from stingray.crosscorrelation import CrossCorrelation as XC

n = 15
dt = 1
times = np.arange(0, n * dt, dt)
data = np.sin(times)
lc = LC(times, data)
xc = XC(lc, lc) # CrossCorrelation of identical light-curves

print(xc.time_shift)

对于任何奇数 n,结果为 0。但对于任何偶数 n,结果 >~0.5,对于较大的 n 越来越接近 0.5。对于 n=2,结果为 1.0。最终结果接近 dt 值的一半。

我是在错误地使用/解释这些函数,还是 Stingray 在这里做错了什么?

4

0 回答 0