Storing variables in a for loop within another

1 次查看(过去 30 天)
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

采纳的回答

per isakson
per isakson 2021-5-16
编辑:per isakson 2021-5-16
"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 个评论

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by