如下图,傅里叶级数其实就是用一组sin,cos的函数来逼近一个周期函数,那么每个sin,cos函数就是一组基,这组基上的系数就是频域,会发现随着频域越来越多(基越来越多),函数的拟合就越准确。
傅立叶级数是基于周期函数的,如果我们把周期推广到 T = ∞ T=\infty T=∞ ,那么也就变为了非周期函数,这就是傅立叶变换。
让·巴普蒂斯·约瑟夫·傅里叶男爵(1768 -1830)猜测任意周期函数都可以写成三角函数之和。比如下面这个周期为 2 π 2\pi 2π的方波,可以用大量的正弦波的叠加来逼近:
从代数上看,傅立叶级数就是通过三角函数和常数项来叠加逼近周期为T的函数f(x)。要讲傅里叶变换的推导,先从傅里叶级数讲起,考虑一周期等于T,现定义于区间[-T/2,T/2]的周期函数f(x),傅里叶级数近似的表达式如下:
f ( x ) = a 0 + ∑ n = 1 ∞ ( a n c o s ( 2 π n T x ) + b n s i n ( 2 π n T x ) ) , a 0 ∈ R \displaystyle f(x)=a_0+\sum _{{n=1}}^{\infty}\left(a_{n}cos({\frac{2\pi n}{T}x})+b_{n}sin({\frac{2\pi n}{T}x})\right),a_0\in\mathbb{R} f(x)=a0+n=1∑∞(ancos(T2πnx)+bnsin(T2πnx)),a0∈R
前面已经推导过,实际上是把f(x)当作了如下基的向量:
{ 1 , c o s ( 2 π n T x ) , s i n ( 2 π n T x ) } \{1,cos({\frac{2\pi n}{T}x}),sin({\frac{2\pi n}{T}x})\} {1,cos(T2πnx),sin(T2πnx)}
那么上面的式子就可以解读为:
f ( x ) = a 0 ⏟ 基1下的坐标 ⋅ 1 + ∑ n = 1 ∞ ( a n ⏟ 对应基的坐标 c o s ( 2 π n T x ) + b n ⏟ 对应基的坐标 s i n ( 2 π n T x ) ) \displaystyle f(x)=\underbrace{a_0}_{\text{基1下的坐标}}\cdot 1+\sum _{{n=1}}^{\infty }\left(\underbrace{a_{n}}_{\text{对应基的坐标}}cos({\frac{2\pi n}{T}x})+\underbrace{b_{n}}_{\text{对应基的坐标}}sin({\frac{2\pi n}{T}x})\right) f(x)=基1下的坐标 a0⋅1+n=1∑∞⎝⎛对应基的坐标 ancos(T2πnx)+对应基的坐标 bnsin(T2πnx)⎠⎞
说具体点,比如刚才提到的, T = 2 π T=2\pi T=2π的方波f(x),可以初略的写作:
f ( x ) ≈ 1 + 4 π s i n ( x ) f(x)\approx 1+\frac{4}{\pi}sin(x) f(x)≈1+π4sin(x)
从几何上看,有那么一丁点相似:
我们可以认为:
f ( x ) ≈ 1 + 4 π s i n ( x ) f(x)\approx 1+\frac{4}{\pi}sin(x) f(x)≈1+π4sin(x)
此函数的基为:
{1,sin(x)}
则f(x)相当于向量:
( 1 , 4 π ) (1,\frac{4}{\pi}) (1,π4)
再增加几个三角函数:
f ( x ) ≈ 1 + 4 π s i n ( x ) + 0 s i n ( 2 x ) + 4 3 π s i n ( 3 x ) + 0 s i n ( 4 x ) + 4 5 π s i n ( 5 x ) f(x)\approx 1+\frac{4}{\pi}sin(x)+0sin(2x)+\frac{4}{3\pi}sin(3x)+0sin(4x)+\frac{4}{5\pi}sin(5x) f(x)≈1+π4sin(x)+0sin(2x)+3π4sin(3x)+0sin(4x)+5π4sin(5x)
此时基为:
{ 1 , s i n ( x ) , s i n ( 2 x ) , s i n ( 3 x ) , s i n ( 4 x ) , s i n ( 5 x ) } \{1,sin(x),sin(2x),sin(3x),sin(4x),sin(5x)\} {1,sin(x),sin(2x),sin(3x),sin(4x),sin(5x)}
对应的向量为:
( 1 , 4 π , 0 , 4 3 π , 0 , 4 5 π ) (1,\frac{4}{\pi},0,\frac{4}{3\pi},0,\frac{4}{5\pi}) (1,π4,0,3π4,0,5π4)
六维的向量没有办法画图啊,没关系,数学家发明了一个频域图来表示这个向量:
上图中的0,1,2,3,4,5分别代表了不同频率的正弦波函数,也就是之前的基:
0 H z ⟺ s i n ( 0 x ) 3 H z ⟺ s i n ( 3 x ) ⋯ 0Hz\iff sin(0x)\quad 3Hz\iff sin(3x)\cdots 0Hz⟺sin(0x)3Hz⟺sin(3x)⋯
而高度则代表在这个频率上的振幅,也就是这个基上的坐标分量。
这里举的例子只有正弦函数,余弦函数其实也需要这样一个频谱图,也就是需要两个频谱图。当然还有别的办法,综合正弦和余弦。
原来的曲线图就称为时域图,往往把时域图和频域图画在一起,这样能较为完整的反映傅立叶级数:
不管时域、频域其实反映的都是同一个曲线,只是一个是用函数的观点,一个是用向量的观点。
当习惯了频域之后,会发现看到频域图,似乎就看到了傅立叶级数的展开:
这并非一个周期函数,没有办法写出傅立叶级数。
不过可以变换一下思维,如果刚才的方波的周期:
T = 2 π → T = ∞ T=2\pi\to T=\infty T=2π→T=∞
观察下频域,之前说了,对于周期为T的函数f(x),其基为:
{ 1 , c o s ( 2 π n T x ) , s i n ( 2 π n T x ) } \{1,cos({\frac{2\pi n}{T}x}),sin({\frac{2\pi n}{T}x})\} {1,cos(T2πnx),sin(T2πnx)}
刚才举的方波 T = 2 π T=2\pi T=2π,对应的基就为(没有余弦波):
{ 1 , s i n ( x ) , s i n ( 2 x ) , s i n ( 3 x ) , s i n ( 4 x ) , s i n ( 5 x ) , ⋯ s i n ( n x ) } \{1,sin(x),sin(2x),sin(3x),sin(4x),sin(5x),\cdots\,sin(nx)\} {1,sin(x),sin(2x),sin(3x),sin(4x),sin(5x),⋯sin(nx)}
对应的频率就是:
{ 0 H z , 1 H z , 2 H z , 3 H z , 4 H z , 5 H z , ⋯ n H z } \{0Hz,1Hz,2Hz,3Hz,4Hz,5Hz,\cdots\,nHz\} {0Hz,1Hz,2Hz,3Hz,4Hz,5Hz,⋯nHz}
按照刚才的思路,如果T不断变大,比如让 T = 4 π T=4\pi T=4π,对应的基就为(没有余弦波):
{ 1 , s i n ( 0.5 x ) , s i n ( x ) , s i n ( 1.5 x ) , s i n ( 2 x ) , s i n ( 2.5 x ) , ⋯ s i n ( 0.5 n x ) } \{1,sin(0.5x),sin(x),sin(1.5x),sin(2x),sin(2.5x),\cdots\,sin(0.5nx)\} {1,sin(0.5x),sin(x),sin(1.5x),sin(2x),sin(2.5x),⋯sin(0.5nx)}
对应的频率就是:
{ 0 H z , 0.5 H z , 1 H z , 1.5 H z , 2 H z , 2.5 H z , ⋯ 0.5 n H z } \{0Hz,0.5Hz,1Hz,1.5Hz,2Hz,2.5Hz,\cdots\,0.5nHz\} {0Hz,0.5Hz,1Hz,1.5Hz,2Hz,2.5Hz,⋯0.5nHz}
之前的方波的频域图,画了前50个频率,可以看到,随着 不断变大,这50个频率越来越集中:
可以想象,如果真的:
T = 2 π → T = ∞ T=2\pi\to T=\infty T=2π→T=∞
之前说了,傅立叶级数是:
f ( x ) = a 0 + ∑ n = 1 ∞ ( a n c o s ( 2 π n T x ) + b n s i n ( 2 π n T x ) ) , a 0 ∈ R f(x)=a_0+\sum _{{n=1}}^{\infty}\left(a_{n}cos({\frac{2\pi n}{T}x})+b_{n}sin({\frac{2\pi n}{T}x})\right),a_0\in\mathbb{R} f(x)=a0+n=1∑∞(ancos(T2πnx)+bnsin(T2πnx)),a0∈R
这里有正弦波,也有余弦波,画频域图也不方便,通过欧拉公式,可以修改为复数形式(见如何理解傅立叶级数公式):
f ( x ) = ∑ n = − ∞ ∞ c n ⋅ e i 2 π n x T f(x)=\sum _{{n=-\infty }}^{\infty }c_{n}\cdot e^{{i{\tfrac {2\pi nx}{T}}}} f(x)=n=−∞∑∞cn⋅eiT2πnx
其中:
c n = 1 T ∫ x 0 x 0 + T f ( x ) ⋅ e − i 2 π n x T d x c_{n}={\frac{1}{T}}\int _{{x_{0}}}^{{x_{0}+T}}f(x)\cdot e^{{-i{\tfrac {2\pi nx}{T}}}}\ dx cn=T1∫x0x0+Tf(x)⋅e−iT2πnx dx
复数形式也是向量,可以如下解读:
f ( x ) = ∑ n = − ∞ ∞ c n ⏟ 对应基的坐标 ⋅ e i 2 π n x T ⏟ 正交基 f(x)=\sum _{{n=-\infty}}^{\infty}\underbrace{c_{n}}_{\text{对应基的坐标}}\cdot \underbrace{e^{{i{\tfrac {2\pi nx}{T}}}}}_{\text{正交基}} f(x)=n=−∞∑∞对应基的坐标 cn⋅正交基 eiT2πnx
不过 c n c_{n} cn是复数,不好画频域图,所以之前讲解全部采取的是三角级数。
周期推向无穷的时候可以得到:
f ( x ) = ∑ n = − ∞ ∞ c n ⋅ e i 2 π n x T T = ∞ } ⟹ f ( x ) = ∫ − ∞ ∞ F ( ω ) e i ω x d ω \left. \begin{aligned} f(x)=\sum _{{n=-\infty }}^{\infty }c_{n}\cdot e^{{i{\tfrac {2\pi nx}{T}}}}\\ T=\infty \end{aligned} \right\} \implies f(x) = \int_{-\infty}^\infty F(\omega)\ e^{i\omega x}\,d\omega f(x)=n=−∞∑∞cn⋅eiT2πnxT=∞⎭⎪⎪⎬⎪⎪⎫⟹f(x)=∫−∞∞F(ω) eiωxdω
上面简化了一下,用 ω \omega ω代表频率。
F ( ω ) F(\omega) F(ω)大致是这么得到的:
c n = 1 T ∫ x 0 x 0 + T f ( x ) ⋅ e − i 2 π n x T d x T = ∞ } ⟹ F ( ω ) = ∫ − ∞ ∞ f ( x ) e − i ω x d x \left. \begin{aligned} c_{n}={\frac{1}{T}}\int _{{x_{0}}}^{{x_{0}+T}}f(x)\cdot e^{{-i{\tfrac {2\pi nx}{T}}}}\ dx\\ T=\infty \end{aligned} \right\}\implies F(\omega)=\int_{-\infty}^\infty f(x)\ e^{-i\omega x}\,dx cn=T1∫x0x0+Tf(x)⋅e−iT2πnx dxT=∞⎭⎪⎬⎪⎫⟹F(ω)=∫−∞∞f(x) e−iωxdx
F ( ω ) F(\omega) F(ω)就是傅立叶变换,得到的就是频域曲线。
下面两者称为傅立叶变换对,可以相互转换:
f ( x ) ⟺ F ( ω ) f(x)\iff F(\omega) f(x)⟺F(ω)
正如之前说的,这是看待同一个数学对象的两种形式,一个是函数,一个是向量。
来源:马同学高等数学
https://www.matongxue.com/