torch.fft.fftfreq¶
- torch.fft.fftfreq(n, d=1.0, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) Tensor ¶
計算大小為
n
的訊號之離散傅立葉轉換的取樣頻率。注意
依照慣例,
fft()
會先傳回正頻率項,然後以相反的順序傳回負頻率,因此對於所有 ,Python 中的f[-i]
會給出負頻率項。對於長度為n
且輸入間隔為長度單位d
的 FFT,其頻率為:f = [0, 1, ..., (n - 1) // 2, -(n // 2), ..., -1] / (d * n)
注意
對於偶數長度,
f[n/2]
的奈奎斯特頻率可以被認為是負數或正數。fftfreq()
遵循 NumPy 的慣例,將其視為負數。- 參數
- 關鍵字參數
out (Tensor, optional) – 輸出張量。
dtype (
torch.dtype
, optional) – 傳回張量所需資料類型。預設值:如果None
,則使用全域預設值(請參閱torch.set_default_dtype()
)。layout (
torch.layout
, optional) – 傳回張量所需版面配置。預設值:torch.strided
。device (
torch.device
, optional) – 傳回張量所需的裝置。預設值:如果None
,則使用預設張量類型的目前裝置(請參閱torch.set_default_device()
)。對於 CPU 張量類型,device
將為 CPU;對於 CUDA 張量類型,則為目前的 CUDA 裝置。requires_grad (bool, optional) – 如果 autograd 應記錄傳回張量的運算。預設值:
False
。
範例
>>> torch.fft.fftfreq(5) tensor([ 0.0000, 0.2000, 0.4000, -0.4000, -0.2000])
對於偶數輸入,我們可以發現
f[2]
的奈奎斯特頻率被給定為負數>>> torch.fft.fftfreq(4) tensor([ 0.0000, 0.2500, -0.5000, -0.2500])