Developer Reference

  • 2021
  • 03/26/2021
  • Public Content

Discrete Fourier Transform Functions

The functions described in this section compute the forward and inverse discrete Fourier transform of real and complex signals. The DFT is less efficient than the fast Fourier transform, however the length of the vector transformed by the DFT can be arbitrary.
argument, passed to the initialization functions, suggests using special algorithm, faster or more accurate. The
argument specifies the result normalization method. The complex signal can be represented as a single array containing complex elements, or two separate arrays containing real and imaginary parts. The output result of the FFT can be packed in Pack, Perm, or CCS formats.
To use the DFT functions, you should initialize the specification structure which contains such data as tables of twiddle factors. Use the
functions to initialize the specification structure both for forward and inverse transforms. Before using these functions, compute the size of the DFT specification structure using the
functions and allocate memory for the structure beforehand.
Speed up the DFT by using an external buffer. The size of the external buffer is returned by the
For more information about the fast computation of the discrete Fourier transform, see [Mit93], section 8-2,
Fast Computation of the DFT
A special set of Intel IPP functions provides the so called “out-of-order” DFT of the complex signal. In this case, the elements in frequency domain for both forward and inverse transforms can be re-ordered to speed-up the computation of the transforms. This re-ordering is hidden from the user and can be different in different implementations of the functions. However, reversibility of each pair of functions for forward/inverse transforms is ensured.

Product and Performance Information


Performance varies by use, configuration and other factors. Learn more at