Effacer les filtres
Effacer les filtres

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

5 vues (au cours des 30 derniers jours)
Adam Palmer
Adam Palmer le 5 Août 2014
Commenté : Star Strider le 5 Août 2014
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

Réponse acceptée

Star Strider
Star Strider le 5 Août 2014
Modifié(e) : Star Strider le 5 Août 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 commentaires
Adam Palmer
Adam Palmer le 5 Août 2014
Alright, I gotcha. Thanks Star Strider!
Star Strider
Star Strider le 5 Août 2014
My pleasure!
(Your ‘y’all’ got my attention. W&L and UVA here...)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur MATLAB dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by