{ "metadata": { "name": "" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Chapter 4:Equipment for Gas-Liquid Mass-Transfer Operations" ] }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Example 4.2,Page number:227" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#Variable declaration\n", "u = 3*10**-6 \t\t\t\t# [Kinematic viscosity, square m/s]\n", "v = 0.01 \t\t\t\t# [Superficial liquid velocity, m/s]\n", "g = 9.8 \t\t\t\t# [square m/s]\n", "\n", "\t# From table 4.1\n", "\t# For metal pall rings\n", "a_pr = 112.6 \t\t\t\t# [ square m/cubic m]\n", "e_pr = 0.951 \n", "Ch_pr = 0.784 \n", "\t# For Hiflow rings\n", "a_hr = 92.3 \t\t\t\t# [square m/cubic m]\n", "e_hr = 0.977 \n", "Ch_hr = 0.876 \n", "\n", "#Calculations\n", "\n", "\t# Renoylds and Froude's number for metal pall rings\n", "Rel_pr = v/(u*a_pr) \n", "Frl_pr = v**2*a_pr/g \n", "\t# From equation 4.5 since Rel is greater than 5, for pall rings\n", "\t# ah/a = x_pr\n", "x_pr = 0.85*Ch_pr*Rel_pr**0.25*Frl_pr**0.1 \n", "\t# From equation 4.3\n", "hl_pr = (12*Frl_pr/Rel_pr)**(1.0/3.0)*(x_pr)**(2.0/3.0) \n", "\n", "\n", "\t# Renoylds and Froude's number for Hiflow rings\n", "Rel_hr = v/(u*a_hr) \n", "Frl_hr = v**2*a_hr/g \n", "\t# From equation 4.5 since Rel is greater than 5, for pall rings\n", "\t# ah/a = x_pr\n", "x_hr = 0.85*Ch_hr*Rel_hr**0.25*Frl_hr**0.1 \n", "\t# From equation 4.3\n", "hl_hr = (12*Frl_hr/Rel_hr)**(1.0/3.0)*(x_hr)**(2.0/3.0) \n", "\n", "#Result\n", "\n", "print\"The specific liquid holdup for Metal pall ring and Hiflow ring are\",round(hl_pr,3),\"cubic m holdup/cubic m packed bed and\",round(hl_hr,3),\"cubic m holdup/cubic m packed bed respectively\"\n", " " ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The specific liquid holdup for Metal pall ring and Hiflow ring are 0.066 cubic m holdup/cubic m packed bed and 0.064 cubic m holdup/cubic m packed bed respectively\n" ] } ], "prompt_number": 1 }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Example 4.3,Page number:233" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#Variable declaration\n", "\t# a-ammonia b-air c-water\n", "P = 101.3 \t\t\t\t\t# [kPa]\n", "T = 293 \t\t\t\t\t# [K]\n", "R = 8.314 \n", "Vb = 20 \t\t\t\t\t# [kmole/h]\n", "xab = 0.05 \n", "Vc = 1500 \t\t\t\t\t# [kg/h]\n", "d = 0.9 \t\t\t\t\t# [ammonia absorbed]\n", "Ma = 17 \t\t\t\t\t# [gram/mole]\n", "Mb = 29 \t\t\t\t\t# [gram/mole]\n", "Mc = 18 \t\t\t\t\t# [gram/mole]\n", "g = 9.8 \t\t\t\t\t# [square m/s]\n", "\n", "\n", "#Calculation\n", "\n", "import math\n", "\t# For Inlet gas\n", "Mg = (1-xab)*Mb+xab*Ma \t\t\t# [gram/mole]\n", "V = Vb*Mg/3600 \t\t\t\t# [kg/h]\n", "rowg = P*Mg/(R*T) \t\t\t\t# [kg/cubic m]\n", "Qg = V/rowg \t\t\t\t\t# [cubic m/s]\n", "\n", "\t# For exiting liquid\n", "b = Vb*xab*Ma*d \t\t\t\t# [ammonia absorbed in kg/h]\n", "L = (Vc+b)/3600 \t\t\t\t# [kg/s]\n", "rowl = 1000 \t\t\t\t\t# [kg/cubic m]\n", "\n", "X = (L/V)*(math.sqrt(rowg/rowl)) \n", "\t# From equation 4.8\n", "Yflood = math.exp(-(3.5021+1.028*math.log(X)+0.11093*(math.log(X))**2)) \n", "\n", "\t\n", "\t#Illustration 4.3(a)\n", "\t# Solution(a)\n", "\t# For 25-mm ceramic Raschig rings\n", "Fp = 179 \t\t\t\t\t# [square ft/cubic ft]\n", "ul = 0.001 \t\t\t\t\t# [Pa.s]\n", "\t# From equation 4.6\n", "Csflood = math.sqrt(Yflood/(ul**0.1*Fp)) \t# [m/s]\n", "\t# From equation 4.7\n", "vgf = Csflood/(math.sqrt(rowg/(rowl-rowg))) \t# [m/s]\n", "\t# From equation 4.9\n", "deltaPf = 93.9*(Fp)**0.7 \t\t\t# [Pa/m of packing]\n", "\n", "\t# For operation at 70% of the flooding velocity\n", "f = 0.7 \n", "\t# From equation 4.10\n", "vg = f*vgf \t\t\t\t\t# [m/s]\n", "D = math.sqrt(4*Qg/(vg*math.pi)) \n", "\t\n", "\t# From Table 4.1, for 25 mm ceramic Raschig rings\n", "a_c = 190 \t\t\t\t\t# [square m/cubic m]\n", "Ch_c = 0.577 \n", "e_c = 0.68 \n", "Cp_c = 1.329 \n", "\n", "\t# From equation 4.13\n", "dp = 6*(1-e_c)/a_c \t\t\t\t # [m]\n", "\t# From equation 4.12\n", "Kw = 1/(1+(2*dp/(3*D*(1-e_c)))) \n", "\n", "\t# The viscosity of the gas phase is basically that of air at 293 K and 1 atm\n", "ug = 1.84*10**-5 \t\t\t\t# [kg/m.s]\n", "\t# From equation 4.15\n", "Reg = vg*rowg*dp*Kw/(ug*(1-e_c)) \n", "\t# From equation 4.14\n", "sia_o = Cp_c*((64/Reg)+(1.8/(Reg**0.08))) \n", "\n", "\t# From equation 4.11\n", "\t# deltaP_o/z = T\n", "T = sia_o*a_c*rowg*vg**2/(2*Kw*e_c**3) \t# [Pa/m]\n", "\n", "\t# Now\n", "Gx = L/((math.pi*D**2.0)/4) \t\t\t# [kg/square m.s]\n", "Rel = Gx/(a_c*ul) \n", "Frl = Gx**2*a_c/(rowl**2*g) \n", "\n", "\t# From equation 4.5\n", "\t# ah/a = x_pr\n", "x = 0.85*Ch_c*Rel**0.25*Frl**0.1 \n", "\t# From equation 4.3\n", "hl = (12*Frl/Rel)**(1.0/3.0)*(x)**(2.0/3.0) \n", "\n", "\t# From equation 4.16\n", "\t# daltaP/deltaP_o = Y\n", "Y = (e_c/(e_c-hl))**1.5*math.exp(Rel/200) \n", "\t# Therefore \n", "\t# deltaP/z = H\n", "H = Y*T \t\t\t\t\t# [Pa/m]\n", "\n", "#Result\n", "\n", "\n", "print\"The superficial velocity is\",round(vgf,3),\" m/s\\n\" \n", "print\"The pressure drop at flooding is\",round(deltaPf),\"Pa/m\\n\" \n", "print\"The superficial velocity at 70 percent of flooding is\",round(vg,4),\"m/s\\n\" \n", "print\"The column inside diameter at 70 percent of flooding is\" ,round(D,3),\" m\\n\" \n", "print\"The pressure drop for operation at 70 percent of flooding is\",round(H),\"Pa/m\\n\\n\" \n", "\n", "\n", "#Illustration 4.3(b) \n", "# Solution (b)\n", "# Similarly for 25 mm metal Hiflow rings above quantities are determined\n", "\n", "#Calcualtion\n", "\n", "Fp1 = 42 \t\t\t\t\t\t# [square ft/cubic ft]\n", "Csflood1 = math.sqrt(Yflood/(ul**0.1*Fp1)) \t\t# [m/s]\n", "vgf1 = Csflood1/(math.sqrt(rowg/(rowl-rowg))) \t\t# [m/s]\n", "\t# From equation 4.9\n", "deltaPf1 = 93.9*(Fp1)**0.7 \t\t\t\t# [Pa/m of packing]\n", "\n", "\t# For operation at 70% of the flooding velocity\n", "f = 0.7 \n", "\t# From equation 4.10\n", "vg1 = f*vgf1 \t\t\t\t\t\t# [m/s]\n", "D1 = math.sqrt(4*Qg/(vg1*math.pi)) \n", "\n", "\t# For Hiflow rings\n", "a_h = 202.9 \t\t\t\t\t\t# [square m/cubic m]\n", "e_h = 0.961 \n", "Ch_h = 0.799 \n", "Cp_h = 0.689 \n", "\n", "\t# From equation 4.13\n", "dp1 = 6*(1-e_h)/a_h \t\t\t\t\t# [m]\n", "\t# From equation 4.12\n", "Kw1 = 1/(1+(2*dp1/(3*D1*(1-e_h)))) \n", "\n", "\t# The viscosity of the gas phase is basically that of air at 293 K and 1 atm\n", "ug = 1.84*10**-5 \t\t\t\t\t# [kg/m.s]\n", "\t# From equation 4.15\n", "Reg1 = vg1*rowg*dp1*Kw1/(ug*(1-e_h)) \n", "\t# From equation 4.14\n", "sia_o1 = Cp_h*((64/Reg1)+(1.8/(Reg1**0.08))) \n", "\n", "\t# From equation 4.11\n", "\t# deltaP_o/z = T\n", "T1 = sia_o1*a_h*rowg*vg1**2/(2*Kw1*e_h**3) \t\t# [Pa/m]\n", "\n", "\t# Now\n", "Gx1 = L/(math.pi*D1**2/4) \t\t\t\t# [kg/square m.s]\n", "Rel1 = Gx1/(a_h*ul) \n", "Frl1 = Gx1**2*a_h/(rowl**2*g) \n", "\n", "\t# From equation 4.5\n", "\t# ah/a = x_pr\n", "x1 = 0.85*Ch_h*Rel1**0.25*Frl1**0.1 \n", "\t# From equation 4.3\n", "hl1 = (12*Frl1/Rel1)**(1.0/3.0)*(x1)**(2.0/3.0) \n", "\n", "\t# From equation 4.16\n", "\t# daltaP/deltaP_o = Y\n", "Y1 = (e_h/(e_h-hl1))**1.5*math.exp(Rel1/200) \n", "\t# Therefore \n", "\t# deltaP/z = H\t\n", "H1 = Y1*T1 # [Pa/m]\n", "\n", "\n", "#Result\n", "\n", "print\"The superficial velocity is\",round(vgf1,3),\"m/s\\n\"\n", "print\"The pressure drop at flooding is\",round(deltaPf1),\" Pa/m\\n\" \n", "print\"The superficial velocity at 70 percent of flooding is\",round(vg1,2),\"m/s\"\n", "print\"The column inside diameter at 70 percent of flooding is\",round(D1,3),\" m\\n\" \n", "print\"The pressure drop for operation at 70 percent of flooding is\",round(H1),\"Pa/m\\n\\n\" " ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The superficial velocity is 1.326 m/s\n", "\n", "The pressure drop at flooding is 3545.0 Pa/m\n", "\n", "The superficial velocity at 70 percent of flooding is 0.9283 m/s\n", "\n", "The column inside diameter at 70 percent of flooding is 0.428 m\n", "\n", "The pressure drop for operation at 70 percent of flooding is 505.0 Pa/m\n", "\n", "\n", "The superficial velocity is 2.738 m/s\n", "\n", "The pressure drop at flooding is 1285.0 Pa/m\n", "\n", "The superficial velocity at 70 percent of flooding is 1.92 m/s\n", "The column inside diameter at 70 percent of flooding is 0.298 m\n", "\n", "The pressure drop for operation at 70 percent of flooding is 443.0 Pa/m\n", "\n", "\n" ] } ], "prompt_number": 2 }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Example 4.4,Page number:237" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#Variable declaration\n", "\t# a-ethanol b- gas(CO2 rich vapor) c-liquid water\n", "P = 110 \t\t\t\t\t\t# [kPa]\n", "T = 303 \t \t\t\t\t\t# [K]\n", "R = 8.314 \n", "Vb = 180 \t\t\t\t\t\t# [kmole/h]\n", "xab = 0.02 \t\t\t\t\t\t# [molar composition of ethanol in gas]\n", "Vc = 151.5 \t\t\t\t\t\t# [kmole/h]\n", "d = 0.97 \t\t\t\t\t\t# [ethanol absorbed]\n", "Ma = 46 \t\t\t\t\t\t# [gram/mole]\n", "Mb = 44 \t\t\t\t\t\t# [gram/mole]\n", "Mc = 18 \t\t\t\t\t\t# [gram/mole]\n", "g = 9.8 \t\t\t\t\t\t# [square m/s]\n", "\n", "\n", "#Calculation\n", "\n", "import math\n", "\t# For Inlet gas\n", "Mg = (1-xab)*Mb+xab*Ma \t\t\t\t# [gram/mole]\n", "V = Vb*Mg/3600 \t\t\t\t\t# [kg/h]\n", "rowg = P*Mg/(R*T) \t\t\t\t\t# [kg/cubic m]\n", "Qg = V/rowg \t\t\t\t\t\t# [cubic m/s]\n", "\n", "\t# For exiting liquid\n", "b = Vb*xab*Ma*d \t\t\t\t\t# [ethanol absorbed in kg/h]\n", "L = (Vc*Mc+b)/3600 \t\t\t\t\t# [kg/s]\n", "rowl = 986 \t\t\t\t\t\t# [kg/cubic m]\n", "\n", "X = (L/V)*(math.sqrt(rowg/rowl)) \n", "\t# From equation 4.8\n", "Yflood = math.exp(-(3.5021+1.028*math.log(X)+0.11093*(math.log(X))**2)) \n", "\t#Illustration 4.4(a) \n", "\t# Solution(a)\n", "\n", "\t# For 50 mm metal Hiflow rings\n", "Fp = 16 \t\t\t\t\t\t# [square ft/cubic ft]\n", "ul = 6.31*10**-4 \t\t\t\t\t# [Pa.s]\n", "\t# From equation 4.6\n", "Csflood = math.sqrt(Yflood/(ul**0.1*Fp)) \t\t# [m/s]\n", "\t# From equation 4.7\n", "vgf = Csflood/(math.sqrt(rowg/(rowl-rowg))) \t\t# [m/s]\n", "\t# From equation 4.9\t\n", "deltaPf = 93.9*(Fp)**0.7 \t\t\t\t# [Pa/m of packing]\n", "\n", "\t# For operation at 70% of the flooding velocity\n", "f = 0.7 \n", "\t# From equation 4.10\n", "vg = f*vgf \t\t\t\t\t\t# [m/s]\n", "D = math.sqrt(4*Qg/(vg*math.pi)) \n", "\n", "\t# From Table 4.1, for 50 mm metal Hiflow rings\n", "a = 92.3 \t\t\t\t\t\t # [square m/cubic m]\n", "Ch = 0.876 \n", "e = 0.977 \n", "Cp = 0.421 \n", "\n", "\t# From equation 4.13\n", "dp = 6*(1-e)/a \t\t\t\t\t# [m]\n", "\n", "\t# From equation 4.12\n", "Kw = 1/(1+(2*dp/(3*D*(1-e)))) \n", "\n", "\t# The viscosity of the gas phase is basically that of air at 303 K and 110 kPa\n", "ug = 1.45*10**-5 \t\t\t\t\t# [kg/m.s]\n", "\t# From equation 4.15\n", "Reg = vg*rowg*dp*Kw/(ug*(1-e)) \n", "\t# From equation 4.14\n", "sia_o = Cp*((64/Reg)+(1.8/(Reg**0.08))) \n", "\n", "\t# From equation 4.11\n", "\t# deltaP_o/z = I\n", "I = sia_o*a*rowg*vg**2/(2*Kw*e**3) \t\t\t# [Pa/m]\n", "\n", "\t# Now\n", "Gx = L/(math.pi*D**2.0/4.0) \t\t\t\t# [kg/square m.s]\n", "Rel = Gx/(a*ul) \n", "Frl = Gx**2*a/(rowl**2*g) \n", "\n", "\t# From equation 4.5\n", "\t# ah/a = x\n", "x = 0.85*Ch*Rel**0.25*Frl**0.1 \n", "\t# From equation 4.3\n", "hl = (12*Frl/Rel)**(1.0/3.0)*(x)**(2.0/3.0) \n", "\n", "\t# From equation 4.16\n", "\t# daltaP/deltaP_o = Y\n", "Y = (e/(e-hl))**1.5*math.exp(Rel/200) \n", "\t# Therefore \n", "\t# deltaP/z = H\n", "H = Y*I \t\t\t\t\t\t# [Pa/m]\n", "\n", "\n", "#Result\n", "print\"PArt-a\\n\"\n", "\n", "print\"Since the pressure drop is too high, we must increase the tower diameter to reduce the pressure drop\"\n", "\t# The resulting pressure drop is too high therefore, we must increase the tower diameter \tto reduce the pressure drop. Appendix D presents a Mathcad computer \n", "\t# program designed to iterate automatically until the pressure drop criterion is \t\t\tsatisfied.\n", "\t# From the Mathcad program we get\n", "D1 = 0.738 \t\t\t\t\t\t# [m]\n", "\n", "print\"The tower diameter for pressure drop of 300 Pa/m of packed height is\",D1,\"m\"\n", "\n", "\t#Illustration 4.4(b) \n", "\t# Solution(b)\n", "\n", "print\"\\nPart-(b)\\n\"\n", "\t# For the tower diameter of D = 0.738 m, the following intermediate results were obtained \tfrom the computer program in Appendix D:\n", "vg1 = 2.68 \t\t\t\t\t\t# [m/s]\n", "vl1 = 0.00193 \t\t\t\t\t\t# [m/s]\n", "hl1 = 0.017 \n", "ah1 = 58.8 \t\t\t\t\t\t# [square m/cubic m]\n", "Reg1 = 21890 \n", "Rel1 = 32.6 \n", "Kw1 = 1/(1+(2*dp/(3*D1*(1-e)))) \n", "\n", "#Calculation\n", "\n", "f1 = vg1/vgf \n", "print\"The fractional approach to flooding conditions is \",round(f1,2)\n", "\n", "\t#Illustration 4.4(c) \n", "\t# Solution(c)\n", "\t# For ethanol\n", "\n", "print \"\\nPart-(c)\\n\"\n", "Vc_a = 167.1 \t\t\t\t\t\t# [cubic cm/mole]\n", "sigma_a = 4.53*10**-10 \t\t\t\t# [m]\n", "\t# E/k = M\n", "M_a = 362.6 \t\t\t\t\t\t# [K]\n", "\n", "\t# For carbon dioxide\n", "sigma_b = 3.94*10**-10 \t\t\t\t# [m]\n", "M_b = 195.2 \t\t\t\t\t\t# [K]\n", "\n", "\t# From equation 1.48\n", "Vb_a = 0.285*Vc_a**1.048 \t\t\t\t# [cubic cm/mole]\n", "\n", "e1 = (9.58/(Vb_a)-1.12) \n", "\t# From equation 1.53\n", "Dl = 1.25*10**-8*((Vb_a)**-0.19 - 0.292)*T**1.52*(ul*10**3)**e1 \t # [square cm/s]\n", "\n", "\t# From equation 1.49\n", "Dg = 0.085 \t\t\t\t\t\t# [square cm/s] \n", "\n", "\t# From Table 4.2, for 50 mm metal Hiflow rings\n", "Cl = 1.168\n", "Cv = 0.408 \n", "\t# From equation 4.17\n", "kl = 0.757*Cl*math.sqrt(Dl*a*vl1*10**-4/(e*hl1)) \t# [m/s]\n", "mtcl = kl*ah1 \t\t\t\t\t\t# [s**-1]\n", "\n", "Sc = ug/(rowg*Dg*10**-4) \n", "\t# From equation 4.18\n", "ky = 0.1304*Cv*(Dg*10**-4*P*1000/(R*T))*(Reg1/Kw1)**(3.0/4.0)*Sc**(2.0/3.0)*(a/(math.sqrt(e*(e-hl1)))) \t\t\t\t\t\t\t # [mole/square m.s]\n", "mtcg = ky*ah1*10**-3 \t\t\t\t\t # [kmole/cubic m.s]\n", "\n", "#Result\n", "\n", "print\"The gas and liquid volumetric mass transfer coefficients are\",round(mtcg,3),\"kmole/cubic m.s and\",round(mtcl,4),\"s**-1 respectively\"\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "PArt-a\n", "\n", "Since the pressure drop is too high, we must increase the tower diameter to reduce the pressure drop\n", "The tower diameter for pressure drop of 300 Pa/m of packed height is 0.738 m\n", "\n", "Part-(b)\n", "\n", "The fractional approach to flooding conditions is 0.58\n", "\n", "Part-(c)\n", "\n", "The gas and liquid volumetric mass transfer coefficients are 0.192 kmole/cubic m.s and 0.0074 s**-1 respectively\n" ] } ], "prompt_number": 3 }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Example 4.5,Page number:245" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#Variable declaration\n", "\t# a-chloroform b-water c-air\n", "T = 298 \t\t\t\t\t\t# [K]\n", "Dv = 1 \t\t\t\t\t\t# [vessel diameter, m]\n", "Vb = 10 \t\t\t\t\t\t# [kg/s]\n", "ca = 240*10**-6 \t\t\t\t\t# [gram/l]\n", "xr = 0.9 \t\t\t\t\t\t# [chloroform which is to be removed]\n", "m = 220 \n", "Ds = 0.5 \t\t\t\t\t\t# [diameter of sparger, m]\n", "no = 90 \t\t\t\t\t\t# [number of orifices]\n", "Do = 3*10**-3 \t\t\t\t\t\t# [diameter of orifice, m]\n", "nm = 0.6 \t\t\t\t\t\t# [mechanical efficiency]\n", "rowb = 1000 \t\t\t\t\t\t# [kg/cubic m]\n", "R = 8.314 \n", "Mc = 29 \t\t\t\t\t\t# [gram/mole]\n", "Mb = 18 \t\t\t\t\t\t# [gram/mole]\n", "g = 9.8 \t \t\t\t\t\t# [square m/s]\n", "\n", "#Calculation\n", "\n", "import math\n", "from scipy.optimize import fsolve\n", "Vair = 0.1 \t\t\t\t\t\t# [kg/s as calculated in chapter 3]\n", "mg = Vair/no \t\t\t\t\t\t# [mass flow rate through each orifice, \t\t\t\t\t\t\tkg/s]\n", "ug = 1.8*10**-5 \t\t\t\t\t# [kg/m.s]\n", "Reo = 25940 \t\t\t\t\t\t# [Renoylds number]\n", "\t# From equ. 4.20\n", "dp = 0.0071*Reo**-0.05 \t\t\t\t# [m]\n", "\n", "\t# Since the water column height is not known, therefore an iterative procedure must be \t\timplemented.\n", "\t# Assuming column height, Z = 0.5 m\n", "Z = 0.5 \t\t\t\t\t\t# [m]\n", "\t# For Z = 0.5 m\n", "rowl = 1000 \t\t\t\t\t\t# [kg/cubic m]\n", "Ps = 101.3 \t\t\t\t\t\t# [kPa]\n", "Po = Ps+(1000*9.8*0.5/1000) \t\t\t\t# [kPa]\n", "Pavg = (Po+Ps)/2 \t\t\t\t\t# [kPa]\n", "rowg = Pavg*Mc/(R*T) \t\t\t\t\t# [kg/cubic m]\n", "\n", "area = math.pi*Dv**2.0/4.0 \t\t\t\t# [square m]\n", "vg = Vair/(rowg*area) \t\t\t\t\t# [m/s]\n", "\t# In this case rowl = rowg and sigma = sigmaAW\n", "\t# From equation 4.22\n", "\t# Vg = vg\n", "\t# vg/vs = 0.182\n", "vs = vg/0.182 \t\t\t\t\t\t# [m/s]\n", "vl = -Vb/(rowl*area) \t\t\t\t\t# [negative because water flows downward, \t\t\t\t\t\t\tm/s]\n", "\t# From equ 4.21\n", "\n", "def f12(phig):\n", " return(vs - (vg/phig)-(-vl/(1-phig))) \n", "phig = fsolve(f12,0.1) \n", "\t# Now in this case\n", "S = vl/(1-phig) \n", "\t# Value of 'S' comes out to be less than 0.15 m/s\n", "\t# Therefore \n", "dp = (dp**3*Po/Pavg)**(1.0/3.0) \t\t\t# [m]\n", "\t# From equ 4.23\n", "a = 6*phig/dp \t\t\t\t\t\t# [m**-1]\n", "\t# Now we calculate diffusivity of chloroform\n", "Vba = 88.6 \t\t\t\t\t\t# [cubic cm/mole]\n", "u = 0.9*10**-3 \t\t\t\t\t# [Pa-s]\n", "e = (9.58/(Vba)-1.12) \n", "\t# From equation 1.53\n", "Dl = 1.25*10**-8*((Vba)**-0.19 - 0.292)*T**1.52*(u*10**3)**e \t# [square cm/s]\n", "\n", "\t# And Schmidt number is \n", "Scl = 833 \t\t\t\t\t\t# [Schmidt Number]\n", "\n", "\t# Now we calculate dp*g**(1/3)/Dl**(2/3) = J\n", "J = dp*g**(1.0/3.0)/(Dl*10**-4)**(2.0/3.0)\n", "Reg = dp*vs*rowl/u \t\t\t\t\t# [Gas bubble Renoylds number]\n", "\t# From equ 4.25\n", "Shl = 2 + 0.0187*Reg**0.779*Scl**0.546*J**0.116 \n", "\n", "\t# For dilute solution xbm = 1 or c = 55.5 kmole/cubic m\n", "\t# Then for Nb = 0\n", "c = 55.5 \t\t\t\t\t\t# [kmole/cubic m]\n", "kx = Shl*c*Dl*10**-4/dp \t\t\t\t# [kmole/square m.s]\n", "mtc = kx*a \t\t\t\t\t\t# [kmole/cubic m.s]\n", "\n", "L = Vb/Mb \t\t\t\t\t\t# [kmole/s]\n", "Gmx = L/area \t\t\t\t\t\t# [kmole/square m.s]\n", "V = Vair/Mc \t\t\t\t\t\t# [kmole/s]\n", "A = L/(m*V) \t\t\t\t\t\t# [absorption factor]\n", "\n", "\t# From equ 4.28\n", " \t# For, xin/xout = x = 10\n", "x = 10 \n", "Z = (Gmx/(kx*a*(1-A)))*math.log(x*(1-A)+A) \n", "\n", "\t# With this new estimated Z ,we again calculate average pressure in the # column of \twater\n", "Po1 = 110.1 \t\t\t\t\t\t# [kPa]\n", "Pavg1 = 105.7 \t\t\t\t\t\t# [kPa]\n", "rowg1 = Pavg1*Mc/(R*T) \n", "\t# Now value of rowg1 obtained is very close to value used in the first # iteration. \tTherefore on three iteractions we achieve a value of 'Z'\n", "Z1 = 0.904 \t\t\t\t\t\t# [m]\n", "\n", "rowgo = Po1*Mc/(R*T) \t\t\t\t\t# [kg/cubic m]\n", "vo1 = 4*mg/(math.pi*Do**2*rowgo) \t\t\t# [m/s]\n", "\t# Therefore, vo1**2/(2*gc) = F\n", "gc = 1 \n", "F = vo1**2/(2*gc) \t\t\t\t\t# [J/kg]\n", "\t# And R*T*math.log(Po/Ps)/Mc = G\n", "G = R*T*1000*math.log(Po1/Ps)/Mc \t\t\t# [J/kg]\n", "Zs = 0\n", "\t# And (Z1-Zs)*g/gc = H\n", "H = (Z1-Zs)*g/gc \t\t\t\t\t# [J/kg]\n", "\t# From equ 4.27\n", "W = F+G+H \t\t\t\t\t\t# [J/kg]\n", "\t# Now the air compressor power is\n", "W1 = W*Vair*10**-3/nm \t\t\t\t\t# [kW]\n", "\n", "#Result\n", "\n", "print\"The depth of the water column required to achieve the specified 90percent removal efficiency is \",Z1,\"m\"\n", "\n", "print\"The power required to operate the air compressor is\",round(W1,2),\"kW\"" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The depth of the water column required to achieve the specified 90percent removal efficiency is 0.904 m\n", "The power required to operate the air compressor is 2.43 kW\n" ] } ], "prompt_number": 4 }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Example 4.6,Page number:255" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#Variable declaration\n", "Ff = 0.9 \t\t\t\t\t# [foaming factor]\n", "sigma = 70 \t\t\t\t\t# [liquid surface tension, dyn/cm]\n", "Do = 5 \t\t\t\t\t# [mm]\n", "\t#From Example 4.4\n", "\t# X = 0.016 \n", "p = 15 \t\t\t\t\t\t# [pitch, mm]\n", "\t# From equ 4.35\n", "\t# Ah/Aa\t = A\n", "A = 0.907*(Do/p)**2 \t\t\t\t# [ratio of vapor hole area to tray active area]\n", "\n", "#Calculations\n", "\n", "import math\n", "from scipy.optimize import fsolve\n", "\t# Assume \n", "t = 0.5 \t\t\t\t\t # [m]\n", "\t# From equ 4.32\n", "alpha = 0.0744*t+0.01173 \n", "beeta = 0.0304*t+0.015 \n", "\n", "\t# Since X<0.1, therefore\n", "X = 0.1 \n", "\t# From equ 4.31\n", "Cf = alpha*math.log10(1.0/X) + beeta \n", "\t# Since Ah/Aa > 0.1, therefore\n", "Fha = 1 \n", "Fst = (sigma/20)**0.2 \t\t\t\t# [surface tension factor]\n", "\t# From equ 4.30\n", "C = Fst*Ff*Fha*Cf \n", "\n", "\t# From Example 4.4\n", "rowg = 1.923 \t\t\t\t\t# [kg/cubic m]\n", "rowl = 986 \t\t\t\t\t# [kg/cubic m]\n", "Qg = 1.145 \t\t\t\t\t# [cubic m/s]\n", "\t# From equation 4.29\n", "vgf = C*(math.sqrt((rowl-rowg)/rowg)) \t\t# [m/s]\n", "vgf=2.07 #approximated for precise answer\n", "\t# Since X<0.1\n", "\t# Equ 4.34 recommends Ad/At = B = 0.1\n", "B = 0.1 \n", "\t# For an 80% approach to flooding, equation 4.33 yields\n", "f = 0.8 \n", "D =math.sqrt((4*Qg)/(f*vgf*math.pi*(1-B))) \t# [m]\n", "\t# At this point, the assumed value of tray spacing ( t = 0.5 m) must be # checked \tagainst the recommended values of Table 4.3. Since the calculated\n", "\t# value of D < 1.0 m, t = 0.5 m is the recommended tray spacing, and no\n", "\t# further iteration is needed.\n", "\n", "def f14(Q):\n", " return(B-((Q-math.sin(Q))/(2*math.pi)))\n", "Q = fsolve(f14,1.5) \n", "Lw = D*math.sin(Q/2) \t\t\t\t# [m]\n", "rw = D/2*math.cos(Q/2) \t\t\t# [m]\n", "\n", "At = math.pi/4*D**2 \t\t\t\t# [total cross sectional area, square m]\n", "Ad = B*At \t\t\t\t\t# [Downcomer area, square m]\n", "Aa = At-2*Ad \t\t\t\t\t# [ Active area over the tray, square m]\n", "Ah = 0.101*Aa \t\t\t\t\t# [Total hole area, square m]\n", "\n", "#Result\n", "\n", "print\"Summarizing, the details of the sieve-tray design are as follows\"\n", "\n", "print\"Diameter =\",round(D,3),\"m\\n Tray spacing =\",t,\" m\\n Total cross-sectional area=\",round(At,3),\"square m\\n Downcomer area =\",round(Ad,3),\" square m\\n Active area over the tray = \",round(Aa,3),\" square m\\n Weir length =\",round(Lw,3),\" m\\n Distance from tray center to weir = \",round(rw,2),\" m\\n Total hole area =\",round(Ah,3),\" square m\\n Hole arrangement: 5 mm diameter on an equilateral-triangular pitch 15 mm between hole centers, punched in stainless steel sheet metal 2 mm thick\"" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Summarizing, the details of the sieve-tray design are as follows\n", "Diameter = 0.989 m\n", " Tray spacing = 0.5 m\n", " Total cross-sectional area= 0.768 square m\n", " Downcomer area = 0.077 square m\n", " Active area over the tray = 0.615 square m\n", " Weir length = 0.719 m\n", " Distance from tray center to weir = 0.34 m\n", " Total hole area = 0.062 square m\n", " Hole arrangement: 5 mm diameter on an equilateral-triangular pitch 15 mm between hole centers, punched in stainless steel sheet metal 2 mm thick\n" ] } ], "prompt_number": 5 }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Example 4.7,Page number:257" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#Variable declaration\n", "Do = 5 \t\t\t\t\t\t# [mm] \n", "g = 9.8 \t\t\t\t\t\t# [square m/s]\n", "hw = 50 \t\t\t\t\t\t# [mm]\n", "\t# From example 4.4\n", "Qg = 1.145 \t\t\t\t\t\t# [cubic m/s]\n", "\t# From example 4.6\n", "Ah = 0.062 \t\t\t\t\t\t # [square m]\n", "\t# Do/l = t = 5/2 = 2.5\n", "t = 2.5 \n", "\t# Ah/Aa = A = 0.101\n", "A = 0.101 \n", "rowg = 1.923 \t\t\t\t\t\t# [kg/cubic m]\n", "rowl = 986 \t\t\t\t\t\t# [kg/cubic m]\n", "roww = 995 \t\t\t\t\t\t# [kg/cubic m] \n", "\n", "#Calculation\n", "\n", "import math\n", "vo = Qg/Ah \t\t\t\t\t\t# [m/s]\n", "\t# From equation 4.39\n", "Co = 0.85032 - 0.04231*t + 0.0017954*t**2 \t \t# [for t>=1]\n", "\t# From equation 4.38\n", "hd = 0.0051*(vo/Co)**2*rowg*(roww/rowl)*(1-A**2) \t# [cm]\n", "\n", "\t# From example 4.6 \n", "Aa = 0.615 \t\t\t\t\t\t# [square m]\n", "va = Qg/Aa \t\t\t\t\t\t# [m/s]\n", "\n", "\t# From equation 4.41\n", "Ks = va*math.sqrt(rowg/(rowl-rowg)) \t\t\t# [m/s] \n", "phie = 0.274 \n", "\n", "\t# From equation 4.4\n", "ql = 0.000815 \t\t\t\t\t\t# [cubic m/s]\n", "\n", "\t# From example 4.6\n", "Lw = 0.719 \t\t\t\t\t\t# [m]\n", "Cl = 50.12 + 43.89*math.exp(-1.378*hw) \n", "sigma = 0.07 \t\t\t\t\t\t# [N/m]\n", "\t# From eqution 4.40\n", "hl = phie*(hw*10**(-1)+Cl*(ql/(Lw*phie))**(2.0/3.0)) \n", "\n", "\t# From equation 4.42\n", "ho = 6*sigma/(g*rowl*Do*10**-3)*10**2 \t\t\t# [cm] \t\n", "\t# From equation 4.37\n", "ht = hd+hl+ho \t\t\t\t\t\t# [cm of clear liquid/tray]\n", "deltaPg = ht*g*rowl*10**-2 \t\t\t\t# [Pa/tray]\n", "\n", "#Result\n", "print\"The tray gas-pressure drop for the ethanol is \",round(deltaPg),\"Pa/tray\" " ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The tray gas-pressure drop for the ethanol is 811.0 Pa/tray\n" ] } ], "prompt_number": 6 }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Example 4.8,Page number:259" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#Variable declaration\n", "Do = 5*10**-3 \t\t\t\t\t\t# [m]\n", "rowg = 1.923 \t\t\t\t\t\t# [kg/cubic m]\n", "rowl = 986.0 \t\t\t\t\t\t# [kg/cubic m]\n", "g = 9.8 \t\t\t\t\t\t# [square m/s]\n", "hl = 0.0173 \t\t\t\t\t\t# [m]\n", "vo = 18.48 \t\t\t\t\t\t# [m/s]\n", "phie = 0.274 \n", "Ks = 0.082 \t\t\t\t\t\t# [m]\n", "A = 0.101 \t\t\t\t\t\t# [Ah/Aa]\n", "t = 0.5 \t\t\t\t\t\t# [m]\n", "\n", "#Calculation\n", "\n", "import math\n", "Fr = math.sqrt(rowg*vo**2/(rowl*g*hl)) \t\t# [Froude number]\n", "if Fr>0.5:\n", " print\"Weeping is not significant\" \n", "else:\n", " print\"Significant weeping occurs\" \n", " \n", "\t# From above weeping is not a problem under this circumstances\n", "\t# From equation 4.47\n", "k = 0.5*(1-math.tanh(1.3*math.log(hl/Do)-0.15)) \n", "\n", "\t# From equation 4.46\n", "h2q = (hl/phie) + 7.79*(1+6.9*(Do/hl)**1.85)*(Ks**2/(phie*g*A)) \t# [m]\n", "\t# From equation 4.45\n", "E = 0.00335*(h2q/t)**1.1*(rowl/rowg)**0.5*(hl/h2q)**k \n", "\t# From Example 4.4, the gas mass flow rate is V = 2.202 kg/s\n", "V = 2.202 \t\t\t\t\t\t\t\t# [kg/s]\n", "Le = E*V \t\t\t\t\t\t\t\t # [kg/s]\n", "\n", "#Result\n", "\n", "print\"The entrainment flow rate for the ethanol absorber is\",round(Le,2),\"kg/s\" " ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Weeping is not significant\n", "The entrainment flow rate for the ethanol absorber is" ] }, { "output_type": "stream", "stream": "stdout", "text": [ " 0.11 kg/s\n" ] } ], "prompt_number": 7 }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Example 4.9,Page number:264" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#Variable declaration\n", "Do = 5*10**-3 \t\t\t\t\t\t# [m]\n", "Ml = 18.63 \t\t\t\t\t\t# [molecular weight of water, gram/mole]\n", "Mg = 44.04 \t\t\t\t\t\t# [molecular weight of carbon dioxide, \t\t\t\t\t\t\tgram/mole]\n", "rowg = 1.923 \t\t\t\t\t\t# [kg/cubic m]\n", "rowl = 986 \t\t\t\t\t\t# [kg/cubic m]\n", "vo = 18.48 \t\t\t\t\t\t# [m/s]\n", "hl = 0.0173 \t\t\t\t\t\t# [m]\n", "ug = 1.45*10**-5 \t\t\t\t\t# [kg/m.s]\n", "phie = 0.274 \n", "A = 0.101 \t\t\t\t\t\t# [Ah/Aa]\n", "Dg = 0.085 \t\t\t\t\t\t# [square cm/s]\n", "Dl = 1.91*10**-5 \t\t\t\t\t# [square cm/s]\n", "Aa = 0.614 \t\t\t\t\t\t# [square m]\n", "Qg = 1.145 \t\t\t\t\t\t# [cubic m/s]\n", "t = 0.5 \t\t\t\t\t\t# [m]\n", "h2q = 0.391 \t\t\t\t\t\t# [m]\n", "rw = 0.34 \t\t\t\t\t\t# [m]\n", "ql = 0.000815 \t\t\t\t\t\t# [cubic m/s]\n", "g = 9.8 \t\t\t\t\t\t# [square m/s]\n", "G = 2.202/44.04 \t\t\t\t\t# [kg/s]\n", "L = 0.804/18.63 \t\t\t\t\t# [kg/s]\n", "\n", "Refe = rowg*vo*hl/(ug*phie) \n", "\n", "#Calculation\n", "\n", "import math\n", "cg =rowg/Mg \t\t\t\t\t\t# [kmole/cubic m]\n", "cl = rowl/Ml \t\t\t\t\t\t# [kmole/cubic m]\n", "\n", "\t# For the low concentrations prevailing in the liquid phase, the ethanol- # water \tsolution at 303 K obeys Henry's law, and the slope of the equilibriu# m curve is m = 0.57\n", "m = 0.57 \n", "\t# From equation 4.53\n", "a1 = 0.4136 \n", "a2 = 0.6074 \n", "a3 = -0.3195 \n", "Eog = 1-math.exp(-0.0029*Refe**a1*(hl/Do)**a2*A**a3/((math.sqrt(Dg*(1-phie)/(Dl*A)))*m*cg/cl+1)) \n", "\t# From equation 4.62\n", "Deg = 0.01 \t\t\t\t\t\t# [square m/s]\n", "Peg = 4*Qg*rw**2/(Aa*Deg*(t-h2q)) \t\t\t# [Peclet number]\n", "\t# Since Peclet number is greater than 50, therefore vapor is unmixed\n", "\t# From equation 4.60\n", "Del = 0.1*math.sqrt(g*h2q**3) \t\t\t\t# [square m/s]\n", "\t# From equation 4.59\n", "Pel = 4*ql*rw**2/(Aa*hl*Del) \n", "N = (Pel+2)/2 \n", "lamda = m*G/L \n", "\t# From equation 4.58\n", "Emg = ((1+lamda*Eog/N)**N -1)/lamda*(1-0.0335*lamda**1.073*Eog**2.518*Pel**0.175) \n", "\t# From example 4.8\n", "E = 0.05 \n", "\t# Substituting in equation 4.63\n", "Emge = Emg*(1-0.8*Eog*lamda**1.543*E/m) \n", "\n", "#Result\n", "\n", "print\"The entrainment corrected Murphree tray efficiency for the ethanol is\",round(Emge,3)\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The entrainment corrected Murphree tray efficiency for the ethanol is 0.812\n" ] } ], "prompt_number": 8 } ], "metadata": {} } ] }