jax.numpy.fft.irfft

Contents

jax.numpy.fft.irfft#

jax.numpy.fft.irfft(a, n=None, axis=-1, norm=None)[source]#

Computes the inverse of rfft.

LAX-backend implementation of numpy.fft.irfft().

Original docstring below.

This function computes the inverse of the one-dimensional n-point discrete Fourier Transform of real input computed by rfft. In other words, irfft(rfft(a), len(a)) == a to within numerical accuracy. (See Notes below for why len(a) is necessary here.)

The input is expected to be in the form returned by rfft, i.e. the real zero-frequency term followed by the complex positive frequency terms in order of increasing frequency. Since the discrete Fourier Transform of real input is Hermitian-symmetric, the negative frequency terms are taken to be the complex conjugates of the corresponding positive frequency terms.

Parameters:
  • a (array_like) – The input array.

  • n (int, optional) – Length of the transformed axis of the output. For n output points, n//2+1 input points are necessary. If the input is longer than this, it is cropped. If it is shorter than this, it is padded with zeros. If n is not given, it is taken to be 2*(m-1) where m is the length of the input along the axis specified by axis.

  • axis (int, optional) – Axis over which to compute the inverse FFT. If not given, the last axis is used.

  • norm ({"backward", "ortho", "forward"}, optional)

Returns:

out – The truncated or zero-padded input, transformed along the axis indicated by axis, or the last one if axis is not specified. The length of the transformed axis is n, or, if n is not given, 2*(m-1) where m is the length of the transformed axis of the input. To get an odd number of output points, n must be specified.

Return type:

ndarray