# plot multiple equations in a for loop

7 views (last 30 days)
majid eid on 17 Apr 2015
Commented: majid eid on 17 Apr 2015
Hi everyone. I am trying to plot multiple graph in Matlab. it seems that matlab over wrights the values in each loop so when i try to plot it doesn't give any results ....so how can i save the values for every loop to plot them ?? here is the code
tc=40;
te=15;
c1=137.402;
c2=4.60437;
c3=0.061652;
c4=-1.118157;
c5=-.001525;
c6=-.0109119;
c7=-.00040148;
c8=-.00026682;
c9=.000003873;
d1=1.00618;
d2=-.893222;
d3=-.01426;
d4=0.870024;
d5=-.0063397;
d6=.033889;
d7=-.00023875;
d8=-.00014746;
d9=.0000067962;
for ta=[20:5:50];
qe=c1+c2*te+c3*te^2+c4*tc+c5*tc^2+c6*te*tc+c7*te^2*tc+c8*te*tc^2+c9*te^2*tc^2;
p=d1+d2*te+d3*te^2+d4*tc+d5*tc^2+d6*te*tc+d7*te^2*tc+d8*te*tc^2+d9*te^2*tc^2;
a=1;
b=(0.54*10+6)/0.27;
c=10^2+(6*10)/0.27-qe/0.27;
te=(-b+sqrt(b^2-4*a*c))/(2*a);
qc=qe+p;
tc=(qc/9.6)+ta;
ta,qe,p,te,qc,tc,
end
plot(ta,qe,ta,p,ta,te,ta,qc,ta,tc)

Michael Haderlein on 17 Apr 2015
Please, use the {} Code button above the field you're writing your question to make the post be readable.
Also, you should learn about the array concept of Matlab. Your equations look kind of like scalar products, so most likely you can significantly shorten your code and avoid typos this way.
With respect to your question, in this case it's easier to loop with a counter from 1:7, create the respective ta from this and instead of writing data to scalars, save them in arrays. Such as
ta=zeros(1,7);
qe=zeros(1,7);
for cnt=1:7
ta(cnt)=cnt*5+15;
qe(cnt)=...;
...
end
plot(ta,qe)
majid eid on 17 Apr 2015
yes thank you very much michael, it worked :)