{ "metadata": { "name": "", "signature": "sha256:1a37ab741ccda7f67c7de1085d3807de9fa5a11a3111916ad9502a04f1c58721" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Chapter 16 : Design for Physical Operations" ] }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 1, Page 404\n" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "T=1000.; #Operating temperature of calciner in degree celcius\n", "deltaHr=1795.; #Heat of reaction in kJ/kg\n", "M1=0.1; #Molecular weight of Calcium carbonate in kg/mol\n", "M2=0.056; #Molecular weight of CaO in kg/mol\n", "M3=0.044; #Molecular weight of Carbon dioxide in kg/mol\n", "M4=0.029; #Molecular weight of Air in kg/mol\n", "M5=0.029; #Molecular weight of Combustion gas in kg/mol\n", "Cp1=1.13; #Specific heat of Calcium carbonate in kJ/kg K\n", "Cp2=0.88; #Specific heat of CaO in kJ/kg K\n", "Cp3=1.13; #Specific heat of Carbon dioxide in kJ/kg K\n", "Cp4=1.00; #Specific heat of Air in kJ/kg K\n", "Cp5=1.13; #Specific heat of Calcium carbonate in kJ/kg K\n", "Tf=20.; #Temperature of feed in degree celcius\n", "ma=15.; #Air required per kg of fuel in kg\n", "Hc=41800.; #Net combustion heat of fuel in kJ/kg\n", "Tpi=20.; #Initial temperature of solids in degree C\n", "Tgi=1000.; #Initial temperature of gas in degree C\n", "\n", "#CALCULATION\n", "mc=1;#Based on 1 kg of Calcium carbonate\n", "B=(1/(Hc-(ma+mc)*Cp5*(T-Tpi)))*(M3*Cp3*(T-Tf)+M2*Cp2*(T-Tf)+deltaHr)#Fuel consumption(kg fuel/kg calcium carbonate)\n", "B1=B*M3/M2;#Fuel consumption(kg fuel/kg Cao)\n", "H=Hc*B1;#Heat required for calcination\n", "eta=deltaHr/(B*Hc);#Thermal efficiency\n", "\n", "#OUTPUT\n", "print 'Fuel consumption:%f kg fuel/kg Cao'%B1\n", "print 'Heat requirement for calcination:%f kJ/kg Cao'%H\n", "print 'Thermal efficiency:%f percentage'%(eta*100)\n", "\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Fuel consumption:0.061731 kg fuel/kg Cao\n", "Heat requirement for calcination:2580.366029 kJ/kg Cao\n", "Thermal efficiency:54.657251 percentage\n" ] } ], "prompt_number": 1 }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Example 2, Page 405\n" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "from scipy.optimize import fsolve\n", "import math\n", "\n", "#INPUT\n", "F = 400. #Feed rate of Calcium carbonate in tons/day\n", "T = 1000. #Operating temperature of calciner in degree celcius\n", "deltaHr = 1795.#Heat of reaction in kJ/kg\n", "M1 = 0.1 #Molecular weight of Calcium carbonate in kg/mol\n", "M2 = 0.056 #Molecular weight of CaO in kg/mol\n", "M3 = 0.044 #Molecular weight of Carbon dioxide in kg/mol\n", "M4 = 0.029 #Molecular weight of Air in kg/mol\n", "M5 = 0.029 #Molecular weight of Combustion gas in kg/mol\n", "Cp1 = 1.13 #Specific heat of Calcium carbonate in kJ/kg K\n", "Cp2 = 0.88 #Specific heat of CaO in kJ/kg K\n", "Cp3 = 1.13 #Specific heat of Carbon dioxide in kJ/kg K\n", "Cp4 = 1.00 #Specific heat of Air in kJ/kg K\n", "Cp5 = 1.17 #Specific heat of Combustion gas in kJ/kg K\n", "Tf = 20. #Temperature of feed in degree celcius\n", "ma = 15. #Air required per kg of fuel in kg\n", "uo = 0.8 #Superficial gas velocity in m/s\n", "Hc = 41800. #Net combustion heat of fuel in kJ/kg\n", "Tpi = 20. #Initial temperature of solids in degree C\n", "Tgi = 1000. #Initial temperature of gas in degree C\n", "rhoa = 1.293 #Density of air in kg/m**3\n", "pi = 3.14\n", "\n", "#CALCULATION\n", "mc = 1. #Based on 1 kg of Calcium carbonate\n", "Bguess = 2. #Guess value of B\n", "def solver_func(B): #Function defined for solving the system\n", " phi = ((ma+mc)*Cp5*B+(M3*Cp3))/Cp1\n", " T3 = (Tpi+(phi+phi**2+phi**3)*Tgi)/(1+phi+phi**2+phi**3)\n", " phiplus = 30.6*B\n", " Tr = (T+Tpi*phiplus)/(1+phiplus)\n", " return Hc*B+Cp3*(T3-Tpi)+ma*B*Cp4*(Tr-20)-(ma+mc)*Cp5*(T-Tpi)-M3*Cp3*(T-Tpi)-M2*Cp2*(T-Tpi)-deltaHr\n", " #fn = (1/20800)*(2470-T3-13.34*(Tr-20))\n", "\n", "B = fsolve(solver_func,1E-6)#Using inbuilt function fsolve for solving Eqn.(23) for tou\n", "phi = ((ma+mc)*Cp5*B+(M3*Cp3))/Cp1\n", "#Temperature of various stages\n", "T1 = (Tpi+(phi)*Tgi)/(1+phi)\n", "T2 = (Tpi+(phi+phi**2)*Tgi)/(1+phi+phi**2)\n", "T3 = (Tpi+(phi+phi**2+phi**3)*Tgi)/(1+phi+phi**2+phi**3)\n", "phiplus = 30.6*B\n", "Tr = (T+Tpi*phiplus)/(1+phiplus)\n", "eta = deltaHr/(B*Hc) #Thermal efficiency\n", "H = B*Hc/M2 #Heat requirement\n", "#For lower heat recovery section\n", "Ql = (F*10**3/(24*3600))*B*ma/(rhoa*(273/(Tr+273)))#Volumetric flow rate of gas in the lower heat recovery section\n", "dtl = math.sqrt(4/pi*Ql/uo)#Diameter of lower bed\n", "#For calcination section\n", "Qc = (F*10**3/(24*3600))*B*ma/(rhoa*(273/(T+273)))#Volumetric flow rate of gas in the calcination section\n", "dtc = math.sqrt(4/pi*Qc/uo)#Diameter of calcination section\n", "#For I stage\n", "Q1 = (F*10**3/(24*3600))*B*ma/(rhoa*(273/(T1+273)))#Volumetric flow rate of gas in the I stage\n", "dt1 = math.sqrt(4/pi*Q1/uo)#Diameter of I stage\n", "#For II stage\n", "Q2 = (F*10**3/(24*3600))*B*ma/(rhoa*(273/(T2+273)))#Volumetric flow rate of gas in the II stage\n", "dt2 = math.sqrt(4/pi*Q2/uo)#Diameter of II stage\n", "#For III stage\n", "Q3 = (F*10**3/(24*3600))*B*ma/(rhoa*(273/(T3+273)))#Volumetric flow rate of gas in the III stage\n", "dt3 = math.sqrt(4/pi*Q3/uo)#Diameter of III stage\n", "\n", "#OUTPUT\n", "print '\\nDiameter of lower bed:%fm'%(dtl)\n", "print '\\nDiameter of calcination section:%fm'%(dtc)\n", "print '\\nBed no.\\t\\t1\\t2\\t\\t3'\n", "print '\\nDiameter(m)%f\\t%f\\t%f'%(dt1,dt2,dt3)\n", "\n", "#The value of diameter of each section is largely deviating from the values in the textbook. This is because the fuel consumption B have not been included in the energy balance equation. And the value of molecular weight is wrong by one decimal point.\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\n", "Diameter of lower bed:7.097814m\n", "\n", "Diameter of calcination section:13.351483m\n", "\n", "Bed no.\t\t1\t2\t\t3\n", "\n", "Diameter(m)12.728715\t13.270865\t13.340712\n" ] } ], "prompt_number": 1 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 3, Page 413\n" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "T=20; #Temeprature in degree C\n", "M=0.018; #Molecular weight of water in kg/mol\n", "Q=10; #Flow rate of dry air in m**3/s\n", "R=82.06E-6; #Universal gas constant\n", "pi=0.0001; #Initial moisture content in atm\n", "pj=0.01; #Final moisture content in atm\n", "\n", "#CALCULATION\n", "a=Q*(273+T)/273; #Term At*uo\n", "b=a*M/(R*(T+273));#Term C*At*uo\n", "#The value of slope can be found only by graphical mehtod. Hence it has been taken directly from the book(Page no.414,Fig.E3)\n", "m=10.2;\n", "Fo=b/m; #Flow rate of solids\n", "Q3=(b/Fo)*(pj-pi);#Moisture content of leaving solids\n", "\n", "#OUTPUT\n", "print '\\nMoisture content of leaving solids:%.3f kg H2O/kg dry solids'%Q3\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\n", "Moisture content of leaving solids:0.101 kg H2O/kg dry solids\n" ] } ], "prompt_number": 2 }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Example 4, Page 422\n" ] }, { "cell_type": "code", "collapsed": false, "input": [ "from scipy.optimize import fsolve \n", "import math \n", "\n", "\n", "\n", "#INPUT\n", "Qfi = 0.20 #Initial moisture fraction\n", "Qfbar = 0.04 #Average final moisture fraction\n", "rhos = 2000. #Density of solid in kg/m**3\n", "Cps = 0.84 #Specific heat of solids in kJ/kg K\n", "Fo = 7.6E-4 #Flow rate of solids in kg/m**3\n", "Tsi = 20. #Inital temperature of solids in degree C\n", "rhog = 1. #Density of gas in kg/m**3\n", "Cpg = 1 #Specific heat of gas in kJ/kg K\n", "uo = 0.3 #Superficial gas velocity in m/s\n", "Tgi = 200 #Initial temperature of gas in degee C\n", "L = 2370 #Enthalpy of liquid in kJ/kg\n", "Cpl = 4.2 #Specific heat of liquid in kJ/kg K\n", "dt = 0.1 #Diameter of reactor in m\n", "Lm = 0.1 #Length of fixed bed in m\n", "ephsilonm = 0.45 #Void fraction of fixed bed\n", "pi = 3.14\n", "Fo1 = 1 #Feed rate for commercial-scale reactor in kg/s\n", "\n", "#CALCULATION\n", "#(a)Bed temperature\n", "Teguess = 50#Guess value of Te\n", "def solver_func(Te):#Function defined for solving the system\n", " return (pi/4.)*dt**2*uo*rhog*Cpg*(Tgi-Te)-Fo*(Qfi-Qfbar)*(L+Cpl*(Te-Tsi))-Fo*Cps*(Te-Tsi)\n", "\n", "Te = fsolve(solver_func,Teguess)\n", "\n", "#(b)Drying time for a particle\n", "xguess = 2#Guess value of x, ie term tou/tbar\n", "def solver_func1(x): #Function defined for solving the system\n", " return 1-(Qfbar/Qfi)-(1-math.exp(-x))/x\n", "\n", "\n", "x = fsolve(solver_func1,xguess)\n", "W = (pi/4.)*dt**2*Lm*(1-ephsilonm)*rhos#Weight of soilds in bed\n", "tbar = W/Fo#Mean residence time of solids from Eqn.(59)\n", "tou = tbar*x#Time for complete drying of a particle\n", "\n", "#(c)Commercial-scale dryer\n", "W1 = Fo1*tbar\n", "Atguess = 5#Guess value of area\n", "def solver_func3(At): #Function defined for solving the system\n", " return At*uo*rhog*Cpg*(Tgi-Te)-Fo1*(Qfi-Qfbar)*(L+Cpl*(Te-Tsi))-Fo1*Cps*(Te-Tsi)\n", "\n", "At = fsolve(solver_func3,Atguess)\n", "dt1 = math.sqrt(4/pi*At)#Diameter of commercial-scale dryer\n", "Q1 = At*uo*rhog#Flow rate necessary for the operation\n", "\n", "#OUTPUT\n", "print 'Bed temperature:%f degree C'%(Te)\n", "print 'Time for complete drying of particle:%fs'%(tou)\n", "print 'Flow rate of gas necessary for Commercial-scale dryer:%fkg/s'%(Q1)\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Bed temperature:58.728126 degree C\n", "Time for complete drying of particle:527.431202s\n", "Flow rate of gas necessary for Commercial-scale dryer:3.098684kg/s\n" ] } ], "prompt_number": 2 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 5, Page 425\n" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "\n", "import math\n", "\n", "#Variable Declaration\n", "rhos=1600.; #Density of solid in kg/m**3\n", "Cps=1.25; #Specific heat of solids in kJ/kg K\n", "Fo=0.5; #Flow rate of solids in kg/s\n", "Tsi=20.; #Inital temperature of solids in degree C\n", "Qwi=1.; #Initial moisture fraction in water\n", "Qwf=0.2; #Final moisture fraction in water\n", "Qhi=1.1; #Initial moisture fraction in heptane\n", "Qhf=0.1; #Final moisture fraction in heptane\n", "Tgi=240.; #Initial temperature of gas in degee C\n", "Te=110.; #Bed temperature in degree C\n", "ephsilonm=0.45; #Void fraction of fixed bed\n", "ephsilonf=0.75; #Void fraction of fluidized bed\n", "uo=0.6; #Superficial gas velocity in m/s\n", "di=0.08; #Diameter of tubes in m\n", "li=0.2; #Pitch for square arrangement\n", "hw=400.; #Heat transfer coefficient in W/m**2 K\n", "Tc=238.; #Temperature at which steam condenses in degree C\n", "#Specific heats in kJ/kg K\n", "Cwl=4.18; #Water liquid\n", "Cwv=1.92; #Water vapor\n", "Chl=2.05; #Heptane liquid\n", "Chv=1.67; #Heptane vapor\n", "#Latent heat of vaporization in kJ/kg\n", "Lw=2260.; #Water\n", "Lh=326.; #Heptane\n", "#Density of vapor in kg/m**3 at operating conditions\n", "rhow=0.56; #Water\n", "rhoh=3.1; #Heptane\n", "Lf=1.5; #Length of fixed bed in m\n", "t=140.; #Half-life of heptane in s\n", "L=1.5; #Length of tubes in heat exchanger\n", "pi=3.14;\n", "\n", "#CALCULATION\n", "#(a) Dryer without Internals\n", "xw=(Qwi-Qwf)/(Qhi-Qhf); #Water-heptane weight ratio\n", "xv=((Qwi-Qwf)/18.)/((Qhi-Qhf)/100.); #Water-heptane volume ratio\n", "T=(Qwi-Qwf)/18.+(Qhi-Qhf)/100.; #Total volume\n", "rhogbar=((Qwi-Qwf)/18.)/T*rhow+((Qhi-Qhf)/100.)/T*rhoh; #Mean density of the vapor mixture\n", "Cpgbar=(((Qwi-Qwf)/18.)/T)*rhow*Cwv+(((Qhi-Qhf)/100.)/T)*rhoh*Cwv;#Mean specific heat of vapor mixture\n", "#Volumetric flow of recycle gas to the dryer in m**3/s from Eqn.(53)\n", "x=(Cpgbar*(Tgi-Te))**-1*(Fo*(Qwi-Qwf)*(Lw+Cwl*(Te-Tsi))+Fo*(Qhi-Qhf)*(Lh+Chl*(Te-Tsi))+Fo*(Cps*(Te-Tsi)));\n", "r=Fo*((Qwi-Qwf)/rhow+(Qhi-Qhf)/rhoh); #Rate of formation of vapor in bed\n", "uo1=uo*(x/(x+r)); #Superficial velocity just above the distributor\n", "At=x/uo1; #Cross-sectional area of bed\n", "dt=math.sqrt(4./pi*At); #Diameter of bed\n", "B=-math.log(Qwf/Qwi)/t; #Bed height from Eqn.(63)\n", "tbar=((Qhi/Qhf)-1)/B; #Mean residence time of solids\n", "W=Fo*tbar; #Weight of bed\n", "Lm=W/(At*(1-ephsilonm)*rhos); #Static bed height\n", "Lf=(Lm*(1-ephsilonm))/(1-ephsilonf); #Height of fluidized bed\n", "\n", "#(b) Dryer with internal heaters\n", "f=1/8.0; #Flow rate is 1/8th the flow rate of recirculation gas as in part (a)\n", "x1=f*x; #Volumetric flow of recycle gas to the dryer in m**3/s from Eqn.(53)\n", "uo2=uo*(x1/float(x1+r)); #Superficial velocity just above the distributor\n", "Abed=x1/uo2; #Cross-sectional area of bed\n", "q=(Fo*(Qwi-Qwf)*(Lw+Cwl*(Te-Tsi))+Fo*(Qhi-Qhf)*(Lh+Chl*(Te-Tsi))+Fo*(Cps*(Te-Tsi)))-Abed*uo2*Cpgbar*(Tgi-Te);#Heat to be added from energy balance of Eqn.(53)\n", "Aw=q*10**3/(hw*(Tc-Te));#Total surface area of heat exchanger tubes\n", "Lt=Aw/(pi*di); #Total length of tubes\n", "Nt=Lt/L; #Total number of tubes\n", "Atubes=Nt*(pi/4*di**2); #Total cross-sectional area of tubes\n", "Atotal=Abed+Atubes; #Total cross-sectional area of tube filled dryer\n", "d=math.sqrt(Atotal*pi/4.);#Diameter of vessel\n", "li=math.sqrt(Atotal/Nt); #Pitch for square array of tubes\n", "\n", "#OUTPUT\n", "print '\\t\\t\\tBed diameter(m)\\tRecycle vapor flow(m**3/s)'\n", "print 'Without internal heater\\t%f\\t%f'%(dt,x)\n", "print 'With heating tubes\\t%f\\t%f'%(d,x1)\n", "\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\t\t\tBed diameter(m)\tRecycle vapor flow(m**3/s)\n", "Without internal heater\t3.630144\t5.331235\n", "With heating tubes\t1.503916\t0.666404\n" ] } ], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }