matlab不调用conv的卷积函数程序

2025-04-16 13:30:53
推荐回答(1个)
回答1:

function r = my_conv(a,b)  % 存为 my_conv.m 
wa = length(a);
wb = length(b);
r = zeros(1,wa+wb-1);
for k = 1:wa
    c = a(k)*b;
    d = r(1,k:k+wb-1);
    d = d+c;
    r(1,k:k+wb-1) = d;
end

% 验证

a = 1:3;
b = 1:5;
r = my_conv(a,b)

r =

     1     4    10    16    22    22    15

conv(a,b)

ans =

     1     4    10    16    22    22    15