How to optimize this code by avoiding nested for loops?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Canberk Suat Gurel
am 12 Apr. 2018
Beantwortet: Walter Roberson
am 12 Apr. 2018
Hi all,
I have written the following code, whose Elapsed time is 32.427771 seconds.
t=1;
ObsX=[]; ObsY=[];
tic
for i = 3.53:0.0001:4.67
for j = -6.17:0.0001:-4.53
ObsX(t) = j;
ObsY(t) = i;
t=t+1;
end
end
toc
I have rectangular obstacle with the coordinates 3.53:4.67 and -6.17:-4.53 and the resolution is 0.0001. I am trying to store the X coordinates in array ObsX and Y coordinates in array ObsY.
Can you suggest way to improve the computation time? Thanks!
0 Kommentare
Akzeptierte Antwort
Walter Roberson
am 12 Apr. 2018
[X, Y] = ndgrid(3.53:0.0001:4.67, -6.17:0.0001:-4.53);
ObsX = X(:);
ObsY = Y(:);
Note: I did not check to be sure that the values are in the same order as you created. You might need meshgrid() instead of ndgrid()
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Get Started with Optimization Toolbox finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!