# 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 %}