Filter löschen
Filter löschen

I am trying to plot the temperature over time

7 Ansichten (letzte 30 Tage)
Ashley Turner
Ashley Turner am 25 Apr. 2019
Kommentiert: Ashley Turner am 25 Apr. 2019
clear;clc;
time_step = 1;
volume = 0.5;
density = 1;
heat_capacity = 4184;
T_init = 20;
T_working = 0;
T_desired = 10;
t_final = 300;
convection_coefficient = 10;
surface_area = 2*pi*((0.0635/2)^2+0.2032*0.0635/2);
%%
bottle_capacity = volume*density*heat_capacity;
T_bottle = T_init;
bottle_heat = bottle_capacity*(T_bottle-T_working);
for t = 0:time_step:t_final
heat_loss = convection_coefficient*time_step*(T_bottle-T_working);
bottle_heat = bottle_heat-heat_loss;
T_bottle = bottle_heat/bottle_capacity+T_working
if T_bottle < T_desired
t
break
end
end
  3 Kommentare
Ashley Turner
Ashley Turner am 25 Apr. 2019
so start the for loop after i delcare time? I'm really not the best at coding. where do I place the plot command?
Image Analyst
Image Analyst am 25 Apr. 2019
There is a plot command below in Jan's answer. Did you overlook it?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Jan
Jan am 25 Apr. 2019
tVector = 0:time_step:t_final
for it = 1:numel(tVector)
heat_loss = convection_coefficient*time_step*(T_bottle-T_working);
bottle_heat = bottle_heat-heat_loss;
T_bottle = bottle_heat/bottle_capacity+T_working
Temperature(it) = T_bottle;
if T_bottle < T_desired
t
break
end
end
n = numel(Temperature);
plot(tVector(1:n), Temperarure)
  2 Kommentare
Ashley Turner
Ashley Turner am 25 Apr. 2019
Im getting an error from the last line.
Ashley Turner
Ashley Turner am 25 Apr. 2019
Nevermind. Thank you! I think I got it.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by