torch.fft.ihfft
-
torch.fft.ihfft(input, n=None, dim=-1, norm=None, *, out=None) → Tensor[source] -
Вычисляет обратное преобразование для
hfft().inputдолжен быть сигналом с действительными значениями, интерпретируемым в частотной области. ДПФ действительного сигнала является эрмитово-симметричным,X[i] = conj(X[-i]).ihfft()представляет его в односторонней форме, включающей только положительные частоты ниже частоты Найквиста. Чтобы получить полный результат, используйтеifft().Примечание
Поддерживается torch.half на CUDA с архитектурой GPU SM53 или выше. Однако длина сигнала в каждом преобразуемом измерении должна быть степенью числа 2.
- Параметры:
-
- input (Tensor) – входной тензор с действительными значениями
- n (int, optional) – Длина сигнала. Если указана, перед вычислением эрмитова обратного БПФ входной сигнал будет дополнен нулями или обрезан до этой длины.
- dim (int, optional) – Измерение, вдоль которого выполняется одномерное эрмитово обратное БПФ.
-
norm (str, optional) –
Режим нормализации. Для обратного преобразования (
ihfft()) ему соответствуют следующие значения:-
"forward"— без нормализации -
"backward"— нормализация делением на1/n -
"ortho"— нормализация делением на1/sqrt(n)(обеспечивает ортонормированность обратного БПФ)
Вызов прямого преобразования (
hfft()) с тем же режимом нормализации обеспечит общую нормализацию1/nдля двух преобразований. Это необходимо, чтобыihfft()было точным обратным преобразованием.По умолчанию используется
"backward"(нормализация делением на1/n). -
- Именованные аргументы:
-
out (Tensor, optional) – выходной тензор.
Пример
>>> t = torch.arange(5) >>> t tensor([0, 1, 2, 3, 4]) >>> torch.fft.ihfft(t) tensor([ 2.0000-0.0000j, -0.5000-0.6882j, -0.5000-0.1625j])
Сравнение с полным результатом
ifft():>>> torch.fft.ifft(t) tensor([ 2.0000-0.0000j, -0.5000-0.6882j, -0.5000-0.1625j, -0.5000+0.1625j, -0.5000+0.6882j])
© 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.ihfft.html