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

1 visualización (ú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)

Categorías

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

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by