AoZai
AoZai

Reading Notice

These are personal study and translation notes for reference only; the original course materials belong to MIT OpenCourseWare and their respective rights holders.

ZoomNotes for Linear Algebra

Gilbert Strang, MIT 18.06 · Ch.9 / 11

Part 9: Complex Numbers and the Fourier Matrix

9.1 Complex Numbers x+iy=reiθx + iy = re^{i\theta}: Unit Circle r=1r = 1

A complex number is z=x+iyz = x + iy where i2=1i^2 = -1.

Polar Form (Euler's formula):

eiθ=cosθ+isinθz=reiθ=r(cosθ+isinθ)e^{i\theta} = \cos\theta + i\sin\theta \\ z = re^{i\theta} = r(\cos\theta + i\sin\theta)

where r=z=x2+y2r = |z| = \sqrt{x^2 + y^2} is the modulus and θ=arg(z)\theta = \arg(z) is the argument.

Complex Conjugate: zˉ=xiy=reiθ\bar{z} = x - iy = re^{-i\theta}.

Key identity: z2=zzˉ=x2+y2|z|^2 = z \bar{z} = x^2 + y^2.

The unit circle: z=eiθz = e^{i\theta} has z=1|z| = 1. Points on the unit circle are cosθ+isinθ\cos\theta + i\sin\theta.

Roots of Unity: The NNth roots of 1 are e2πik/Ne^{2\pi i k / N} for k=0,1,,N1k = 0, 1, \dots, N-1.


9.2 Complex Matrices: Hermitian S=SHS = S^H and Unitary Q1=QHQ^{-1} = Q^H

Complex Vectors in Cn\mathbb{C}^n:

  • Inner product: z,w=zˉ1w1++zˉnwn=zHw\langle z, w \rangle = \bar{z}_1 w_1 + \cdots + \bar{z}_n w_n = z^H w
  • Length: z2=z12++zn2=zHz\|z\|^2 = |z_1|^2 + \cdots + |z_n|^2 = z^H z

Conjugate Transpose (Hermitian): AH=AˉTA^H = \bar{A}^T. Also written as AA^*.

Hermitian Matrices: S=SHS = S^H (i.e., Sij=SˉjiS_{ij} = \bar{S}_{ji})

  • All eigenvalues are real
  • Eigenvectors for distinct eigenvalues are perpendicular (in the complex sense)
  • The spectral theorem extends: S=QΛQHS = Q \Lambda Q^H with QQ unitary

Unitary Matrices: Q1=QHQ^{-1} = Q^H (i.e., QHQ=IQ^H Q = I)

  • Columns are orthonormal in the complex inner product
  • Preserve length: Qz=z\|Qz\| = \|z\|
  • All eigenvalues satisfy λ=1|\lambda| = 1
  • Product of unitary matrices is unitary

9.3 Fourier Matrix FF and the Discrete Fourier Transform

Fourier Matrix FNF_N: Size N×NN \times N with entries:

(FN)jk=wjkwhere w=e2πi/N(F_N)_{jk} = w^{jk} \quad \text{where } w = e^{2\pi i / N}

for j,k=0,1,,N1j, k = 0, 1, \dots, N-1 (using zero-based indexing).

Thus:

FN=[11111ww2wN11w2w4w2(N1)1wN1w2(N1)w(N1)(N1)]F_N = \begin{bmatrix} 1 & 1 & 1 & \cdots & 1 \\ 1 & w & w^2 & \cdots & w^{N-1} \\ 1 & w^2 & w^4 & \cdots & w^{2(N-1)} \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 1 & w^{N-1} & w^{2(N-1)} & \cdots & w^{(N-1)(N-1)} \end{bmatrix}

Key Properties:

FNFˉN=NI,FN1=1NFˉN,1NFN is unitaryF_N \bar{F}_N = N I, \quad F_N^{-1} = \frac{1}{N} \bar{F}_N, \quad \frac{1}{\sqrt{N}} F_N \text{ is unitary}

Discrete Fourier Transform (DFT): Given a signal f=(f0,,fN1)f = (f_0, \dots, f_{N-1}), its DFT coefficients are:

c=FN1f=1NFˉNfc = F_N^{-1} f = \frac{1}{N} \bar{F}_N f

Inverse DFT:

f=FNcf = F_N c

Each coefficient ckc_k represents the amplitude of the frequency component wkw^{-k} in the signal.


9.4 Cyclic Convolution and the Convolution Rule

Cyclic Convolution: For two vectors aa and bb of length NN, their cyclic convolution aba * b is:

(ab)k=j=0N1ajbkjmodN(a * b)_k = \sum_{j=0}^{N-1} a_j b_{k-j \mod N}

Circulant Matrices: A circulant matrix CC is an N×NN \times N matrix where each row is a cyclic shift of the first row c0,c1,,cN1c_0, c_1, \dots, c_{N-1}:

C=[c0c1c2cN1cN1c0c1cN2c1c2c3c0]C = \begin{bmatrix} c_0 & c_1 & c_2 & \cdots & c_{N-1} \\ c_{N-1} & c_0 & c_1 & \cdots & c_{N-2} \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ c_1 & c_2 & c_3 & \cdots & c_0 \end{bmatrix}

Convolution Rule (Fundamental):

  • Eigenvectors of every circulant matrix are the columns of the Fourier matrix FNF_N
  • Eigenvalues are the DFT of the first column

Convolution Theorem: Convolution in the time domain equals pointwise multiplication in the frequency domain:

F1(ab)=(F1a)(F1b)or equivalentlyab=F[(F1a)(F1b)]F^{-1} (a * b) = (F^{-1} a) \odot (F^{-1} b) \quad \text{or equivalently} \quad a * b = F[(F^{-1} a) \odot (F^{-1} b)]

where \odot denotes componentwise (Hadamard) multiplication. This is why the Fourier transform is so powerful for signal processing: it turns expensive convolution into cheap pointwise multiplication.


9.5 FFT: The Fast Fourier Transform

The Fast Fourier Transform (FFT) (Cooley-Tukey algorithm) computes the DFT in O(NlogN)O(N \log N) operations instead of O(N2)O(N^2).

Key Idea: Factor F2NF_{2N} using even and odd permutations:

F2N=[IDID][FN00FN][even-odd permutation]F_{2N} = \begin{bmatrix} I & D \\ I & -D \end{bmatrix} \begin{bmatrix} F_N & 0 \\ 0 & F_N \end{bmatrix} \begin{bmatrix} \text{even-odd permutation} \end{bmatrix}

where D=diag(1,w,w2,,wN1)D = \text{diag}(1, w, w^2, \dots, w^{N-1}) for w=e2πi/2Nw = e^{2\pi i / 2N}.

Recursive Splitting:

  • Instead of one 2N2N-point DFT, compute two NN-point DFTs, then combine with O(N)O(N) additional work
  • Apply the same recursively: an NN-point DFT uses two N/2N/2-point DFTs, etc.

Complexity: For N=210=1024N = 2^{10} = 1024:

  • Direct DFT: N21,000,000N^2 \approx 1,000,000 operations
  • FFT: (N/2)log2N500×10=5000(N/2) \log_2 N \approx 500 \times 10 = 5000 operations

Impact: The FFT is one of the most important algorithms of the 20th century. It makes Fourier analysis practical for large-scale signal processing, image compression (JPEG), spectral analysis, and solving partial differential equations.

Previous Next
© MIT OpenCourseWare  |  18.06 Linear Algebra  |  Gilbert Strang  |  Spring 2010
ocw.mit.edu  ·  CC BY-NC-SA 4.0