torch.fft.rfftfreq¶
- torch.fft.rfftfreq(n, d=1.0, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) 张量¶
计算信号大小为
n的rfft()的样本频率。注意
rfft()返回厄米特单边输出,因此只返回正频率项。对于长度为n的实数 FFT 和以长度单位d间隔的输入,频率为:f = torch.arange((n + 1) // 2) / (d * n)
注意
对于偶数长度,奈奎斯特频率在
f[n/2]可以被认为是 负数或正数。与fftfreq()不同,rfftfreq()总是将其返回为正数。- Parameters
- Keyword Arguments
输出 (张量, 可选) – 输出张量。
dtype (
torch.dtype, 可选) – 返回张量的所需数据类型。 默认值:如果None,则使用全局默认值(参见torch.set_default_dtype())。布局 (
torch.layout, 可选) – 返回张量的所需布局。 默认值:torch.strided。设备 (
torch.device, 可选) – 返回张量所需的设备。 默认值:如果None,则使用默认张量类型的当前设备 (参见torch.set_default_device())。device将是 CPU 用于 CPU 张量类型,以及当前 CUDA 设备用于 CUDA 张量类型。requires_grad (布尔值, 可选) – 如果 autograd 应该记录对返回张量的操作。默认值:
False。
示例
>>> torch.fft.rfftfreq(5) 张量([0.0000, 0.2000, 0.4000])
>>> torch.fft.rfftfreq(4) 张量([0.0000, 0.2500, 0.5000])
与
fftfreq()的输出相比,我们看到在f[2]处的奈奎斯特频率符号发生了变化: >>> torch.fft.fftfreq(4) tensor([ 0.0000, 0.2500, -0.5000, -0.2500])