Vectorization of a loop that uses past values
1 次查看(过去 30 天)
显示 更早的评论
Is it possible to vectorize a loop if it uses past values? When iterations have a large number, simulation takes time to finish which i want to avoid. But i couldn't understand how to vectorize a loop when it has a past value.
N=100;
iterations=20000;
x=randn(1,N);
x=[x zeros(1,iterations-N)];
out=0;
sig=zeros(1,length(x)+1);
y=zeros(1,N+1);
for i=1:iterations
out=x(i) +0.5*(y(N)+y(N+1));
y=[out, y(1:length(y)-1)];
sig(i) =out;
end
0 个评论
采纳的回答
Dinesh Yadav
2020-7-23
You cannot vectorize the above code as you have cyclic dependency in your code.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!