summaryrefslogtreecommitdiff
path: root/Fluidization_Engineering_by_K_Daizo_And_O_Levenspiel/ch16.ipynb
diff options
context:
space:
mode:
Diffstat (limited to 'Fluidization_Engineering_by_K_Daizo_And_O_Levenspiel/ch16.ipynb')
-rwxr-xr-xFluidization_Engineering_by_K_Daizo_And_O_Levenspiel/ch16.ipynb428
1 files changed, 428 insertions, 0 deletions
diff --git a/Fluidization_Engineering_by_K_Daizo_And_O_Levenspiel/ch16.ipynb b/Fluidization_Engineering_by_K_Daizo_And_O_Levenspiel/ch16.ipynb
new file mode 100755
index 00000000..e835e890
--- /dev/null
+++ b/Fluidization_Engineering_by_K_Daizo_And_O_Levenspiel/ch16.ipynb
@@ -0,0 +1,428 @@
+{
+ "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": {}
+ }
+ ]
+} \ No newline at end of file