Chapter 7: Heat Exchangers

Example 7.1, Page no:285

In [1]:
import math
from __future__ import division

#Variable declaration
h = 2000 ; #W/m^2 K
#From Table 7.1
Uf = 0.0001 ; #fouling factor, m^2K/W

#calculations
hf = 1/(1/ h+ Uf );
p = (h-hf)/h *100;

#result
print"Heat transfer coefficient including the effect of foulung =",round(hf,4),"W/m^2 K";
print"Percentage reduction =",round(p,4);
Heat transfer coefficient including the effect of foulung = 1666.6667 W/m^2 K
Percentage reduction = 16.6667

Example 7.2, Page no:294

In [2]:
import math
from __future__ import division

#Variable declaration
m = 1000 ; #kg/h
Thi = 50 ; #C
The = 40 ; #C
Tci = 35 ; #C
Tce = 40 ; #C
U = 1000 ; #OHTC, W/m^2 K
#From fig 7.15,
F =0.91 ;
#Again from fig 7.15,
F =0.91 ;

#calculations
#Using Eqn 7.5.25
q = m /3600*4174*( Thi - The ) ; #W
deltaT = (( Thi - Tce ) -(The - Tci ))/math.log (( Thi -Tce)/( The -Tci )); #C
#T1 = Th and T2 = Tc
R = (Thi - The )/( Tce - Tci ) ;
S = (Tce - Tci )/( Thi - Tci ) ;
#Alternatively, taking T1 = Tc and T2 = Th
R2 = (Tci - Tce )/( The - Thi );
S2 = (The - Thi )/( Tci - Thi );
A = q/(U*F* deltaT );

#result
print"delta T =",round(deltaT,4);
print"\nTaking T1 = Th and T2 = Tc";
print"R=",round(R,4), "S=",round(S,4);
print"Hence, F =",round(F,4);
print"\nTaking T1 = Tc and T2 = Th";
print"R2=",round(R2,4),"S2=",round(S2,4);
print"Hence, F =",round(F,4);
print"\nArea =",round(A,4),"m^2";
delta T = 7.2135

Taking T1 = Th and T2 = Tc
R= 2.0 S= 0.3333
Hence, F = 0.91

Taking T1 = Tc and T2 = Th
R2= 0.5 S2= 0.6667
Hence, F = 0.91

Area = 1.7663 m^2

Example 7.3, Page no:295

In [3]:
import math
from __future__ import division

#Variable declaration
#Because of change of phase , Thi = The
Thi = 100 ; #[C], Saturated steam
The = 100 ; #[C], Condensed steam
Tci = 30 ; #[C], Cooling water inlet
Tce = 70 ; #[C], cooling water outlet
#From fig 7.16
F = 1;

#calculations
R = (Thi - The )/( Tce - Tci ) ;
S = (Tce - Tci )/( Thi - Tci ) ;
#For counter flow arrangement
Tmcounter = (( Thi - Tce ) -(The - Tci ))/math.log (( Thi - Tce )/(The - Tci )); #For counter flow arrangement
#Therefore
Tm = F* Tmcounter ;

#result
print"Mean Temperaature Difference =",round(Tm,4),"C";
Mean Temperaature Difference = 47.2089 C

Example 7.4(a), Page no:302

In [4]:
import math
from __future__ import division

#Variable declaration
#Using Mean Temperature Difference approach
mhot = 10 ; #kg/min
mcold = 25 ; #kg/min
hh = 1600 ; #[W/m^2 K], Heat transfer coefficient on hot side
hc = 1600 ; #[W/m^2 K], Heat transfer coefficient on cold side
Thi = 70 ; #C
Tci = 25 ; #C
The = 50 ; #C

#calculations
#Heat Transfer Rate, q
q = mhot /60*4179*( Thi - The ); #W
#Heat gained by cold water = heat lost by the hot water
Tce = 25 + q *1/( mcold /60*4174) ; #C
#Using equation 7.5.13
Tm = (( Thi - Tci ) -(The - Tce ))/math.log (( Thi -Tci)/( The -Tce)); #C
U = 1/(1/ hh + 1/ hc); #W/m^2 K
A = q/(U*Tm); #Area, [m^2]

#result
print"(a)";
print"Mean Temperature Difference =",round(Tm,4),"C";
print"Area of Heat Exchanger =",round(A,4),"m^2";
(a)
Mean Temperature Difference = 28.7569 C
Area of Heat Exchanger = 0.6055 m^2

Example 7.4(b) , Page no:302

In [5]:
import math
from __future__ import division

#Variable declaration
#Using Mean Temperature Difference approach
mhot = 10 ; #kg/min
mcold = 25 ; #kg/min
hh = 1600 ; #[W/m^2 K], Heat transfer coefficient on hot side
hc = 1600 ; #[W/m^2 K], Heat transfer coefficient on cold side
Thi = 70 ; #C
Tci = 25 ; #C
The = 50 ; #C
mhot1 = 20 ; #kg/min

