{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Chapter 3 : Material Balances without Chemical Reaction" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.1 Page 60" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Percentage of feed water to be blown down is 0.342857142857 .\n" ] } ], "source": [ "# solution \n", "\n", "# Variables \n", "m = 1. #[kg] feed water\n", "m1 = 1200. #[mg] dissolved solids in 1 kg feed water\n", "m2 = 3500. #[mg] max dissolved solid content \n", "\n", "# Calculation \n", "x = (m*m1)/m2 # [kg] blown down water\n", "\n", "# Result\n", "print \"Percentage of feed water to be blown down is \",x,\".\"\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.2 Page 61" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Amount of water that evaporated is 84 kg.\n" ] } ], "source": [ "# solution \n", "\n", "# Variables \n", "m = 100. #[kg] weak liquor (feed)\n", "m1 = 4. #[kg] NaOH\n", "p = .25\n", "\n", "# Calculation \n", "x = 4./p # water left\n", "y = 100-16 # [kg] evaporated water\n", "\n", "# Result\n", "print \"Amount of water that evaporated is \",y,\" kg.\"\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.3 Page 61" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Percentage of Tannin recovered during leaching is 94.5625688387 .\n" ] } ], "source": [ "# solution \n", "\n", "# Variables \n", "m = 100. #[kg] babul bark (basis)\n", "m1 = 5.8 #[kg] moisture\n", "m2 = 12.6 #[kg] Tannin\n", "m3 = 8.3 #[kg] soluble non tannin organic material\n", "m4 = m-m1-m2-m3 # [kg] Lignin\n", "\n", "# Calculation \n", "# lignin content remains unaffected during leaching\n", "m5 = 100-.92-.65 # [kg lignin/kg dry residue]\n", "x = (m4*100)/m5 # [kg]\n", "T1 = x*.0092 #[kg] Tannin present in residue\n", "T2 = m2 - T1 # [kg] Tannin recovered\n", "T = (T2/m2)*100\n", "\n", "# Result \n", "print \"Percentage of Tannin recovered during leaching is \",T,\".\"\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.4 Page 62" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "a mass of extract phase per kg of dry leaves is 0.0243902439024 kg \n", "b percent recovery of Alpha Tocopherol is 82.1845174973 .\n" ] } ], "source": [ "# solution \n", "\n", "# Variables \n", "m = 1. #[kg] dry neem leaves (basis)\n", "m1 = .01/100 #[kg] beta cartene content of leaves\n", "\n", "# Calculation\n", "Ex = (m1*100)/.41 #[kg] extract quantity\n", "Tc1 = Ex*.155 #[kg] Alpha Tocopherol in the extract\n", "Tc2 = .46/100 #[kg] Alpha Tocopherol in the neem leaves\n", "R = (Tc1*100)/Tc2 # recovery of Alpha Tocopherol \n", "\n", "# Result\n", "print \"a mass of extract phase per kg of dry leaves is \"\\\n", ",Ex,\" kg \\nb percent recovery of Alpha Tocopherol is \",R,\".\"\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.5 Page 62" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "a) Upper layer = 93.4470832373 kg \n", "and Lower layer = 102.421028361 \n", "b) mass ratio of the mixed solvent to the original mixture is -0.9989 \n", "c) water mass percent = 58.9418250036 \n", "and acetic acid mass percent = 41.0581749964 .\n" ] } ], "source": [ "# solution \n", "from numpy import array, linalg\n", "\n", "# Variables \n", "m= 100. #[kg] original mixture (basis)\n", "A = 27.8 #[kg]\n", "B = 72.2 #[kg]\n", "\n", "# let x and y be uper and lower layer amounts\n", "# total mixture = (x+y) kg\n", "# balancing A and B\n", "X = array([[.075 ,.203],[.035, .673]])\n", "d = array([27.8,72.2])\n", "\n", "# Calculation \n", "x = linalg.solve(X,d)\n", "M = X[0][0]+X[1,0] # [kg] total mixture\n", "Ms = M - m #[kg] mixed solvent\n", "Mr = Ms/m\n", "S1 = x[0]*.574+x[1]*.028 #[kg] water balance\n", "S2 = x[0]*.316+x[1]*.096 #[kg] acetic acid balance\n", "Qs = S1+S2\n", "pS1 = (S1*100)/Qs\n", "pS2 = 100-pS1\n", "\n", "# Result\n", "print \"a) Upper layer = \",x[0],\" kg \\nand Lower layer = \",x[1],\\\n", "\" \\nb) mass ratio of the mixed solvent to the original mixture is \",Mr,\\\n", "\" \\nc) water mass percent = \",pS1,\"\\nand acetic acid mass percent = \",pS2,\".\"\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.6 Page 63" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Vol percent of N2 is 70.6666666667 and Vol percent of O2 is 29.3333333333 .\n" ] } ], "source": [ "# solution \n", "# Variables \n", "m = 170. #[Nm**3/h] air (basis)\n", "m1 = 50*.99 #[Nm**3/h] N2 content of the stream\n", "m2 = 50*.01 #[Nm**3/h]\n", "\n", "# Calculation \n", "N = m*.79-m1 # [Nm**3/h] N2\n", "O = m*.21-m2 # [Nm**3/h] O2\n", "V1 = N*100/(N+O)\n", "V2 = O*100/(N+O)\n", "\n", "# Result\n", "print \"Vol percent of N2 is \",V1,\" and Vol percent of O2 is \",V2,\".\"\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.7 Page 64" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Strength of Oleum required is 22.8571428571 HNO3 and Oleum are required to be mixed in the proportion of 0.942857142857 :1.\n" ] } ], "source": [ "# solution \n", "# Variables \n", "m = 100. #[kg] SO3 free mixed acid (basis)\n", "m1 = 55. #[kg] HNO3\n", "m2 = 45. #[kg] H2SO4\n", "\n", "# Calculation \n", "# SO3 + H2O --> H2SO4\n", "m3 = (80./18)*3 #[kg] SO3 equivalent to 3 kg of water\n", "Q = m2+m3 #[kg] oleum to be mixed\n", "S = (m3/Q)*100 # strength of oleum\n", "R = m1/Q \n", "\n", "# Result\n", "print \"Strength of Oleum required is \",S,\" HNO3 and Oleum are required\\\n", " to be mixed in the proportion of \",R,\":1.\"\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.8 Page 64" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "quantities of acids required are :\n", " Spent = 76.4139267072 kg\n", " HNO3 = 345.961362536 kg\n", " H2SO4 = 577.624710757 kg.\n" ] } ], "source": [ "from numpy import array, linalg\n", "\n", "# solution \n", "# Variables \n", "m = 1000. #[kg] mixed acid (basis)\n", "# doing overall mass balance, H2SO4 balance and HNO3 balance\n", "A = array([[1, 1, 1],[.444, 0, .98],[.113, .9, 0]])\n", "d = array([1000,600,320])\n", "\n", "# Calculation \n", "x = linalg.solve(A,d)\n", "\n", "# Result\n", "print \"quantities of acids required are :\"\n", "print \" Spent = \",x[0],\"kg\"\n", "print \" HNO3 = \",x[1],\" kg\"\n", "print \" H2SO4 = \",x[2],\" kg.\"\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.9 Page 65" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Component analysis of raw water:\n", " Compound mg/l \n", " Ca(HCO3)2 505.62\n", " Mg(HCO3)2 49.896\n", " NaHCO3 11.088\n", " Na2CO3 69.854\n", " NaCl 783.735211268\n", " Na2SO4 152.20625\n" ] } ], "source": [ "# solution \n", "# Variables \n", "l = 1. #[litre] water (basis)\n", "Cl = 475.6 #[mg]\n", "m1 = (58.5/35.5)*Cl #[mg] NaCl present in water\n", "SO4 = 102.9 #[mg] # SO4\n", "m3 = (142./96)*SO4 #[mg] Na2SO4 present in water\n", "\n", "# Calculation \n", "# carbonates are present due to Na2CO3\n", "# eq mass of CaCO3 = 50\n", "# eq mass of Na2CO3 = 53\n", "m4 = (53./50)*65.9 # [mg] Na2CO3 present in water\n", "\n", "# NaHCO3 in water = bicarbonates - temporary hardness\n", "m5 = 390.6-384 # [mg] NaHCO3 present as CaCO3\n", "m6 = (84./50)*m5 # [mg] NaHCO3 present in water\n", "\n", "# equivalent mass of Mg(HCO3)2 = 73.15\n", "m7 = (m6/50.)*225\n", "m8 = 384-225 #[mg] CaCO3 from Ca(HCO3)2\n", "# equivalent mass of Ca(HCO3)2 is 81\n", "m9 = (m8/50.)*159 #[mg] Ca(HCO3)2 present in water\n", "\n", "# Result\n", "print \"Component analysis of raw water:\"\n", "print \" Compound mg/l \"\n", "print \" Ca(HCO3)2 \",m9\n", "print \" Mg(HCO3)2 \",m7\n", "print \" NaHCO3 \",m6\n", "print \" Na2CO3 \",m4\n", "print \" NaCl \",m1\n", "print \" Na2SO4 \",m3\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.11 Page 68" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Flowrates are : \n", " A = 158.0 kg/h\n", " B = 422.0 kg/h\n", " C = 420.0 kg/h\n" ] } ], "source": [ "from numpy import array, linalg\n", "# solution \n", "# Variables \n", "# basis : 1000 kg/h of feed\n", "# balancing H2SO4, HNO3 and H2O in all the three product streams\n", "M = array([[1, 0, 0, 1, 0, 0, 1, 0, 0],[0, 1, 0 ,0, 1, 0, 0, 1, 0],\\\n", "[0, 0, 1, 0, 0, 1, 0, 0, 1],[1, 0, 0, 0, 0, 0, 0, 0, 0],[0, 1, 0, 0, 0, 0, 0, 0, 0]\\\n", ",[0, 0, 1, 0, 0, 0, 0, 0, 0],[0 ,0, 0, 1, 0, 0, 0, 0, 0],[0, 0, 0, 0, 1, 0, 0, 0, 0],\\\n", "[0, 0, 0, 0, 0, 1, 0, 0, 0]])\n", "v = array([400,100,500,4,94,60,16,6,400])\n", "\n", "# Calculation \n", "s = linalg.solve(M,v)\n", "A = s[0]+s[1]+s[2]\n", "B = s[3]+s[4]+s[5]\n", "C = s[6]+s[7]+s[8]\n", "\n", "# Result\n", "print \"Flowrates are : \"\n", "print \" A = \",A,\" kg/h\"\n", "print \" B = \",B,\" kg/h\"\n", "print \" C = \",C,\" kg/h\"\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.12 Page 70" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nNvUAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "a Upper layer = 93.4 kg and Lower layer = 102.4\n", "b mass ratio of the mixed solvent to the original mixture is 0.958\n", "c water mass percent = 58.9403862931 and acetic acid mass percent = 41.0596137069 .\n" ] } ], "source": [ "%matplotlib inline\n", "from numpy import linspace\n", "from matplotlib.pyplot import plot, show\n", "# solution \n", "# Variables \n", "m = 100. # kg\n", "x = linspace(70,110,5);\n", "y = linspace(100,115,4);\n", "\n", "# Calculation \n", "y1 = 27.8/.203 - .075*x/.203\n", "y2 = 72.2/.673 - .035*x/.673\n", "x = linspace(70,110,5);\n", "plot(x,y1)\n", "plot(x,y2)\n", "show()\n", "x = 93.4;\n", "y = 102.4;\n", "M = x+y # [kg] total mixture\n", "Ms = M - m #[kg] mixed solvent\n", "Mr = Ms/m # mixed solvent/original mixture\n", "S1 = x*.574+y*.028 #[kg] water balance\n", "S2 = x*.316+y*.096 #[kg] acetic acid balance\n", "Qs = S1+S2\n", "pS1 = (S1*100)/Qs\n", "pS2 = 100-pS1\n", "\n", "# Result\n", "print \"a Upper layer = \",x,\" kg and Lower layer = \",y\n", "print \"b mass ratio of the mixed solvent to the original mixture is \",Mr\n", "print \"c water mass percent = \",pS1,\" and acetic acid mass percent = \",pS2,\".\"\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.14 Page 73" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "a recovery percent of glycerine is 85.9864521592\n", " b percent loss of glycerinr is 1.04784081287\n", " c product contamination with respect to salt NaCl is 0.283116033416\n" ] } ], "source": [ "# solution \n", "# Variables \n", "#using table 2.7 on page no 75\n", "Rg = 8124.*100/9448 # recovery of glycerine\n", "Lg = (16+83)*100./9448 # loss of glycerine in waste\n", "Reg = 100-Rg-Lg # recycle of glycerine\n", "\n", "# Calculation \n", "m1 = 238/8124. # NaCl in product\n", "m2 = Rg*12/100. # glycerine in product\n", "m3 = m1+m2 # total solute\n", "n = m1*100/m3 # NaCl percent in total solute\n", "\n", "# Result\n", "print \"a recovery percent of glycerine is \",Rg\n", "print \" b percent loss of glycerinr is \",Lg\n", "print \" c product contamination with respect to salt NaCl is \",n\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.15 Page 76" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "a moisture removed in AC plant = 1.48829053429\n", " b moisture added in auditorium = 4249.92025923\n", " c recycle ratio of moles of air recycled per mole mole of fresh ambient air input = 3.89342336\n" ] } ], "source": [ "# solution \n", "\n", "# Variables \n", "f1 = 1.25 #[m**3/s] fresh ambient air as feed (basis)\n", "f2 = 5.806 #[m**/s] air entering auditorium\n", "v1 = 8.314*290/101.3 #[m**3/kmol] sp. vol. of moist air at 101.3 kPa and 290 K\n", "na1 = f2*1000/v1 # [mol/s] molar flow rate of air entering auditorium\n", "nw1 = 243.95*.0163/1.0163 # [mol/s]\n", "na2 = 243.95 - nw1 #[mol/s] dry air flow\n", "nw2 = 240.04*.0225 #[mol/s] moisture enterin air conditioning plant\n", "\n", "# Calculation \n", "# using table 3.8\n", "m1 = (nw2-nw1) #[kg/h] moisture removed in a c plant\n", "m2 = na2-.0181 #[mol/s] moisture in air leaving auditorium\n", "m3 = (m2-nw1)*18 # [kg/h] moisture added in auditorium\n", "Vm2 = 8.314*308/101.3 # [m**3/kmol]\n", "na3 = (f1/25.28)*1000 #[mol/s] \n", "n4 = 5.40-1.925 #[mol/s] moisture in recycle stream\n", "mr = 240.04-47.525 #[mol/s] molar flow rate of wet recycle stream\n", "R = mr/na3\n", "\n", "# Result\n", "print \"a moisture removed in AC plant = \",m1\n", "print \" b moisture added in auditorium = \",m3\n", "print \" c recycle ratio of moles of air recycled per mole mole of fresh ambient air input = \",R\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.16 Page 78" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Overall Efficiency = E1 E2 E3*100/[1-E11-E2+E2 E3].\n" ] } ], "source": [ "# solution \n", "\n", "# screen 1\n", "# feed = N kg\n", "# Oversize particle = NE1 kg\n", "# Undersize particle = N-NE1\n", "\n", "#screen 2\n", "#feed = NE1+X kg\n", "# Oversize particle = (NE1+X)*E2 kg\n", "# Undersize particle = (NE1+X)(1-E2) kg\n", "\n", "\n", "#screen 3\n", "# feed = (NE1+X)*E2 kg\n", "# Oversize particle = (NE1+X)*E2*E3 kg\n", "# Undersize particle = (NE1+X)*E2*(1-E3) kg\n", "print \"Overall Efficiency = E1 E2 E3*100/[1-E11-E2+E2 E3].\"\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.17 Page 79" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "a \n", " Flow rate of product stream is 2234.89795918 kmol/h.\n", "b \n", " Product H2 stream : H2 = 2605.30204082 kmol/h CO = 159.8 kmol/h \n", "c \n", " Composition of Mixed feed : H2 = 66.842375 CO = 33.157625\n" ] } ], "source": [ "# solution \n", "# Variables \n", "print \"a \"\n", "F = 5000. #[kmol/h] feed (basis)\n", "\n", "# Calculation \n", "m1 = F*.47 #[kmol/h] CO in F\n", "m2 = F-m1 #[kmol/h] H2 in F\n", "m3 = m1*.932 # CO in product stream\n", "n2 = m3/.98 #[kmol/h] \n", "\n", "# Result\n", "print \" Flow rate of product stream is \",n2,\" kmol/h.\\nb \"\n", "n2 = n2-m3 #[kmol/h] H2 in CO stream\n", "print \" Product H2 stream : H2 = \",m2-n2,\" kmol/h CO = \",m1-m3,\" kmol/h \\nc \"\n", "nH2 = 2697.39 #[kmol/h]\n", "nCO = 3000-nH2 # [kmol/h]\n", "n4 = m2+nH2\n", "n5 = m1+nCO\n", "n6 = n4+n5\n", "\n", "print \" Composition of Mixed feed : H2 = \",n4*100/n6,\" CO = \",n5*100/n6\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example 3.18 Page 79" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "F = 8.2196969697\n", " m**3/h R1 = 60.8294930876\n", " m**3/h P = 11.25\n", " m**3/h R2 = 1.25\n", " m**3/h recycle ratio = 0.152073732719\n", " rejection percentage of salt in module I = 95.3914154639\n" ] } ], "source": [ "# solution \n", "\n", "# Variables \n", "\n", "# Overall balance\n", "# F=R1+P2\n", "# Balance across Module I\n", "# F+R2 = R1+P1 ==> R1+P2+R2 = R1+P1\n", "# balance across module II\n", "# P1 = P2+R2\n", "P2 = 5. #[m**3/h]\n", "P1 = P2/.8 #[m**3/h]\n", "R2 = P1-P2 #[m**3/h]\n", "F = P1/.66 - R2 #[m**3/h]\n", "R1 = F-P2 #[m**3/h]\n", "\n", "# Calculation \n", "# Overall balance of DS in water\n", "xR1 = (F*4200-P2*5.)/R1 #[mg/l]\n", "xP1 = (P2*5)/(.015*P1) # [mg/l]\n", "xR2 = (P1*xP1-P2*5)/R2 #[mg/l]\n", "m1 = F*4200+R2*xR2 #[g] DS mixeed in MF\n", "C1 = m1/(F+R2) # [mg/l]\n", "m2 = R1*xR1 #[g] DS in R1\n", "r = m2*100/m1 # rejection in module in I\n", "m3 = m1-m2 #[g] DS in P1\n", "C2 = m3/P1 # [mg/l] \n", "R = R2/F \n", "R1 = P2*100/F\n", "\n", "# Result\n", "print \"F = \",F\n", "print \" m**3/h R1 = \",R1\n", "print \" m**3/h P = \",P1+P2\n", "print \" m**3/h R2 = \",R2\n", "print \" m**3/h recycle ratio = \",R\n", "print \" rejection percentage of salt in module I = \",r\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "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.6" } }, "nbformat": 4, "nbformat_minor": 0 }