The continuous Fourier transform is defined as
(1)
| |||
(2)
|
Now consider generalization to the case of a discrete function, by letting , where , with , ..., . Writing this out gives the discrete Fourier transform as
(3)
|
The inverse transform is then
(4)
|
Discrete Fourier transforms (DFTs) are extremely useful because they reveal periodicities in input data as well as the relative strengths of any periodic components. There are however a few subtleties in the interpretation of discrete Fourier transforms. In general, the discrete Fourier transform of a real sequence of numbers will be a sequence of complex numbers of the same length. In particular, if are real, then and are related by
(5)
|
for , 1, ..., , where denotes the complex conjugate. This means that the component is always real for real data.
As a result of the above relation, a periodic function will contain transformed peaks in not one, but two places. This happens because the periods of the input data become split into "positive" and "negative" frequency complex components.
The fast Fourier transform is a particularly efficient algorithm for performing discrete Fourier transforms of samples containing certain numbers of points.
There are two main types of errors that may affect discrete Fourier transforms: aliasing and leakage.
The plots above show the real part (red), imaginary part (blue), and complex modulus (green) of the discrete Fourier transforms of the functions (left figure) and (right figure) sampled 50 times over two periods. In the left figure, the symmetrical spikes on the left and right side are the "positive" and "negative" frequency components of the single sine wave. Similarly, in the right figure, there are two pairs of spikes, with the larger green spikes corresponding to the lower-frequency stronger component and the smaller green spikes corresponding to the higher-frequency weaker component. A suitably scaled plot of the complex modulus of a discrete Fourier transform is commonly known as a power spectrum.
The Wolfram Language implements the discrete Fourier transform for a list of complex numbers as Fourier[list].
The discrete Fourier transform is a special case of the Z-transform.
The discrete Fourier transform can be computed efficiently using a fast Fourier transform.
Adding an additional factor of in the exponent of the discrete Fourier transform gives the so-called (linear) fractional Fourier transform.
The discrete Fourier transform can also be generalized to two and more dimensions. For example, the plot above shows the complex modulus of the 2-dimensional discrete Fourier transform of the function .