Python3 を使用してパワー スペクトルを計算したいと思います。このトピックに関する別のスレッドから、基本的な材料を入手しました。私はそれが次のようなものであるべきだと思います:
ps = np.abs(np.fft.fft(x))**2
timeres = t[1]-t[0]
freqs = np.fft.fftfreq(x.size, timeres)
idx = np.argsort(freqs)
plt.plot(freqs[idx], ps[idx])
plt.show()
ここt
に時間とx
光子数があります。私も試しました:
W = fftfreq(x.size, timeres=t[1]-t[0])
f_x = rfft(x)
plt.plot(W,f_x)
plt.show()
しかし、どちらもほとんどゼロ付近のピークを示します (ただし、同じではありません)。これからパワースペクトルを計算しようとしています:
これにより、580Hz付近の信号が得られるはずです。ここで何が間違っていますか?