Storing variables in a for loop within another
1 view (last 30 days)
Show older comments
Ana Carolina da Silva Pacheco
on 16 May 2021
Commented: Ana Carolina da Silva Pacheco
on 17 May 2021
I have the code below, and I want to store the variable "vetor_momentoj" returned from the for loop in terms of the indexes i and j. In other words, in each interaction i, I will have j (10) values of the variable "vetor_momentoj". Similarly, I want to store the variable "jvals". In each interaction i it's assuming a vector of values as declared with linspace. Can anyone help me, please?
it = 10000;
jvals = zeros(it,1);
vetor_momentoj = zeros(it,1);
for i = 1:it
jvals(i) = linspace(0, 0.03, 10);
for j = 1:numel(jvals)
curvatura = jvals(j);
funj = @dissertacao_curvatura_funcao;
x0j = 1;
xj = fzero(funj,x0j);
vetor_momentoj(j) = momentoj;
end
end
0 Comments
Accepted Answer
per isakson
on 16 May 2021
Edited: per isakson
on 16 May 2021
"store the variable "vetor_momentoj" [...] in terms of the indexes i and j."
Something like this? I replaced the calculation of momentoj by rand to be able to run the script.
There is no reason to have the statement jvals = linspace(0, 0.03, 10); inside the loop. The value of jvals doesn't change.
%%
it = 10000;
jvals = linspace(0, 0.03, 10);
vetor_momentoj = nan( numel(jvals), it );
for i = 1:it
for j = 1:numel(jvals)
curvatura = jvals(j);
% funj = @dissertacao_curvatura_funcao;
x0j = 1;
% xj = fzero(funj,x0j);
vetor_momentoj(j,i) = rand; % momentoj;
end
end
whos vetor_momentoj
"store the variable "jvals"." I don't see why. The statement jvals(i) = linspace(0, 0.03, 10); throws an error. repmat( linspace(0,0.03,10), .... ) outside the script, isn't that good enough?
4 Comments
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!