# Computing FFT

Intel MKL The FFT functions are provided with the Fortran and C interfaces. Fortran stands for Fortran 95. The FFT interface relies critically on many modern features offered in Fortran 95 that have no counterpart in FORTRAN 77

### Note

Following the explicit function interface in Fortran, data array must be defined as one-dimensional for any transformation type.

The materials presented in this section assume the availability of native complex types in C as they are specified in C9X.

You can find code examples that use FFT interface functions to compute transform results in Fourier Transform Functions Code Examples.

For most common situations, an FFT computation can be effected by four function calls. The approach adopted in Intel MKL for FFT computation uses one single data structure, the descriptor, to record flexible configuration whose parameters can be changed independently. This results in enhanced functionality and ease of use.

The record of type DFTI_DESCRIPTOR, when created, contains information about the length and domain of the FFT to be computed, as well as the setting of rather a large number of configuration parameters. The default settings for all of these parameters include, for example, the following:

- the FFT to be computed does not have a scale factor;

- there is only one set of data to be transformed;

- the data is stored contiguously in memory;

- the computed result overwrites (in place) the input data; etc.

Should any one of these many default settings be inappropriate, they can be changed one-at-a-time through the function DftiSetValue as illustrated in the Example “Changing Default Settings (Fortran)” and Example “Changing Default Settings (C)”.

Parent topic: FFT Functions