#calculations
#Heat Transfer Rate, q
q = mhot/60*4179*( Thi - The ); #W
#Heat gained by cold water = heat lost by the hot water
Tce = 25 + q *1/( mcold /60*4174) ;
# Using equation 7.5.13
Tm = ((( Thi - Tci ) -(The - Tce ))/math.log (( Thi -Tci)/( The -Tce))); #C
U = 1/(1/ hh + 1/ hc); #W/m^2 K
A = q/(U*Tm); #Area, [m^2]
#Flow rate on hot side i.e. 'hh' is doubled
hh1 = 1600*2**0.8 ; #W/m^2 K
U1 = 1/(1/ hh1 + 1/ hc); #W/m^2 K
mhCph = mhot1 /60*4179 ; #W/K
mcCpc = mcold /60*4174 ; #W/K
#Therefore
C = mhCph / mcCpc ;
ntu = U1*A/ mhCph ;
e = (1 - math.exp ( -(1+C)*ntu) )/(1+ C) ;
#Therefore (Thi - The)/(Thi - Tci) = e , we get
The = Thi - e*( Thi - Tci );
#Equating the heat lost by water to heat gained by cold water , we get
Tce = Tci + ( mhCph *( Thi - The ))/ mcCpc ;

#result
print"(b)\nNTU =",round(ntu,4);
print"Exit temperature of cold and hot stream are",round(Tce,4),"C and",round(The,4),"C respectively.";
(b)
NTU = 0.4418
Exit temperature of cold and hot stream are 35.981 C and 56.2901 C respectively.

Example 7.5 , Page no:304

In [6]:
import math
from __future__ import division

#Variable declaration
mc = 2000 ; # [kg/h]
Tce = 40 ; # [C]
Tci = 15 ; # [C]
Thi = 80 ; # [C]
U = 50 ; # OHTC, [W/m**2 K]
A = 10 ; # Area, [m**2]

#Calculations
# Using effective NTU method
# Assuming m_c*C_pc = (m*C_p)s
NTU = U*A/(mc*1005/3600);
e = (Tce-Tci)/(Thi-Tci);
# From fig 7.23, no value of C is found corresponding to the above values, hence assumption was wrong.
# So, m_h*C_ph must be equal to (m*C_p)s, proceeding by trail and error method

mh_1 = 200
NTU_1 = U*A/(mh_1*1.161);
#Corresponding Values of C and e from fig 7.23
C = .416;
e = .78;
#From Equation 7.6.2 Page 297
The_1 = Thi - e*(Thi-Tci)
#From Heat Balance
The2_1 = Thi -  mc*1005/3600*(Tce-Tci)/(mh_1*1.161);

mh_2 = 250
NTU_2 = U*A/(mh_2*1.161);
#Corresponding Values of C and e from fig 7.23
C = .520;
e = .69;
#From Equation 7.6.2 Page 297
The_2 = Thi - e*(Thi-Tci)
#From Heat Balance
The2_2 = Thi -  mc*1005/3600*(Tce-Tci)/(mh_2*1.161);

mh_3 = 300
NTU_3 = U*A/(mh_3*1.161);
#Corresponding Values of C and e from fig 7.23
C = .624;
e = .625;
#From Equation 7.6.2 Page 297
The_3 = Thi - e*(Thi-Tci)
#From Heat Balance
The2_3 = Thi -  mc*1005/3600*(Tce-Tci)/(mh_3*1.161);

mh_4 = 350
NTU_4 = U*A/(mh_4*1.161);#Corresponding Values of C and e from fig 7.23
C = .728;
e = .57;
#From Equation 7.6.2 Page 297
The_4 = Thi - e*(Thi-Tci)
#From Heat Balance
The2_4 = Thi -  mc*1005/3600*(Tce-Tci)/(mh_4*1.161);

mh_5 = 400
NTU_5 = U*A/(mh_5*1.161);
#Corresponding Values of C and e from fig 7.23
C = .832;
e = .51;
#From Equation 7.6.2 Page 297
The_5 = Thi - e*(Thi-Tci)
#From Heat Balance
The2_5 = Thi -  mc*1005/3600*(Tce-Tci)/(mh_5*1.161);

#Results

print ("m_h(kg/h) \t NTU \t\t  C \t\t  e       \t T_he(C)    \t\t T_he(C)(Heat Balance)");
print mh_1,"\t\t",round(NTU_1,3),"\t\t",round(C,3),"\t\t",round(e,2),"\t\t  ",round(The_1,1),"\t\t\t",round(The2_1,1);
print mh_2,"\t\t",round(NTU_2,3),"\t\t",round(C,3),"\t\t",round(e,2),"\t\t  ",round(The_2,1),"\t\t\t",round(The2_2,1);
print mh_3,"\t\t",round(NTU_3,3),"\t\t",round(C,3),"\t\t",round(e,2),"\t\t  ",round(The_3,1),"\t\t\t",round(The2_3,1);
print mh_4,"\t\t",round(NTU_4,3),"\t\t",round(C,3),"\t\t",round(e,2),"\t\t  ",round(The_4,1),"\t\t\t",round(The2_4,1);
print mh_5,"\t\t",round(NTU_5,3),"\t\t",round(C,3),"\t\t",round(e,2),"\t\t  ",round(The_5,1),"\t\t\t",round(The2_5,1);

#Graph
mh=[200,250,300,350,400];
The=[29.3,35.2,39.4,43,46.9];
The2=[19.9,31.9,39.9,45.7,50];

import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline

plt.plot (mh,The,'b',mh,The2,'r',[295,295,200],[0,39.2,39.2],'k');
plt.title ("mh vs The");
plt.xlabel(" mh ");
plt.ylabel(" The ");
m_h(kg/h) 	 NTU 		  C 		  e       	 T_he(C)    		 T_he(C)(Heat Balance)
200 		2.153 		0.832 		0.51 		   29.3 			19.9
250 		1.723 		0.832 		0.51 		   35.2 			31.9
300 		1.436 		0.832 		0.51 		   39.4 			39.9
350 		1.23 		0.832 		0.51 		   43.0 			45.6
400 		1.077 		0.832 		0.51 		   46.9 			49.9