Vectorization of a for loop
显示 更早的评论
Hello,
I have to do a large calculation and the next foor loop takes like 99% of runtime in the script:
for n = 1:iteraciones-1
x(n+1) = a - x(n)^2 + b*y(n);
y(n+1) = x(n);
end
I've read that if I manage to vectorize it, it will improve my code performance, but im stuck with
x(1) = 1;
y(1) = 1;
x(2) = a - x(1)^2 + b*x(1);
for n = 2:iteraciones-1
x(n+1) = a - x(n)^2 + b*x(n-1);
end
y(2:iteraciones) = x(1:iteraciones-1);
And I cant think of a way to vectorize that for loop since it uses previous generated values
If someone could take the time to figure this out or link a good resource on how to vectorize, it would be much apreciated
Thanks in advice :)
1 个评论
darova
2020-3-19
I think your code can't be vectorized. As your value of x(i+1) depends on previous x(i)
采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 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!