#### Previous topic

scipy.fftpack.rfft

#### Next topic

scipy.fftpack.dct

# scipy.fftpack.irfft

`scipy.fftpack.``irfft`(x, n=None, axis=-1, overwrite_x=False)

  Return inverse discrete Fourier transform of real sequence x.

  The contents of x are interpreted as the output of the `rfft` function.

  Parameters:

  x : array_like

  > Transformed data to invert.

  n : int, optional

  > Length of the inverse Fourier transform. If n < x.shape[axis], x is truncated. If n > x.shape[axis], x is zero-padded. The default results in n = x.shape[axis].

  axis : int, optional

  > Axis along which the ifft’s are computed; the default is over the last axis (i.e., axis=-1).

  overwrite_x : bool, optional

  > If True, the contents of x can be destroyed; the default is False.

  Returns:

  irfft : ndarray of floats

  > The inverse discrete Fourier transform.

  See also

  `rfft`, `ifft`

  Notes

  The returned real array contains:

      [y(0),y(1),...,y(n-1)]

  where for n is even:

      y(j) = 1/n (sum[k=1..n/2-1] (x[2*k-1]+sqrt(-1)*x[2*k])
                                   * exp(sqrt(-1)*j*k* 2*pi/n)
                  + c.c. + x[0] + (-1)**(j) x[n-1])

  and for n is odd:

      y(j) = 1/n (sum[k=1..(n-1)/2] (x[2*k-1]+sqrt(-1)*x[2*k])
                                   * exp(sqrt(-1)*j*k* 2*pi/n)
                  + c.c. + x[0])

  c.c. denotes complex conjugate of preceding expression.

  For details on input parameters, see `rfft`.