我用理论功率谱密度生成了一些时间序列。python中余弦的高效计算
基本上,我的在时间 - 空间函数由X(t) = SUM_n sqrt(a_n) + cos(w_n t + phi_n)
,其中a_n
是PSD
在给定w_n
和phi
值给定为一些随机相位。为了得到一个现实的时间序列,我必须总结2^25
模式,当然我的t
的大小也是2^25
。
如果我这样做与蟒蛇,这将需要几个星期...
有没有什么办法来加速呢?像一些矢量计算?
t_full = np.linspace(0,1e-2,2**12, endpoint = False)
signal = np.zeros_like(t_full)
for i in range(w.shape[0]):
signal += dataCOS[i] * np.cos(2*np.pi* t_full * w[i] + random.uniform(0,2*np.pi))
其中dataCOS是SQRT A_N,W = w和random.uniform表示随机相移披
你的'w_n'是否是任意值,还是它们看起来像'w_n = 2 * np.pi * n/T'? – Jaime