MATLAB 解决冲击函数卷积

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/02 08:27:43
MATLAB 解决冲击函数卷积
xMo@ʞIRlr7֩)R{@IJJI DƻNLrj}y=ko-_}po.g>b1z@%eɺ:UlZ5`dmS~8E|;B`1tT 5T@>9LѰ RoW2'd)ŅW}_hSsl՟y80BE6"SL9PKu͜& F7UmaD.<-NMVdqD g@:gAw)kAi^S፷ Ǯ{ k+4a]PRwjZHhkpU[n/ܹ 2Ѹ~\쟰%-/Z>$~o7\|ދrT]

MATLAB 解决冲击函数卷积
MATLAB 解决冲击函数卷积

MATLAB 解决冲击函数卷积
function a=myconv(b,c)
bs=size(b);
cs=size(c);
i=any(bs-cs);
if i
error('error')
end
i=any(~(bs-1));
if ~i
error('error')
end
ko=0;
if bs(1)>bs(2)
b=b';
c=c';
ko=1;
end
bs=size(b);
cs=size(c);
ss=2*bs(2)-1;
a=zeros(1,ss);
for i=1:cs(2)
q=zeros(1,i-1);
p=zeros(1,ss-cs(2)+1-i);
ba=[q,c,p];
ma=b(i)*ba;
a=a+ma;
end
if ko
a=a';
end
end
测试了一下,跟conv计算的结果偏差很小(我测试的结果是10^-15左右),执行效率略低(用cputime 测试rand(1,99),差了0.2964) 商业软件就是牛啊 真想知matlab中这个函数的源代码