Speeding up nested for-loop

Hi
I have the following nested for-loop, containing some if-statements. It is running horribly slow, so I would be very happy to get some hints and tricks to speed it up. Can I vectorize it somehow? Or use parallel computing?
for xi= 1:N
for yi= 1:N
a = A(:,xi,yi); %a is a vector
b = B(:,xi,yi); %b is a vector
D = a-b;
if( max(D./a)<1e-3 )
test_var=2.0;
else
F_min = F(a, b, 0); %F is a script I wrote
F_max = F(a, b, 1); %F is a script I wrote
if( F_min*F_max>0.0 )
test_var=2.0;
else
test_var = F(a, b, 2);
end
end
var(1, xi,yi) = test_var;
end
end

1 commentaire

Star Strider
Star Strider le 24 Août 2015
It might help if you describe what you want to do in your code, the sizes of ‘A’ and ‘B’ (although they are likely equal), and listed ‘F’ and describe what it does.

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Linear Algebra dans Centre d'aide et File Exchange

Commenté :

le 24 Août 2015

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by