前言
一个信号系统课程中使用Matlab对傅里叶级数进行展开、绘制波形并分析的实验。
一、内容
周期函数f(t)的周期2pi,f(x)在[-pi, pi]上的表达式为:
由傅里叶级数展开式可得:
直流分量系数:
基波及各次谐波分量的系数:
傅里叶展开F(x)为:
二、原理
- 设周期信号f(t),其周期为T,角频率为 ,则该信号可展开为下面三角形式的傅里叶级数:
其中,
将a0,an,bn代入f(t)即可求得函数的傅里叶级数展开式。 - 用MATLAB绘制周期方波信号,并绘制其傅里叶级数展开式中基波及3次谐波、5次谐波、七次谐波并进行叠加,与原方波进行对比。
三、程序源码
% f(x)=pi + x, -pi<=x<=0
% f(x)=pi - x, 0<=x<=pi
% a_0=pi
% a_n=4 / (n^2 * pi), n=1.3.5...
% a_n=0, n=2,4,6...
% b_n=0, n=1,2,3,4...
% F(x)=pi/2 + 4/pi * (cos(x) + 1/3^2 * cos(3x) + ...)
T=2 * pi; omega=2 * pi / T; t=-2*T:0.01:2*T; a_0=pi;
y1=a_0/2 + 4 / pi * cos(omega*t);
y2=y1 + 4/pi * 1/3^2 * cos(3 * omega*t);
y3=y2 + 4/pi * 1/5^2 * cos(5 * omega*t);
y4=y3 + 4/pi * 1/7^2 * cos(7 * omega*t);
y5=a_0/2;
for i=1:2:20
y5=y5 + 4/pi * 1/i^2 * cos(i * omega*t);
end
subplot(511),plot(t,y1);
title('基波 \pi/2+4/\picos(t)','Fontsize',12);
xlabel('x','Fontsize',12);ylabel('y_1','Fontsize',12);grid on;
subplot(512),plot(t,y2);
title('三次谐波 \pi/2+4/\pi[cos(t)+1/3^2cos(3t)]','Fontsize',12);
xlabel('x','Fontsize',12);ylabel('y_2','Fontsize',12);grid on;
subplot(513),plot(t,y3);
title('五次谐波 \pi/2+4/\pi[cos(t)+1/3^2cos(3t)+1/5^2cos(5t)]','Fontsize',12);
xlabel('x','Fontsize',12);ylabel('y_3','Fontsize',12);grid on;
subplot(514),plot(t,y4);
title('七次谐波 \pi/2+4/\pi[cos(t)+1/3^2cos(3t)+1/5^2cos(5t)+1/7^2cos(7t)]','Fontsize',12);
xlabel('x','Fontsize',12);ylabel('y_4','Fontsize',12);grid on;
subplot(515),plot(t,y5);
title('高次谐波 \pi/2+4/\pi[cos(t)+1/3^2cos(3t)+1/5^2cos(5t)+1/7^2cos(7t)+...]','Fontsize',12);
xlabel('x','Fontsize',12);ylabel('y_5','Fontsize',12);grid on;
四、结果分析
傅里叶级数展开如图7所示,y1是基波,y2是三次谐波,y3是五次谐波,y4是七次谐波,y5可以看作是无穷项谐波的叠加。由图可以看出谐波叠加越多,图像越接近f(x)。
文章来源:https://www.toymoban.com/news/detail-734116.html
结语
一个函数可由无穷项谐波而成,越高次的谐波分量影响越小,基波会基本定形,这就是傅里叶级数展开的原理。文章来源地址https://www.toymoban.com/news/detail-734116.html
到了这里,关于【Matlab】傅里叶级数展开的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!