連續週期訊號
假設有一週期訊號 \(x(t)\),週期為\(T\)
\(x(t)=x(t+T)\)
假設此訊號能由\(e^{jk \omega_0 t}\)合成,\(\omega_0=2\pi/T\)
\(\displaystyle x(t)=\sum_{k=-\infty}^{+\infty} a_k e^{jk \omega_0 t}=\sum_{k=-\infty}^{+\infty} a_k e^{jk (2\pi/T) t}\)
上式就是\(x(t)\)的傅立葉級數表示法,只要求出\(a_k\),就能由不同頻率振幅的弦波來合成,以下為求\(a_k\)的方法
先同乘 \(e^{-jn\omega_0 t}\)
\(\displaystyle x(t)e^{-jn\omega_0 t}=\sum_{k=-\infty}^{+\infty} a_k e^{jk \omega_0 t}e^{-jn\omega_0 t}\)
在 0~T 的區間積分
\(\displaystyle \int_0^T x(t)e^{-jn\omega_0 t} \mathrm{d}t = \int_0^T \sum_{k=-\infty}^{+\infty} a_k e^{jk \omega_0 t}e^{-jn\omega_0 t} \mathrm{d}t\)
交換積分與sum的順序
\(\displaystyle \int_0^T x(t)e^{-jn\omega_0 t} \mathrm{d}t = \sum_{k=-\infty}^{+\infty} a_k \begin{bmatrix} \int_0^T e^{j(k-n) \omega_0 t} \mathrm{d}t\end{bmatrix}\)
計算右式積分部分 (Euler's formula \(e^{jx} = \cos x + j\sin x\))
\(\displaystyle \int_0^T e^{j(k-n) \omega_0 t} \mathrm{d}t = \int_0^T \cos((k-n) \omega_0 t) \mathrm{d}t + j\int_0^T \sin((k-n) \omega_0 t) \mathrm{d}t \)
\(k \neq n\) 時,積分範圍為整數倍週期的弦波,結果為0,只有\(k = n\) 時有值
\(\displaystyle \int_0^T e^{ j(k-n) \omega_0 t} \mathrm{d}t = \left\{ \begin{matrix} T,k=n \\ 0, k \neq n \end{matrix}\right. \)
將積分結果帶回原式
\(\displaystyle \int_0^T x(t)e^{-jn\omega_0 t} \mathrm{d}t = \sum_{k=-\infty}^{+\infty} a_k \begin{bmatrix} \int_0^T e^{j(k-n) \omega_0 t} \mathrm{d}t\end{bmatrix}=T a_n\)
即可求得\(a_n\)
\(\displaystyle a_n= \frac {1}{T} \int_0^T x(t)e^{-jn\omega_0 t} \mathrm{d}t \)
將積分範圍改成任意一個長度為 T 的區間能得到相同的結果
\(\displaystyle \int_T e^{ j(k-n) \omega_0 t} \mathrm{d}t = \left\{ \begin{matrix} T,k=n \\ 0, k \neq n \end{matrix}\right. \)
\(\displaystyle a_n= \frac {1}{T} \int_T x(t)e^{-jn\omega_0 t} \mathrm{d}t \)
連續週期訊號的傅立葉級數
\(\displaystyle \left\{ \begin{array} {1,1}
x(t)=\sum_{k=-\infty}^{+\infty} a_k e^{jk \omega_0 t}=\sum_{k=-\infty}^{+\infty} a_k e^{jk (2\pi/T) t} \\
a_k= \frac {1}{T} \int_T x(t)e^{-jk\omega_0 t} \mathrm{d}t = \frac {1}{T} \int_T x(t)e^{-jk(2\pi /T)t} \mathrm{d}t
\end{array} \right.
\)
範例: 週期為2,duty cycle = 50% 的方波
\(x(t) = \left\{ \begin{array} {1,1} 1, &\; |t|<0.5 \\ 0, &\; 0.5<|t|<1 \end{array}\right. \)
\(k=0\),
\(\displaystyle a_0=\frac{1}{2} \int_{-0.5}^{0.5} \mathrm{d}t = 0.5\)
\(k \neq 0\),
\(\displaystyle a_k=\frac{1}{2} \int_{-0.5}^{0.5} e^{-jk\omega_0 t} \mathrm{d}t =\left. -\frac {1} {jk\omega_0 2} e^{-jk\omega_0 t} \right|_{-0.5}^{0.5}
= \frac {1}{k\omega_0} \frac { e^{j0.5k\omega_0} - e^{-j0.5k\omega_0} }{2j}
=\frac {\sin(0.5k\omega_0)} {k\omega_0}
=\frac {\sin(0.5k\pi)} {k\pi} \;
( \omega_0 = 2 \pi / T = 2\pi / 2 = \pi )
\)
下圖為k=-7 ~ 7 的圖
求出傅立葉係數 ak 後,驗證是否能合成出方波
無法計算至無窮項,求近似值\(x_N(t)\)
\(\displaystyle x_N(t)=\sum_{k=-N}^{k=N} a_k e^{jk\pi t}\)
下圖為不同N值得合成結果
離散週期訊號
...\(x[n]=x[n+N]\)
\( \displaystyle x[n] = \sum_{k= < N >} a_k e^{j k \omega_0 n} = \sum_{k= < N >} a_k e^{j k (2 \pi /N) n} \)
\( \displaystyle \sum_{k= < N >} a_k e^{j k (2 \pi /N) n} = \left \{ \begin {array} {1,1} N, \quad k=0,\pm N,\pm 2N,\dots\\0, \quad \text{otherwise}\end{array}\right.\)
\( \displaystyle \sum_{n= < N >} x[n] e^{-j r (2 \pi /N) n}= \sum_{n= < N >} \sum_{k= < N >} a_k e^{j (k-r) (2 \pi /N) n} \)
\( \displaystyle \sum_{n= < N >} x[n] e^{-j r (2 \pi /N) n}= \sum_{k= < N >} a_k\sum_{n= < N >} e^{j (k-r) (2 \pi /N) n} \)
\( \displaystyle a_r=\frac{1}{N}\sum_{n= < N >} x[n] e^{-j r (2 \pi /N) n} \)
\(\displaystyle \left\{ \begin{array} {1,1}
x[n] = \sum_{k= < N >} a_k e^{j k \omega_0 n} = \sum_{k= < N >} a_k e^{j k (2 \pi /N) n} \\
a_k=\frac{1}{N}\sum_{n= < N >} x[n] e^{-j k \omega_0 n} = \frac{1}{N}\sum_{n= < N >} x[n] e^{-j k (2 \pi /N) n}
\end{array} \right.
\)
M=1
M=2
M=3
M=4
請問是用什麼軟體合成傅立葉係數的呢?
回覆刪除畫圖用google chart https://developers.google.com/chart/
刪除數學式用 mathjax https://www.mathjax.org/
感謝
刪除