资源描述:
《实验二 信号的运算》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、信号与系统实验二实验二信号的运算一、已知信号。请编写程序实现些列运算并画出波形。1、解:>>t=linspace(-5,5,1001);%时间t的取值范围(自定)>>y=(t/2+1).*stepfun(t/2,-0.5)-(t/2+1).*stepfun(t/2,0.5)+(t+1).*stepfun(t,-1).*stepfun(t,0)-(t+1).*stepfun(t,1).*stepfun(t,0);%式中的stepfun为阶跃函数>>plot(t,y);xlabel('t');ylabel('y');2、解:>>t=linspace(
2、-6,6,1001);%时间t的取值范围>>y=(t-1).*stepfun(t,1).*stepfun(t,2)-(t-1).*stepfun(t,3).*stepfun(t,2);%式中stepfun为阶跃函数>>plot(t,y);xlabel('t');ylabel('y');3、解:>>t=linspace(-6,6,1001);%时间t的取值范围>>y=(t-1).*stepfun(t,1).*stepfun(t,0)-(t-1).*stepfun(t,3).*stepfun(t,0);%式中的stepfun为阶跃函数>>plot(t
3、,y);xlabel('t');ylabel('y');4、解:>>t=linspace(-10,10,1001);%时间t的取值范围>>y=(3-t).*stepfun(-t,-3)-(3-t).*stepfun(-t,-1);%式中的stepfun为阶跃函数>>plot(t,y);xlabel('t');ylabel('y');5、解:>>t=linspace(-10,10,1001);%时间t的取值范围>>y=(-t-1).*stepfun(-t,1).*stepfun(-t,0)-(-t-1).*stepfun(-t,3).*stepfu
4、n(-t,0);%stepfun为阶跃函数>>plot(t,y);xlabel('t');ylabel('y');二、编写一个利用MATLAB提供的数值积分计算函数计算两个连续函数的卷积积分的函数程序,用其计算下列函数在0~10内的卷积积分的结果,并与理论计算出的结果相比较,观测其计算结果1.解:>>dt=0.01;>>k1=0:dt:10;>>f1=stepfun(-k1,-1)+2*stepfun(k1,1);%生成信号f1>>k2=k1;>>f2=exp(-(k2+1)).*stepfun(k2,1);%生成信号f2>>f=dt*conv(
5、f1,f2);%计算卷积结果f>>k0=k1(1)+k2(1);%计算序列f非零样值的起点位置>>k3=length(f1)+length(f2)-2;%计算卷积和f的非零样值的宽度>>k=k0:dt:k0+k3*dt;%确定卷积和f的非零样值的时间向量>>subplot(2,2,1);>>plot(k1,f1);title('f1(t)');xlabel('t');%在图1绘f2(t)时域波形图>>subplot(2,2,2);>>plot(k2,f2);title('f2(t)');xlabel('t');%在图2绘f2(t)时域波形图>>s
6、ubplot(2,2,3);>>plot(k,f);%画卷积f(t)的时域波形>>h=get(gca,'position');>>h(3)=2.5*h(3);set(gca,'position',h);%将第三个示图横坐标范围扩至原来的2.5倍>>title('f(t)=f1(t)*f2(t)');xlabel('t');2.解:>>dt=0.01;>>k1=0:dt:10;>>f1=sin(k1).*stepfun(k1,0);%生成信号f1>>k2=k1;>>f2=stepfun(k2,-1);%生成信号f2>>f=dt*conv(f1,f2
7、);%计算卷积结果f>>k0=k1(1)+k2(1);%计算序列f非零样值的起点位置>>k3=length(f1)+length(f2)-2;%计算卷积和f的非零样值的宽度>>k=k0:dt:k0+k3*dt;%确定卷积和f的非零样值的时间向量>>subplot(2,2,1);>>plot(k1,f1);title('f1(t)');xlabel('t');%在图1绘f2(t)时域波形图>>subplot(2,2,2);>>plot(k2,f2);title('f2(t)');xlabel('t');%在图2绘f2(t)时域波形图>>subplo
8、t(2,2,3);>>plot(k,f);%画卷积f(t)的时域波形>>h=get(gca,'position');>>h(3)=2.5