How do I store values from a while loop and plot the values in fonction of the number of iteration?
1 view (last 30 days)
Show older comments
Hello!
In the loop while I would like to store the values of each loop, and plot it with the corresponding iteration t.
m_cafe=0.2; %kg
m_cream=0.05; %kg
Cp_water=4179,6;
T_cafe=5+273.15; %K
T_cream=90+273.15;
m_mix=m_cafe+m_cream;
Tm=(m_cafe*Cp_water*T_cafe+m_cream*Cp_water*T_cream)/(m_mix);
U=20; %W/m2.K
Tamb=20+273.15; %K
d=0.05; %m
r=d/2; %m
Vol_cafe=m_cafe*0.001 % 1 kg=1 liter= 0.001m3
Vol_mix=m_mix*0.001 %
h_cafe=Vol_cafe/(3.14*r^2)
h_mix=Vol_mix/(3.14*r^2)
Air_cafe=3.14*d*h_cafe
Air_mix=3.14*d*h_mix
step=0.5;
e=1
t=0
while e>=0.01
y=(Tm-Tamb)*exp(((-Air_mix*U)/(m_mix*Cp_water))*t)+Tamb;
Temp(t)=y;
e=abs(Temp-Tamb);
t=t+step
end
plot (t,Temp,'r')
1 Comment
Rik
on 15 Oct 2020
This time I edited your question for you. Next time, please use the tools explained on this page to make your question more readable.
Accepted Answer
Rik
on 15 Oct 2020
Indices in Matlab need to be positive integers. You should create a separate time vector.
And don't forget to index Temp, otherwise your condition will be a vector.
3 Comments
Rik
on 15 Oct 2020
You need to use a separate index, which will increment only by integer values:
t=0;
Temp=0;
n=1;
e=1;
while e>=0.01
n=n+1;
Temp(n)=___
t(n)=t(n-1)+step;
end
plot(t,Temp)
More Answers (0)
See Also
Categories
Find more on Graphics Object Programming in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!