How do I get a loop that takes a sum to store each value in a vector?

8 visualizaciones (últimos 30 días)
Hey Matlab community, y'all have been very helpful. I got another one for ya. I have a potential formula that takes the sum of series I made. What I want is each sum to be stored in a vector after each iteration, so that I can plot it. heres my code. Also I think it requires an empty vector of correct dimensions such as zeros(blah,blah) but I must have done it wrong because it returns empty
sumv=0;
n=0;
an=0;
for k=1:120
an=.68+sumv-(.68+sumv).*.0693;
sumv=an;
end
Your help and suggestions are greatly appreciated

Respuesta aceptada

Star Strider
Star Strider el 5 de Ag. de 2014
Editada: Star Strider el 5 de Ag. de 2014
If you want the value of sumv stored at each iteration of your k loop, index it to create a vector from it:
sumv(1)=0;
n=0;
an=0;
for k=1:120
an=.68+sumv(k)-(.68+sumv(k)).*.0693;
sumv(k+1)=an;
end
figure(1)
plot(sumv)
grid
You could preallocate by putting:
sumv = zeros(1,121);
in place of:
sumv(1)=0;
That’s good programming practice, but here it likely doesn’t make much of a difference in terms of speeding up your loop. I decided to keep with your original construction rather than preallocate.
  2 comentarios
Adam Palmer
Adam Palmer el 5 de Ag. de 2014
Alright, I gotcha. Thanks Star Strider!
Star Strider
Star Strider el 5 de Ag. de 2014
My pleasure!
(Your ‘y’all’ got my attention. W&L and UVA here...)

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by