How do I store values from a while loop and plot the values in fonction of the number of iteration?
1 次查看(过去 30 天)
显示 更早的评论
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 个评论
Rik
2020-10-15
This time I edited your question for you. Next time, please use the tools explained on this page to make your question more readable.
采纳的回答
Rik
2020-10-15
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 个评论
Rik
2020-10-15
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)
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Graphics Object Programming 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!