How to save certain values in a FOR loop
3 views (last 30 days)
Show older comments
Hi, i am running several FOR-loops, as shown below, and want to save the step-values which satisfies the if-command. Right now I just stop the script at the first values which satisfies the criteria, but as there propably will be more than one answer, I would like to save all the different combinations in a matrix, or a file. How do I do this?
for k = 17.12:0.001:17.13
for c0 = 0.1:0.1:0.5
for c1 = 1:1:5
for ac = 0.1:0.1:0.5
for mc = 0.2:0.1:0.7
for a = 0:0.1:0.2
for m = 0:0.1:1
propellerdesign;
%This is the main script which runs as it should
if T_req<= T && T <= 1.001*T_req && cav_points == 0
return
end
end
end
end
end
end
end
end
0 Comments
Accepted Answer
Elias Gule
on 1 Apr 2016
just before the start of the first for loop, define an empty matrix, this will be the storage for all the valid step-values. Replace the return statement with a statement that updates your storage matrix.
m = [];
for k = 17.12:0.001:17.13
for c0 = 0.1:0.1:0.5
for c1 = 1:1:5
for ac = 0.1:0.1:0.5
for mc = 0.2:0.1:0.7
for a = 0:0.1:0.2
for m = 0:0.1:1
propellerdesign;
%This is the main script which runs as it should
if T_req<= T && T <= 1.001*T_req && cav_points == 0
m = [m T_req]; % This causes your matrix to expand as necessary
end
end
end
end
end
end
end
end
3 Comments
Manu K Sajan
on 30 Sep 2019
Finallly!!!! after lots of googling, this method works perfectly!!!Thanks
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!