傅里叶级数

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,0x20,

      对于这样的函数,我们可以做周期延拓,让他成为一个周期函数。

    在这里插入图片描述

    而且,我们可以进行周期扩展把任何周期函数的周期变换为 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

时间和频率的关系和变换是理解傅里叶级数的关键。如果读者忽略了时间和频率的转换关
系。那么读者将不会真正理解傅里叶级数,进而影响到以后会谈到的傅里叶变换。让我们
来仔细看看,傅里叶级数在干一件什么事情。

  1. 傅里叶级数的目标函数是定义在时间域上的。也就是说,傅里叶级数的目标函数
    是时变的 f ( t ) f(t) f(t).

  2. 傅里叶级数的生成级数是不同频域信号在时域上的叠加。我们后面会看到是怎么回
    事。

让我们具体看看一看傅里叶级数的主题是什么。

  • 有人提出一种展开方式(傅里叶级数),可以展开呢定义在 ( − ∞ , ∞ ) (-\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=1Ansin(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=2a02π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,....这个和傅里叶变换最关键的不同之处。后面我
们会来谈谈傅里叶变换。傅里叶变换的理解,可以从傅里叶级数中来找到灵感了思路。

我们要强调一点:傅里叶级数的收敛性质我们没有证明,这不影响工程上应用傅
里叶级数。我们只是陈述一点,也就是只要满足一定条件的周期函数。就可以展开为傅里叶
级数。而系数的计算则是上一节给出来的。

相关推荐
<div style="color:rgba(0,0,0,.75);"> <span style="color:#4d4d4d;"> </span> <div style="color:rgba(0,0,0,.75);"> <span style="color:#4d4d4d;"> </span> <div style="color:rgba(0,0,0,.75);"> <div style="color:rgba(0,0,0,.75);"> <span style="color:#4d4d4d;">当前课程中商城项目的实战源码是我发布在 GitHub 上的开源项目 newbee-mall (新蜂商城),目前已有 6300 多个 star,</span><span style="color:#4d4d4d;">本课程是一个 Spring Boot 技术栈的实战类课程,课程共分为 3 大部分,前面两个部分为基础环境准备和相关概念介绍,第三个部分是 Spring Boot 商城项目功能的讲解,让大家实际操作并实践上手一个大型的线上商城项目,并学习到一定的开发经验以及其中的开发技巧。<br /> 商城项目所涉及的功能结构图整理如下:<br /> </span> </div> <div style="color:rgba(0,0,0,.75);">   </div> <div style="color:rgba(0,0,0,.75);"> <p style="color:#4d4d4d;"> <img alt="modules" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3N0b3JlL25ld2JlZS1tYWxsLXMucG5n?x-oss-process=image/format,png" /> </p> </div> <p style="color:rgba(0,0,0,.75);"> <strong><span style="color:#e53333;">课程特色</span></strong> </p> <p style="color:rgba(0,0,0,.75);">   </p> <div style="color:rgba(0,0,0,.75);">   </div> <div style="color:rgba(0,0,0,.75);"> <ul> <li> 对新手开发者十分友好,无需复杂的操作步骤,仅需 2 秒就可以启动这个完整的商城项目 </li> <li> 最终的实战项目是一个企业级别的 Spring Boot 大型项目,对于各个阶段的 Java 开发者都是极佳的选择 </li> <li> 实践项目页面美观且实用,交互效果完美 </li> <li> 教程详细开发教程详细完整、文档资源齐全 </li> <li> 代码+讲解+演示网站全方位保证,向 Hello World 教程说拜拜 </li> <li> 技术栈新颖且知识点丰富,学习后可以提升大家对于知识的理解和掌握,可以进一步提升你的市场竞争力 </li> </ul> </div> <p style="color:rgba(0,0,0,.75);">   </p> <p style="color:rgba(0,0,0,.75);"> <span style="color:#e53333;">课程预览</span> </p> <p style="color:rgba(0,0,0,.75);">   </p> <div style="color:rgba(0,0,0,.75);">   </div> <div style="color:rgba(0,0,0,.75);"> <p style="color:#4d4d4d;"> 以下为商城项目的页面和功能展示,分别为: </p> </div> <div style="color:rgba(0,0,0,.75);"> <ul> <li> 商城首页 1<br /> <img alt="" src="https://img-bss.csdnimg.cn/202103050347585499.gif" /> </li> <li> 商城首页 2<br /> <img alt="" src="https://img-bss.csdn.net/202005181054413605.png" /> </li> <li>   </li> <li> 购物车<br /> <img alt="cart" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3QvY2FydC5wbmc?x-oss-process=image/format,png" /> </li> <li> 订单结算<br /> <img alt="settle" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3Qvc2V0dGxlLnBuZw?x-oss-process=image/format,png" /> </li> <li> 订单列表<br /> <img alt="orders" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3Qvb3JkZXJzLnBuZw?x-oss-process=image/format,png" /> </li> <li> 支付页面<br /> <img alt="" src="https://img-bss.csdn.net/201909280301493716.jpg" /> </li> <li> 后台管理系统登录页<br /> <img alt="login" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3QvbWFuYWdlLWxvZ2luLnBuZw?x-oss-process=image/format,png" /> </li> <li> 商品管理<br /> <img alt="goods" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3QvbWFuYWdlLWdvb2RzLnBuZw?x-oss-process=image/format,png" /> </li> <li> 商品编辑<br /> <img alt="" src="https://img-bss.csdnimg.cn/202103050348242799.png" /> </li> </ul> </div> </div> </div> </div>
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页