torch.fft.ihfft
-
torch.fft.ihfft(input, n=None, dim=- 1, norm=None, *, out=None) → Tensor -
Вычисляет обратную величину
hfft().inputдолжна быть вещественным сигналом, интерпретируемым в частотной области. Обратное преобразование Фурье вещественного сигнала является эрмитово-симметричным,X[i] = conj(X[-i]).ihfft()представляет это в односторонней форме, где включены только положительные частоты ниже частоты Найквиста. Для вычисления полного результата используйтеifft().Примечание
Поддерживает torch.half на CUDA с архитектурой GPU SM53 или выше. Однако поддерживает только длину сигнала, являющуюся степенью двойки, в каждой преобразованной размерности.
- Параметры:
-
- input (Тензор) – вещественный входной тензор
- n (int, необязательно) – Длина сигнала. Если указано, вход будет либо дополнен нулями, либо усечен до этой длины перед вычислением обратного эрмитова преобразования Фурье.
- dim (int, необязательно) – Размерность, по которой выполняется одномерное обратное эрмитово преобразование Фурье.
-
norm (строка, необязательно) –
Режим нормализации. Для обратного преобразования (
ihfft()), они соответствуют:-
"forward"- без нормализации -
"backward"- нормализация по1/n -
"ortho"- нормализация по1/sqrt(n)(делая обратное преобразование ортогональным)
Вызов прямого преобразования (
hfft()) с тем же режимом нормализации применит общую нормализацию1/nмежду двумя преобразованиями. Это необходимо, чтобыihfft()было точной обратной операцией.По умолчанию
"backward"(нормализация по1/n). -
- Ключевые аргументы:
-
out (Тензор, необязательно) – выходной тензор.
Пример
>>> 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])
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/1.13/generated/torch.fft.ihfft.html