I need to iterate time(t) to get different value of temperature(T) at different (t) starting from 0. Can anyone help me to iterate the code and plot time vs temperature curve?
3 次查看(过去 30 天)
显示 更早的评论
T_i = 80;
T_inf = 15;
h = 50;
A = 13.16;
m =54;
t = 0;
m_c = 28; %mass of cast iron in kg
m_co = 20; %mass of copper winding in kg
m_s = 6; %mass of steel shaft in kg
C_c = 0.460; %Heat capacity of cast iron in KJ/Kg-K
C_co = 0.377; %Heat capacity of copper in KJ/Kg-K
C_s = 0.502; %Heat capacity of steel in KJ/Kg-K
c = m_c*C_c+m_co*C_co+m_s*C_s;
T = (T_i-T_inf)*exp((-h*A*t)/(m*c)) + T_inf
0 个评论
采纳的回答
Awais Saeed
2021-12-13
编辑:Awais Saeed
2021-12-13
T_i = 80;
T_inf = 15;
h = 500;
A = 13.16;
m = 54;
m_c = 28; %mass of cast iron in kg
m_co = 20; %mass of copper winding in kg
m_s = 6; %mass of steel shaft in kg
C_c = 0.460; %Heat capacity of cast iron in KJ/Kg-K
C_co = 0.377; %Heat capacity of copper in KJ/Kg-K
C_s = 0.502; %Heat capacity of steel in KJ/Kg-K
c = m_c*C_c+m_co*C_co+m_s*C_s;
stepsize = 0.01;
time = 0:stepsize:2;
for ii = 1:1:length(time)
t =time(ii);
T(ii) = (T_i-T_inf)*exp((-h*A*t)/(m*c)) + T_inf;
end
plot(time, T)
title('t vs T plot')
xlabel('t')
ylabel('T')
set(gca,'XTick',min(time):0.1:max(t)); % start time, increment size, stop time
更多回答(1 个)
Walter Roberson
2021-12-13
T_i = 80;
T_inf = 15;
h = 500;
A = 13.16;
m =54;
syms t
m_c = 28; %mass of cast iron in kg
m_co = 20; %mass of copper winding in kg
m_s = 6; %mass of steel shaft in kg
C_c = 0.460; %Heat capacity of cast iron in KJ/Kg-K
C_co = 0.377; %Heat capacity of copper in KJ/Kg-K
C_s = 0.502; %Heat capacity of steel in KJ/Kg-K
c = m_c*C_c+m_co*C_co+m_s*C_s;
T = (T_i-T_inf)*exp((-h*A*t)/(m*c)) + T_inf
fplot(T, [0 2])
3 个评论
Walter Roberson
2021-12-13
T_i = 80;
T_inf = 15;
h = 500;
A = 13.16;
m =54;
syms t
m_c = 28; %mass of cast iron in kg
m_co = 20; %mass of copper winding in kg
m_s = 6; %mass of steel shaft in kg
C_c = 0.460; %Heat capacity of cast iron in KJ/Kg-K
C_co = 0.377; %Heat capacity of copper in KJ/Kg-K
C_s = 0.502; %Heat capacity of steel in KJ/Kg-K
c = m_c*C_c+m_co*C_co+m_s*C_s;
T = (T_i-T_inf)*exp((-h*A*t)/(m*c)) + T_inf
maxt = 2;
x = linspace(0,maxt,250);
Y = double(subs(T, t, x))
plot(x, Y)
xticks(0:.1:maxt)
The Y= part shows the values at the command line, as you requested.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Thermal Analysis 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!