# 4.1 CTFS ## 傅立葉家族 接下來幾個章節,我們將會拋開系統的問題,瘋狂分析信號。傅立葉級數、轉換有太多的變體,但是核心概念不變: 我們要將一個任意的信號,轉換成**一堆弦波的和**。 主要我們會遇到4個不同轉換: - CT傅立葉級數 (CTFS) - DT傅立葉級數 (DTFS) - CT傅立葉轉換 (CTFT) - DT傅立葉轉換 (DTFT) 至於他們之間有何不同,我們會慢慢說明。 ## 推導CTFS 連續時間傅立葉級數(Continuous Time Fourier Series, CTFS)說的是如果我們有一個任意的**週期性**信號,我們可以將它轉換成一堆弦波的和,而這些弦波的頻率,恰好是這個信號的頻率的整數倍。 講到弦波,我們會想到sin、cos。如果一個信號$x(t)$的角頻率是$\omega_0$,那麼我們確實可以用$\{sin(k\omega_0t), cos(k\omega_0t),1\}$組成這個弦波。但是,一個更簡潔的方式是: 運用複指數$e^{jk\omega_0t}$。 我們首先看一下複指數的一些性質。我們考慮$\langle e^{jm\omega_0t}, e^{jn\omega_0t} \rangle$,其中$m,n$都是整數。回憶2.6,這代表我們要求這兩個函數的內積。不過在這邊稍微有點不同,我們只想求它們在一個週期裡的積分: $$ \langle e^{jm\omega_0t}, e^{jn\omega_0t} \rangle = \int_{0}^{\frac{2\pi}{\omega_0}} e^{jm\omega_0t}e^{-jn\omega_0t}\,dt $$ \begin{cases} = \frac{1}{j\omega_0(m-n)}e^{j\omega_0(m-n)t} \Bigg|_{0}^{\frac{2\pi}{\omega_0}} & = 0 & ,m\neq n \\[6pt] = 1 \,\Bigg|_{0}^{\frac{2\pi}{\omega_0}}& = \frac{2\pi}{\omega_0} & ,m=n \end{cases} 一個有趣的結果。它告訴我們: :::info $\{e^{jk\omega_0t}\}$ 是一組正交基底。 ::: 然後我們必須跳過一些證明,使用一個事實: :::danger **定理** $\{e^{jk\omega_0t}\}$ 可以生成整個$L^2([0, T_0])$。 ::: 白話來說,我們可以利用這組基底,(線性)組合出任意$L^2([0, T_0])$內的函數。 雖然這是我們利用傅立葉級數的關鍵,但是背後的證明需要複雜的數學分析技巧,已經超出我們的目的了。這裡的$L^2([0, T_0])$ 指的是所有平方可積、以$T_0$為週期的函數。 接下來,我們可以把$x(t)$,轉換到這組新的基底上面,變成它的線性組合: :::danger $$ x(t) = \sum_{k=-\infty}^{\infty} a_k e^{jk\omega_0t}\ $$ ::: 而係數可以這樣求: :::danger $$ a_k = \frac{\omega_0}{2\pi} \langle x(t),e^{jk\omega_0t} \rangle = \frac{\omega_0}{2\pi} \int_{0}^{T_0} x(t)e^{-jk\omega_0t}\,dt $$ ::: 和我們在線性代數做的事完全一樣,但這就是CT的傅立葉級數了。 幾個細節: 1. $\frac{\omega_0}{2\pi} = \frac{1}{T_0}$,通常這樣寫會更簡潔。 2. 因為函數是週期的,積分區間實際上可以選任何一個長度為$T_0$的區間。 3. 前面的係數是因為我們的基不是歸一化的,而是有一個長度在,這個長度是$\sqrt{\frac{\omega_0}{2\pi}}$。 ## CTFS的定義 我們將上面的推導重新整理成兩個式子: :::danger **CTFS合成公式** (Synthesis Equation) $$ x(t) = \sum_{k=-\infty}^{\infty} a_k e^{jk\omega_0t}\ $$ **CTFS分析公式** (Analysis Equation) $$ a_k=\frac{1}{T_0} \int_{T_0} x(t)e^{-jk\omega_0t}\,dt $$ ::: 其中分析公式,讓我們找出每個基底上的分量。合成公式則是讓我們利用係數線性組合出原本的信號。 ### 時域與頻域 現在我們知道,想要表達一個周期性的信號有兩種方式。第一種是直接給出$x(t)$。另一種是給出它的週期$T_0$,以及對每一個整數倍,它的係數$a_k$。這兩種表達方式完全等價,因為我們可以透過上面的兩個公式轉換成另一種。 以$x(t)$表示時,自變數是$t$。我們稱這是這個信號的「時域」(time domain);而以$a_k$表示時,自變數$k$代表的是基頻的整數倍,因此稱作「頻域」(frequency domain)。 我們可以依據現在遇到的問題,決定我們要在時域或頻域去表述。 ## 例子 我們現在要來推導幾個常見函數的CTFS係數。 ### $\sin(\omega_0 t)$ & $\cos(\omega_0 t)$ 我們固然可以直接用分析公式下去做,更好的方式是直接湊出合成公式的樣子,進而導出係數。回顧[2.2複指數函數](/@seanyih/signal-2-2)提到的公式: $$ sin(\omega_0 t) = \frac{1}{2j}(e^{j\omega_0t}-e^{-j\omega_0t}) $$ 於是我們得到了: $$ a_1=\frac{1}{2j},\,a_{-1}=\frac{-1}{2j} $$ 是他的CTFS。同理,對於$cos(\omega_0 t)$,有: $$ a_1=\frac{1}{2},\,a_{-1}=\frac{1}{2} $$ ### 方波 前一個例子非常的trivial,所以現在該來看點真實的東西了。我們考慮這樣一個波: $$ x(t)= \left\{ \begin{matrix} 1, &\, 0\le t\le DT_0 \\ 0, &\, DT_0 <t<T_0 \end{matrix} \right. $$ 其中$0\le D\le 1$,然後函數以$T_0$為週期出現,即$x(t)=x(t+T_0)$。 現在我們得用分析公式了: $$ a_k=\frac{1}{T_0} \int_{T_0} x(t)e^{-jk\omega_0t}\,dt=\frac{1}{T_0}\int_{0}^{DT_0}e^{-jk\omega_0t}\,dt $$$$ =\frac{1}{T_0} \frac{-1}{jk\omega_0} e^{-jk\omega_0t}\Bigg|_ {0}^{DT_0} =\frac{-1}{j2\pi k} (e^{-j2\pi kD}-1) $$ 到這一步其實就可以了。不過我們可以繼續化簡成更好的樣子。 $$ = \frac{j}{2\pi k} (\cos(2\pi kD)-j\sin(2\pi kD)-1) $$$$ = \frac{j(\cos(2\pi kD)-1)}{2\pi k}+\frac{\sin(2\pi kD)}{2\pi k} $$ 然後再用cos二倍角展開。 $$ = \frac{-j\sin^2(\pi kD)}{\pi k} +\frac{\sin(2\pi kD)}{2\pi k} $$ 如果我們令$D=0.5$,就會得到一個平均的方波。它的係數是: \begin{cases} \frac{1}{2} & k=0 \\[6px] \frac{-j}{k \pi} & k=odd\\[6px] 0 & o.w. \end{cases} 注意這裡我們需要用到$\lim_{t\to0}\frac{sin(t)}{t}=1$的性質。 {%hackmd @seanyih/signal-main %}