我用理論功率譜密度生成了一些時間序列。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