Storing Values From a Loop

1 vue (au cours des 30 derniers jours)
Kyle Fertig
Kyle Fertig le 5 Nov 2017
I'm doing a project involving an implementation of Euler's method for class, and am using a "for" loop to increment my values. The code below runs, but whatever new y value I get is overwritten as the loop goes through. I need to be able to save those y values after each time through the loop and put them into a matrix so that they can later be graphed. I'm not sure how to do this, so any help is appreciated!
a=1250
q=500
c=160
n=0.5
y=1.1
for t=0:n:2
s=3*(q/a)*sin(t)^2-(c*(1+y)^1.5)/a
y=y+s
end
Thanks,
-Kyle

Réponse acceptée

Kaushik Lakshminarasimhan
Replace
s=3*(q/a)*sin(t)^2-(c*(1+y)^1.5)/a
y=y+s
with
s=3*(q/a)*sin(t)^2-(c*(1+y(end))^1.5)/a;
y=[y y(end)+s];
  2 commentaires
Kyle Fertig
Kyle Fertig le 5 Nov 2017
That's awesome, thanks! How does the (end) thing work? I assume it's a sort of function since the "s=" equation is still starting y at 1. 1
-Kyle
Kaushik Lakshminarasimhan
end is a keyword, not a function. It simply picks out the last element of an array. For example, if x = [1 2 3 4 5], then x(end) = 5

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements 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