{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Chapter 12 : Absorption of Gases" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Page No 669 Example 12.1" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", " For S02:\n", "\n", " kGa = 0.00012 ol/s m**3(kN/m**2)\n", "\n", " For NH3:\n", "\n", " kGa = 0.00016 kmol/s m**3(kN/m**2)\n", "\n", " For a very soluble gas such as NH3, kGa = KGa.\n", "\n", " For NH3 the liquid-film resistance will be small, and:\n", "\n", " kGa =KGa = 0.00016 mol/s m**3(kN/m**2)\n" ] } ], "source": [ "from __future__ import division\n", "#Overall liquid transfer coefficient KLa = 0.003 kmol/s.m**3(kmol/m**3)\n", "\n", "#(1/KLa)=(1/kLa)+(1/HkGa)\n", "# let (KLa)=x\n", "x = 0.003#\n", "overall = 1/x#\n", "\n", "#For the absorption of a moderately soluble gas it is reasonable to assume that the liquid and gas phase resistances are of the same order ofmagnitude, assuming them to be equal.\n", "#(1/KLa)=(1/kLa)+(1/HkGa)\n", "#let 1/kLa = 1/HkGa = y\n", "y = (1/(2*x))#\n", "z = (1/y)# #z is in kmol/s m**3(kmol/m**3)\n", "print \"\\n For S02:\"\n", "print \"\\n kGa = %0.5f ol/s m**3(kN/m**2)\"%(z/50)#\n", "print \"\\n For NH3:\"\n", "d_SO2 = 0.103# #diffusivity at 273K for SO2 in cm**2/sec\n", "d_NH3 = 0.170# #diffusivity at 273K for NH3 in cm**2/sec\n", "print \"\\n kGa = %0.5f kmol/s m**3(kN/m**2)\"%((z/50)*(d_NH3/d_SO2)**0.56)#\n", "print \"\\n For a very soluble gas such as NH3, kGa = KGa.\"\n", "print \"\\n For NH3 the liquid-film resistance will be small, and:\"\n", "print \"\\n kGa =KGa = %0.5f mol/s m**3(kN/m**2)\"%((z/50)*(d_NH3/d_SO2)**0.56)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Page No 671 Example 12.2" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", " d = 0.05 mm\n", "\n", " kG = 1.19*10**(-8) kmol/m**2sec(N/m**2)\n", "\n", " kG = 7.59*10**(-4)kg SO2/m**2sec(kN/m**2)\n" ] } ], "source": [ "G = 2# #air flow rate in kg/m**2.sec\n", "Re = 5160# #Re stands for Reynolds number\n", "f = 0.02# #friction factor = R/pu**2\n", "d_SO2 = 0.116*10**(-4)# #diffusion coefficient in m**2/sec\n", "v = 1.8*10**(-5)# #viscosity in mNs/m**2\n", "p = 1.154# #density is in kg/m**3\n", "\n", "#(hd/u)(Pm/P)(u/p/d_SO2)**0.56 = BRe**(-0.17)=jd\n", "\n", "def a1():\n", " x = (v/(p*d_SO2))**(0.56)#\n", " return x\n", "\n", "\n", "#jd = f =R/pu**2\n", "def a2():\n", " y = f/a1()#\n", " return y\n", "#G = pu\n", "u = (G/p)# #u is in m/sec\n", "\n", "def a3():\n", " x1 = a2()*u#\n", " return x1\n", "\n", "def d1():\n", " d = Re*v/(G)#\n", " return d\n", "\n", "print \"\\n d = %0.2f mm\"%(d1())#\n", "R = 8314# #R is in m**3(N/m**2)/K kmol\n", "T = 298# #T is in Kelvins\n", "def kG1():\n", " kG = a3()/(R*T)#\n", " return kG\n", "\n", "print \"\\n kG = %.2f*10**(-8) kmol/m**2sec(N/m**2)\"%(kG1()*10**(8))#\n", "print \"\\n kG = %.2f*10**(-4)kg SO2/m**2sec(kN/m**2)\"%(kG1()*10**(7)*64)#" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Page No 694 Example 12.3" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", " x1 = 0.01\n", "\n", " NoL =7.38\n" ] } ], "source": [ "from sympy import symbols, solve, log\n", "#as the system are dilute mole fractions are approximately equal to mole ratios.\n", "#At the bottom of the tower\n", "y1 =0.015# #mole fraction\n", "G = 1# #Gas flow rate is in kg/m**2sec\n", "#At the top of the tower\n", "y2 = 0.00015# #mole fraction\n", "x2 = 0#\n", "L = 1.6# #liquid flow rate is in kg/m**2.sec\n", "Lm = 1.6/18# #liquid flow rate is in kmol/m**2.sec\n", "Gm = 1.0/29# #gas flow rate is in kmol/m**2.sec\n", "\n", "x1 = symbols('x1')\n", "x11 = solve(Gm*(y1-y2)-Lm*(x1),x1)[0]\n", "\n", "print \"\\n x1 = %0.2f\"%(x11)#\n", "def henry_law(x):\n", " ye1 = 1.75*x#\n", " return ye1\n", "bottom_driving_force = y1 - henry_law(x11)#\n", "def log_mean():\n", " lm = (bottom_driving_force-y2)/log(bottom_driving_force/y2)\n", " return lm\n", "NoG = (y1-y2)/log_mean()\n", "NoL = NoG*1.75*(Gm/Lm)#\n", "print \"\\n NoL =%.2f\"%(NoL)#" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Page No 699 Example 12.4" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", " Z =7.80m\n", "\n", " Height of transfer unit HoG = 0.375m\n", "\n", " Number of transfer units NoG = 21.00\n" ] } ], "source": [ "from sympy import symbols, solve\n", "from math import ceil\n", "Gm = 0.015#\n", "KGa = 0.04#\n", "top = 0.0003#\n", "Y1 = 0.03#\n", "Ye = 0.026#\n", "bottom = (Y1-Ye)#\n", "log_mean_driving_force = (bottom-top)/log(bottom/top)#\n", "Z = symbols('Z')\n", "Z1 = solve(Gm*(Y1-top)-KGa*log_mean_driving_force*Z,Z)[0]\n", "print \"\\n Z =%.2fm\"%(Z1)#\n", "HoG = Gm/KGa#\n", "print \"\\n Height of transfer unit HoG = %.3fm\"%(HoG)#\n", "print \"\\n Number of transfer units NoG = %0.2f\"%(ceil(7.79/0.375))#" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Page No 700 Example 12.5" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nwxhjTNj+D3ist4aa/CKkAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "The height of the tower is 4.91 meters\n" ] } ], "source": [ "%matplotlib inline\n", "from matplotlib.pyplot import plot, show, xlabel, ylabel, title\n", "from numpy import arange\n", "y1 = 0.10#\n", "Y1 = 0.10/(1-0.10)#\n", "y2 = 0.001#\n", "Y2 = y2#\n", "mass_flowrate_gas = 0.95# #mass flow rate in kg/m**2.sec\n", "mass_percent_air = (0.9*29/(0.1*17+0.9*29))*100#\n", "mass_flowrate_air = (mass_percent_air*mass_flowrate_gas)##in kg/m**2.sec\n", "Gm = (mass_flowrate_air/29)#\n", "Lm = 0.65/18# #Lm is in kmol/m**2.sec\n", "#A mass balance between a plane in the tower where the compositions are X and Y and the top of the tower gives:\n", "\n", "#Y = 1.173X+0.001\n", "X = arange(0,0.159,0.001)\n", "Y=[]\n", "for x in X:\n", " Y.append(1.173*x+0.001)\n", "plot(X,Y)#\n", "\n", "x=[0.021,0.031,0.042,0.053,0.079,0.106,0.159]\n", "\n", "PG = [12,18.2,24.9, 31.7, 50.0, 69.6, 114.0]\n", "i=0\n", "Y1=[]\n", "while i<7:\n", " Y1.append(PG[(i)]/(760-PG[(i)]))\n", " i=i+1\n", "\n", "plot(x,Y1)#\n", "#xlabel(\"Area under the curve is 3.82m\"%(\"kmolNH3/kmolH2O\"%(\"kmolNH3/kmol air\"\n", "\n", " \n", "title(\"Operating and equilibrium lines\")\n", "xlabel(\"kmol NH3/kmol H2O\")\n", "ylabel(\"kmol NH3/kmol air\")\n", "show()\n", "#If the equilibrium line is assumed to be straight, then:\n", "#Gm(Y2 − Y1) = KGaZdeltaPlm\n", "\n", "#Top driving force\n", "deltaY2 = 0.022#\n", "#Bottom driving force\n", "deltaY1 = 0.001#\n", "deltaYlm = 0.0068#\n", "Z = (0.0307*0.11)/(0.001*0.688)#\n", "print \"The height of the tower is %.2f meters\"%(Z)#" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Page No 708 Example 12.6" ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", " Number of theoretical plates = 9\n", "\n", " LHS = 0.98\n", "\n", " 1/A = 1.00\n", "\n", " Gm/Lm = 0.333\n", "\n", " Actual/minimum Gm/Lm = 1.39\n", "\n", " Actual Gm/Lm = 0.656\n", "\n", " 1/A = mGm/Lm = 1.968\n", "\n", " The actual number of plates are : 17.0\n" ] } ], "source": [ "from sympy import symbols, solve, log\n", "print \"\\n Number of theoretical plates = %d\"%((30*0.3))#\n", "\n", "#At the bottom of the tower:\n", "#Flowrate of steam = Gm (kmol/m**22s)\n", "#Mole ratio of pentane in steam = Y1, and\n", "#Mole ratio of pentane in oil = X1\n", "X1 = 0.001#\n", "\n", "#At the top of the tower:\n", "#exit steam composition = Y2\n", "#inlet oil composition = X2\n", "X2 = 0.06#\n", "#flowrate of oil = Lm (kmol/m**2.sec)\n", "\n", "#The minimum steam consumption occurs when the exit steam stream is in equilibrium with the inlet oil, that is when:\n", "#The equilibrium relation for the system may be taken as Ye = 3.0X, where Ye and X are expressed in mole ratios of pentane in the gas and liquid phases respectively.\n", "Ye2 = X2*3#\n", "#Lmin(X2 − X1) = Gmin(Y2 − Y1)\n", "#If Y1 = 0, that is the inlet steam is pentane-free, then:\n", "ratio_min = (X2 - X1)/Ye2#\n", "\n", "\n", "#The operating line may be fixed by trial and error as it passes through the point (0.001, 0), and 9 theoretical plates are required for the separation. Thus it is a matter of selecting the operating line which, with 9 steps, will give X2 = 0.001 when X1 = 0.06. This is tedious but possible, and the problem may be better solved analytically since the equilibrium line is straight.\n", "\n", "#let x = 1/A\n", "#for a stripping operation\n", "LHS = (X2-X1)/(X2)#\n", "print \"\\n LHS = %0.2f\"%(LHS)#\n", "x = symbols('x')\n", "x1 = solve((x**10-x)-LHS*(x**(10)-1),x)[0]\n", "print \"\\n 1/A = %.2f\"%(x1)#\n", "#A = Lm/mGm\n", "print \"\\n Gm/Lm = %.3f\"%(x1/3)#\n", "print \"\\n Actual/minimum Gm/Lm = %.2f\"%(0.457/0.328)#\n", "\n", "#If (actual Gm/Lm)/(min Gm/Lm) = 2,\n", "print \"\\n Actual Gm/Lm = %.3f\"%(.328*2)#\n", "x2 = 3*(0.656)#\n", "print \"\\n 1/A = mGm/Lm = %.3f\"%(3*0.656)#\n", "\n", "#y = (1.968)**(N+1)\n", "y = symbols('y')\n", "y1 = solve(0.983*(y-1)-(y-1.968),y)[0]\n", "N = log(y1)/log(1.968)-1#\n", "print \"\\n The actual number of plates are : %.1f\"%(ceil(N/0.3))#" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.9" } }, "nbformat": 4, "nbformat_minor": 0 }