-
2019-05-21 16:00:30
UTF8gbsn
Introduction
首先我们来看看傅里叶级数在做一个什么样的事情。针对的对象是什么,目的是什么。
-
傅里叶级数针对的对象有两个。(其中,关于收敛性质的一些条件限制,本文暂不
讨论,主要是为了简单问题。让读者有一个更为清晰的骨架认识。细节部分就像是皮肉,
可以让知识更加丰满。还需要读者去阅读更为详细的材料。但是有了骨架我相信阅读起
来就会更为简单和顺畅。)-
周期函数,比如 s i n ( 2 x ) + c o s ( 3 x ) sin(2x)+cos(3x) sin(2x)+cos(3x)
-
非周期函数,但是定义在某个区间上。比如 f ( x ) = { x 2 , 0 ⩽ x ⩽ 2 0 , f(x)=\left\{ \begin{aligned} &x^2, 0 \leqslant x \leqslant 2\\ &0, \end{aligned} \right. f(x)={x2,0⩽x⩽20,
对于这样的函数,我们可以做周期延拓,让他成为一个周期函数。
而且,我们可以进行周期扩展把任何周期函数的周期变换为 2 π 2\pi 2π,只需要加一个缩
放因子就好了。所以后面我们讨论的范围只针对周期为 2 π 2\pi 2π,的函数也不会失去一
般性. -
-
我们再来看傅里叶级数的目的。傅里叶级数的目的是将目标函数 f ( x ) f(x) f(x)展开为一个,
正弦和余弦的函数的级数。也就是
f ( x ) = a 0 2 + ∑ n = 1 ∞ ( a n c o s ( n x ) + b n s i n ( n x ) ) f(x)=\frac{a_0}{2}+\sum_{n=1}^{\infty}(a_ncos(nx)+b_nsin(nx)) f(x)=2a0+n=1∑∞(ancos(nx)+bnsin(nx))
其中, a n , b n a_n,b_n an,bn是什么东西?
a n = 1 π ∫ − π π f ( x ) c o s ( n x ) d x , ( n = 0 , 1 , 2 , . . . ) a_n=\frac{1}{\pi}\int_{-\pi}^{\pi}{f(x)cos(nx)dx},(n=0,1,2,...) an=π1∫−ππf(x)cos(nx)dx,(n=0,1,2,...)b n = 1 π ∫ − π π f ( x ) s i n ( n x ) d x , ( n = 0 , 1 , 2 , . . . ) b_n=\frac{1}{\pi}\int_{-\pi}^{\pi}{f(x)sin(nx)dx},(n=0,1,2,...) bn=π1∫−ππf(x)sin(nx)dx,(n=0,1,2,...)
暂时看不明白这个式子不要紧。我们会慢慢展开,从一个比较直观的角度来理解这个级
数的意义。
Time and Frequency
时间和频率的关系和变换是理解傅里叶级数的关键。如果读者忽略了时间和频率的转换关
系。那么读者将不会真正理解傅里叶级数,进而影响到以后会谈到的傅里叶变换。让我们
来仔细看看,傅里叶级数在干一件什么事情。-
傅里叶级数的目标函数是定义在时间域上的。也就是说,傅里叶级数的目标函数
是时变的 f ( t ) f(t) f(t). -
傅里叶级数的生成级数是不同频域信号在时域上的叠加。我们后面会看到是怎么回
事。
让我们具体看看一看傅里叶级数的主题是什么。
-
有人提出一种展开方式(傅里叶级数),可以展开呢定义在 ( − ∞ , ∞ ) (-\infty,\infty) (−∞,∞)上周期为 2 π 2\pi 2π的
函数 f ( x ) f(x) f(x)。 -
然后有人又证明了这个展开式(傅里叶级数),在有些条件下收敛,且收敛于 f ( x ) f(x) f(x)。
通过这两点,我们就把一个时间域的信号。用多个不同频率的信号叠加生成了。
From Bottom Up
我们来看看自低想上来分析傅里叶级数,的物理意义。
Orthodox Sin and Cos
首先我们来理解一个非常重要的概念叫做正交三角函数
∫ − π π c o s ( n x ) d x , ( n = , 1 , 2 , 3 , . . . ) ∫ − π π s i n ( n x ) d x , ( n = , 1 , 2 , 3 , . . . ) ∫ − π π c o s ( k x ) s i n ( n x ) d x , ( n , k = , 1 , 2 , 3 , . . . ) ∫ − π π c o s ( k x ) c o s ( n x ) d x , ( n , k = , 1 , 2 , 3 , . . . ) ∫ − π π s i n ( k x ) s i n ( n x ) d x , ( n , k = , 1 , 2 , 3 , . . . ) \left. \begin{aligned} & \int_{-\pi}^{\pi}{cos(nx)dx},(n=,1,2,3,...)\\ & \int_{-\pi}^{\pi}{sin(nx)dx},(n=,1,2,3,...)\\ & \int_{-\pi}^{\pi}{cos(kx)sin(nx)dx},(n,k=,1,2,3,...)\\ & \int_{-\pi}^{\pi}{cos(kx)cos(nx)dx},(n,k=,1,2,3,...)\\ & \int_{-\pi}^{\pi}{sin(kx)sin(nx)dx},(n,k=,1,2,3,...)\\ \end{aligned} \right. ∫−ππcos(nx)dx,(n=,1,2,3,...)∫−ππsin(nx)dx,(n=,1,2,3,...)∫−ππcos(kx)sin(nx)dx,(n,k=,1,2,3,...)∫−ππcos(kx)cos(nx)dx,(n,k=,1,2,3,...)∫−ππsin(kx)sin(nx)dx,(n,k=,1,2,3,...)
也就是说
1 , c o s ( x ) , s i n ( x ) , c o s ( 2 x ) , s i n ( 2 x ) , ⋯ 1,cos(x),sin(x),cos(2x),sin(2x),\cdots 1,cos(x),sin(x),cos(2x),sin(2x),⋯
之间互相正交。他们两两之间的乘积的积分在 ( − π , π ) (-\pi,\pi) (−π,π)上是0。
Time Function Map
我们来看看时域的函数, f ( t ) f(t) f(t)的展开式,注意我们现在只是定义了一个这样的展开式。但
是并未去证明它的收敛性质。我们把符号 = = =换成一个符号 ↦ \mapsto ↦。这个展开式就是傅
里叶级数,但是我们并没有去证明它收敛和相等。我们暂时只是把收敛定理写在这里,不
做证明。如果需要请参考相应的资料。或者后面另写专题来证明傅里叶级数的收敛性证明**定理:**设 f ( x ) f(x) f(x)是周期为 2 π 2\pi 2π的周期函数,如果它满足
-
在一个周期内连续或只有有限个第一类间断点。
-
在一个周期内至多只有有限个极值点
则 f ( x ) f(x) f(x)的傅里叶级数收敛,并且当 x x x是连续点是,收敛于 f ( x ) f(x) f(x),而当x是间断点时,收
敛于 1 2 [ f ( x − ) + f ( x + ) ] \frac{1}{2}[f(x^{-})+f(x^{+})] 21[f(x−)+f(x+)] 。当然这个定理,可以把它当做既定事实。我们就可以接下来看傅里叶级数的具体计算。
f ( t ) ↦ A 0 + ∑ n = 1 ∞ A n s i n ( n ω t + φ n ) f(t)\mapsto A_0+\sum_{n=1}^{\infty}A_nsin(n\omega t+\varphi_n) f(t)↦A0+n=1∑∞Ansin(nωt+φn)
根据
A n s i n ( n ω t + φ n ) = A n s i n ( φ n ) c o s ( n ω t ) + A n c o s ( φ n ) s i n ( n ω t ) A_nsin(n\omega t + \varphi_n)=A_nsin(\varphi_n)cos(n\omega t)+A_ncos(\varphi_n)sin(n\omega t) Ansin(nωt+φn)=Ansin(φn)cos(nωt)+Ancos(φn)sin(nωt)
然后我们令
{ a 0 2 = A 0 a n = A n s i n ( φ n ) b n = A n c o s ( φ n ) ω = π l , ( T = 2 l ) \left\{ \begin{aligned} \frac{a_0}{2}=& A_0\\ a_n= &A_nsin(\varphi_n)\\ b_n= &A_ncos(\varphi_n)\\ \omega =& \frac{\pi}{l},(T=2l) \end{aligned} \right. ⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧2a0=an=bn=ω=A0Ansin(φn)Ancos(φn)lπ,(T=2l)
那么
f ( t ) ↦ a 0 2 + ∑ n = 1 ∞ [ a n c o s ( n π t l ) + b n s i n ( n π t l ) ] f(t)\mapsto \frac{a_0}{2}+\sum_{n=1}^{\infty}[a_ncos(\frac{n\pi t}{l})+b_nsin(\frac{n\pi t}{l})] f(t)↦2a0+n=1∑∞[ancos(lnπt)+bnsin(lnπt)]
我们实际上把周期为 2 l 2l 2l的映射变换为了周期为 2 π 2\pi 2π的映射.我们再让
x = t π l x=\frac{t\pi}{l} x=ltπ可得f ( t ) ↦ a 0 2 + ∑ n = 1 ∞ [ a n c o s ( n x ) + b n s i n ( n x ) ] f(t)\mapsto \frac{a_0}{2}+\sum_{n=1}^{\infty}[a_ncos(n x)+b_nsin(n x)] f(t)↦2a0+n=1∑∞[ancos(nx)+bnsin(nx)]
我们来看看变换的具体变量.-
原函数为 f ( t ) f(t) f(t),是定义在 − l , l -l,l −l,l上的周期函数,也就是说 l ∈ ( − l , l ) l\in (-l, l) l∈(−l,l).
-
我们来看看我们映射后的变量是 x ∈ ( − π , π ) x \in (-\pi, \pi) x∈(−π,π),其实这还是一个时域的变量。
-
那么问题来了,那频域去哪里了。那么我们来看一个具体的例子来。比如函数
f ( t ) = 3 + 3 s i n ( t ) + 5 s i n ( 2 t ) + 6 c o s ( 3 t ) f(t)=3+3sin(t)+5sin(2t)+6cos(3t) f(t)=3+3sin(t)+5sin(2t)+6cos(3t).禁果傅里叶变换后,为
f ( t ) = 3 + 3 s i n ( t ) + 5 s i n ( 2 t ) + 6 c o s ( 3 t ) f(t)=3+3sin(t)+5sin(2t)+6cos(3t) f(t)=3+3sin(t)+5sin(2t)+6cos(3t)
(感谢rrii指出的错误.)
也就是说,这个函数被变换到了由3个不同频域的函数叠加而成。这里我们使用的本来就是一个由正弦余弦构成的函数.自然很容易看出频域成分.但是如果时一个更为复杂的函数,就没那么容易了.但是你可以使用傅里叶变换,它能够帮你分析出里面的频域成分.这也是傅里叶变换重要的作用
T = 2 π , T = π , T = 2 π 3 T=2\pi,T=\pi,T=\frac{2\pi}{3} T=2π,T=π,T=32π -
换言之,这三个频率的函数组合起来,
就原来的函数 f ( t ) f(t) f(t)。下面的频域函数和
f ( t ) f(t) f(t)是等价关系,也就是通过一个函数可以计算另一个函数。
这里还要着重强调的一点事,傅里叶级数展开的频率是一定的。也就是说分别展开为周期
为
2 π 1 , 2 π 2 , 2 π 3 , . . . , 2 π n , ( n = , 1 , 2 , 3 , . . . . ) \frac{2\pi}{1},\frac{2\pi}{2},\frac{2\pi}{3},...,\frac{2\pi}{n}, (n=,1,2,3,....) 12π,22π,32π,...,n2π,(n=,1,2,3,....)注意傅里叶级数是没有频率,比如 3 π 2 \frac{3\pi}{2} 23π的频率成分的。只有上面提到的评率
成分。而和傅里叶变换不同的地方正式在这里。傅里叶变换的频率成分是连续的。不是如
上面的式子显示的那样是离散的。Get parameters
让我们来看看如何求 a 0 , a k , b k a_0,a_k,b_k a0,ak,bk
∫ − π π f ( x ) d x = ∫ − π π a 0 2 d x + ∑ k = 1 ∞ [ a k ∫ − π π c o s ( k x ) d x + b k ∫ − π π s i n ( k x ) d x ] \int_{-\pi}^{\pi}{f(x)dx}=\int_{-\pi}^{\pi}{\frac{a_0}{2}dx}+\sum_{k=1}^{\infty}[a_k \int_{-\pi}^{\pi}{cos(kx)dx}+b_k \int_{-\pi}^{\pi}{sin(kx)dx}] ∫−ππf(x)dx=∫−ππ2a0dx+k=1∑∞[ak∫−ππcos(kx)dx+bk∫−ππsin(kx)dx]
回想一下正交正弦余弦的定义。我们可以得出等式为
∫ − π π f ( x ) d x = a 0 2 ⋅ 2 π ⇒ a 0 = 1 π ∫ − π π f ( x ) d x \int_{-\pi}^{\pi}{f(x)dx}=\frac{a_0}{2}\cdot 2\pi\Rightarrow a_0=\frac{1}{\pi}\int_{-\pi}^{\pi}{f(x)dx} ∫−ππf(x)dx=2a0⋅2π⇒a0=π1∫−ππf(x)dx
再来看等式
∫ − π π f ( x ) c o s ( n x ) d x \int_{-\pi}^{\pi}{f(x)cos(nx)dx} ∫−ππf(x)cos(nx)dx
a 0 2 ∫ − π π c o s ( n x ) d x + ∑ k = 1 ∞ [ a k ∫ − π π c o s ( k x ) c o s ( n x ) d x + b k ∫ − π π s i n ( k x ) c o s ( n x ) d x ] \frac{a_0}{2}\int_{-\pi}^{\pi}{cos(nx)dx}+\sum_{k=1}^{\infty}[a_k \int_{-\pi}^{\pi}{cos(kx)cos(nx)dx}+b_k \int_{-\pi}^{\pi}{sin(kx)cos(nx)dx}] 2a0∫−ππcos(nx)dx+k=1∑∞[ak∫−ππcos(kx)cos(nx)dx+bk∫−ππsin(kx)cos(nx)dx]
根据正交的性质,我们可以得到(正交的概念一定要理解清楚,这是计算 a n , b n , a 0 a_n,b_n,a_0 an,bn,a0)
的关键a n = 1 π ∫ − π π f ( x ) c o s ( n x ) d x a_n=\frac{1}{\pi} \int_{-\pi}^{\pi}{f(x)cos(nx)dx} an=π1∫−ππf(x)cos(nx)dx
b n = 1 π ∫ − π π f ( x ) s i n ( n x ) d x b_n=\frac{1}{\pi} \int_{-\pi}^{\pi}{f(x)sin(nx)dx} bn=π1∫−ππf(x)sin(nx)dx于是我们能求出所有的傅里叶级数
f ( x ) = a 0 2 + ∑ n = 1 ∞ ( a n c o s ( n x ) + b n s i n ( n x ) ) f(x)=\frac{a_0}{2}+\sum_{n=1}^{\infty}(a_ncos(nx)+b_nsin(nx)) f(x)=2a0+n=1∑∞(ancos(nx)+bnsin(nx))
The End
傅里叶级数,就是把一个周期的时域信号,分解为,不同频率的信号的叠加。注意这些频率
不是连续的而是离散的。因为 n = 1 , 2 , 3 , . . . n=1,2,3,... n=1,2,3,....这个和傅里叶变换最关键的不同之处。后面我
们会来谈谈傅里叶变换。傅里叶变换的理解,可以从傅里叶级数中来找到灵感了思路。我们要强调一点:傅里叶级数的收敛性质我们没有证明,这不影响工程上应用傅
里叶级数。我们只是陈述一点,也就是只要满足一定条件的周期函数。就可以展开为傅里叶
级数。而系数的计算则是上一节给出来的。更多相关内容 -
-
傅里叶级数波形:此文件包括不同波形的傅里叶级数图,例如:半波整流、全波整流、锯齿波-matlab开发
2021-05-31 21:00:39该文件包括不同波形的傅立叶级数图,例如: 1) 半波整流2) 全波整流3)锯齿4) 矩形5) 三角形6) 冲动列车7) 方波傅立叶系数用于获得傅立叶级数,然后将傅立叶级数相对于时间绘制以产生波形。 -
python实现傅里叶级数展开的实现
2020-09-20 06:04:32主要介绍了python实现傅里叶级数展开的实现,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 -
傅立叶级数计算器:启动一个 GUI,根据其傅立叶级数的第 n 个部分和绘制函数-matlab开发
2021-06-01 16:24:55这个程序试图逼近函数 f(x) 从 -L 到 L 使用 quad(MATLAB 函数)的 m 项傅立叶级数。 -
基于MATLAB的傅里叶级数可视化
2018-09-05 15:05:16本程序通过对傅里叶级数展开过程的可视化分析,利用MATLAB在绘图、计算方面的优势,将傅里叶的展开过程清晰地呈现出来,从而更好地帮助用户理解傅里叶级数,为电类专业未来的学习打下良好基础。 -
实信号的傅立叶级数:此函数计算信号的傅立叶级数-matlab开发
2021-05-30 14:07:28实信号的傅立叶级数。 由 Yoash Levron 博士撰写,2013 年 1 月。 此函数计算信号 x(t) 的傅立叶级数。 傅立叶级数的振幅具有相同的维数的原始信号,因此该函数可用于立即计算实际频率分量,而无需进一步处理。 ... -
傅里叶变换和傅里叶级数之间的区别与联系
2017-08-06 10:33:09傅里叶变换和傅里叶级数之间的区别与联系,详细推导和个人理解。我的CSDN博客中也有这一篇文章。 -
周期锯齿波傅立叶级数(离散频谱)的MATLAB实现
2020-06-18 00:27:02周期锯齿波傅立叶级数(离散频谱)的MATLAB实现,绘制并观察周期锯齿脉冲信号频谱特性,可自改成其他周期函数 -
傅里叶级数在电路中的应用: 半波整流器:傅里叶级数-matlab开发
2021-05-30 06:37:22计算 RL 电路输出端的电压、电流和阻抗。 来自半波整流电路的信号 -
傅里叶级数系数:计算傅里叶级数系数和幅度和相位谱。-matlab开发
2021-05-30 14:07:05计算函数的级数展开的傅立叶系数,以及幅度谱和相位谱。 该脚本包含一些理论和 3 种不同的计算系数的方法。 用法Fourier_coeff(fun,t0,T) Fourier_coeff(fun,t0,T,M) Fourier_coeff(fun,t0,T,M,N) Fourier_coeff... -
傅立叶级数的定义与周期函数的傅里叶级数计算方法
2009-10-25 21:38:02该文件讲解了傅里叶级数的定义等和傅里叶级数的计算方法等 -
方波:傅立叶级数-matlab开发
2021-05-30 19:47:40当您选择傅立叶级数的谐波数时显示方波。 -
傅立叶变换之(二)—— 傅立叶级数
2021-11-11 17:24:53这是一个系列笔记,在理解图卷积神经网络的时候需要用到傅立叶变换,傅立叶变换的基础是傅立叶级数公式,而傅立叶级数公式中又包含欧拉公式,这篇文章就是这么来的。 一、复数的概念? 我们把形如 z=a+bi(a、b均为...
前言
这是一个系列笔记,在理解图卷积神经网络的时候需要用到傅立叶变换,傅立叶变换的基础是傅立叶级数公式,而傅立叶级数公式中又包含欧拉公式,这篇文章是第二篇。
一、傅立叶级数的由来
数学家们猜测一些周期函数可以写成三角函数的和,即像图中表示的那样(黑色斜线:周期为2Π的函数;红色曲线:各个三角函数的和)。
而傅里叶则猜测任意周期函数都可以写成三角函数的和。二、傅立叶级数公式
分析公式(即为什么周期函数可以写成三角函数的和呢?):
1、常数项C,用来调整整体位置。
2、因为任意函数都可以分解为奇函数和偶函数之和,所以正弦、余弦函数是组成任意函数的基础,他们之间经过合理的加减组合,可以成为任意函数,必须有!
3、调整振幅(振幅是正弦、余弦函数前边的系数),为了使其尽可能的逼近原函数。
4、正弦、余弦函数内的系数是为了让他们周期为T,即所有三角函数的和组成的函数要与他们要逼近函数的周期相同。三、频域和时域
有关于为什么要讲到频域和时域,是因为在后边详细推导傅立叶级数公式的时候会用到。
在上一个笔记里,我们讲到了欧拉公式:
传送门:傅立叶变换之(一)——欧拉公式
一看到这个,我们就应该想出来这么一幅图:
即欧拉公式代表的就是单位圆上的点。
我们把欧拉公式的虚部(也就是纵坐标)记录下来,得到的就是正弦函数。(欧拉公式整体看成是我们熟知的a+bi就可以了,虚部不就是对应欧拉公式中的正弦函数吗?)
同理,我们把实部(也就是横坐标)记录下来,就是余弦函数的曲线。
这两种看待欧拉公式的角度,一个可以观察到旋转的频率,所以称之为频域;另一种可以看到流逝的时间,所以称之为时域。
四、傅立叶级数公式的进一步求解
4-1、抛砖引玉
假设有函数:
根据上一点对频域和时域的讲解,这里我们把它转化到频域中去。
由欧拉公式 e i t = cos ( t ) + i sin ( t ) {\rm e}^{it}=\cos(t)+i \sin(t) eit=cos(t)+isin(t)可以得到:
e i t + e i 2 t = ( cos ( t ) + cos ( 2 t ) ) + i ( sin ( t ) + sin ( 2 t ) ) {\rm e}^{it}+{\rm e}^{i2t}=(\cos(t)+\cos(2t))+i( \sin(t)+\sin(2t)) eit+ei2t=(cos(t)+cos(2t))+i(sin(t)+sin(2t))
即g(x)函数是 e i t + e i 2 t {\rm e}^{it}+{\rm e}^{i2t} eit+ei2t 的虚部。
我们令:
G ( t ) = e i t + e i 2 t G(t)= {\rm e}^{it}+{\rm e}^{i2t} G(t)=eit+ei2t
从线性代数的角度来说: G ( t ) G(t) G(t)是基 e i t {\rm e}^{it} eit和 e i 2 t {\rm e}^{i2t} ei2t的线性组合。
注意:基是描述、刻画向量空间的基本工具。
接下来看如何求正交向量(基)中其中一个向量前边的系数:
假设有:
w ⃗ = 2 u ⃗ + 3 v ⃗ \vec{w} = 2\vec{u}+ 3\vec{v} w=2u+3v
其中 u ⃗ = ( − 1 , 1 ) \vec{u}=(-1,1) u=(−1,1), v ⃗ = ( 1 , 1 ) \vec{v}=(1,1) v=(1,1)。
因为他们是正交向量,所以:
u ⃗ ⋅ v ⃗ = 0 \vec{u} \cdot \vec{v} = 0 u⋅v=0
结论一(只有正交基才使用):
u ⃗ \vec{u} u的系数a可以计算为:
w ⃗ ⋅ u ⃗ u ⃗ ⋅ u ⃗ = 2 \frac{\vec{w} \cdot \vec{u}} {\vec{u} \cdot \vec{u}} = 2 u⋅uw⋅u=2
同理:
v ⃗ \vec{v} v的系数b可以计算为:
w ⃗ ⋅ v ⃗ v ⃗ ⋅ v ⃗ = 3 \frac{\vec{w} \cdot \vec{v}} {\vec{v} \cdot \vec{v}} = 3 v⋅vw⋅v=3
反推:
w ⃗ ⋅ u ⃗ = a ⋅ u ⃗ ⋅ u ⃗ \vec{w} \cdot \vec{u} = a \cdot \vec{u} \cdot \vec{u} w⋅u=a⋅u⋅u
( 2 u ⃗ + 3 v ⃗ ) ⋅ u ⃗ = a ⋅ u ⃗ ⋅ u ⃗ (2\vec{u} +3\vec{v})\cdot \vec{u} = a \cdot \vec{u} \cdot \vec{u} (2u+3v)⋅u=a⋅u⋅u
因为他们是正交向量,所以乘积为0,等式成立。os:先记住这个结论就好了,不要问那么多为什么,我是个数学渣渣能推到这已经很不容易了,先糊弄过去。
结论二(函数向量点积的定义):
os:同样的先记住这个结论。
4-2、傅立叶级数公式进化
傅立叶级数公式可以写为:
也就是说f(x)的基为:
那么可以得到:
C也可以通过点积来表示:
参考文章:
如何理解傅立叶级数公式?
傅里叶系列(一)傅里叶级数的推导
Cmd Markdown 公式指导手册总结
马上就下班了,今天的摸鱼就到此结束吧。
-
指数函数e ^(-x)的傅里叶级数:函数e ^(-x)的傅里叶级数(FS)在(0,2pi)区间内。-matlab开发
2021-06-01 04:21:21函数 e^(-x) 在区间 (0,2pi) 上的傅立叶级数 (FS)。 这个程序类似于Matlab Demo of Square wave from Sine wave。 它绘制了 e^(-x) 和前 40 项 FS 之间的误差。 由于近似值(忽略 41 到 inf 项)而出现此错误 -
分段傅里叶级数:绘制分段函数的三角傅里叶级数。-matlab开发
2021-05-29 03:16:16此应用程序允许用户定义分段函数,计算三角傅立叶级数展开的系数,并绘制近似值。 -
傅里叶级数详解
2021-06-17 19:55:22首先,推荐一个有意思的视频:【谜之舒适】12分钟的傅立叶级数动画 下面进入正文。 周期为2π2\pi2π的方波函数: z(t)={−1,−π≤t<01,0≤t<πz(t)=\begin{cases}-1,-\pi\le t\lt 0\文章目录
首先,推荐一个有意思的视频:【谜之舒适】12分钟的傅立叶级数动画
下面进入正文。
周期为 2 π 2\pi 2π的方波函数:
z ( t ) = { − 1 , − π ≤ t < 0 1 , 0 ≤ t < π z(t)=\begin{cases}-1,-\pi\le t\lt 0\\\quad 1,\quad0\le t\lt \pi\end{cases} z(t)={−1,−π≤t<01,0≤t<π
可以展开为三角函数形式的傅里叶级数:
4 π [ sin t + 1 3 sin 3 t + ⋯ + 1 2 n + 1 sin ( 2 n + 1 ) t + ⋯ ] \frac{4}{\pi}\left[\sin t+\frac{1}{3} \sin 3 t+\cdots+\frac{1}{2 n+1} \sin (2 n+1) t+\cdots\right] π4[sint+31sin3t+⋯+2n+11sin(2n+1)t+⋯]
下图为三角函数形式的傅里叶级数合成方波函数(红色)的示意图:
为什么可以呢?接下来,我们将详解它的原理:
下文主要分为两个小节,第一节首先介绍了向量的正交分解,然后过渡到函数的正交分解并得出广义傅里叶级数这一概念。基于广义傅里叶级数,第二节首先解释周期函数是如何展开成三角函数的傅里叶级数的,然后由辅助角公式推出其余弦形式,最后根据欧拉公式得出复指数形式的傅里叶级数。
函数分解为正交函数
1 向量的正交分解
(1)向量正交
若两向量 V 1 V_1 V1与 V 2 V_2 V2正交,即夹角为90°:
那么,这两正交向量的内积为零
V 1 → ⋅ V 2 → = ∣ V 1 ∣ ⋅ ∣ V 2 ∣ cos 9 0 ∘ = 0 \overrightarrow{V_{1}}\cdot \overrightarrow{V_{2}}=|V_{1}| \cdot |V_{2}| \cos 90^{\circ}=0 V1⋅V2=∣V1∣⋅∣V2∣cos90∘=0(2)正交向量集
由两两正交的向量组成的向量集合。
(3)非正交向量的近似表示及误差
由∣ c 12 V 2 ∣ = ∣ V 1 ∣ cos θ |c_{12}V_{2}|=|V_{1}| \cos \theta ∣c12V2∣=∣V1∣cosθ
得:
c 12 = ∣ V 1 ∣ cos θ ∣ V 2 ∣ = ∣ V 1 ∣ ⋅ ∣ V 2 ∣ cos θ ∣ V 2 ∣ ⋅ V 2 ∣ = V 1 → ⋅ V 2 → V 2 → ⋅ V 2 → c_{12}= \frac{|V_{1}| \cos \theta}{|V_{2}|}= \frac{|V_{1}| \cdot |V_{2}| \cos \theta}{|V_{2}| \cdot V_{2}|}= \frac{\overrightarrow{V_{1}}\cdot \overrightarrow{V_{2}}}{\overrightarrow{V_{2}}\cdot \overrightarrow{V_{2}}} c12=∣V2∣∣V1∣cosθ=∣V2∣⋅V2∣∣V1∣⋅∣V2∣cosθ=V2⋅V2V1⋅V2
用与 V 2 V_2 V2成比例的向量 c 12 V 2 c_{12}V_2 c12V2近似地表示 V 1 V_1 V1,则误差向量
V e → = V 1 → − c 12 V 2 → \overrightarrow{V_{e}}= \overrightarrow{V_{1}}-c_{12}\overrightarrow{V_{2}} Ve=V1−c12V2
显然,当两向量 V 1 V_1 V1与 V 2 V_2 V2正交时, c 12 = 0 c_{12}=0 c12=0,即 V 1 → ⋅ V 2 → = 0 \overrightarrow{V_{1}}·\overrightarrow{V_{2}}=0 V1⋅V2=0。
(4)向量正交分解:任意 N N N维向量可由 N N N维正交坐标系表示。
c 1 = ∣ V ∣ cos θ 1 ∣ V 1 ∣ = V → ⋅ V → 1 V 1 → ⋅ V → 1 c_{1}= \frac{|V| \cos \theta _{1}}{|V_{1}|}= \frac{\overrightarrow{V}\cdot \overrightarrow{V}_{1}}{\overrightarrow{V_{1}}\cdot \overrightarrow{V}_{1}} c1=∣V1∣∣V∣cosθ1=V1⋅V1V⋅V1
c 2 = ∣ V ∣ cos θ 2 ∣ V 2 ∣ = V → ⋅ V 2 → V 2 → ⋅ V 2 → c_{2}= \frac{|V| \cos \theta _{2}}{|V_{2}|}= \frac{\overrightarrow{V}\cdot \overrightarrow{V_{2}}}{\overrightarrow{V_{2}}\cdot \overrightarrow{V_{2}}} c2=∣V2∣∣V∣cosθ2=V2⋅V2V⋅V2c 1 = ∣ V ∣ cos θ 1 ∣ V 1 ∣ = V → ⋅ V → 1 V 1 → ⋅ V → 1 c_{1}= \frac{|V| \cos \theta _{1}}{|V_{1}|}= \frac{\overrightarrow{V}\cdot \overrightarrow{V}_{1}}{\overrightarrow{V_{1}}\cdot \overrightarrow{V}_{1}} c1=∣V1∣∣V∣cosθ1=V1⋅V1V⋅V1
c 2 = ∣ V ∣ cos θ 2 ∣ V 2 ∣ = V → ⋅ V 2 → V 2 → ⋅ V 2 → c_{2}= \frac{|V| \cos \theta _{2}}{|V_{2}|}= \frac{\overrightarrow{V}\cdot \overrightarrow{V_{2}}}{\overrightarrow{V_{2}}\cdot \overrightarrow{V_{2}}} c2=∣V2∣∣V∣cosθ2=V2⋅V2V⋅V2c 3 = ∣ V ∣ cos θ 3 ∣ V 3 ∣ = V → ⋅ V 3 → V 3 → ⋅ V 3 → c_{3}= \frac{|V| \cos \theta _{3}}{|V_{3}|}= \frac{\overrightarrow{V}\cdot \overrightarrow{V_{3}}}{\overrightarrow{V_{3}}\cdot \overrightarrow{V_{3}}} c3=∣V3∣∣V∣cosθ3=V3⋅V3V⋅V3
推广到 n n n维空间: n n n维空间的任一向量 V V V,可以精确地表示为 n n n个正交向量的线性组合, 即
V → = c 1 V 1 → + c 2 V 2 → + ⋯ + c r V r → + ⋯ + c n V → n \overrightarrow{V}=c_{1}\overrightarrow{V_{1}}+c_{2}\overrightarrow{V_{2}}+ \cdots +c_{r}\overrightarrow{V_{r}}+ \cdots +c_{n}\overrightarrow{V}_{n} V=c1V1+c2V2+⋯+crVr+⋯+cnVn
式中, V i → ⋅ V j → = 0 ( i ≠ j ) \overrightarrow{V_i}·\overrightarrow{V_j}=0 (i≠j) Vi⋅Vj=0(i=j),第 r r r 个分量的系数
c r = V → ⋅ V r → V r → ⋅ V → r c_{r}= \frac{\overrightarrow{V}\cdot \overrightarrow{V_{r}}}{\overrightarrow{V_{r}}\cdot\overrightarrow{V}_{r}} cr=Vr⋅VrV⋅Vr
下面我们将向量空间正交分解的概念可推广到函数空间:在函数空间找到若干个相互正交的函数作为基本函数,使得函数空间中任意函数均可表示成它们的线性组合。
2 函数的正交分解
(1) 函数正交
定义
在 ( t 1 , t 2 ) (t_1,t_2) (t1,t2)区间的两个函数 φ 1 ( t ) \varphi_1(t) φ1(t)和 φ 2 ( t ) \varphi_2(t) φ2(t),若满足
∫ t 1 t 2 φ 1 ( t ) φ 2 ∗ ( t ) d t = 0 , ∗ 表 示 共 轭 \int_{t_{1}}^{t_{2}}\varphi _{1}(t)\varphi _{2}^*(t)dt=0,*表示共轭 ∫t1t2φ1(t)φ2∗(t)dt=0,∗表示共轭即两函数内积为0,则称 φ 1 ( t ) \varphi _{1}(t) φ1(t)和 φ 2 ( t ) \varphi _{2}(t) φ2(t)在区间 ( t 1 , t 2 ) (t_1,t_2) (t1,t2)正交。
备注:实数函数的共轭是其本身。
(2)正交函数集
若 n n n个函数 φ 1 ( t ) , φ 2 ( t ) , . . . , φ n ( t ) \varphi_{1}(t), \varphi_{2}(t),...,\varphi _{n}(t) φ1(t),φ2(t),...,φn(t)构成一个函数集,当这些函数在区间 ( t 1 , t 2 ) (t_1,t_2) (t1,t2)内满足
∫ t 1 t 2 φ 1 ( t ) φ 2 ∗ ( t ) d t = { 0 , i ≠ j K i ≠ 0 , i = j \int_{t_{1}}^{t_{2}}\varphi _{1}(t)\varphi _{2}^*(t)dt=\left\{ \begin{matrix} 0, \quad i \neq j \\ K_{i}\neq 0, \quad i=j \\ \end{matrix} \right. ∫t1t2φ1(t)φ2∗(t)dt={0,i=jKi=0,i=j
则称此函数集为区间 ( t 1 , t 2 ) (t_1,t_2) (t1,t2)上的正交函数集。如果 K i = 1 K_i=1 Ki=1,称为标准正交函数集。
(3)完备正交函数集
如果在正交函数集 { φ 1 ( t ) , φ 2 ( t ) , . . . , φ n ( t ) } \{\varphi_{1}(t), \varphi_{2}(t),...,\varphi _{n}(t) \} {φ1(t),φ2(t),...,φn(t)}之外,不存在任何函数 φ ( t ) ( ≠ 0 ) \varphi(t)(\not=0) φ(t)(=0)满足:
∫ t 1 t 2 φ ( t ) φ i ∗ ( t ) d t = 0 , ( i = 1 , 2 , ⋯ , n ) \int_{t_{1}}^{t_{2}}\varphi(t)\varphi _{i}^{*}(t)dt=0,(i=1,2, \cdots ,n) ∫t1t2φ(t)φi∗(t)dt=0,(i=1,2,⋯,n)则称此函数集为完备正交函数集。
(4)函数的正交分解
设有 n n n个函数 φ 1 ( t ) , φ 2 ( t ) , ⋯ , φ n ( t ) \varphi_{1}(t), \varphi _{2}(t), \cdots , \varphi _{n}(t) φ1(t),φ2(t),⋯,φn(t)在区间 ( t 1 , t 2 ) (t_1,t_2) (t1,t2)构成要给正交函数空间。将任一函数 f ( t ) f(t) f(t)用这个正交函数的线性组合来近似,可表示为:
f ( t ) ≈ C 1 φ 1 ( t ) + C 2 φ 2 ( t ) + ⋯ + C i φ i ( t ) ⋯ + C n φ n ( t ) = ∑ j = 1 n C j φ j ( t ) f(t)\approx C_{1}\varphi _{1}(t)+C_{2}\varphi _{2}(t)+ \cdots +C_{i}\varphi _{i}(t)\cdots +C_{n}\varphi _{n}(t)= \sum _{j=1}^{n}C_{j}\varphi _{j}(t) f(t)≈C1φ1(t)+C2φ2(t)+⋯+Ciφi(t)⋯+Cnφn(t)=j=1∑nCjφj(t)
如何找到合适的系数 C i C_i Ci,使得函数与近似函数的误差在 ( t 1 , t 2 ) (t_1,t_2) (t1,t2)最小呢?
我们可以通过最小化均方误差:
ε 2 ‾ = 1 t 2 − t 1 ∫ t 1 t 2 [ f ( t ) − ∑ j = 1 n C j φ j ( t ) ] 2 d t \overline{\varepsilon ^{2}}= \frac{1}{t_{2}-t_{1}}\int _{t_{1}}^{t_{2}}[ f(t)- \sum _{j=1}^{n}C_{j}\varphi _{j}(t)] ^{2}dt ε2=t2−t11∫t1t2[f(t)−j=1∑nCjφj(t)]2dt求系数 C i C_i Ci求偏导并令偏导等于零:
∂ ε ‾ 2 ∂ C i = ∂ ∂ C i { 1 t 2 − t 1 ∫ t i t i [ f ( t ) − ∑ j = 1 n C j φ j ( t ) ] 2 d t } = 0 \frac{\partial \overline{\varepsilon}^{2}}{\partial C_{i}}= \frac{\partial}{\partial C_{i}}\left\{ \frac{1}{t_{2}-t_{1}}\int _{t_{i}}^{t_{i}}[ f(t)- \sum _{j=1}^{n}C_{j}\varphi _{j}(t)] ^{2}dt \right\} =0 ∂Ci∂ε2=∂Ci∂{t2−t11∫titi[f(t)−j=1∑nCjφj(t)]2dt}=0展开被积函数,并求导,只有两项不为0,写为:
∂ ∂ C i { 1 t 2 − t 1 ∫ t i t [ − 2 C i φ i ∗ ( t ) f ( t ) + C i 2 φ i ( t ) φ i ∗ ( t ) ] d t } = 0 \frac{\partial}{\partial C_{i}}\left\{ \frac{1}{t_{2}-t_{1}}\int _{t_{i}}^{t}\left[ -2C_{i}\varphi _{i}^{*}(t)f(t)+C_{i}^{2}\varphi _{i}(t)\varphi _{i}^{*}(t)\right] dt \right\} =0 ∂Ci∂{t2−t11∫tit[−2Ciφi∗(t)f(t)+Ci2φi(t)φi∗(t)]dt}=0即:
− 2 ∫ t 1 t 2 f ( t ) φ i ∗ ( t ) d t + 2 C i ∫ t 1 t 2 φ i ( t ) φ i ∗ ( t ) d t = 0 -2 \int _{t_{1}}^{t_{2}}f(t)\varphi _{i}^{*}(t)dt+2C_{i}\int _{t_{1}}^{t_{2}}\varphi _{i}(t)\varphi _{i}^{*}(t)dt=0 −2∫t1t2f(t)φi∗(t)dt+2Ci∫t1t2φi(t)φi∗(t)dt=0
求得:
C i = ∫ t 1 t 2 f ( t ) φ i ∗ ( t ) d t ∫ t 1 t 2 φ i ( t ) φ i ∗ ( t ) d t = 1 K i ∫ t 1 t 2 f ( t ) φ i ∗ ( t ) d t C_{i}= \frac{\int_{t_1}^{t_{2}}f(t)\varphi _{i}^{*}(t)dt}{\int _{t_1}^{t_{2}}\varphi _{i}(t)\varphi _{i}^{*}(t)dt}= \frac{1}{K_{i}}\int _{t_1}^{t_{2}}f(t)\varphi _{i}^{*}(t)dt Ci=∫t1t2φi(t)φi∗(t)dt∫t1t2f(t)φi∗(t)dt=Ki1∫t1t2f(t)φi∗(t)dt可以证明,当所取的项数越多,即 n n n越大时,均方误差越小,当 n → ∞ n\rightarrow \infty n→∞时(成为完备正交函数集),均方误差为零。
结论:
任意函数可以表示为无穷多个正交函数的和:
f ( t ) = C 1 φ 1 ( t ) + C 2 φ 2 ( t ) + ⋯ + C i φ i ( t ) + ⋯ = ∑ i = 1 ∞ C i φ i ( t ) f(t)=C_{1}\varphi _{1}(t)+C_{2}\varphi _{2}(t)+ \cdots +C_{i}\varphi _{i}(t)+ \cdots = \sum _{i=1}^{\infty}C_{i}\varphi _{i}(t) f(t)=C1φ1(t)+C2φ2(t)+⋯+Ciφi(t)+⋯=i=1∑∞Ciφi(t)上式称为函数的正交展开式,也称为广义傅里叶级数。
其系数为:
C i = ∫ t 1 t 2 f ( t ) φ i ∗ ( t ) d t ∫ t 1 t 2 φ i ( t ) φ i ∗ ( t ) d t = 1 K i ∫ t 1 t 2 f ( t ) φ i ∗ ( t ) d t C_{i}= \frac{\int_{t_1}^{t_{2}}f(t)\varphi _{i}^{*}(t)dt}{\int _{t_1}^{t_{2}}\varphi _{i}(t)\varphi _{i}^{*}(t)dt}= \frac{1}{K_{i}}\int _{t_1}^{t_{2}}f(t)\varphi _{i}^{*}(t)dt Ci=∫t1t2φi(t)φi∗(t)dt∫t1t2f(t)φi∗(t)dt=Ki1∫t1t2f(t)φi∗(t)dt备注: ∗ * ∗表示共轭,实数函数的共轭是其本身。
周期函数的傅里叶级数
在一个周期 ( t 0 , t 0 + T ) ( T = 2 π / Ω ) (t_{0},t_{0}+T)(T=2 \pi / \Omega) (t0,t0+T)(T=2π/Ω)上的完备正交函数集有:
-
三角函数集: { 1 , cos ( n Ω t ) , sin ( n Ω t ) , n = 1 , 2 , … } \left\{1, \cos(n \Omega t), \sin(n \Omega t),n=1,2, \ldots \right\} {1,cos(nΩt),sin(nΩt),n=1,2,…}
-
虚指数函数集: { e j n Ω t , n = ± 1 , ± 2 , ⋯ } \left\{e^{jn \Omega t}, n=\pm 1, \pm 2, \cdots \right\} {ejnΩt,n=±1,±2,⋯}
1 周期函数三角形式的傅里叶级数
1.1 三角形式的傅里叶级数
广义傅里叶级数的 φ i ( t ) \varphi_i(t) φi(t)选择三角函数:
{ 1 , cos ( n Ω t ) , sin ( n Ω t ) , n = 1 , 2 , … } \left\{1, \cos(n \Omega t), \sin(n \Omega t),n=1,2, \ldots \right\} {1,cos(nΩt),sin(nΩt),n=1,2,…}
设周期函数 f ( t ) f(t) f(t),其周期为 T T T,角频率(基波频率) Ω = 2 π / T \Omega=2\pi/T Ω=2π/T,当它满足狄里赫利(Dirichlet)条件(见附录)时,可展开为三角形式的傅里叶级数。
f ( t ) = a 0 2 + ∑ n = 1 ∞ a n cos ( n Ω t ) + ∑ n = 1 ∞ b n sin ( n Ω t ) f(t)= \frac{a_{0}}{2}+ \sum _{n=1}^{\infty}a_{n}\cos(n \Omega t)+ \sum _{n=1}^{\infty}b_{n}\sin(n \Omega t) f(t)=2a0+n=1∑∞ancos(nΩt)+n=1∑∞bnsin(nΩt)系数 a n , b n a_n, b_n an,bn称为傅里叶系数。
由广义傅里叶级数的系数公式:
C i = ∫ t 1 t 2 f ( t ) φ i ∗ ( t ) d t ∫ t 1 t 2 φ i ( t ) φ i ∗ ( t ) d t = 1 K i ∫ t 1 t 2 f ( t ) φ i ∗ ( t ) d t C_{i}= \frac{\int_{t_1}^{t_{2}}f(t)\varphi _{i}^{*}(t)dt}{\int _{t_1}^{t_{2}}\varphi _{i}(t)\varphi _{i}^{*}(t)dt}= \frac{1}{K_{i}}\int _{t_1}^{t_{2}}f(t)\varphi _{i}^{*}(t)dt Ci=∫t1t2φi(t)φi∗(t)dt∫t1t2f(t)φi∗(t)dt=Ki1∫t1t2f(t)φi∗(t)dt
可以求得 a n , b n a_n,b_n an,bn。
(1)求 K i K_i Ki
对于正交函数集中的1(实际上是 cos ( 0 Ω t ) = 1 \cos(0\Omega t)=1 cos(0Ωt)=1):
K i = ∫ − T 2 T 2 1 × 1 d t = T K_i=\int _{-\frac{T}{2}}^{\frac{T}{2}}1\times 1dt=T Ki=∫−2T2T1×1dt=T备注:半角公式: sin 2 x 2 = 1 − cos x 2 \sin ^{2} \frac{x}{2}=\frac{1-\cos x}{2} sin22x=21−cosx; cos 2 x 2 = 1 + cos x 2 \quad \cos ^{2} \frac{x}{2}=\frac{1+\cos x}{2} cos22x=21+cosx
对于正交函数集中的余弦 cos ( n Ω t ) \cos(n \Omega t) cos(nΩt),由半角公式可得:
K i = ∫ − T 2 T 2 cos ( n Ω t ) ⋅ cos ( n Ω t ) d t = ∫ − T 2 T 2 1 + cos ( 2 n Ω t ) 2 d t = T / 2 K_i=\int _{-\frac{T}{2}}^{\frac{T}{2}}\cos(n \Omega t)\cdot \cos(n \Omega t)dt=\int _{-\frac{T}{2}}^{\frac{T}{2}}\frac{1+\cos(2n \Omega t)}{2}dt=T/2 Ki=∫−2T2Tcos(nΩt)⋅cos(nΩt)dt=∫−2T2T21+cos(2nΩt)dt=T/2
同理,对于正交函数集中的正弦 sin ( n Ω t ) \sin(n \Omega t) sin(nΩt):
K i = ∫ − T 2 T 2 sin ( n Ω t ) ⋅ sin ( n Ω t ) d t = ∫ − T 2 T 2 1 − cos ( 2 n Ω t ) 2 d t = T / 2 K_i=\int _{-\frac{T}{2}}^{\frac{T}{2}}\sin(n \Omega t)\cdot \sin(n \Omega t)dt=\int _{-\frac{T}{2}}^{\frac{T}{2}}\frac{1-\cos(2n \Omega t)}{2}dt=T/2 Ki=∫−2T2Tsin(nΩt)⋅sin(nΩt)dt=∫−2T2T21−cos(2nΩt)dt=T/2
(2)得到系数:
a 0 2 = 1 T ∫ − T 2 T 2 f ( t ) d t \frac{a_{0}}{2}= \frac{1}{T}\int _{- \frac{T}{2}}^{\frac{T}{2}}f(t)dt 2a0=T1∫−2T2Tf(t)dt
备注:写成 a 0 2 \frac{a_{0}}{2} 2a0是为了使得 a 0 a_0 a0可以并入 a n a_n an的表达式,因为1对应的 K i K_i Ki与其他不同。a n = 2 T ∫ − T 2 T 2 f ( t ) cos ( n Ω t ) d t a_{n}= \frac{2}{T}\int _{- \frac{T}{2}}^{\frac{T}{2}}f(t)\cos(n \Omega t)dt an=T2∫−2T2Tf(t)cos(nΩt)dt
b n = 2 T ∫ T 2 T 2 f ( t ) sin ( n Ω t ) d t b_{n}= \frac{2}{T}\int _{\frac{T}{2}}^{\frac{T}{2}}f(t)\sin(n \Omega t)dt bn=T2∫2T2Tf(t)sin(nΩt)dt备注:积分区间不一定要 [ − T 2 , T 2 ] [-\frac{T}{2},\frac{T}{2}] [−2T,2T],只要是个整周期区间就行,比如 [ 0 , T ] [0,T] [0,T]
备注: a n a_n an为关于 n n n的偶函数, b n b_n bn为关于 n n n的奇函数。
下面给出与文章开头的图相对应的一个例子。
备注:实际上, a n = 0 a_n=0 an=0为关于 n n n的奇函数,可以直接得出 a n = 0 a_n=0 an=0
1.2 余弦形式的傅里叶级数
备注:辅助角公式:
a sin x + b cos x = a 2 + b 2 cos ( x + ϕ ) , 其中 tan ϕ = − a / b a\sin x+b\cos x=\sqrt{a^2+b^2} \cos ({x}+\phi), \quad \text { 其中 } \tan \phi=-a / b asinx+bcosx=a2+b2cos(x+ϕ), 其中 tanϕ=−a/b
由辅助角公式,将傅里叶级数
f ( t ) = a 0 2 + ∑ n = 1 ∞ a n cos ( n Ω t ) + ∑ n = 1 ∞ b n sin ( n Ω t ) f(t)= \frac{a_{0}}{2}+ \sum _{n=1}^{\infty}a_{n}\cos(n \Omega t)+ \sum _{n=1}^{\infty}b_{n}\sin(n \Omega t) f(t)=2a0+n=1∑∞ancos(nΩt)+n=1∑∞bnsin(nΩt)n n n次正余弦分量合并,得到:
f ( t ) = A 0 2 + ∑ n = 1 ∞ A n cos ( n Ω t + φ n ) f(t)= \frac{A_{0}}{2}+ \sum _{n=1}^{\infty}A_{n}\cos(n \Omega t+ \varphi _{n}) f(t)=2A0+n=1∑∞Ancos(nΩt+φn)
其中
{ A n = a n 2 + b n 2 φ n = − arctan b n a n \left\{ \begin{matrix} A_{n}= \sqrt{a_{n}^{2}+b_{n}^{2}}\\ \varphi _{n}=- \arctan \frac{b_{n}}{a_{n}}\\ \end{matrix} \right. {An=an2+bn2φn=−arctananbn{ a n = A n cos φ n b n = − A n sin φ n \left\{ \begin{matrix} a_{n}=A_{n}\cos \varphi _{n}\\ b_{n}=-A_{n}\sin \varphi _{n}\\ \end{matrix} \right. {an=Ancosφnbn=−Ansinφn
2 复指数形式的傅里叶级数
备注:欧拉公式:
e j x = cos x + j sin x e^{jx}=\cos x+j\sin x ejx=cosx+jsinx
sin x = e j x − e − j x 2 j \sin x=\frac{e^{jx}-e^{-jx}}{2j} sinx=2jejx−e−jx
cos x = e j x + e − j x 2 \cos x=\frac{e^{jx}+e^{-jx}}{2} cosx=2ejx+e−jx
三角形式的傅里叶级数含义比较明确,但不太方便我们进行运算,因而将其变换为复指数形式的傅里叶级数。
由欧拉公式可得:
f ( t ) = A 0 2 + ∑ n = 1 ∞ A n cos ( n Ω t + φ n ) f(t)= \frac{A_{0}}{2}+ \sum _{n=1}^{\infty}A_{n}\cos(n \Omega t+ \varphi _{n}) f(t)=2A0+n=1∑∞Ancos(nΩt+φn)
= A 0 2 + ∑ n = 1 ∞ A n 2 [ e j ( n Ω t + φ n ) + e − j ( n Ω t + φ n ) ] = \frac{A_{0}}{2}+ \sum _{n=1}^{\infty}\frac{A_{n}}{2}\left[ e^{j(n \Omega t+ \varphi _{n})}+e^{-j(n \Omega t+ \varphi _{n})}\right] =2A0+n=1∑∞2An[ej(nΩt+φn)+e−j(nΩt+φn)]= A 0 2 + 1 2 ∑ n = 1 ∞ A n e j φ n e j n Ω t + 1 2 ∑ n = 1 ∞ A n e − j φ n e − j n Ω t = \frac{A_{0}}{2}+ \frac{1}{2}\sum _{n=1}^{\infty}A_{n}e^{j \varphi _{n}}e^{jn\Omega t}+\textcolor{blue}{ \frac{1}{2}\sum _{n=1}^{\infty}A_{n}e^{-j \varphi _{n}}e^{-jn\Omega t}} =2A0+21n=1∑∞AnejφnejnΩt+21n=1∑∞Ane−jφne−jnΩt
对蓝色部分的公式进行参数变换:
− n → n -n\rightarrow n −n→n
A − n = A n A_{-n}=A_n A−n=An
φ − n → − φ n \varphi_{-n}\rightarrow -\varphi_n φ−n→−φn
得到:1 2 ∑ n = 1 ∞ A n e − j φ n e − j n Ω t → 1 2 ∑ n = − 1 − ∞ A n e j φ n e j n Ω t \frac{1}{2}\sum _{n=1}^{\infty}A_{n}e^{-j \varphi _{n}}e^{-jn\Omega t}\rightarrow \textcolor{blue}{\frac{1}{2}\sum _{n=-1}^{-\infty}A_{n}e^{j \varphi _{n}}e^{jn\Omega t}} 21n=1∑∞Ane−jφne−jnΩt→21n=−1∑−∞AnejφnejnΩt
变换后的公式为:
f ( t ) = 1 2 ∑ n = − ∞ ∞ A n e j φ n e j n Ω t f(t)= \frac{1}{2}\sum _{n=- \infty}^{\infty}A_{n}e^{j \varphi _{n}}e^{jn \Omega t} f(t)=21n=−∞∑∞AnejφnejnΩt
其中 e j n Ω t \mathrm{e}^{j n \Omega t} ejnΩt为复指数函数, A n = a n 2 + b n 2 A_{n}= \sqrt{a_{n}^{2}+b_{n}^{2}} An=an2+bn2, φ n = − arctan b n a n \varphi _{n}=- \arctan \frac{b_{n}}{a_{n}} φn=−arctananbn。
A n A_n An为偶函数, φ n \varphi_n φn为奇函数。
令复数 1 2 A n e j φ n = ∣ F n ∣ e j φ n = F n \frac{1}{2}A_{n}e^{j \varphi _{n}}=|F_{n}|e^{j \varphi _{n}}=F_{n} 21Anejφn=∣Fn∣ejφn=Fn,称 F n F_n Fn为复傅里叶系数,简称傅里叶系数。
得到指数形式的傅里叶级数:
f ( t ) = ∑ n = − ∞ ∞ F n e j n Ω t f(t)= \sum _{n=- \infty}^{\infty}F_{n}e^{jn \Omega t} f(t)=n=−∞∑∞FnejnΩt
表明:任意周期函数 f ( t ) f(t) f(t)可分解为许多不同频率的虚指数函数之和。 F n F_n Fn是频率为 n Ω nΩ nΩ的分量的系数, F 0 = A 0 / 2 F_0= A_0/2 F0=A0/2为直流分量。复傅里叶系数 F n F_n Fn的求解公式:
F n = 1 2 A n e j φ n = 1 2 ( A n cos φ n + j A n sin φ n ) = 1 2 ( a n − j b n ) F_{n}= \frac{1}{2}A_{n}e^{j \varphi _{n}}= \frac{1}{2}(A_{n}\cos \varphi _{n}+jA_{n}\sin \varphi _{n})= \frac{1}{2}(a_{n}-jb_{n}) Fn=21Anejφn=21(Ancosφn+jAnsinφn)=21(an−jbn)
= 1 T ∫ − T 2 T 2 f ( t ) cos ( n Ω t ) d t − j 1 T ∫ − T 2 T 2 f ( t ) sin ( n Ω t ) d t = \frac{1}{T}\int _{-\frac{T}{2}}^{\frac{T}{2}}f(t)\cos(n \Omega t)dt-j \frac{1}{T}\int _{-\frac{T}{2}}^{\frac{T}{2}}f(t)\sin(n \Omega t)dt =T1∫−2T2Tf(t)cos(nΩt)dt−jT1∫−2T2Tf(t)sin(nΩt)dt
= 1 T ∫ − T 2 T 2 f ( t ) e − j n Ω t d t = \textcolor{blue}{\frac{1}{T}\int _{-\frac{T}{2}}^{\frac{T}{2}}f(t)e^{-jn\Omega t}dt} =T1∫−2T2Tf(t)e−jnΩtdt3 三种展开方式关系总结
三角形式的傅里叶级数:
f ( t ) = a 0 2 + ∑ n = 1 ∞ a n cos ( n Ω t ) + ∑ n = 1 ∞ b n sin ( n Ω t ) f(t)= \frac{a_{0}}{2}+ \sum _{n=1}^{\infty}a_{n}\cos(n \Omega t)+ \sum _{n=1}^{\infty}b_{n}\sin(n \Omega t) f(t)=2a0+n=1∑∞ancos(nΩt)+n=1∑∞bnsin(nΩt)
f ( t ) = A 0 2 + ∑ n = 1 ∞ A n cos ( n Ω t + φ n ) f(t)= \frac{A_{0}}{2}+ \sum _{n=1}^{\infty}A_{n}\cos(n \Omega t+ \varphi _{n}) f(t)=2A0+n=1∑∞Ancos(nΩt+φn){ A n = a n 2 + b n 2 φ n = − arctan b n a n \left\{ \begin{matrix} A_{n}= \sqrt{a_{n}^{2}+b_{n}^{2}}\\ \varphi _{n}=- \arctan \frac{b_{n}}{a_{n}}\\ \end{matrix} \right. {An=an2+bn2φn=−arctananbn
{ a n = A n cos φ n b n = − A n sin φ n \left\{ \begin{matrix} a_{n}=A_{n}\cos \varphi _{n}\\ b_{n}=-A_{n}\sin \varphi _{n}\\ \end{matrix} \right. {an=Ancosφnbn=−Ansinφn
指数形式的傅里叶级数:
f ( t ) = ∑ n = − ∞ ∞ F n e j n Ω t f(t)= \sum _{n=- \infty}^{\infty}F_{n}e^{jn \Omega t} f(t)=n=−∞∑∞FnejnΩt
F n = ∣ F n ∣ e j φ n = 1 2 A n e j φ n = 1 2 ( A n cos φ n + j A n sin φ n ) = 1 2 ( a n − j b n ) F_{n}=|F_{n}|e^{j \varphi _{n}}= \frac{1}{2}A_{n}e^{j \varphi _{n}}= \frac{1}{2}(A_{n}\cos \varphi _{n}+jA_{n}\sin \varphi _{n})= \frac{1}{2}(a_{n}-jb_{n}) Fn=∣Fn∣ejφn=21Anejφn=21(Ancosφn+jAnsinφn)=21(an−jbn)
A n = 2 ∣ F n ∣ A_n=2|F_n| An=2∣Fn∣附 :狄里赫利(Dirichlet)条件
条件1:在一个周期内,函数连续或只有有限个第一类间断点(间断点左右极限都存在);
反例(无限个第一类间断点):
条件2:在一个周期内,函数极大值和极小值的数目应为有限个;
反例:
条件3:在一个周期内,函数绝对可积。反例:
参考:
国家精品课程:信号与系统 ,中国大学MOOC,郭宝龙,朱娟娟
十分感谢三连支持!最靓的公式送给最靓的你:
e i π + 1 = 0 e^{i\pi}+1=0 eiπ+1=0
-
-
周期锯齿波的三角函数形式的傅里叶级数展开式
2019-03-15 12:37:47周期锯齿波的三角函数形式的傅里叶级数展开式,共享学习。百度已有,只是这个不用下载券!不用下载券!不用下载券! -
带有过冲计算的 Gibbs 现象演示:该文件简单演示了方波如何通过傅立叶级数近似。-matlab开发
2021-05-30 13:13:10该文件简单演示了方波如何通过傅立叶级数近似。 它执行以下操作: 1) 它演示了傅里叶级数系数截断的效果,也称为吉布斯现象。 2) 计算超调百分比。 3) 计算原始信号和近似信号之间误差中的能量 -
傅里叶级数的计算:傅里叶级数的计算-matlab开发
2021-05-30 00:26:29傅里叶级数计算 -
三角函数到傅立叶级数
2019-12-19 09:34:53我讨厌傅立叶级数的叫法,这老让我感觉到很深奥,但当我用三角级数时,感觉就大不同了!! 下面进入正题 正弦波 信号处理中极为极为极为重要的一个函数,三角函数,之所以叫做三角函数,是因为它的计算方式和直角...我讨厌傅立叶级数的叫法,这老让我感觉到很深奥,但当我用三角级数时,感觉就大不同了!!
下面进入正题
正弦波
信号处理中极为极为极为重要的一个函数,三角函数,之所以叫做三角函数,是因为它的计算方式和直角三角密切相关,三角函数又常常叫正弦函数,实际在使用中,不管是sin还是cos都常常被统称为正弦函数。(假设θ为自变量,θ称为相位或相角,单位rad)
当我们引入动态的概念后(角频率,角速度,相位 θ=ωt+ψ),正弦函数随之而动,从一个定值变成了一个波,在信号处理中,我们称之为正弦波(同上不管是sin还是cos都称正弦波)正弦波具有三个要素,角频率,初相位和波幅(振幅),通用的公式来描述正弦波。
Sean:“波”就是一个动态的概念,三要素能唯一表征出一个正弦波,生活中最常见的交流电就是正弦波
三角函数的正交性
不同频率的正弦波相乘,对其周期积分后,其结果是0!
为什么呢
因为不同频率的正弦波相乘(不管是sin还是cos)通过积化和差总是可化为两个正弦波之和或差,而我们知道们,对正弦波正无穷到负无穷内进行积分,其结果必定是0(主值积分,取周期),当同频时则结果等于它的周期的一半。
信号处理的公式中比如傅里叶变换,默认都以柯西主值积分作为钦定的积分方式
傅里叶变换中使用的是柯西主值积分,整个无穷区间取周期倍),的结果必然为0。
傅立叶级数(实质就是三角级数)
“任何”周期信号都可以用一系列成谐波关系的正弦曲线来表示。(所有的目标,谐波表示法)
直观地可以用下面这个式子来表示
利用三角函数的变换公式,上式可变形为
现在,让我们正式的引入正交性的性质,还记得检波手段么,这里,我们假设对 f(t)用sin(κωt)进行检波(说人话就是乘起来,然后为了方便计算对其在一个周期内积分),那么就有。
不要问为什么要加上积分,当然是为了利用三角积分的性质啦
附 :(0,T)代入可得T/2
非无穷函数展开为三解级数
上面的结论都是针对“波”即随时间变化的无限的函数(定义域为负无究到正无究的函数)通常它含有ωt,角频率的自变量t形式。此时只有周期函数才能展开为傅立叶级数。在信号在信号处理领域我们称傅立叶级数只针对周期函数。
特别注意实际上如 脉冲函数,一个方波等的函数,定义域也是无究的,只是值域可能为零。但它们是非周期函数,所以不能直接展开为三角级数。这也正是提出傅立叶变换的原因
跳出信号处理的领域回归更一般的场合--定义域非无究的情况,傅立叶级数的定义为
(系数的计算和上面方法是类似的)
而且f(x)可以是分段连续的,此时关于其断点的傅立叶级数收敛性有:
“波”的傅立叶级数实质就是区间傅立叶级数的周期拓展的结果。
傅立叶级数的周期延拓
奇函数的偶函数关于对称区间的积分
余项级数(余弦项的级数)
因此如果对区间为(0,L) (这里的L来源于绝缘棒的长度)的函数进行偶延拓,则三角级数所有的正弦项系数(奇函数积分)将全为0,因此只有余项级数
如果进行奇延拓,则三角级数只有正弦级数
吉伯斯现象
对于存在断点的函数的三角级数,在断点处的傅立叶级数的展开式总会有一个上冲。(对连续的部分当然是是随着三角级数项增加而无限接近,但断点处却不能,而总会有一个上冲,而且恒接近于1.09)
狄利克雷充分条析
傅里叶在提出傅里叶级数时坚持认为,任何一个周期信号都可以展开成傅里叶级数,但狄利克雷认为,只有在满足一定条件时,周期信号才能展开成傅里叶级数。这个条件被称为狄利克雷条件。
(1 )在一周期内,连续或只有有限个第一类间断点