tf.keras.ops.irfft

Inverse real-valued Fast Fourier transform along the last axis.

Computes the inverse 1D Discrete Fourier Transform of a real-valued signal over the inner-most dimension of input.

The inner-most dimension of the input is assumed to be the result of RFFT: the fft_length / 2 + 1 unique components of the DFT of a real-valued signal. If fft_length is not provided, it is computed from the size of the inner-most dimension of the input (fft_length = 2 * (inner - 1)). If the FFT length used to compute is odd, it should be provided since it cannot be inferred properly.

Along the axis IRFFT is computed on, if fft_length / 2 + 1 is smaller than the corresponding dimension of the input, the dimension is cropped. If it is larger, the dimension is padded with zeros.

xTuple of the real and imaginary parts of the input tensor. Both tensors in the tuple should be of floating type.
fft_lengthAn integer representing the number of the fft length. If not specified, it is inferred from the length of the last axis of x. Defaults to None.

A tensor containing the inverse real-valued Fast Fourier Transform along the last axis of x.

Examples:

real = keras.ops.convert_to_tensor([0.0, 1.0, 2.0, 3.0, 4.0])
imag = keras.ops.convert_to_tensor([0.0, 1.0, 2.0, 3.0, 4.0])
irfft((real, imag))
array([0.66666667, -0.9106836, 0.24401694])
irfft(rfft(real, 5), 5)
array([0.0, 1.0, 2.0, 3.0, 4.0])