我试图在不使用循环的情况下计算 MATLAB 中两个给定向量的卷积,当然也不使用函数conv
本身,但我无法删除我在下面的代码中使用的最后一个循环。任何提示将不胜感激。
function [ convolve ] = myconv( x,y)
%This function calculate the convolution of the two inputs
lx=length(x);
ly=length(y);
lt=lx+ly;
x=[x zeros(1,ly)];
y=[y zeros(1,lx)];
convolve=zeros;
for n=2:lt
convolve(n-1)=sum(x(1:n-1).*fliplr(y(1:n-1)));
end