Storing variables in a for loop within another

1 view (last 30 days)
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

Accepted Answer

per isakson
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
Name Size Bytes Class Attributes vetor_momentoj 10x10000 800000 double
"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

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!