如何在Matlab中执行矢量化

时间:2014-11-25 17:33:26

标签: matlab vectorization

是否可以对这些计算进行矢量化以避免使用循环'对于'?

a=5; b=10;
vect=log([10:-1:1]+b);

for i=1:length(vect)
 new1=exp(-a*abs(vect(i)-vect));
 new_vect(i)=1/sum(new1);
end

1 个答案:

答案 0 :(得分:2)

看看这是否适合你 -

new_vect = 1./sum(exp(-a*abs(bsxfun(@minus,vect,vect.'))))