以前读书学习信号与系统的时候,没有用过matlab。现在补习一下。
用matlab计算连续函数的卷积:
1 首先新建一个m文件sconv.m,内容如下
function [f,k]=sconv(f1,f2,k1,k2,p)
f=conv(f1,f2);
f=f*p;
k0=k1(1)+k2(1);
k3=length(f1)+length(f2)-2;
k=k0:p:k3*p;
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 然后在matlab命令窗口调用该函数即可
>> p=0.1;
>> k1=0:p:2;
>> k2=k1;
>> f1=0.5*k1;
>> f2=f1;
>> [f,k]=sconv(f1,f2,k1,k2,p);
h=get(gca,\'position\');
h(3)=2.5*h(3);
set(gca,\'position\',h);
这三句是改变图像的显示属性的。