傅里叶变换那点事

傅里叶变换那点事

精读这一篇文章,你就可以深刻理解傅里叶变换的原理

本文首发于微信公众号振动信号研究所

周期信号的频谱-傅里叶级数

信号的正交分解 可知一个周期为 T T T 的信号 f ( t ) f(t) f(t) 在区间 ( t 0 , t 0 + T ) (t_0, t_{0+T}) (t0,t0+T) 内可以表示为完备的正交函数集的线性组合,进而可以得到被表示的周期信号的频谱,包括幅值谱和相位谱,可以有单边谱和双边谱两种表示形式。具体描述参考文章: 为什么会有负频率,单边谱与双边谱的区别和联系

非周期信号的频谱-傅里叶变换

在工程中非周期信号往往更常见,那么如何求解非周期信号的频谱呢?

下面的讨论要求我们具有如下储备知识:三角函数集 { 1 , c o s ( Ω t ) , c o s ( 2 Ω t ) , . . . , s i n ( Ω t ) , s i n ( 2 Ω t ) , . . . } \{1, cos(\Omega t), cos(2\Omega t),...,sin(\Omega t), sin(2\Omega t),...\} {1,cos(Ωt),cos(t),...,sin(Ωt),sin(t),...}, 和虚指数函数集 { e j n Ω t , n ∈ Z } \{e^{jn\Omega t}, n\in Z\} {ejnΩt,nZ} , 是两类典型的区间 ( t 0 , t 0 + T ) ( T = 2 π / Ω ) (t_0, t_0+T)(T=2\pi / \Omega) (t0,t0+T)(T=2π) 上的完备的正交函数集。以他们为基对周期为 T T T 的信号进行分解可以得到离散的频谱,即直流分量和一系列谐波分量之和,且两个相邻的谐波分量间隔(即谱线间隔)为 Ω \Omega Ω ,且 Ω \Omega Ω T T T 的关系为 T = 2 π / Ω T=2\pi / \Omega T=2π

为了得到非周期信号的频谱,我们还要接受这样一个抽象的事实:非周期信号可以看做是周期无穷大的周期信号。周期无穷大的周期信号,意味着我们目之所及能看到的都是非周期信号。

回顾:对周期为 T T T 的信号进行分解得到的傅里叶系数 F n F_n Fn 可以表示为下式
F n = 1 T ∫ − T 2 T 2 f ( t ) e   − j n Ω t d t F_n = \frac{1}{T}{\int_{-\frac{T}{2}}^{\frac{T}{2}}f(t)e^{\:\it -j n\Omega t}\rm d \it t} Fn=T12T2Tf(t)ejnΩtdt
f ( t ) f(t) f(t) 为非周期信号,则我们需要把周期 T T T 看成无穷大,此时, 谱线间隔 $\Omega\enspace (\Omega=2\pi /T) $ 是趋于 0 0 0 的,由于谱线间隔趋于 0 0 0 ,所以非周期信号的频谱为连续谱。上式中 F n F_n Fn 可以看成是关于 n Ω n\Omega nΩ 的函数,自变量 n Ω n\Omega nΩ 每次跳变量为 Ω \Omega Ω Ω \Omega Ω趋于 0 0 0), 为了将 F n F_n Fn 表示成连续函数(因为此时已经是连续谱了,再用离散的函数表示不合适),转换方式如下:

  • 将自变量 n Ω n\Omega nΩ 表示为 ω \omega ω ,即 ω = n Ω \omega = n\Omega ω=nΩ
  • 此时跳变量 Ω \Omega Ω 为无穷小量 d ω \rm d\omega dω,即 d ω = Ω \rm d\omega =\Omega dω=Ω

T → ∞ T\to\infty T 时,系数 F n F_n Fn 也是趋于 0 0 0 的,这意味着连续谱中的所有系数都是无穷小量,但这些无穷小量之间又有明显的相对大小之分,为了观测到这些相对大小且让数值更有意义,在连续谱中,我们观测 F n / ( 1 / T ) F_n/(1/T) Fn/(1/T) ,这个量表示的是频谱密度函数(单位频率上的频谱)。将转换后的连续变量 ω \omega ω 带入 F n / ( 1 / T ) F_n/(1/T) Fn/(1/T) ,可以得到:
lim ⁡ T → ∞ F n 1 / T = lim ⁡ T → ∞ F n T = lim ⁡ T → ∞ ∫ − T 2 T 2 f ( t ) e − j n Ω t   d t = ∫ − ∞ ∞ f ( t ) e − j ω t   d t \begin{align*} \lim _{T \rightarrow \infty} \frac{F_n}{1 / T}&=\lim _{T \rightarrow \infty} F_n T\\ &=\lim _{T \rightarrow \infty} \int_{-\frac{T}{2}}^{\frac{T}{2}} f(t) \mathrm{e}^{-j n \Omega t} \mathrm{~d} t\\ &=\int_{-\infty}^{\infty} f(t) \mathrm{e}^{-j \omega t} \mathrm{~d} t \end{align*} Tlim1/TFn=TlimFnT=Tlim2T2Tf(t)ejnΩt dt=f(t)et dt
工程上习惯用 F ( j ω ) F(j\omega) F() (有的地方直接用 F ( ω ) F(\omega) F(ω) 表示)表示对信号 f ( t ) f(t) f(t) 进行上述变换的结果,如下式,就是大名鼎鼎的傅里叶变换:
F ( j ω ) = ∫ − ∞ ∞ f ( t ) e − j ω t   d t F(j\omega)=\int_{-\infty}^{\infty} f(t) \mathrm{e}^{-j \omega t} \mathrm{~d} t F()=f(t)et dt
式中 F ( j ω ) F(j\omega) F() ω \omega ω 的函数,表示进行傅里叶变换后得到的频谱密度函数,简称频谱密度频谱,注意这里和周期信号的傅里叶级数表示的频谱是有本质区别的。

