作业帮 > 综合 > 作业

利用matlab对周期矩形脉冲信号的傅里叶级数(三角形式)分析,并制图

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/08/28 11:19:23
利用matlab对周期矩形脉冲信号的傅里叶级数(三角形式)分析,并制图
这是我的程序,前面是傅里叶级数的函数部分,后面是根据周期矩形脉冲信号进行调用的,但是我一直画不出来图,
function [A,B,F]= fouriers(f,t,T,a,b,k)
w=2*pi/T; %计算频率
A=1/T*int(f,t,a,b);%计算a0
B=[];
F=A;
if k==0
syms k integer;
ak=2/T*int(f*cos(k*w*t),t,a,b);
bk=2/t*int(f*sin(k*w*t),t,a,b);
A=[A,ak];
B=[B,bk];
F=[];
else
for i=1:k
ak=2/T*int(f*cos(k*w*t),t,a,b);
bk=2/t*int(f*sin(k*w*t),t,a,b);
A=[A,ak];
B=[B,bk];
F=F+ak*cos(i*w*t)+bk*sin(i*w*t);
end
end
syms t;
syms E T positive;
f=E*(heaviside(t+T/2)-heaviside(t-T/2));
T=1;a=1/2;b=1/2;
[A,B,F]=fouriers(f,t,T,a,b,10);
plot(F)
你的程序好像不规范啊,你既要画图,但又用syms语句把变量定义为符号.
而且你这是函数,很难调试跟踪啊.把你的出错信息贴上来吧.