傅里叶分析 · 傅里叶级数

傅里叶级数

傅里叶级数把周期函数写成正弦和余弦的和,a₀/2 + Σ (aₖ cos kx + bₖ sin kx)。每个系数都可以单独量出来:把函数乘上一个波,求面积。

傅里叶级数与本页画面

上面的主图用墨色画周期为2π2\pi的函数ff,用黄色画部分和SNS_N:常数项加上频率到NN为止的全部余弦和正弦。中间一条把ff乘上一个探针波,给乘积和横轴之间的有向面积涂上阴影。最下面一条把这样量出的系数排开,余弦在上,正弦在下。

每个系数都是一个面积
ak=1π∫−ππf(x)cos⁡kx dx,bk=1π∫−ππf(x)sin⁡kx dxa_k = \frac{1}{\pi}\int_{-\pi}^{\pi} f(x)\cos kx\,dx, \qquad b_k = \frac{1}{\pi}\int_{-\pi}^{\pi} f(x)\sin kx\,dx

ff里同时含着所有的波,为什么一个面积只挑出一个系数?在一整个周期上,1,cos⁡x,sin⁡x,cos⁡2x,sin⁡2x,…1, \cos x, \sin x, \cos 2x, \sin 2x, \dots里任意两个不同的波相乘,面积都是0;正弦或余弦乘它自己,面积是π\pi。所以把这些波的和乘上sin⁡kx\sin kx再积分,除了bksin⁡kxb_k \sin kx那一项,其余全部消掉,剩下πbk\pi b_k。在两个正弦拼成的那个精选里,中间一条把乘积拆成两部分,频率不同的那部分自己正负抵消。这些波就像互相垂直的坐标轴,每个系数是在其中一条轴上的投影,所以加进新的一项,不会改变已经量出的系数。

项数足够多时,部分和会在跳跃旁冲过头。随着NN增大,尖峰变窄、靠近跳跃,但过冲不会消失:方波超出顶端的高度趋于跳跃幅度的约8.949%。每个SNS_N都是连续函数,只能在一小段距离里越过跳跃,所以在任何包含跳跃的区间上,它的最大误差都不能趋于0。单凭连续性定不出过冲有多大:8.949%是算部分和算出来的,分段光滑函数的每一个跳跃最后都是这个比例。

越光滑的函数需要的项越少。这里的ff指周期延拓后的函数,所以±π\pm\pi两端接不上也是一个跳跃。分部积分把导数从波挪到ff上,同时带出一个因子1/k1/k。有跳跃时,第一次分部积分就留下带因子1/k1/k的边界项:方波的系数在kk为奇数时是bk=4/(kπ)b_k = 4/(k\pi),为偶数时是0。如果ff连续、只是斜率有跳跃,像三角波的尖角,第一次能顺利做完,第二次才留下边界项,系数按1/k21/k^2变小。在对数刻度下,把柱和1/k1/k、1/k21/k^2两条虚线比一比。

能量读数把同样的垂直关系用在平方上。f2f^2的积分分解成各系数的平方和,没有交叉项:1π∫−ππf(x)2 dx=a022+∑k≥1(ak2+bk2).\frac{1}{\pi}\int_{-\pi}^{\pi} f(x)^2\,dx = \frac{a_0^2}{2} + \sum_{k \ge 1} \left(a_k^2 + b_k^2\right).读数给出SNS_N已经占了这个总量的多少,剩下的就是它的误差平方,按同样的方式量。方波的S1S_1约占81%,S9S_9约占96%,而尖峰还在:很窄的尖峰面积很小。部分和可以在平均意义上很接近ff,却在跳跃附近仍然差得很远。

值得注意

  • 常数项写成a0/2a_0/2,是为了让余弦的公式在k=0k = 0时也适用。常数探针直接量出a0/2a_0/2,也就是ff的平均值。
  • 方波这样的奇函数只有正弦项,∣sin⁡x∣|\sin x|这样的偶函数只有余弦项,所以频谱总有一排是空的。

操作

  • 点频谱上的柱,探针就移到那里。
  • 选“手画”,在主图上拖过一个周期。画出的点之间用直线相连,并向两侧重复。

相关概念