傅里葉變換理解上的幾個難點

傅里葉變換理解上的幾個難點

來自專欄一個大學生的日常筆記21 人贊了文章

首先從周期函數的傅里葉級數講起。

任何周期函數 f(x)=f(x+2pi) 都可以寫成三角函數和的形式:

f(x)=frac{a_0}{2}+sum_{n=1}^{infty}{(a_ncos nx+b_nsin nx)}qquad(1)

也就是說任何一個周期為 2pi 的函數都可以展開成周期為 frac{2pi}{n},n=1,2,3,dots 的三角函數之和。

color{red}{	ext{難點一}} :利用三角函數和差化積的公式,上式公式和下面的公式是等價的:

f(x)=sum_{n=0}^{infty}{A_nsin(nx+varphi_n)}qquad(2)

帶相位的公式在直覺上更加直觀,特別是配上教科書中矩形波展開成三角函數的圖片。但是將相位轉換為正弦和餘弦函數的係數在計算上卻變得簡便,因為三角函數系 1,sin x,cos x,sin2x,cos2x,dots正交的,利用這個性質,係數就可以通過求內積的方法得到(函數正交和內積的概念可以將傅里葉級數和矢量的分解聯繫起來):

egin{aligned} a_n&=frac{1}{pi}int_{-pi}^{pi}f(x)cos nx{
m d}x\ b_n&=frac{1}{pi}int_{-pi}^{pi}f(x)sin nx{
m d}x end{aligned}qquad(3)

數學上還需要一些定理增加嚴謹性:狄利克雷收斂定理,但是大多數情況下我們只需要愉快的直接使用就可以了。對於有限區間上的函數,可以使用延拓的方法,非常好理解。


color{red}{	ext{難點二}} :但是如果這個函數在整個數軸上都是非周期的呢?其實這種情況對應頻率的連續分布。此時從傅里葉級數表示變成了傅里葉積分表示,也就是說:周期函數和有限區間上的函數是級數表示;無窮區間上的非周期函數是積分表示。

f(x)=int_{0}^{infty}[A(lambda)cos{lambda x}+B(lambda)sin{lambda x}]dlambdaqquad(4)

其中係數為:

egin{aligned} A(lambda)=frac{1}{pi}int_{-infty}^{+infty}f(t)cos{lambda t}dt\ B(lambda)=frac{1}{pi}int_{-infty}^{+infty}f(t)sin{lambda t}dt\ end{aligned}qquad(5)

上面的叫做傅里葉積分,別和傅里葉變換混淆了。(4)式的推導可以查教科書,形式上只需要將(1)式中的求和變為積分即可 sum
ightarrowint {
m d}x

同樣需要一些數學上嚴謹性的保證:這邊的函數 f ,要求是絕對可積的。(有時候拿到一個周期函數要求它的傅里葉係數,就想當然的帶入上面的公式,這是錯誤的。首先周期函數一般不是絕對可積的,其次周期函數使用正交的三角函數系展開。)


color{red}{	ext{難點三}} :為什麼傅里葉變換帶有虛數,且出現了負頻率?

前面都是實數的形式,相對來說在腦海中可以構建出數軸的模型,但是最終傅里葉變換中突然就引入了虛數,這就是難理解的拐點之一,也就是憑什麼要多此一舉呢?因為我們真實世界中的信號實函數就可以描述了,我們測量的所有物理量也是實數,我們對於實數有著天生的直覺,但是對於複數大多人其實懷有畏懼的心理。

其實虛數在這裡出現的原因出奇的簡單,可以用下面這個圖片說明:

你可以想像,如果數字用右邊的那一列表示,那麼進行數字的豎式運算,以及加減乘除會多麼的麻煩。強如拉馬努金,可能也很難通過右邊原始的數學符號,猜出那些神奇的等式吧。

傅里葉變換的複數形式為:

f(x)=int_{-infty}^{+infty}F(lambda)e^{-ilambda x}dlambdaqquad(6)

其中: F(lambda)=frac{1}{2pi}int_{-infty}^{+infty}f(t)e^{ilambda t}dtqquad(7)

其實公式(6)(7)和公式(4)(5)之間是通過歐拉公式聯繫起來的。

歐拉公式: e^{ilambda x}=cos lambda x+isinlambda xqquad(8)

由歐拉公式可得: egin{aligned} cos lambda x=frac{e^{ilambda x}+e^{-ilambda x}}{2}\ sin lambda x=frac{e^{ilambda x}-e^{-ilambda x}}{2i}\ end{aligned}qquad(9)

