How can I Improve matlab looping
    2 views (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!