当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。