How do I store values from a for loop

1 visualización (últimos 30 días)
Roger Burtus
Roger Burtus el 31 de Oct. de 2018
Respondida: Star Strider el 31 de Oct. de 2018
This is euler's method. I need to plot x0 against y0 without doing it inside the forloop, as it causes performance issues later on. I thought that maybe I could store all individual values of x0 and y0 from the forloop inside two separate vectors and then perform the plot, so that I don't need to plot for every iteration of the forloop. What should I write to store it in vectors? The next problem: This is a function file, so if I store the data in two vectors, how do I recall the data in order to perform a plot, when I am outside the function file?
function euler = eul(n,h)
y0 = 0;
x0 = 0;
%%dy is a separate function located somewhere else
for t = 1:n
x1 = x0 + h;
y1 = y0 + h * dy(y0);
euler = y1;
%%updating values x0 and y0 in preparation for next loop
x0 = x1;
y0 = y1;
%%This is my current abomination of an attempt to plot.
plot(x0,y0,'x')
hold on
end
end
  1 comentario
madhan ravi
madhan ravi el 31 de Oct. de 2018
Upload all the necessary information instead of giving information but by bit , saves time!!

Iniciar sesión para comentar.

Respuesta aceptada

Star Strider
Star Strider el 31 de Oct. de 2018
‘What should I write to store it in vectors?’
I would create ‘x0v’ and ‘y0v’ (for example) to store them:
function [euler,x0v,y0v] = eul(n,h)
y0 = 0;
x0 = 0;
x0v = zeros(1,n); % Preallocate
y0v = zeros(1,n); % Preallocate
%%dy is a separate function located somewhere else
for t = 1:n
x1 = x0 + h;
y1 = y0 + h * dy(y0);
euler = y1;
%%updating values x0 and y0 in preparation for next loop
x0 = x1;
y0 = y1;
x0v(t) = x0;
y0v(t) = y0;
%%This is my current abomination of an attempt to plot.
plot(x0v, y0v, 'x')
hold on
end
end
‘... how do I recall the data in order to perform a plot ...’
Add them as outputs, as I did here. The rest of your code is unchanged.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by