當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python PyTorch fftfreq用法及代碼示例


本文簡要介紹python語言中 torch.fft.fftfreq 的用法。

用法:

torch.fft.fftfreq(n, d=1.0, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor

參數

  • n(int) -FFT長度

  • d(float,可選的) -采樣長度尺度。 FFT 輸入的各個樣本之間的間距。默認采用單位間距,將該結果除以實際間距得出物理頻率單位的結果。

關鍵字參數

  • out(Tensor,可選的) -輸出張量。

  • dtype(torch.dtype, 可選的) -返回張量的所需數據類型。默認值:如果 None ,使用全局默認值(參見 torch.set_default_tensor_type() )。

  • layout(torch.layout, 可選的) -返回張量的所需布局。默認值:torch.strided

  • device(torch.device, 可選的) -返回張量的所需設備。默認值:如果 None ,使用當前設備作為默認張量類型(參見 torch.set_default_tensor_type() )。 device 將是 CPU 張量類型的 CPU 和 CUDA 張量類型的當前 CUDA 設備。

  • requires_grad(bool,可選的) -如果 autograd 應該在返回的張量上記錄操作。默認值:False

計算大小為 n 的信號的離散傅裏葉變換采樣頻率。

注意

按照慣例, fft() 首先返回正頻率項,然後以相反的順序返回負頻率,因此 Python 中所有 f[-i] 給出負頻率項。對於長度為 n 且輸入以長度單位 d 間隔的 FFT,頻率為:

f = [0, 1, ..., (n - 1) // 2, -(n // 2), ..., -1] / (d * n)

注意

對於偶數長度,f[n/2] 處的奈奎斯特頻率可以被視為負或正。 fftfreq() 遵循 NumPy 的約定,將其視為負數。

示例

>>> 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])

相關用法


注:本文由純淨天空篩選整理自pytorch.org大神的英文原創作品 torch.fft.fftfreq。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。