This is documentation for Mathematica 8, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.2)


finds the discrete Fourier transform of a list of complex numbers.
  • The discrete Fourier transform of a list of length n is by default defined to be . »
  • Note that the zero frequency term appears at position 1 in the resulting list.
  • Other definitions are used in some scientific and technical fields.
  • Different choices of definitions can be specified using the option FourierParameters.
  • Some common choices for are (default), (data analysis), (signal processing).
  • The setting effectively corresponds to conjugating both input and output lists.
  • To ensure a unique inverse discrete Fourier transform, b must be relatively prime to n. »
  • The list of data supplied to Fourier need not have a length equal to a power of two.
  • The list given in Fourier[list] can be nested to represent an array of data in any number of dimensions.
  • The array of data must be rectangular.
  • If the elements of list are exact numbers, Fourier begins by applying N to them.
Find a discrete Fourier transform:
Find a power spectrum:
Find a discrete Fourier transform:
Click for copyable input
Find a power spectrum:
Click for copyable input
Fourier always gives approximate numerical results:
Use Chop to remove negligible imaginary parts:
x is a list of real values:
Compute the Fourier transform with machine arithmetic:
Compute using 24-digit precision arithmetic:
Compute a 2D Fourier transform:
x is a rank 3 tensor with nonzero diagonal:
Compute the 3D Fourier transform:
No normalization:
Normalization by :
Normalization by :
Data from a Sinc function with noise:
Ordinary spectrum without normalization:
Partial spectrum:
Fourier spectrum of "white noise":
Show the logarithmic spectrum, including the first (DC) component:
The spectrum of a "pulse" is completely flat:
Power spectrum of the Thue-Morse nested sequence
Power spectrum of the Fibonacci nested sequence
2D power spectrum of a nested pattern:
Plot the nested pattern:
Find the logarithmic power spectrum:
Find the Fourier transform of the rule 30 cellular automaton pattern:
Logarithmic power spectrum:
Compute discrete cyclic convolutions to smooth a discontinuous function with a Gaussian:
Compute the cyclic convolution:
Show the original and smoothed function:
The convolution is consistent with ListConvolve:
Here is some periodic data with some noise:
Find the maximum mode in the spectrum:
Find a high-resolution spectrum between modes where the maximum was found:
Determine the period from the frequencies:
m is a circulant differentiation matrix:
Because the eigenvalues of m are:
The eigenvectors are the columns of the DFT matrix, so Fourier diagonalizes m:
This allows very efficient computation of MatrixExp for a particular vector:
Show the approximate evolution of the heat equation on the unit interval:
For real inputs, all elements after the first come in complex conjugate pairs:
The power spectrum is symmetric:
Cyclic convolution corresponds to multiplication of Fourier transforms:
is given by :
Fourier is equivalent to matrix multiplication:
The conjugate transpose of the matrix is equivalent to InverseFourier:
If b is not relatively prime to n, the transform may not be invertible:
Lengths that are powers of 2 or factorizable into a product of small primes will be faster:
New in 1 | Last modified in 5