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?

7 views (last 30 days)
Ashish Kumar
Ashish Kumar on 13 Dec 2021
Commented: Ashish Kumar on 13 Dec 2021
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

Accepted Answer

Awais Saeed
Awais Saeed on 13 Dec 2021
Edited: Awais Saeed on 13 Dec 2021
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

More Answers (1)

Walter Roberson
Walter Roberson on 13 Dec 2021
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
T = 
fplot(T, [0 2])
  3 Comments

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!