How can I Improve matlab looping
1 view (last 30 days)
Show older comments
paulo sigauque
on 28 Nov 2018
Commented: paulo sigauque
on 29 Nov 2018
Hi ,
I would like to know if someone can give me the tips to improve my matlab, mainly in "loop" syntax. How to think in the solution of some problems in short time using matlab programming.
I am realy appreciate you help.
Regards
0 Comments
Accepted Answer
Image Analyst
on 28 Nov 2018
MATLAB looping was dramatically speeded up several years ago. It's no longer that slow, though the belief persists. If you have less than a few million iterations, it will be pretty fast.
One way to speed it up even more, when you have nested loops, is to have the inner-most loop iterate over the left most index, since MATLAB is in column-major mode, meaning it goes down rows in a single column first before moving over to the next column. So, in summary
% Slower:
for row = 1 : rows
for col = 1 : columns
m(row, col) = some formula;
end
end
% Faster:
for col = 1 : columns
for row = 1 : rows
m(row, col) = some formula;
end
end
And that might only hold for very large matrices (millions of elements). For small matrices (a few tens of thousands of elements) you might not notice a difference.
More Answers (0)
See Also
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!