快捷方式

torch.fft.rfftfreq

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

计算信号大小为 nrfft() 的采样频率。

注意

rfft() 返回厄密(Hermitian)一侧输出,因此只返回正频率项。对于长度为 n 且输入间隔为长度单位 d 的实数 FFT,频率为

f = torch.arange((n + 1) // 2) / (d * n)

注意

对于偶数长度,f[n/2] 处的奈奎斯特频率可以认为是负的或正的。与 fftfreq() 不同,rfftfreq() 总是将其返回为正数。

参数
  • n (int) – 实数 FFT 长度

  • d (float, optional) – 采样长度尺度。FFT 输入个体采样之间的间隔。默认假定单位间隔,将该结果除以实际间隔即可得到物理频率单位的结果。

关键字参数
  • 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])

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取针对初学者和高级开发者的深度教程

查看教程

资源

查找开发资源并获得问题解答

查看资源