這個叫做傅里葉變換的公式: F(lambda)=frac{1}{2pi}int_{-infty}^{+infty}f(t)e^{ilambda x}dt ,實際上代替了傅里葉積分表示中的 A(lambda),B(lambda) ,而 e^{-ilambda x} 則代替了 cos{lambda x},sin{lambda x} 。當然這裡如果說得明白一點就可以自然理解負頻率出現的意義了,因為在傅里葉積分中,我們對頻率的積分是從零到無窮大,但是因為我們的正交函數系是三角函數系,頻率都是正的,但是這裡我們的基函數是 e^{-ilambda x} ,而由歐拉公式 cos{x}=frac{1}{2}(e^{ix}+e^{-ix}) ,所以對三角函數在正實軸的積分其實就是對e^{-ilambda x}在整個數軸上的積分,僅此而已。所以說實數函數的能譜一定是正負頻率對稱的。

所以虛數的引入並沒有改變傅里葉積分的意義,這裡我覺得:

形式上簡化了,處理起來簡單了,理解上困難了,這就是複數在這裡的作用。我們大多數所說的能譜(功率譜),實際上就是不關心傅里葉變換中的相位部分,只關心某種頻率成分的比重,這時候其實對應的就是傅里葉變換F的模。而複數的幅角實際上就是不同頻率成分的相位信息。


以上就是從傅里葉級數——傅里葉積分——傅里葉變換,三者之間的聯繫。但是我們實際測量一個連續的物理信號的時候,得到的其實都是這個實際物理信號在特定時間間隔的採樣,其次計算機在進行傅里葉分析的時候,每次積分只能得到某個頻率成分的比重,計算的頻率點增多,隨之的計算量也變得很大。於是就有了快速傅里葉變換FFT,當然離散傅里葉變換DFT和FFT是兩個不同的概念,FFT是DFT的快速演算法,對採樣點有限制。這裡我們就講FFT。

原來FFT的具體實現,目前自己居然從未接觸過,只是在計算軟體中給出具體的實現函數。FFT的具體推導過程可以在「信號與系統」的參考書中找到。


最後就是廣義傅里葉變換了,這在偏微分方程教材中有,但是如何和前面的理解有機的結合在一起,形成一個系統的知識體系,這是一個問題。

難點四:在廣義傅里葉變換下,原先的一些周期函數諸如 sin{acdot x} 函數也可以進行廣義傅里葉變換,變成 delta 函數

在前面已經指出,對於周期函數沒有傅里葉變換,一般可以展開成傅里葉級數,係數可以表示成一個周期內的積分。但是在廣義傅里葉變換中,傅里葉變換可以表示成頻域中的 delta 函數。

廣義函數的定義:函數空間到實數(或複數)空間的映射。

一般可以寫成這樣的形式:

<f(x),varphi(x)>=int_{Omega}^{}f(x)varphi(x)dx,forallvarphi(x)in M(Omega)

這樣 f(x) 就是一個廣義函數,典型的廣義函數就是 delta 函數,將一個函數映射為在原點的取值。一些周期函數在這樣的定義下也是廣義函數,這要適當選取函數空間 M(Omega) 可以保證定義中右邊的積分是收斂的。如果函數空間 M(Omega) 中的函數都可以進行傅里葉變換,那麼變換後仍然可以構成一個函數空間,那麼就可以把廣義函數的傅里葉變換轉移到實驗函數的傅里葉變換,也就是說:

<F[f(x)],varphi(x)>equiv<f(x),F[varphi(x)]>

可以給出以下關係的不嚴格的證明:

delta(x)Rightarrow1

F(lambda)=int_{-infty}^{+infty}f(t)e^{ilambda x}dt

只需將f(t)換成delta函數,並根據delta函數的性質,就可以得到delta函數的傅里葉變換,當然這裡並沒有用到廣義函數的傅里葉變換的定義,所以這樣的證明當然是不嚴格的。這樣一個簡單的關係,配合廣義傅里葉變換的時移,頻移,伸縮,求導等性質,可以得到很多常見函數的廣義傅里葉變換

思考:一個函數如果存在傅里葉變換,那麼它的廣義傅里葉變換和傅里葉變換是否一樣?

推薦閱讀:

TAG:傅里葉變換FourierTransform | 數字信號處理 | 高等數學 |