DFT matrix
From Wikipedia, the free encyclopedia
A DFT matrix is an expression of a discrete Fourier transform (DFT) as a matrix multiplication.
Contents |
[edit] Definition
An N-point DFT is expressed as an N-by-N matrix multiplication as X = Wx, where x is the original input signal, and X is the DFT of the signal.
The matrix W of size nxn, may be described as a Vandermonde matrix: W = V(w) where w is a vector with the ith coordinate is , the nth root of unity.
Fast Fourier Transform algorithms utilise the symmetries of the matrix to reduce the time of multiplying a vector by this matrix, from the usual O(N2). Similar techniques can be applied for multiplications by matrices such as Hadamard matrix and the Walsh matrix.
[edit] Special cases
The three-point DFT has a special significance, e.g. as symmetrical components transform (SCT) of Charles Legeyt Fortescue's 1918 paper, that defines three phase balance, i.e. the 3-DFT breaks a signal up into a DC component, as well as two AC components, one going clockwise, and the other going counter clockwise.
[edit] Examples
[edit] Two-point
The two-point DFT is a simple case, in which the first entry is the DC (sum) and the second entry is the AC (difference).
The first row performs the sum, and the second row performs the difference.
The factor of is to make the transform unitary (see below).
[edit] Four-point
The four-point DFT matrix is as follows:
[edit] Eight-point
The first non-trivial integer power of two case is for 8 points:
where
The following image depicts the DFT as a matrix multiply, with elements of the matrix depicted by samples of complex exponentials:
The real part (cosine wave) is denoted by a solid line, and the imaginary part by a dashed (dotted) line.
The top row is all ones (scaled by for unitarity), so it "measures" the DC component in the input signal. The next row is eight samples of negative one cycle of a complex exponential, i.e. a signal with a fractional frequency of -1/8, so it "measures" how much "strength" there is at fractional frequency +1/8 in the signal. Recall that a matched filter compares the signal with a time reversed version of whatever we're looking for, so when we're looking for fracfreq. 1/8 we compare with fracfreq. −1/8 so that is why this row is a negative frequency. The next row is negative two cycles of a complex exponential, sampled in eight places, so it has a fractional frequency of −1/4, and thus "measures" the extent to which the signal has a fractional frequency of +1/4.
The following summarizes how the 8 point DFT works, row by row, in terms of fractional frequency:
- 0 measures how much DC is in the signal
- −1/8 measures how much of the signal has a fractional frequency of +1/8
- −1/4 measures how much of the signal has a fractional frequency of +1/4
- −3/8 measures how much of the signal has a fractional frequency of +3/8
- −1/2 measures how much of the signal has a fractional frequency of +1/2
- −5/8 measures how much of the signal has a fractional frequency of +5/8
- −3/4 measures how much of the signal has a fractional frequency of +3/4
- −7/8 measures how much of the signal has a fractional frequency of +7/8
Equivalently the last row can be said to have a fractional frequency of +1/8 and thus measure how much of the signal has a fractional frequency of −1/8. In this way, it could be said that the top rows of the matrix "measure" positive frequency content in the signal and the bottom rows measure negative frequency component in the signal.
[edit] Generalized
where is the first negative Nth root of unity (i.e. the first root of unity in the direction of negative frequency).
The convention is to go in a negative direction since the DFT is ordinarily thought of as a matched filter, i.e. when looking for a frequency of +1, one correlates the incoming signal with a frequency of −1. Thus each row of the matrix is a sampled complex exponential of negative frequency, that measures the corresponding positive frequency signal strength in the signal under analysis.
Note that the normalization factor in front of the sum () and the sign of the exponent are merely conventions, and differ in some treatments. All of the following discussion applies regardless of the convention, with at most minor adjustments. The only important thing is that the forward and inverse transforms have opposite-sign exponents, and that the product of their normalization factors be 1/N. However, the is preferred, since it defines the transform as a unitary transform, and the resulting DFT matrix is a unitary matrix.
[edit] Unitary transform
The DFT is (or can be, through appropriate selection of scaling) a unitary transform, i.e. one that preserves energy. The appropriate choice of scaling to achieve unitarity is , so that the energy in the physical domain will be the same as the energy in the Fourier domain, i.e. to satisfy Parseval's theorem. (Other, non-unitary, scalings, are also commonly used for computational convenience; e.g. the convolution theorem takes on a slightly simpler form with the scaling shown in the discrete Fourier transform article.)
[edit] Other properties
For other properties of the DFT matrix, including its eigenvalues, connection to convolutions, applications, and so on, see the discrete Fourier transform article.
[edit] In the limit: The Fourier operator
If we make a very large matrix with complex exponentials in the rows (i.e. cosine real parts and sine imaginary parts), and increase the resolution without bound, we approach the kernel of the Fredholm integral equation of the 2nd kind, namely the Fourier operator that defines the continuous Fourier transform. A rectangular portion of this continuous Fourier operator can be displayed as an image, analogous to the DFT matrix, as shown at right, where greyscale pixel value denotes numerical quantity.
[edit] References
- The Transform and Data Compression Handbook by P. C. Yip, K. Ramamohan Rao - See chapter 2 for a treatment of the DFT based largely on the DFT matrix