F ( j ω ) F(j\omega) F() 一般是复函数,所以又可以表示为:
F ( j ω ) = ∣ F ( j ω ) ∣ ⋅ e j φ ( ω ) F(j\omega) = |F(j\omega)|\cdot \mathrm{e}^{j \varphi(\omega)} F()=F()ejφ(ω)
式中 ∣ F ( j ω ) ∣ |F(j\omega)| F() 称为幅度频谱,是关于频率 ω \omega ω 的偶函数, φ ( ω ) \varphi(\omega) φ(ω) 称为相位频谱,是关于频率 ω \omega ω 的奇函数。

傅里叶反变换

根据傅里叶级数, f ( t ) f(t) f(t) 可以表示为各傅里叶系数与对应“基函数”的乘积进行叠加,如下式:
$$
\begin{align*}
f(t) &=\sum_{n=-\infty}^{\infty}F_n\rm e^{:\it j n\Omega t}\
&= \sum_{n=-\infty}^{\infty}F_n:T:\rm e^{:\it j n\Omega t}:\frac{1}{T}\

\end{align*}
KaTeX parse error: Can't use function '$' in math mode at position 4: 在 $̲T\to\infty$ 时,有…
f(t) = \frac{1}{2\pi}\int_{-\infty}^{\infty}F(j\omega):\rm e^{:\it j \omega t}:\rm d\omega
$$
上式称为傅里叶反变换式。

而且有意思的是,傅里叶变换与逆变换的过程是无损的,无论你怎么变,信号表示的信息量是一样的。

傅里叶级数到傅里叶变换过渡的例子

采样函数Sa(x)介绍

在讲傅里叶级数到傅里叶变换过渡的例子之前,先介绍一个很有用的函数,被称为采样函数,其表达式为:
Sa ⁡ ( x ) = sin ⁡ ( x ) x \operatorname{Sa}(x)=\frac{\operatorname{sin}(x)}{x} Sa(x)=xsin(x)
这个函数它长这样:

image-20220929145643441

这里只画出了在 [ − 20 , 20 ] [-20, 20] [20,20] 区间内的函数曲线,该函数的过零点是 ( k π , 0 ) , k = ± 1 , ± 2 , . . . (k \pi,0), k=\pm1,\pm2,... (,0),k=±1,±2,... 该函数振荡衰减,在无穷远处,函数值是无限趋于0的。

这里先抛出一个问题供大家思考:如何求解下面的积分?
∫ − ∞ + ∞ sin ⁡ x x d x \int_{-\infty}^{+\infty} \frac{\sin x}{x} \rm d \it x +xsinxdx

求周期脉冲信号的频谱

有一幅度为1,脉冲宽度为 τ \tau τ 的周期矩形脉冲,其周期为T,如下图所示,求其频谱。

image-20220929084957229

周期信号的频谱是离散谱,可以直接代入公式求解,得到系数 F n F_n Fn 的表达式如下:

F n = 1 T ∫ − T 2 T 2 f ( t ) e − j n Ω t   d t = 1 T ∫ − τ 2 τ 2 e − j n Ω t   d t = 1 T e − j n Ω t − j n Ω ∣ − τ 2 τ 2 = 2 T sin ⁡ ( n Ω τ 2 ) n Ω = τ T sin ⁡ n Ω τ 2 n Ω τ 2 = τ T Sa ⁡ ( n Ω τ 2 ) F_{n}=\frac{1}{T} \int_{-\frac{T}{2}}^{\frac{T}{2}} f(t) \mathrm{e}^{-j n \Omega t} \mathrm{~d} t=\frac{1}{T} \int_{-\frac{\tau}{2}}^{\frac{\tau}{2}} \mathrm{e}^{-j n \Omega t} \mathrm{~d} t=\left.\frac{1}{T} \frac{\mathrm{e}^{-j n \Omega t}}{-j n \Omega}\right|_{-\frac{\tau}{2}} ^{\frac{\tau}{2}}=\frac{2}{T} \frac{\sin \left(\frac{n \Omega \tau}{2}\right)}{n \Omega}=\frac{\tau}{T} \frac{\sin \frac{n \Omega \tau}{2}}{\frac{n \Omega \tau}{2}}=\frac{\tau}{T} \operatorname{Sa}\left(\frac{n \Omega \tau}{2}\right) Fn=T12T2Tf(t)ejnΩt dt=T12τ2τejnΩt dt=T1jnΩejnΩt 2τ2τ=T2nΩsin(2nΩτ)=Tτ2nΩτsin2nΩτ=TτSa(2nΩτ)

