迴圈矩陣 \(a\) 大概長這樣:
\[a =
\begin
a_0 & a_1 & \dots & a_ \\
a_ & a_0 & \dots & a_ \\
\vdots & \vdots & \ddots & \vdots \\
a_1 & a_2 & \dots & a_0 \\
\end
\\\]
如果記矩陣 \(e\):
\[e =
\begin
0 & 1 & 0 & \dots & 0 \\
0 & 0 & 1 & \dots & 0 \\
\vdots &\vdots & \vdots & \ddots & \vdots \\
0 & 0 & 0 & \dots & 1 \\
1 & 0 & 0 & \dots & 0 \\
\end
\\\]
則 \(a = a_0i + a_1e + a_2e^2 + \dots + a_e^\)。
由於 \(e^n = 1\),可以將 \(e\) 當作 \(n\) 階形式變元。這解釋了為什麼迴圈矩陣的乘法等價於迴圈卷積。
據某位相關人士口胡,迴圈矩陣和什麼 「線性非時變系統」 有關。考慮 \(\sum_^\omega_n^i = 0\)。聽到這個名詞的瞬間,我就放棄了思考。
如果記向量 \(v_i = [\omega_n^,\omega_n^,\dots,\omega_n^]\),則上式又可描述成 \(v_i\cdot v_j = [i = j]\times n\)
注意複數向量的點積要取共軛,因此 \(v_i\cdot v_j = \sum_k w_^\)。考慮連續情況。記 \(f_w(t) = e^\),則函式點積 \(f_\cdot f_ = [w_1 = w_2]\times 2\pi\)。
這裡函式點積定義成 \(\int_^f_(t)\overline_(t)dt = \int_^e^dt\)。考慮將函式點積展開成實部虛部,還可以利用三角函式證明(這裡要求 \(w\in n_+\))。
這些都在說明正交性。
接下來再考慮矩陣 \(v\):
\[v =
\begin
\omega^_n & \omega^_n & \dots & \omega^_n \\
\omega^_n & \omega^_n & \dots & \omega^_n \\
\vdots & \vdots & \ddots & \vdots \\
\omega^_n & \omega^_n & \dots & \omega^_n \\
\end
\]上文已經說明了 \(\\) 的正交性,即 \(v_0, v_1, \dots, v_\) 構成一組 \(\mathbb c^n\) 的正交基(並不是規範正交基,模長為 \(\sqrt n\))。
那麼它的逆矩陣也就呼之欲出了:
\[v^ = \frac
\begin
\omega^_n & \omega^_n & \dots & \omega^_n \\
\omega^_n & \omega^_n & \dots & \omega^_n \\
\vdots & \vdots & \ddots & \vdots \\
\omega^_n & \omega^_n & \dots & \omega^_n \\
\end
\]所以這還是涉及到正交性。
接下來瞎扯淡一些東西。可以略過不看。
我自己揣摩了一下,大概這 4 種表達了不同程度的離散與連續。
計算機當然只能用最離散的 dft。
為什麼 dft 一定要得是迴圈卷積而不能直接做線性卷積?
感性上說線性卷積其實就是週期無窮大的迴圈卷積(有點像 dtft?我不太清楚這套理論),然而不可能取無窮個點。
至於為什麼必然會迴圈,這似乎取決於 \(e^\) 本身的性質。也不是很懂。
回到迴圈矩陣。
根據一開始的分解,若 \(e\) 的特徵值為 \(\lambda\),則 \(a\) 的特徵值為 \(f(\lambda)\)。
注意 \(e\) 的特徵多項式為 \(\lambda^n - 1 = 0\)。
我們得到:迴圈矩陣的特徵值為 \(f(\omega_^i)\)(即 dft 的結果)。
事實上,由於 \(a\) 的特徵值互不相同,它可對角化。如果記 \(d\):
\[d =
\begin
f(\omega^0_n) & 0 & \dots & 0 \\
0 & f(\omega^1_n) & \dots & 0 \\
\vdots & \vdots & \ddots & \vdots \\
0 & 0 & \dots & f(\omega^_n) \\
\end
\\\]
則會有 \(a = vdv^\)(\(v\) 的定義參考上文)。
注意到所有迴圈矩陣共用同一組特徵向量,由此可以加速矩陣乘法(即 dft 簡化迴圈卷積的原理)。
考慮迴圈矩陣 \(a\) 的行列式 \(\det(a) = \prod \lambda_i = \prod f(\omega_n^i)\)。
如果可以 dft 當然最好,但是在模意義下不一定存在 \(n\) 次單位根。
考慮引入結式:
設 \(f(x) = a_0x^n + a_1x^ + \dots + a_n\),\(g(x) = b_0x^m + b_1x^ + \dots + b_m\)。此時你已經可以驚訝地發現 \(r(x^n - 1, f)\) 就是 \(\det(a)\)。則結式 \(r(f, g)\) 定義為如下 \(n + m\) 階行列式:
懶得寫了 直接複製了百科的。
如果設 \(f(x)\) 的根為 \(\alpha_1,\alpha_2,\dots,\alpha_n\),\(g(x)\) 的根為 \(\beta_1, \beta_2, \dots, \beta_m\),另乙個等價的定義:
\[r(f, g) = a_0^m\prod_^ g(\alpha_i) = a_0^mb_0^n\prod_^\prod_^(\alpha_i - \beta_j)
\]
考慮怎麼計算 自然不會按定義算行列式。結式最一般的還是用來判斷兩個多項式是否有公因式,以及多項式的重根問題。首先有 \(r(f, g) = (-1)^r(g, f)\)。
設 \(f_1 = f/a_0\) 為首一多項式,則 \(r(f, g) = a_0^mr(f_1, g)\)。
注意到 \(f_1(\alpha_i) = 0\),則 \(r(f_1, g) = r(f_1, g + f_1\times p) = (-1)^r(g\bmod f_1, f_1)\)。
特別地,\(r(0, g) = [m = 0]\)。
然後就可以跑多項式輾轉相除。
當然,可以從抽代的角度理解 「卷積」。這一方面已經有豐富的結果(和一道毒瘤題目 )。
更深入的內容在這裡就咕且不提。
傅利葉變換矩陣
1.matlab 的fft 函式是沒有歸一化的dft matlab 得到歸一化dft矩陣 function f dft n xn為序列 n 0 n 1 n的行向量,為1 n矩陣 k 0 n 1 k的行向量,為1 n矩陣 wn exp j 2 pi n 常數 nk n k 將n倒置之後與矩陣k進行矩陣...
傅利葉變換與快速傅利葉變換
作為電子資訊專業的學生老說,這個不知道,或者理解不清楚,是十分不應該的,作為乙個學渣,有時候確實是理解不清楚的 1 首先離散傅利葉變換目的 簡單點說 就是將乙個訊號從時域變換到頻域 標準點說 將以時間為自變數的訊號 與 頻率為自變數的頻譜函式之間的某種關係變換 數學描述 對於 n點序列 其中自然對數...
Z變換與傅利葉變換
z變換與傅利葉變換 在數字訊號處理中,z變換是一種非常重要的分析工具。但在通常的應用中,我們往往只需要分析訊號或系統的頻率響應,也即是說通常只需要進行傅利葉變換即可。那麼,為什麼還要引進z變換呢?z變換和傅利葉變換之間有存在什麼樣的關係呢?傅利葉變換的物理意義非常清晰 將通常在時域表示的訊號,分解為...