当前位置:文档之家› 信号与系统 连续时间信号卷积运算

信号与系统 连续时间信号卷积运算

连续时间信号的卷积运算的MATILAB实现
薛皓20091453
例1:已知两连续时间信号如图9-3所示,试用matlab求f(t)=f1(t)*f2(t),并绘出f(t)的时域波形图。

图1-1 连续时间信号波形图示例
实现上述过程的matlab命令如下:
p=0.5;
k1=0:p:2;
f1=0.5*k1;
k2=k1;
f2=f1;
[f,k]=sconv(f1,f2,k1,k2,p)
上述命令绘制的波形图也在图9-3中示出。

图9-3中给出了抽样时间间隔p=0.5时的处理效果。

而图9-4给出了抽样时间间隔p=0.01时的处理效果。

图1-2 例1的连续时间信号波形图
习题1:已知f1(t)=1(2t 1≤≤),f2(t)=1(3t 2≤≤),用matlab 实现其卷积并绘制出卷积曲线。

解:程序代码如下:
>> p=0.01;
k1=1:p:2;
f1=ones(size(k1)).*(k1>1);
k2=2:p:3;
f2=ones(size(k2)).*(k2>2);
f=conv(f1,f2);
f=f*p;
k0=k1(1)+k2(1);
k3=k1(length(k1))+k2(length(k2));
subplot(2,2,1)
plot(k1,f1)
title('f1(t)')
xlabel('t')
ylabel('f1(t)')
subplot(2,2,2)
plot(k2,f2)
title('f2(t)')
xlabel('t')
ylabel('f2(t)')
subplot(2,2,3)
plot(k,f);
h=get(gca,'position');
h(3)=2.5*h(3); 0
set(gca,'position',h)
title('f(t)=f1(t)*f2(t)')
xlabel('t')
ylabel('f(t)')
绘制图形如图2-1所示。

图2-1
习题2:)1()2/1t ()t (2f ),1t ()t ()t (1f δ-+δ=-ε-ε=,求其卷积。

程序代码:
p=0.01;
t1=0:p:1;
f1=ones(size(t1)).*(t1>0);
t2=-0.5:p:1;
f2=(t2==-0.5)-(t2==1);
f=conv(f1,f2);
f=f*p;
t=-0.5:p:2;
k1=t1;k2=t2;k=t;
subplot(2,2,1)
plot(k1,f1)
title('f1(t)')
xlabel('t')
ylabel('f1(t)')
subplot(2,2,2)
plot(k2,f2)
title('f2(t)')
xlabel('t')
ylabel('f2(t)')
subplot(2,2,3)
plot(k,f);
h=get(gca,'position');
h(3)=2.5*h(3);
set(gca,'position',h)
title('f(t)=f1(t)*f2(t)')
xlabel('t')
ylabel('f(t)')
绘制波形如图2-2示:
图2-3
实验心得:感觉知识太贫乏了,知识尚且不够,何谈智慧呢,知耻后勇吧!。

相关主题