torch.fft.rfftfreq¶
- torch.fft.rfftfreq(n, d=1.0, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) Tensor¶
計算訊號大小為
n的rfft()的取樣頻率。注意
rfft()返回厄密(Hermitian)一側輸出,因此只返回正頻率項。對於長度為n且輸入間隔為長度單位d的實數 FFT,頻率為f = torch.arange((n + 1) // 2) / (d * n)
注意
對於偶數長度,
f[n/2]處的奈奎斯特頻率可以認為是負的或正的。與fftfreq()不同,rfftfreq()總是將其返回為正數。- 引數
- 關鍵字引數
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.rfftfreq(5) tensor([0.0000, 0.2000, 0.4000])
>>> torch.fft.rfftfreq(4) tensor([0.0000, 0.2500, 0.5000])
與
fftfreq()的輸出相比,我們看到f[2]處的奈奎斯特頻率符號發生了變化: >>> torch.fft.fftfreq(4) tensor([ 0.0000, 0.2500, -0.5000, -0.2500])