{
"metadata": {
"name": "",
"signature": "sha256:02a3e83bf8e73eb737ccd32c864c102b912719b43e71a2afa02159b5cd3f3cf2"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": [
"Chapter 22: Design Principles and Industrial Applications"
]
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"ILLUSTRATIVE EXAMPLE 22.6, Page number: 471"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"\n",
"from __future__ import division\n",
"from sympy import symbols,solve\n",
"\n",
"#Variable declaration:\n",
"#From steam tables:\n",
"h1 = 1572 #Enthalpy for super heated steam at (P = 40 atm, T = 1000\u00b0F) (Btu/lb)\n",
"h2 = 1316 #Enthalpy for super heated steam at (P = 20 atm, T = 600\u00b0F) (Btu/lb)\n",
"h3 = 1151 #Enthalpy for saturated steam (Btu/lb)\n",
"h4 = 28.1 #Enthalpy for saturated water (Btu/lb)\n",
"m1 = 1000 #Mass flowrate of steam (lb/h)\n",
"m = symbols('m') #Mass flow rate of steam (lb/h)\n",
"\n",
"#Calculation:\n",
"Dh1 = m1*(h3-h4) #The change in enthalpy for the vaporization of the water stream (Btu/h)\n",
"Dh2 = m*(h1-h2) #The change in enthalpy for the cooling of the water stream (Btu/h)\n",
"x = solve(Dh1-Dh2,m) #Mass flowrate of steam (lb/h)\n",
"m2 = x[0]; #Mass flowrate of steam (lb/h)\n",
"\n",
"#Result:\n",
"print \"The mass flowrate of the utility steam required is :\",round(m2),\" lb/h.\""
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"The mass flowrate of the utility steam required is : 4386.0 lb/h.\n"
]
}
],
"prompt_number": 6
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"ILLUSTRATIVE EXAMPLE 22.7, Page number: 473"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"\n",
"\n",
"from __future__ import division\n",
"\n",
"#Variable declaration:\n",
"#From table 22.1:\n",
"QH1 = 12*10**6 #Heat duty for process unit 1 (Btu/h)\n",
"QH2 = 6*10**6 #Heat duty for process unit 2 (Btu/h)\n",
"QH3 = 23.5*10**6 #Heat duty for process unit 3 (Btu/h)\n",
"QH4 = 17*10**6 #Heat duty for process unit 4 (Btu/h)\n",
"QH5 = 31*10**6 #Heat duty for process unit 5 (Btu/h)\n",
"T1 = 90 #Supply water temperature (\u00b0F)\n",
"T2 = 115 #Return water temperature (\u00b0F)\n",
"cP = 1 #Cooling water heat capacity (Btu/(lb.\u00b0F))\n",
"p = 62*0.1337 #Density of water (lb/gal)\n",
"BDR = 5/100 #Blow-down rate\n",
"\n",
"#Calculation:\n",
"QHL = (QH1+QH2+QH3+QH4+QH5)/60 #Heat load (Btu/min)\n",
"DT = T2-T1 #Change in temperature (\u00b0F)\n",
"qCW = round(QHL,-5)/(DT*cP*p) #Required cooling water flowrate (gpm)\n",
"qBD = BDR*qCW #Blow-down flow (gpm)\n",
"\n",
"#Result:\n",
"print \"The total flowrate of cooling water required for the services is :\",round(qCW,-1),\" gpm.\"\n",
"print \"The required blow-down flow is :\",round(qBD),\" gpm.\""
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"The total flowrate of cooling water required for the services is : 7240.0 gpm.\n",
"The required blow-down flow is : 362.0 gpm.\n"
]
}
],
"prompt_number": 7
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"ILLUSTRATIVE EXAMPLE 22.8, Page number: 474"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"\n",
"\n",
"from __future__ import division\n",
"\n",
"#Variable declaration:\n",
"Q1 = 10*10**6 #Unit heat duty for process unit 1 (Btu/h)\n",
"Q2 = 8*10**6 #Unit heat duty for process unit 2 (Btu/h)\n",
"Q3 = 12*10**6 #Unit heat duty for process unit 3 (Btu/h)\n",
"Q4 = 20*10**6 #Unit heat duty for process unit 4 (Btu/h)\n",
"hv = 751 #Enthalpy of vaporization for pressure 500 psig (Btu/lb)\n",
"\n",
"#Calculation:\n",
"mB1 = Q1/hv #Mass flowrate of 500 psig steam through unit 1 (lb/h)\n",
"mB2 = Q2/hv #Mass flowrate of 500 psig steam through unit 2 (lb/h)\n",
"mB3 = Q3/hv #Mass flowrate of 500 psig steam through unit 3 (lb/h)\n",
"mB4 = Q4/hv #Mass flowrate of 500 psig steam through unit 4 (lb/h)\n",
"mBT = mB1+mB2+mB3+mB4 #Total steam required (lb/h)\n",
"\n",
"#Result:\n",
"print \"The total steam required is :\", round(mBT,-1),\" lb/h.\""
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"The total steam required is : 66580.0 lb/h.\n"
]
}
],
"prompt_number": 8
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"ILLUSTRATIVE EXAMPLE 22.9, Page number: 474"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"\n",
"\n",
"from __future__ import division\n",
"from sympy import symbols,solve\n",
"from math import log,pi\n",
"\n",
"#Variable declaration:\n",
"po = 53*16.0185 #Density of oil (kg/m^3)\n",
"co = 0.46*4186.7 #Heat capacity of oil (J/kg.\u00b0C)\n",
"muo = 150/1000 #Dynamic viscosity of oil (kg/m.s)\n",
"ko = 0.11*1.7303 #Thermal conductivity of oil (W/m.\u00b0C)\n",
"qo = 28830*4.381*10**-8 #Volumetric flowrate of oil (m^3/s)\n",
"pw = 964 #Density of water (kg/m^3)\n",
"cw = 4204 #Heat capacity of water (J/kg.\u00b0C)\n",
"muw = 0.7/3600*1.4881 #Dynamic viscosity of water (kg/m.s)\n",
"kw = 0.678 #Thermal conductivity of water (W/m.\u00b0C)\n",
"qw = 8406*4.381*10**-8 #Volumetric flowrate of water (m^3/s)\n",
"t1 = 23.5 #Initial temperature of oil (\u00b0C)\n",
"t2 = 27 #Final temperature of oil (\u00b0C)\n",
"T1 = 93 #Water heating temperature of water (\u00b0C)\n",
"T2 = symbols('T2') #Minimum temperature of heating water (\u00b0C)\n",
"A = symbols('A') #Heat transfer area (m^2)\n",
"Uc = 35.4 #Clean heat transfer coefficient (W/m^2.K)\n",
"Rf = 0.0007 #Thermal resistance (m^2.K/W)\n",
"D = 6*0.0254 #Inside diameter of pipe (m)\n",
"\n",
"#Calculation:\n",
"vo = muo/po #Kinematic viscosity of oil (m^2/s)\n",
"mo = po*qo #Mass flowrate of oil (kg/s)\n",
"vw = muw/pw #Kinematic viscosity of (m^2/s)\n",
"mw = pw*qw #Masss flow rate of water (kg/s)\n",
"Q1 = mo*co*(t2-t1) #Duty of exchanger of oil (W)\n",
"T2m = t1 #Lowest possible temperature of the water (\u00b0C) (part 1)\n",
"Qmw = mw*cw*(T1-T2m) #Maximum duty of exchanger of water (W) (part 2)\n",
"Q2 = mw*cw*(T1-T2) #Duty of exchanger of water in terms of T2 (W)\n",
"x = solve(Q1-Q2,T2) #Solving value for T2 (\u00b0C)\n",
"T3 = x[0]; #Minimum temperature of heating water (\u00b0C)\n",
"DT1 = T3-t1 #Inlet temperature difference (\u00b0C)\n",
"DT2 = T1-t2 #Outlet temperature difference (\u00b0C)\n",
"DTlm = (DT1-DT2)/log(DT1/DT2) #Log mean temperature difference (\u00b0C)\n",
"Ud1 = 1/Uc+Rf #Dirty heat transfer coefficient (W/m^2.K) (part 3)\n",
"Ud2 = 34.6 #Dirty heat transfer coefficient (W/m^2.\u00b0C)\n",
"Q3 = Ud2*A*DTlm #Duty of exchanger (W) (part 4)\n",
"y = solve(Q1-Q3,A) #Heat transfer area (m^2)\n",
"A1 = y[0]; #Required heat transfer area (m^2)\n",
"L = A1/(pi*D) #Required heat transfer length (m)\n",
"Qmo = mo*co*(T1-t1) #Maximum duty of exchanger of oil (W) (part 5)\n",
"Qm = Qmw #Maximum duty of exchanger (W)\n",
"E = Q1/Qm*100 #Effectiveness (%)\n",
"NTU = Ud2*A1/(mw*cw) #Number of transfer units\n",
"\n",
"#Result:\n",
"print \"1. The lowest possible temperature of the water is :\",T2m,\" \u00b0C .\"\n",
"print \"2. The log mean temperature difference is :\",round(DTlm,2),\" \u00b0C .\"\n",
"print \"3. The overall heat transfer coefficient for the new clean exchanger is :\",round(Ud2,1),\" (W/m^2.\u00b0C .\"\n",
"print \"4. The length of the double pipe heat exchanger is :\",round(L,2),\" m .\"\n",
"print \"5. The effectiveness of the exchanger is :\",round(E,2),\" % .\"\n",
"print \" The NTU of the exchanger is :\",round(NTU,4),\" .\""
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"1. The lowest possible temperature of the water is : 23.5 \u00b0C .\n",
"2. The log mean temperature difference is : 65.33 \u00b0C .\n",
"3. The overall heat transfer coefficient for the new clean exchanger is : 34.6 (W/m^2.\u00b0C .\n",
"4. The length of the double pipe heat exchanger is : 6.68 m .\n",
"5. The effectiveness of the exchanger is : 6.97 % .\n",
" The NTU of the exchanger is : 0.0741 .\n"
]
}
],
"prompt_number": 9
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"ILLUSTRATIVE EXAMPLE 22.10, Page number: 477"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"\n",
"\n",
"from __future__ import division\n",
"from math import log,pi\n",
"\n",
"#Variable declaration:\n",
"#From example 22.9:\n",
"t1 = 23.5 #Initial temperature of oil (\u00b0C)\n",
"t2 = 27 #Final temperature of oil (\u00b0C)\n",
"T1 = 93 #Water heating temperature of water (\u00b0C)\n",
"T2 = 88.16 #Minimum temperature of heating water (\u00b0C)\n",
"U = 34.6 #Overall heat transfer coefficient (W/m^2.\u00b0C)\n",
"Q = 7227.2 #Duty of exchanger (W)\n",
"D = 6*0.0254 #Inside diameter of pipe (m)\n",
"l = 6.68 #Previous heat transfer length (m)\n",
"\n",
"#Calculation:\n",
"DT1 = T1-t1 #Inlet temperature difference (\u00b0C)\n",
"DT2 = T2-t2 #Outlet temperature difference (\u00b0C)\n",
"DTlm = (DT1-DT2)/log(DT1/DT2) #Log mean temperature difference (\u00b0C)\n",
"A = Q/(U*DTlm) #Required heat transfer area (m^2)\n",
"L = A/(pi*D) #Required heat transfer length (m)\n",
"\n",
"#Result:\n",
"print \"The length of the parallel pipe heat exchanger is :\",round(L,2),\" m .\"\n",
"if L>l:\n",
" print \"The tube length would increase slightly.\"\n",
"elif LRd):\n",
" print \"Therefore, the exchanger as specified is unsuitable for these process conditions since the fouling factor is above the recommended value. Cleaning is recommended.\"\n",
"else:\n",
" print \"Therefore, the exchanger as specified is suitable for these process conditions since the fouling factor is below the recommended value. Cleaning is not recommended.\""
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"The dirt (d) factor is : -0.0157 Btu/h.ft^2.\u00b0F .\n",
"Therefore, the exchanger as specified is suitable for these process conditions since the fouling factor is below the recommended value. Cleaning is not recommended.\n"
]
}
],
"prompt_number": 27
}
],
"metadata": {}
}
]
}