ifftr#
- class diffsptk.RealValuedInverseFastFourierTransform(fft_length: int, out_length: int | None = None, learnable: bool = False)[source]#
See this page for details.
- Parameters:
- fft_lengthint >= 2
The FFT length, \(L\).
- out_lengthint >= 1 or None
The output length, \(N\).
- learnablebool
Whether to make the DFT basis learnable. If True, the module performs DFT rather than FFT.
- forward(y: Tensor) Tensor [source]#
Compute inverse FFT of a complex spectrum.
- Parameters:
- yTensor [shape=(…, L/2+1)]
The complex input spectrum.
- Returns:
- outTensor [shape=(…, N)]
The real output signal.
Examples
>>> x = diffsptk.ramp(1, 3) >>> x tensor([1., 2., 3.]) >>> fftr = diffsptk.RealValuedFastFourierTransform(8) >>> ifftr = diffsptk.RealValuedInverseFastFourierTransform(8, 3) >>> x2 = ifftr(fftr(x)) >>> x2 tensor([1., 2., 3.])