Skip to main content
`Ctrl`+`K`
scipy.fft.

# rfft2

scipy.fft.rfft2(x, s=None, axes=(-2, -1), norm=None, overwrite_x=False, workers=None, *, plan=None)

  Compute the 2-D FFT of a real array.

  Parameters:
    x array

      Input array, taken to be real.

    s sequence of ints, optional

      Shape of the FFT.

    axes sequence of ints, optional

      Axes over which to compute the FFT.

    norm{“backward”, “ortho”, “forward”}, optional

      Normalization mode (see `fft`). Default is “backward”.

    overwrite_x bool, optional

      If True, the contents of x can be destroyed; the default is False. See `fft` for more details.

    workers int, optional

      Maximum number of workers to use for parallel computation. If negative, the value wraps around from `os.cpu_count()`. See `fft` for more details.

    plan object, optional

      This argument is reserved for passing in a precomputed plan provided by downstream FFT vendors. It is currently not used in SciPy.

      Added in version 1.5.0.

  Returns:
    out ndarray

      The result of the real 2-D FFT.

  See also

  `irfft2`

    The inverse of the 2-D FFT of real input.

  `rfft`

    The 1-D FFT of real input.

  `rfftn`

    Compute the N-D discrete Fourier Transform for real input.

  Notes

  This is really just `rfftn` with different default behavior. For more details see `rfftn`.

  Examples

      >>> import scipy.fft
      >>> import numpy as np
      >>> x = np.broadcast_to([1, 0, -1, 0], (4, 4))
      >>> scipy.fft.rfft2(x)
      array([[0.+0.j, 8.+0.j, 0.+0.j],
             [0.+0.j, 0.+0.j, 0.+0.j],
             [0.+0.j, 0.+0.j, 0.+0.j],
             [0.+0.j, 0.+0.j, 0.+0.j]])