torch.fft.rfftfreq
-
torch.fft.rfftfreq(n, d=1.0, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor[исходный код] -
Вычисляет частоты отсчётов для
rfft()для сигнала размераn.Примечание
rfft()возвращает односторонний эрмитов результат, поэтому возвращаются только положительные частоты. Для вещественного БПФ длиныnс входными данными, расстояние между которыми равноd, частоты имеют следующий вид:f = torch.arange((n + 1) // 2) / (d * n)
Примечание
Для чётных длин частоту Найквиста в точке
f[n/2]можно считать как отрицательной, так и положительной. В отличие отfftfreq(),rfftfreq()всегда возвращает её как положительную.- Параметры:
- Именованные аргументы:
-
- out (Tensor, необязательный) – выходной тензор.
-
dtype (
torch.dtype, необязательно) – требуемый тип данных возвращаемого тензора. По умолчанию: еслиNone, используется глобальное значение по умолчанию (см.torch.set_default_dtype()). -
layout (
torch.layout, необязательно) – требуемый формат возвращаемого тензора. По умолчанию:torch.strided. -
device (
torch.device, необязательно) – требуемое устройство для возвращаемого тензора. По умолчанию: еслиNone, используется текущее устройство для типа тензора по умолчанию (см.torch.set_default_device()).deviceбудет CPU для типов тензоров CPU и текущим устройством CUDA для типов тензоров CUDA. -
requires_grad (bool, необязательный) – следует ли 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])
© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.fft.rfftfreq.html