next up previous
Next: An Example Up: fourier Previous: The function and orthogonal

Vector form of 1D-DFT

The summation expression for DFT

\begin{displaymath}X[n]=\frac{1}{\sqrt{N}}\sum_{m=0}^{N-1} x[m]e^{-mn j2\pi/N}
...
...0}^{N-1} X[n]e^{mn j2\pi/N}
=\sum_{n=0}^{N-1} w_N^{-mn} X[n] \end{displaymath}


\begin{displaymath}m,n=0, 1, \cdots, N-1 \end{displaymath}

can also be written more conveniently as a matrix-vector multiplication:

\begin{displaymath}\left[ \begin{array}{c} X[0]  . . X[N-1] \end{array} \r...
...t[ \begin{array}{c} x[0]  . . x[N-1] \end{array} \right]
\end{displaymath}

and

\begin{displaymath}\left[ \begin{array}{c} x[0]  . . x[N-1] \end{array} \r...
...t[ \begin{array}{c} X[0]  . . X[N-1] \end{array} \right]
\end{displaymath}

It is obvious that the complexity of 1D DFT takes is $O(N^2)$, which, as we will see later, can be reduced to $O(N\; log_2 N)$ by Fast Fourier Transform (FFT) algorithms.

These matrix-vector multiplications can be represented more concisely as:


\begin{displaymath}{\bf X}={\bf W}^{-1} {\bf x} \end{displaymath}

and

\begin{displaymath}{\bf x}={\bf W} {\bf X} \end{displaymath}

where both ${\bf X}$ and ${\bf x}$ are $N \times 1$ column (vertical) vectors:

\begin{displaymath}{\bf X}\stackrel{\triangle}{=}
\left[ \begin{array}{c} X[0] ...
...y}{c} x[0]  . . x[N-1] \end{array}
\right]_{N\times 1}
\end{displaymath}

and $W$ is an $N \times N$ matrix:

\begin{displaymath}{\bf W}=\left[ \begin{array}{ccc} . & . & .  . & w_{mn} & . \\
. & . & . \end{array} \right]_{N\times N}
\end{displaymath}

where $w_{mn}$ is an element in the mth row and nth column of matrix $W$ and $w_{mn}^*$ is its complex conjugate:

\begin{displaymath}w_{mn}\stackrel{\triangle}{=}\frac{1}{\sqrt{N}}(e^{j2\pi/N})^...
...\;\;\;\;\;\;\;
w_{mn}^*=\frac{1}{\sqrt{N}}(e^{-j2\pi/N})^{mn} \end{displaymath}

Obviously ${\bf W}$ is symmetric ($w_{mn}=w_{nm}$)

\begin{displaymath}{\bf W}^T={\bf W} \end{displaymath}

but ${\bf W}$ is not Hermitian:

\begin{displaymath}{\bf W}^{*T}={\bf W}^*\neq {\bf W} \end{displaymath}

${\bf W}$ is a unitary matrix,

\begin{displaymath}{\bf W}^{*T}={\bf W}^*={\bf W}^{-1} \end{displaymath}

because its rows (or columns) are orthogonal:

\begin{displaymath}({\bf w}_m, {\bf w}_n)=\sum_{k=0}^{N-1} w_{mk}^* w_{nk}
=\fr...
...{k=0}^{N-1} (e^{j2\pi/N})^{(n-m)k}
\stackrel{*}{=}\delta_{mn}
\end{displaymath}

This is because:

The DFT pair can be rewritten as:

\begin{displaymath}{\bf X}={\bf W}^* {\bf x},\;\;\;\;\;\;\;{\bf x}={\bf W} {\bf X} \end{displaymath}

See additional geometric explanation of unitary/orthogonal transform.


next up previous
Next: An Example Up: fourier Previous: The function and orthogonal
Ruye Wang 2009-12-31