求matlab程序解释,越详细越好。是关于卷积的源代码。

2025年01月03日 09:27
有1个网友回答
网友(1):

个人认为这个程序有问题
i=any(bs-cs);
if i
error('error')
end
这里明显是没道理的,如果bs和cs不一样,i就会是1,然后这里就会报错。这很明显不合理。
如果b=[1 1],c=[1 1 1],那么bs=[1 2],cs=[1 3],从而i=1,程序到这里就报错结束了,但是很明显b和c是可以做卷积的,结果是[1 2 2 1]
MATLAB里面的内置卷积源程序是conv.m,卷积说白了就是多项式乘法,标准程序里是用FIR滤波器写的,很精辟。你可以试试conv([1 1],[1 1 1 ]),结果就是[1 2 2 1],但是你这个myconv就不行。我不知道"my"是谁,你还是问本人吧。