Speeding up nested for-loop

2 次查看(过去 30 天)
Niles Martinsen
Niles Martinsen 2015-8-24
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 个评论
Star Strider
Star Strider 2015-8-24
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.

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Operators and Elementary Operations 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by