next DFT Problems
previous The Length 2 DFT
up The DFT Derived   Contents   Global Contents
global_index Global Index   Index   Search


Matrix Formulation of the DFT

The DFT can be formulated as a complex matrix multiply, as we show in this section. (This section can be omitted without affecting what follows.) For basic definitions regarding matrices, see Appendix D.

The DFT consists of inner products of the input signal $ \underline{x}$ with sampled complex sinusoidal sections $ \underline{s}_k$:

$\displaystyle X(\omega_k) \isdef \left<\underline{x},\underline{s}_k\right> \isdef \sum_{n=0}^{N-1}\underline{x}(n) e^{-j 2\pi n k/N},
\quad k=0,1,2,\ldots,N-1
$

By collecting the DFT output samples into a column vector, we have

$\displaystyle \left[\begin{array}{c}
X(\omega_0) \\
X(\omega_1) \\
X(\omega_...
...gin{array}{c}
x(0) \\
x(1) \\
x(2) \\
\vdots \\
x(N-1)
\end{array}\right]
$

or

$\displaystyle \underline{X}= S_N \underline{x}
$

where $ S_N$ denotes the DFT matrix $ S_N[k,n]\isdef W_N^{-kn} \isdef
e^{-j2\pi k n/N}$, or,

\begin{eqnarray*}
S_N &\isdef &
\left[\begin{array}{cccc}
s_0(0) & s_0(1) & \cd...
...2(N-1)/N} & \cdots & e^{-j 2\pi (N-1)(N-1)/N}
\end{array}\right]
\end{eqnarray*}

We see that the $ k$th row of the DFT matrix is the $ k$th DFT sinusoid. Since the matrix is symmetric, $ S_N^{\hbox{\tiny T}}=S_N$ (where transposition does not include conjugation), we observe that the $ k$th column of $ S_N$ is also the $ k$th DFT sinusoid. Computation of the DFT matrix in Matlab is illustrated in §I.4.3.

The inverse DFT matrix is simply $ \overline{S_N}/N$. That is, we can perform the inverse DFT operation as

$\displaystyle \underline{x}= \frac{1}{N} S_N^{\ast } \underline{X}
$

where $ A^{\ast }\isdef \overline{A^{\hbox{\tiny T}}}$ denotes the Hermitian transpose of the complex matrix $ A$ (transposition and complex conjugation). Since $ \underline{X}= S_N \underline{x}$, the above implies

$\displaystyle S_N^{\ast } S_N = N\cdot I
$

The above equation succinctly implies that the columns of $ S_N$ are orthogonal, which, of course, we already knew.

The normalized DFT matrix is given by

$\displaystyle {\tilde S}_N \isdef \frac{1}{\sqrt{N}} S_N
$

and the corresponding normalized inverse DFT matrix is simply $ \overline{{\tilde S}_N}={\tilde S}_N^{\ast }$, so that we have

$\displaystyle {\tilde S}_N^{\ast } {\tilde S}_N = I.
$

This implies that the columns of $ S_N$ are orthonormal. Such a complex matrix is said to be unitary.

When a real matrix $ A$ satisfies $ A^{\hbox{\tiny T}}A = I$, then $ A$ is said to be orthogonal. ``Unitary'' is the generalization of ``orthogonal'' to complex matrices.


next DFT Problems
previous The Length 2 DFT
up The DFT Derived   Contents   Global Contents
global_index Global Index   Index   Search

``Mathematics of the Discrete Fourier Transform (DFT)'', by Julius O. Smith III, W3K Publishing, 2003, ISBN 0-9745607-0-7.

(Browser settings for best viewing results)
(How to cite this work)
(Order a printed hardcopy)

Copyright © 2003-10-09 by Julius O. Smith III
Center for Computer Research in Music and Acoustics (CCRMA),   Stanford University
CCRMA  (automatic links disclaimer)