Advertisement
Guest User

Untitled

a guest
Apr 30th, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.25 KB | None | 0 0
  1. %% r - polomer vaku v [cm]
  2. %% h - vyšška vaku v [cm]
  3. %% V_ml - objem krvi v [ml] vo vaku
  4. %% Ro_krv - hustota krvi [kg/m3], od 1048-1066
  5.  
  6. %% Typ plastu:
  7. %% 1) Polyvinylchlorid (PVC)
  8. %% 2) Polypropylén (PP)
  9. %% 3) Polyetylén (PE)
  10. %% 4) Etylenvinyl acetát (EVA)
  11.  
  12. %% T_krv_p - pociatocna teplota krvi v [°C]
  13. %% T_krv_k - teplota na ktorú chcete krv ochladit v [°C]
  14. %% T_chlad - teplota chladnicky v [°C]
  15.  
  16.  
  17. function krv()
  18. prompt = {'Počiatočná teplota krvi [°C]', 'Teplota, na ktorú chceme krv schladiť [°C]', 'Teplota chladničky [°C]', 'Šírka vaku [cm]', 'Výška vaku [cm]', 'Objem krvi [ml]', 'Hustota krvi (1048 - 1066)[kg/m3]', 'Materiál vaku: 1-(PVC), 2-(PP), 3-(PE), 4-(EVA)'};
  19. defaults = {'36.0', '-20.0', '-20.0', '12', '18', '450', '1060', '1'};
  20. rowscols = [1,40; 1,40; 1,40; 1,40; 1,40; 1,40; 1,40; 1,40;];
  21. dims = inputdlg (prompt, 'Vstupné parametre', rowscols, defaults);
  22.  
  23. T_krv_p = str2num(dims{1});
  24. T_krv_k = str2num(dims{2});
  25. T_chlad = str2num(dims{3});
  26. r = str2num(dims{4});
  27. h = str2num(dims{5});
  28. V_ml = str2num(dims{6});
  29. Ro_krv = str2num(dims{7});
  30. typ_plast = str2num(dims{8});
  31.  
  32. chladenie(T_krv_p, T_krv_k, T_chlad, r, h, V_ml, Ro_krv, typ_plast);
  33. end
  34.  
  35. function chladenie( T_krv_p, T_krv_k, T_chlad, r, h, V_ml, Ro_krv, typ_plast)
  36. clc;
  37. lam_PVC=0.20;
  38. lam_PP=0.22;
  39. lam_PE=0.35;
  40. lam_EVA=0.34;
  41. c_krv = 3617; %% sú?inite? tepelnej vodivosti krvi
  42. x=0.00025; %% hrúbka plastu
  43.  
  44. T_chlad=T_chlad-1;
  45.  
  46. %% volanie funkcie
  47. lam_plast = get_lam_plastu(typ_plast);
  48.  
  49. %% premeny jednotiek na zakladne
  50. r_vak = r*0.01;
  51. h_vak = h*0.01;
  52. T_krv_p_k=T_krv_p+273.15;
  53. %T_krv_k_k=T_krv_k+273.15;
  54. T_chlad_k=T_chlad+273.15;
  55. V=V_ml*0.000001;
  56. C1=Ro_krv*V*c_krv; %% hmotnostna tepelna kapacita krvi
  57. S=4*((r_vak*h_vak)+(r_vak*x)+(h_vak*x)); %% plocha vaku
  58. T_roz1=(T_krv_p_k-T_chlad_k);
  59. %T_roz2=(T_krv_p_k-T_krv_k_k)
  60.  
  61. Q1=C1*(T_krv_p_k-T_chlad_k); %% teplo, ktore moze krv odovzdat
  62.  
  63. D1=(Q1*x)/(lam_plast*S);
  64.  
  65. D_PVC=(Q1*x)/(lam_PVC*S);
  66.  
  67. D_PP=(Q1*x)/(lam_PP*S);
  68.  
  69. D_PE=(Q1*x)/(lam_PE*S);
  70.  
  71. D_EVA=(Q1*x)/(lam_EVA*S);
  72.  
  73. X1 = [];
  74. Y1 = [];
  75. X2 = [];
  76. Y2 = [];
  77. X3 = [];
  78. Y3 = [];
  79. X4 = [];
  80. Y4 = [];
  81.  
  82. X5 = [];
  83. Y5 = [];
  84. X6 = [];
  85. Y6 = [];
  86.  
  87. % zaciatocny bod chladenia na prvom grafe
  88. graph1_start_x = 0;
  89. graph1_start_y = T_krv_p;
  90. graph1_end_PVC_x = 0;
  91. graph1_end_PP_x = 0;
  92. graph1_end_PE_x = 0;
  93. graph1_end_EVA_x = 0;
  94. graph1_end_y = T_krv_k;
  95.  
  96. T_zmena1=T_krv_p_k;
  97. T_zmena2=T_krv_p_k;
  98. for i =1:T_roz1
  99. t1=D_PVC*(1/(T_zmena1-T_chlad_k)); %% vypocet casu
  100. t1=t1-(D_PVC*(1/(T_roz1)));
  101.  
  102. t2=D_PP*(1/(T_zmena1-T_chlad_k)); %% vypocet casu
  103. t2=t2-(D_PP*(1/(T_roz1)));
  104.  
  105. t3=D_PE*(1/(T_zmena1-T_chlad_k)); %% vypocet casu
  106. t3=t3-(D_PE*(1/(T_roz1)));
  107.  
  108. t4=D_EVA*(1/(T_zmena1-T_chlad_k)); %% vypocet casu
  109. t4=t4-(D_EVA*(1/(T_roz1)));
  110.  
  111. T_vys1=T_zmena1-273.15;
  112. T_zmena1=T_zmena1-1;
  113.  
  114. if (T_vys1 == T_krv_k)
  115. graph1_end_PVC_x = t1;
  116. graph1_end_PP_x = t2;
  117. graph1_end_PE_x = t3;
  118. graph1_end_EVA_x = t4;
  119. end
  120.  
  121. Y1=[Y1;T_vys1]; %%
  122.  
  123. %X1=[X1;datenum(0,0,0,0,0,t1)]; %% vyskresluje vsetko do jedneho grafu
  124. X1=[X1;t1]; %% vyskresluje vsetko do jedneho grafu
  125.  
  126. %X2=[X2;datenum(0,0,0,0,0,t2)];%%
  127. X2=[X2;t2];%%
  128.  
  129. %X3=[X3;datenum(0,0,0,0,0,t3)];%%
  130. X3=[X3;t3];%%
  131.  
  132. %X4=[X4;datenum(0,0,0,0,0,t4)];%%
  133. X4=[X4;t4];%%
  134. end
  135. %X1=[X1;D_PVC];
  136. %Y1=[Y1;T_chlad];
  137.  
  138. %X2=[X2;D_PP];
  139.  
  140. %X3=[X3;D_PE];
  141.  
  142. %X4=[X4;D_EVA];
  143.  
  144.  
  145. for i =1:T_roz1
  146.  
  147. t2=D1*(1/(T_zmena2-T_chlad_k)); %% vypocet casu
  148. t2=t2-(D1*(1/(T_roz1)));
  149. Q_krv=(C1*T_zmena2)/1000000;
  150. T_vys2=T_zmena2-273.15;
  151.  
  152. T_zmena2=T_zmena2-1;
  153.  
  154. %X5=[X5;datenum(0,0,0,0,0,t2)];
  155. X5=[X5;t2];
  156.  
  157. Y5=[Y5;T_vys2];
  158.  
  159. %X6=[X6;datenum(0,0,0,0,0,t2)];
  160. X6=[X6;t2];
  161.  
  162. Y6=[Y6;Q_krv];
  163.  
  164. end
  165.  
  166.  
  167. figure;
  168. subplot(2,2,1);
  169. plot(X1, Y1, X2, Y1, X3, Y1, X4, Y1);
  170. hold on;
  171.  
  172. plot(graph1_start_x,graph1_start_y, '-mo','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',10);
  173.  
  174. plot(graph1_end_PVC_x,graph1_end_y, '-mo','LineWidth',2,'MarkerEdgeColor','b','MarkerFaceColor','b','MarkerSize',10);
  175. plot(graph1_end_PP_x,graph1_end_y, '-mo','LineWidth',2,'MarkerEdgeColor','g','MarkerFaceColor','g','MarkerSize',10);
  176. plot(graph1_end_PE_x,graph1_end_y, '-mo','LineWidth',2,'MarkerEdgeColor','r','MarkerFaceColor','r','MarkerSize',10);
  177. plot(graph1_end_EVA_x,graph1_end_y, '-mo','LineWidth',2,'MarkerEdgeColor','c','MarkerFaceColor','c','MarkerSize',10);
  178. grid on;
  179.  
  180. title('Vplyv materiálu na rychlosť chladenia');
  181. xlabel('t [s]');
  182. ylabel('T [°C]');
  183. %datetick('x','HH:MM:SS');
  184. xlim([0 inf]);
  185. legend('PVC', 'PP', 'PE', 'EVA');
  186. subplot(2,2,[3,4]);
  187. plot(X5, Y5);
  188. grid on;
  189. grid minor;
  190. title('Teplota za čas');
  191. xlabel('t [s]');
  192. ylabel('T [°C]');
  193. %%datetick('x','HH:MM:SS');
  194. xlim([0 inf]);
  195.  
  196. subplot(2,2,2);
  197. plot(X6, Y6);
  198. grid on;
  199. title('Teplo za čas');
  200. xlabel('t [s]');
  201. ylabel('Q [MJ]');
  202. %%datetick('x','HH:MM:SS');
  203. xlim([0 inf]);
  204.  
  205.  
  206. end
  207.  
  208. %%volana funkcia, sucinitel prestupu tepla
  209. function lam_plastu = get_lam_plastu(typ_plast)
  210. switch logical(true)
  211. case (typ_plast==1 ), lam_plastu = 0.20;
  212. case (typ_plast==2 ), lam_plastu = 0.22;
  213. case (typ_plast==3 ), lam_plastu = 0.355;
  214. case (typ_plast==4 ), lam_plastu = 0.34;
  215. otherwise, lam_plastu = 0.20;
  216. end;
  217. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement