周期性方波的吉伯斯现象matlab程序
时间: 2023-10-16 19:32:49 浏览: 202
观察Gibbs现象的matlab程序.docx
5星 · 资源好评率100%
以下是周期为T,幅值为A的方波的吉布斯现象matlab程序:
```matlab
%设置参数
T = 1; % 周期为1
A = 1; % 幅值为1
N = 50; % 展开项数为50
%生成方波
t = linspace(-2*T,2*T,1000); %时间范围
f = A*sign(sin(pi*t/T)); %方波函数
%计算展开系数
Bn = zeros(1,N);
for n = 1:N
Bn(n) = 2*A/(n*pi)*(1-cos(n*pi));
end
%计算吉布斯现象
gibbs = zeros(size(t));
for n = 1:N
gibbs = gibbs + Bn(n)*sin(2*pi*n*t/T);
end
%绘制图形
figure;
plot(t,f,'k','LineWidth',2);
hold on;
plot(t,gibbs,'r--','LineWidth',2);
axis([-2*T,2*T,-1.5*A,1.5*A]);
xlabel('时间');
ylabel('幅度');
title('周期方波的吉布斯现象');
legend('原始方波','吉布斯现象');
grid on;
```
运行程序,可以得到周期方波的吉布斯现象的图像。
阅读全文