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

4 Ansichten (letzte 30 Tage)
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

Akzeptierte Antwort

Star Strider
Star Strider am 5 Aug. 2014
Bearbeitet: Star Strider am 5 Aug. 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 Kommentare
Adam Palmer
Adam Palmer am 5 Aug. 2014
Alright, I gotcha. Thanks Star Strider!
Star Strider
Star Strider am 5 Aug. 2014
My pleasure!
(Your ‘y’all’ got my attention. W&L and UVA here...)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by