为了更清晰地认识到它的频谱长什么样子,我们令 T = 4 τ T=4\tau T=4τ ,此时频谱间隔为
Ω = 2 π T = 2 π 4 τ \Omega=\frac{2\pi}{T}=\frac{2\pi}{4\tau} Ω=T2π=4τ2π
n Ω τ / 2 = k π n \Omega \tau/2=k\pi nΩτ/2= 时,频谱有过零点,此时 n Ω = 2 k π / τ n \Omega =2k\pi/\tau nΩ=2/τ , k = ± 1 , ± 2... ,k=\pm1,\pm2... ,k=±1,±2... 所以两零点间的谱线间隔数为:
2 π / τ Ω = 2 π / τ 2 π / 4 τ = 4 \frac{2\pi/\tau}{\Omega}=\frac{2\pi/\tau}{2\pi/4\tau}=4 Ω2π/τ=2π/4τ2π/τ=4
结合采样函数的特点,画出频谱 F n Fn Fn 如下图所示(这里的频谱可以看成是系数的函数,既不是幅值谱也不是相位谱):

image-20220929174006018

求非周期信号的频谱(频谱密度函数)

上面的例子中,令 T = 4 τ T=4\tau T=4τ ,使我们对周期信号的频谱有个基本认识。那么如果令 T = 8 τ T=8\tau T=8τ T = 16 τ T=16\tau T=16τ ,甚至 T → ∞ T\to\infty T 呢?直接上结果吧:

image-20220929180514322

当周期 T → ∞ T\to\infty T 时,周期脉冲信号则变成了门函数,所有的系数 F n Fn Fn 都无限接近0,所以为了区分这些无穷小量之间的相对大小,我们用频谱密度函数来表示非周期信号的频谱,即:
F ( j ω ) = lim ⁡ T → ∞ F n T = τ Sa ⁡ ( ω τ 2 ) F(j\omega)=\lim _{T \rightarrow \infty} F_n T=\tau \operatorname{Sa}\left(\frac{\omega \tau}{2}\right) F()=TlimFnT=τSa(2ωτ)
其系数函数(频谱图)、幅值谱、相位谱长这样:

image-20220929181814455

这就是门函数的傅里叶变换,得到的结果竟是取样函数的形状!如果你只能记住一个函数的傅里叶变换的结果,那么我强烈建议你记住门函数的傅里叶变换结果,因为它真的是太重要了。

利用傅里叶变换求采样函数的反常积分

还记得刚刚抛出的问题吗:如何求解下面的反常积分?
∫ − ∞ + ∞ sin ⁡ x x d x \int_{-\infty}^{+\infty} \frac{\sin x}{x} \rm d \it x +xsinxdx

这个积分的求解显然不那么简单,但是我们如果学了傅里叶变换,也就顺带掌握了一种求解方法(这种求解方法的重要性显然比傅里叶变换本身次要的太多了)。求解过程如下:

令门函数的宽度取值为 τ = 2 \tau=2 τ=2 ,则其傅里叶变换为:
F ( j ω ) = 2 Sa ⁡ ( ω ) F(j\omega)=2 \operatorname{Sa}(\omega) F()=2Sa(ω)
那么其傅里叶逆变换为:
f ( t ) = 1 2 π ∫ − ∞ ∞ F ( j ω )   e   j ω t   d ω = 1 π ∫ − ∞ ∞ Sa ⁡ ( ω )   e   j ω t   d ω f(t) = \frac{1}{2\pi}\int_{-\infty}^{\infty}F(j\omega)\:\rm e^{\:\it j \omega t}\:\rm d\omega= \frac{1}{\pi}\int_{-\infty}^{\infty}\operatorname{Sa}(\omega)\:\rm e^{\:\it j \omega t}\:\rm d\omega f(t)=2π1F()ejωtdω=π1Sa(ω)ejωtdω
t = 0 t=0 t=0 ,则有:
f ( 0 ) = 1 π ∫ − ∞ ∞ Sa ⁡ ( ω )    d ω = 1 π ∫ − ∞ ∞ sin ⁡ ω ω d ω f(0)= \frac{1}{\pi}\int_{-\infty}^{\infty}\operatorname{Sa}(\omega)\:\:\rm d\omega=\frac{1}{\pi}\int_{-\infty}^{\infty} \frac{\sin \omega}{\omega} \rm d \it \omega f(0)=π1Sa(ω)dω=π1ωsinωdω
又因为 f ( 0 ) = 1 f(0)=1 f(0)=1 ,所以该反常积分结果就是 π \pi π

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值