All circulant matrices are made diagonal by the Discrete Fourier Transform (DFT), regardless of the generating vector x.
任意循环矩阵可以被傅里叶变换矩阵对角化。
文献中,一般用如下方式表达这一概念:
X = C ( x ) = F ⋅ d i a g ( x ^ ) ⋅ F H X=C(x)=F \cdot diag(\hat{x}) \cdot F^H X=C(x)=F⋅diag(x^)⋅FH
其中 X X X是循环矩阵, x ^ \hat{x} x^是原向量 x x x的傅里叶变换, F F F是傅里叶变换矩阵,上标H表示共轭转置: X H = ( X ∗ ) T X^H=(X^{*})^T XH=(X∗)T。
换句话说, X X X相似于对角阵, X X X的特征值是 x ^ \hat x x^的元素。
另一方面,如果一个矩阵能够表示成两个傅里叶矩阵夹一个对角阵的乘积形式,则它是一个循环矩阵。其生成向量是对角元素的傅里叶逆变换:
F ⋅ d i a g ( y ) ⋅ F H = C ( F − 1 ( y ) ) F \cdot diag(y) \cdot F^H = C(\mathcal{F}^{-1}(y)) F⋅diag(y)⋅FH=C(F−1(y))
这个公式初看疑问很多,以下一一讨论。
X X X是什么?
X X X是由原向量 x x x生成的循环矩阵。以矩阵尺寸 K = 4 K=4 K=4为例。
X = C ( x ) = [ x 1 x 2 x 3 x 4 x 4 x 1 x 2 x 3 x 3 x 4 x 1 x 2 x 2 x 3 x 4 x 1 ] X=C(x)=\begin{bmatrix} x_1 & x_2 & x_3 & x_4 \\ x_4 & x_1 & x_2 & x_3 \\ x_3 & x_4 & x_1 & x_2 \\ x_2 & x_3 & x_4 & x_1 \\ \end{bmatrix} X=C(x)=⎣⎢⎢⎡x1x4x3x2x2x1x4x3x3x2x1x4x4x3x2x1⎦⎥⎥⎤
F F F 是什么?
F F F是离散傅里叶矩阵(DFT matrix),可以用一个复数 ω = e − 2 π i / K \omega = e^{-2\pi i/K} ω=e−2πi/K表示,其中 K K K为方阵 F F F的尺寸。以 K = 4 K=4 K=4为例。
F = 1 K [ 1 1 1 1 1 ω ω 2 ω 3 1 ω 2 ω 4 ω 6 1 ω 3 ω 6 ω 9 ] F=\frac{1}{\sqrt{K}} \begin{bmatrix} 1 & 1 & 1 & 1 \\ 1 & \omega & \omega^2 & \omega^3 \\ 1 & \omega^2 & \omega ^4 & \omega^6 \\ 1 & \omega^3 & \omega^6 & \omega^9 \end{bmatrix} F=K1⎣⎢⎢⎡11111ωω2ω31ω2ω4ω61ω3ω6ω9⎦⎥⎥⎤
把 ω \omega ω想象成一个角度为 2 π / K 2\pi/K 2π/K的向量,这个矩阵的每一行是这个向量在不断旋转。从上到下,旋转速度越来越快。
之所以称为DFT matrix,是因为一个信号的DFT变换可以用此矩阵的乘积获得:
x ^ = D F T ( x ) = K ⋅ F ⋅ x \hat{x}=DFT(x)=\sqrt{K}\cdot F \cdot x x^=DFT(x)=K⋅F⋅x
反傅里叶变换也可以通过类似手段得到:
x = 1 K F − 1 x ^ x=\frac{1}{\sqrt{K}}F^{-1}\hat{x} x=