Processing math: 100%

傅立葉級數





連續週期訊號


假設有一週期訊號 x(t),週期為T
x(t)=x(t+T)

假設此訊號能由ejkω0t合成,ω0=2π/T

x(t)=+k=akejkω0t=+k=akejk(2π/T)t

上式就是x(t)的傅立葉級數表示法,只要求出ak,就能由不同頻率振幅的弦波來合成,以下為求ak的方法

先同乘 ejnω0t
x(t)ejnω0t=+k=akejkω0tejnω0t

在 0~T 的區間積分
T0x(t)ejnω0tdt=T0+k=akejkω0tejnω0tdt

交換積分與sum的順序
T0x(t)ejnω0tdt=+k=ak[T0ej(kn)ω0tdt]


計算右式積分部分 (Euler's formula ejx=cosx+jsinx)
T0ej(kn)ω0tdt=T0cos((kn)ω0t)dt+jT0sin((kn)ω0t)dt

kn 時,積分範圍為整數倍週期的弦波,結果為0,只有k=n 時有值
T0ej(kn)ω0tdt={T,k=n0,kn

將積分結果帶回原式
T0x(t)ejnω0tdt=+k=ak[T0ej(kn)ω0tdt]=Tan

即可求得an
an=1TT0x(t)ejnω0tdt

將積分範圍改成任意一個長度為 T 的區間能得到相同的結果
Tej(kn)ω0tdt={T,k=n0,kn

an=1TTx(t)ejnω0tdt

連續週期訊號的傅立葉級數

{x(t)=+k=akejkω0t=+k=akejk(2π/T)tak=1TTx(t)ejkω0tdt=1TTx(t)ejk(2π/T)tdt



範例: 週期為2,duty cycle = 50% 的方波

x(t)={1,|t|<0.50,0.5<|t|<1

k=0,
a0=120.50.5dt=0.5

k0,
ak=120.50.5ejkω0tdt=1jkω02ejkω0t|0.50.5=1kω0ej0.5kω0ej0.5kω02j=sin(0.5kω0)kω0=sin(0.5kπ)kπ(ω0=2π/T=2π/2=π)

下圖為k=-7 ~ 7 的圖

求出傅立葉係數 ak 後,驗證是否能合成出方波
無法計算至無窮項,求近似值xN(t)
xN(t)=k=Nk=Nakejkπt
下圖為不同N值得合成結果



離散週期訊號

...
x[n]=x[n+N]

x[n]=k=<N>akejkω0n=k=<N>akejk(2π/N)n

k=<N>akejk(2π/N)n={N,k=0,±N,±2N,0,otherwise

n=<N>x[n]ejr(2π/N)n=n=<N>k=<N>akej(kr)(2π/N)n

n=<N>x[n]ejr(2π/N)n=k=<N>akn=<N>ej(kr)(2π/N)n

ar=1Nn=<N>x[n]ejr(2π/N)n

{x[n]=k=<N>akejkω0n=k=<N>akejk(2π/N)nak=1Nn=<N>x[n]ejkω0n=1Nn=<N>x[n]ejk(2π/N)n






M=1
M=2
M=3
M=4















3 則留言:

  1. 請問是用什麼軟體合成傅立葉係數的呢?

    回覆刪除
    回覆
    1. 畫圖用google chart https://developers.google.com/chart/
      數學式用 mathjax https://www.mathjax.org/

      刪除