{ "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": {} } ] }