Borrar filtros
Borrar filtros

How to store values from a loop?

142 visualizaciones (últimos 30 días)
John Doe
John Doe el 21 de En. de 2014
Comentada: Hanna el 25 de En. de 2023
I have a .m function file of Y(x,y), and the fzero command below to find the zero for varying values of y:
if true
for y= 2:0.1:10
x = fzero(@(m) Y(m,y),4);
end
end
however after each loop, the previous value is overwritten, is there a way I can save them all?
Kind Regards,
John.

Respuesta aceptada

Bruno Pop-Stefanov
Bruno Pop-Stefanov el 21 de En. de 2014
Store them in a vector using an index like in the following:
y = 2:0.1:10;
% For all elements in vector y
for i=1:numel(y)
% Set ith element of vector x
x(i) = fzero(@(m) Y(m,y(i)),4);
end

Más respuestas (2)

Azzi Abdelmalek
Azzi Abdelmalek el 21 de En. de 2014
Editada: Azzi Abdelmalek el 21 de En. de 2014
ii= 2:0.1:10
sol=cell(numel(ii),1)
for y=ii
x = fzero(@(m) Y(m,y),4);
sol{y}=x;
end
celldisp(sol)
  1 comentario
Alvina Khairun Nisa
Alvina Khairun Nisa el 23 de Mayo de 2017
how to save celldisp(sol) to file.mat?

Iniciar sesión para comentar.


Mahdi
Mahdi el 21 de En. de 2014
There are two ways to do this, the following is the less efficient way
x=[];
if true
for y=2:0.1:10
x=[x; fzero(@(m) Y(m,y),4)];
end
end
Basically, the above code will store all the values in each loop in a matrix x. You can also preallocate and create a matrix by using x(i)=rest of it
i=1
for loop
x(i)=
i=i+1;
end
  2 comentarios
John Doe
John Doe el 21 de En. de 2014
Thank you
Hanna
Hanna el 25 de En. de 2023
Tahnk you Mahdi!

Iniciar sesión para comentar.

Categorías

Más información sobre Unit Conversions en Help Center y File Exchange.

Etiquetas

Aún no se han introducido etiquetas.

Community Treasure Hunt

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

Start Hunting!

Translated by