summaryrefslogtreecommitdiff
path: root/Stoichiometry_And_Process_Calculations/ch9.ipynb
diff options
context:
space:
mode:
Diffstat (limited to 'Stoichiometry_And_Process_Calculations/ch9.ipynb')
-rwxr-xr-xStoichiometry_And_Process_Calculations/ch9.ipynb1190
1 files changed, 1190 insertions, 0 deletions
diff --git a/Stoichiometry_And_Process_Calculations/ch9.ipynb b/Stoichiometry_And_Process_Calculations/ch9.ipynb
new file mode 100755
index 00000000..a41ec201
--- /dev/null
+++ b/Stoichiometry_And_Process_Calculations/ch9.ipynb
@@ -0,0 +1,1190 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 9 : Material Balance in Unit Operations"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.1 pageno : 251"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "PC1 = 85. #% ( Percent carbon in coal )\n",
+ "PA1 = 15. #% ( Percent ash in coal )\n",
+ "PA2 = 80. #% ( Percent ash in cinder )\n",
+ "PC2 = 20. #% ( Percent carbon in cinder )\n",
+ "m = 100. #kg (weight of coal )\n",
+ "\n",
+ "# Calculation \n",
+ "mash = PA1 * m / 100 \n",
+ "w = mash * 100 / PA2 # weight of cinder\n",
+ "mcarbon = w - mash \n",
+ "Plost = mcarbon * 100 / ( m - mash ) \n",
+ "\n",
+ "# Result\n",
+ "print \"weight of cinder formed = \",w,\"kg\"\n",
+ "print \"Percent fuel lost = %.2f\"%Plost,\"%\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "weight of cinder formed = 18.75 kg\n",
+ "Percent fuel lost = 4.41 %\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.2 pageno : 253"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "m = 1. #kg ( mass of completely dry wood )\n",
+ "P1 = 40. #% ( percentage moisture in wet wood )\n",
+ "P2 = 5. #% ( Percentage moisture in dry wood )\n",
+ "\n",
+ "# Calculation \n",
+ "mwaterin = P1 * m / ( 100 - P1 ) \n",
+ "mwaterout = P2 * m / ( 100 - P2 ) \n",
+ "mevaporated = mwaterin - mwaterout \n",
+ "\n",
+ "# Result\n",
+ "print \"mass of water evaporated per kg of dry wood = %.3f\"%mevaporated,\"kg\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "mass of water evaporated per kg of dry wood = 0.614 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.3 pageno : 254"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "F1 = 6*1000. #L/s\n",
+ "BOD1 = 3 * 10.**-5 #g/L\n",
+ "BOD2 = 5 * 10.**-3 #g/L\n",
+ "\n",
+ "# Calculation \n",
+ "V = 16 * 10.**3 #m**3/day\n",
+ "v = V * 10**3 / (24 * 3600.) #L/s\n",
+ "#Let BOD of the effluent be BODeff,\n",
+ "BODeff = (BOD2 * (F1 + v) - BOD1 * F1) / ( v ) \n",
+ "\n",
+ "# Result\n",
+ "print \"BOD of the effluent of the plant = %.4f\"%BODeff,\"g/L\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "BOD of the effluent of the plant = 0.1660 g/L\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.4 pageno : 256"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "D = 100. #kg of overhead product\n",
+ "xfa = 0.956 \n",
+ "xdw = 0.074 \n",
+ "xdb = 0.741 \n",
+ "xda = 0.185 \n",
+ "\n",
+ "# Calculation \n",
+ "#water balance gives\n",
+ "F = D * xdw / (1 - xfa) \n",
+ "W = F * xfa - xda * D \n",
+ "W1 = 100 \n",
+ "B = xdb*D \n",
+ "Bused = B * W1 / W \n",
+ "\n",
+ "# Result\n",
+ "print \"Quantity of benzene required = %.2f\"%Bused,\"kg\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Quantity of benzene required = 52.08 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.5 pageno : 258"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "#let, W - waste acid, S - Sulfuric acid, N - nitric acid, M - mixed acid\n",
+ "xsh2so4 = 0.95 \n",
+ "xsh2o = 0.5 \n",
+ "xwh2so4 = 0.3 \n",
+ "xwhno3 = 0.36 \n",
+ "xwh2o = 0.34 \n",
+ "xmh2so4 = 0.4 \n",
+ "xmhno3 = 0.45 \n",
+ "xmh2o = 0.15 \n",
+ "xnhno3 = 0.8 \n",
+ "xnh2o = 0.2 \n",
+ "M = 1000. #kg\n",
+ "\n",
+ "# Calculation \n",
+ "# total material balance, W + S + N = 1000 \n",
+ "#H2SO4 balance, xwh2so4 * W + xsh2so4 * S = xmh2so4*M\n",
+ "#HNO3 balance, xwhno3 * W + xnhno3 * N = xmhno3*M\n",
+ "#H2O balance, xwh2o*W+xnh2o*N + xsh2o*S = xmh2o*M\n",
+ "#solving the above equations simultaneously, we get,\n",
+ "W = 70.22 #kg\n",
+ "S = 398.88 #kg\n",
+ "N = 530.9 #kg\n",
+ "\n",
+ "# Result\n",
+ "print \"Waste acid = \",W,\"kg\"\n",
+ "print \"Concentrated H2SO4 = \",S,\"kg\"\n",
+ "print \"Concentrated HNO3 = \",N,\"kg\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Waste acid = 70.22 kg\n",
+ "Concentrated H2SO4 = 398.88 kg\n",
+ "Concentrated HNO3 = 530.9 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.6 pageno : 261"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "F = 1000. #kg\n",
+ "Psolute1 = 20. #%\n",
+ "Psolute2 = 80. #%\n",
+ "\n",
+ "\n",
+ "# Calculation \n",
+ "#taking solute balance\n",
+ "L3 = F * Psolute1 / Psolute2 \n",
+ "#taking total material balance\n",
+ "V = (F -L3) / 3 \n",
+ "#for first effect, total balance gives,\n",
+ "L1 = F - V \n",
+ "#solute balance gives,\n",
+ "Psolute3 = F * Psolute1 / L1 \n",
+ "#For second effect, total balance gives,\n",
+ "L2 = L1 - V \n",
+ "#solute balnce gives,\n",
+ "Psolute4 = L1 * Psolute3 / L2 \n",
+ "\n",
+ "# Result\n",
+ "print \"solute entering second effect = %.2f\"%Psolute3,\"%\"\n",
+ "print \"Weight entering second effect\",L1,\"kg\"\n",
+ "print \"solute entering third effect = \",Psolute4,\"%\"\n",
+ "print \"Weight entering third effect\",L2,\"kg\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "solute entering second effect = 26.67 %\n",
+ "Weight entering second effect 750.0 kg\n",
+ "solute entering third effect = 40.0 %\n",
+ "Weight entering third effect 500.0 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.7 pageno : 265"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "F = 100. #kg\n",
+ "xf = 0.25 \n",
+ "x2 = 7/107. \n",
+ "P1 = 10 #%\n",
+ "\n",
+ "# Calculation \n",
+ "W3 = P1 * F * (1-xf)/100. #(W3 - weight of water evaporated)\n",
+ "\n",
+ "# let W1 and W2 be weight of crystal and weight of mother liquor remaining after crystallization resp_,\n",
+ "#F = W1 + W2 + W3\n",
+ "#100 = W1 + W2 + 7.5\n",
+ "#solute balance gives, F*xf = W1*x1 + W2*x2\n",
+ "#100*0.25 = W1*1+W2 * 0.0654\n",
+ "W2 = (F - W3 - F*xf)/(1-x2) \n",
+ "W1 = F - W3 - W2 \n",
+ "\n",
+ "# Result\n",
+ "print \"yeild of the crystals = %.2f\"%W1,\"kg\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "yeild of the crystals = 20.28 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.8 pageno : 266"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "F = 100. #kg\n",
+ "xf = 0.15 \n",
+ "P1 = 80. #% ( Carbonate recovered )\n",
+ "M1 = 106. #(Molecular weight of Na2CO3)\n",
+ "M2 = 286. #(Molecular weight of Na2CO3.10H2O)\n",
+ "\n",
+ "# Calculation \n",
+ "x1 = M1 / M2 #(Weight fraction of Na2CO3 in crystals)\n",
+ "Mrecovered = P1 * F * xf / 100 \n",
+ "Wcrystal = Mrecovered / x1 \n",
+ "\n",
+ "# Result\n",
+ "print \"(a)quantity of crystals formed = %.2f\"%Wcrystal,\"kg\"\n",
+ "#Na2CO3 balance gives, F*xf = Wcrystal*x1 + W2*x2\n",
+ "#W2 weight of mother liquor remaining after crystallization\n",
+ "#let M = W2 * x2,therefore\n",
+ "M = F * xf - Mrecovered \n",
+ "x2 = 0.09 \n",
+ "W2 = M/x2 \n",
+ "W3 = F - Wcrystal - W2 #weight of water evaporated\n",
+ "print \"(b)Weight of water evaporated = %.2f\"%W3,\"kg\"\n",
+ "\n",
+ "# note : answer may vary because of rounding error"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)quantity of crystals formed = 32.38 kg\n",
+ "(b)Weight of water evaporated = 34.29 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.9 pageno : 267"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "m = 100. #kg (of 60% solution)\n",
+ "#w - water added to the original solution\n",
+ "#w1 - wt. of Na2S2O3.5H2O crystallized\n",
+ "#w2 - wt. of mother liquor obtained\n",
+ "#w3 - solution carried away by the crystals\n",
+ "xf = 0.6 \n",
+ "Mna2s2o3 = 158 \n",
+ "Mna2s2o35h2o = 248 \n",
+ "\n",
+ "# Calculation \n",
+ "mcrystals = m * xf * Mna2s2o35h2o / Mna2s2o3 \n",
+ "# free water available = m + w - 1 - mcrystals\n",
+ "#concentration of impurity = 1/(w+4.823)\n",
+ "#total balance, 100 - 1 + w = w1 + w2 + w3\n",
+ "#w1 + w2 + w3 - w = 99\n",
+ "#Na2S2O3 balance, 60 = (w1 + w2 * 1.5/2.5 + w3 * 1.5/2.5)*158/248\n",
+ "#w1 + 0.6 * w2 + 0.6 * w3 = 94.177\n",
+ "#each gram crystals carry 0.05 kg solution,\n",
+ "#w3 = 0.05 * w1\n",
+ "#impurity % = 0.1\n",
+ "#impurity = w3 /(2.5 * (w+4.823))\n",
+ "#solving above equations, we get\n",
+ "w = 14.577 #kg\n",
+ "w1 = 65.08 #kg\n",
+ "w2 = 45.25 #kg\n",
+ "w3 = 0.05 * w1\n",
+ "\n",
+ "# Result \n",
+ "print \"(a)amount of water added = %.2f\"%w,\"kg\"\n",
+ "print \"(b)amount of Na2S2O3.5H2O crystals added = \",w1,\"kg\"\n",
+ "m1 = w1 * Mna2s2o3 / Mna2s2o35h2o + w3 * 1.5 * Mna2s2o3 / (2.5 * Mna2s2o35h2o) \n",
+ "P = m1*100/(m*xf) \n",
+ "print \"(c)Percentage recovery of Na2S2O3 = %.1f\"%P,\"%\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)amount of water added = 14.58 kg\n",
+ "(b)amount of Na2S2O3.5H2O crystals added = 65.08 kg\n",
+ "(c)Percentage recovery of Na2S2O3 = 71.2 %\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.10 pageno : 271"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "m = 100. #kg\n",
+ "Pin1 = 40. #% ( tannin )\n",
+ "Pin2 = 5. #% ( moisture )\n",
+ "Pin3 = 23. #% ( soluble non tannin material )\n",
+ "\n",
+ "# Calculation \n",
+ "Pin4 = 100 - Pin1 - Pin2 - Pin3 #% ( insoluble lignin )\n",
+ "\n",
+ "# since, lignin is insoluble, all of it will be present in the residue\n",
+ "Pout1 = 3. #%\n",
+ "Pout2 = 50. #%\n",
+ "Pout3 = 1. #%\n",
+ "Pout4 = 100 - Pout1 - Pout2 - Pout3 \n",
+ "\n",
+ "#let W be the mass of residue, then we get\n",
+ "W = Pin4 * m / Pout4 \n",
+ "Ptannin = W * Pout1 * 100 / (m * Pin1) \n",
+ "\n",
+ "# Result\n",
+ "print \"Percent of original tannin unextracted = %.1f\"%Ptannin,\"%\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Percent of original tannin unextracted = 5.2 %\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.11 pageno : 271\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "F = 100. #kg\n",
+ "\n",
+ "#F - feed, R - overflow, U - underflow, S - solvent\n",
+ "#F + S = U + R ( Total balance )\n",
+ "Poil1 = 49. #% ( 1 - feed )\n",
+ "Ppulp1 = 40. #%\n",
+ "Psalts1 = 3. #%\n",
+ "\n",
+ "# Calculation \n",
+ "Pwater = 100 - Poil1 - Ppulp1 - Psalts1 \n",
+ "Phexane2 = 25. #%(2 - underflow)\n",
+ "Psalts2 = 2.5 #%\n",
+ "Poil2 = 15. #%\n",
+ "Pwater2 = 7.5 #%\n",
+ "Ppulp2 = 100 - Phexane2 - Poil2 - Pwater2 - Psalts2 \n",
+ "Poil3 = 25. #% ( 3 - extract )\n",
+ "\n",
+ "#taking pulp ( inert ) balance\n",
+ "U = Ppulp1 * F / Ppulp2 \n",
+ "\n",
+ "#oil balance gives, F * Poil1 = U * Poil2 + R * Poil3,from these , we get\n",
+ "R = (F * Poil1 - U * Poil2)/Poil3 \n",
+ "S = U + R - F \n",
+ "\n",
+ "# Result\n",
+ "print \"(a)The amount of solvent used for extraction = \",S,\"kg\"\n",
+ "Precovered = 95. #%\n",
+ "mhexane2 = Phexane2 * U / 100 \n",
+ "mrecovered = mhexane2 * Precovered / 100 \n",
+ "P = mrecovered * 100 / S \n",
+ "print \"(b)Percent of hexane used that is recovered from the underflow = %.2f\"%P,\"%\"\n",
+ "Poil = Poil3 * R * 100 / (F * Poil1 ) \n",
+ "print \"(c)Percent recovery of oil = %.2f\"%Poil,\"%\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)The amount of solvent used for extraction = 128.0 kg\n",
+ "(b)Percent of hexane used that is recovered from the underflow = 14.84 %\n",
+ "(c)Percent recovery of oil = 75.51 %\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.12 pageno : 274"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "#F = feed(wet solid), V1 = water evaporated(drier), \n",
+ "#V2 = water evaporated(oven), S1 = Dry solid(drier), S2 = Dry solid(oven)\n",
+ "# variables \n",
+ "F = 1000. #kg\n",
+ "xf = 0.8 \n",
+ "x1 = 0.15 \n",
+ "x2 = 0.02 \n",
+ "\n",
+ "# Calculation \n",
+ "#moisture free solid balance for drier, F * ( 1 - xf) = S1 * ( 1 - x1 )\n",
+ "S1 = F * ( 1 - xf )/(1 - x1) \n",
+ "\n",
+ "#total balance for drier , F = S1 + V1\n",
+ "V1 = F - S1 \n",
+ "\n",
+ "#For oven, S1 * ( 1 - x1 ) = S2 * ( 1 -x2 )\n",
+ "S2 = S1 * ( 1 - x1 )/(1 - x2) \n",
+ "\n",
+ "#Also, S1 = S2 + V2\n",
+ "V2 = S1 - S2 \n",
+ "\n",
+ "# Result\n",
+ "print \"(a)Weight of product leaving the drier = %.2f\"%S1,\"kg\"\n",
+ "print \" Weight of product leaving the oven = %.2f\"%S2,\"kg\"\n",
+ "P1 = V1 *100/ (F * xf) \n",
+ "P2 = V2 *100/ (F * xf) \n",
+ "\n",
+ "print \"(b)Percentage of original water removed in drier = %.1f\"%P1,\"%\"\n",
+ "print \" Percentage of original water removed in oven = %.2f\"%P2,\"%\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)Weight of product leaving the drier = 235.29 kg\n",
+ " Weight of product leaving the oven = 204.08 kg\n",
+ "(b)Percentage of original water removed in drier = 95.6 %\n",
+ " Percentage of original water removed in oven = 3.90 %\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.13 pageno : 275"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "#Ss = solid flow rate,\n",
+ "\n",
+ "Pwaterin = 25. #%\n",
+ "Pwaterout = 5. #%\n",
+ "\n",
+ "# Calculation \n",
+ "X1 = Pwaterin/(100 - Pwaterin) #kg water/kg dry air\n",
+ "X2 = Pwaterout/(100 - Pwaterout) #kg water/kg dry air\n",
+ "\n",
+ "#form humidity chart,\n",
+ "Y2 = 0.015 #kg water/kg dry air\n",
+ "Y1 = 0.035 #kg water/kg dry air\n",
+ "m = 1. #kg of dry air\n",
+ "\n",
+ "#Ss * X1 + Y2 = Ss * X2 + Y1\n",
+ "Ss = (Y1 - Y2) / ( X1 - X2 ) \n",
+ "T = 87.5 + 273.15 #K\n",
+ "P = 101.3 #kPa\n",
+ "Tstp = 273.15 #K\n",
+ "Pstp = 101.3 #kPa\n",
+ "Vstp = 22.4143 #m**3/mol\n",
+ "V = 100. #m**3\n",
+ "N = V * P * Tstp / ( Vstp * Pstp * T) \n",
+ "Nr2 = Y2 * 29 / 18. #kmol of water / kmol of dry air\n",
+ "Ndryair = N * 1 / (1 + Nr2) \n",
+ "mdryair = Ndryair * 29 \n",
+ "mevaporated = mdryair * ( Y1 - Y2 ) \n",
+ "\n",
+ "# Result\n",
+ "print \"(a)total moisture evaporated per 100m**3 of air entering = %.3f\"%mevaporated,\"kg\"\n",
+ "Ss1 = mdryair * Ss \n",
+ "mproduct = Ss1 * ( 1 + X2 ) \n",
+ "print \"(b)mass of finished product per 100m**3 of air entering = %.2f\"%mproduct,\"kg\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)total moisture evaporated per 100m**3 of air entering = 1.914 kg\n",
+ "(b)mass of finished product per 100m**3 of air entering = 7.18 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 20
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.14 pageno : 278"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "#F = feed, E = extract, S = solvent, R = Raffinate\n",
+ "\n",
+ "xwaterF = 0.7 #Feed\n",
+ "xalcoholF = 0.3 \n",
+ "xwaterR = 0.71 #raffinate\n",
+ "xalcoholR = 0.281 \n",
+ "xethyR = 0.009 \n",
+ "xwaterE = 0.008 #Extract\n",
+ "xalcoholE = 0.052 \n",
+ "xethyE = 0.94 \n",
+ "\n",
+ "#Total balance, R + E = F + S\n",
+ "F = 100. #kg\n",
+ "\n",
+ "#R + E = 100 + S (1)\n",
+ "#Isopropyl balance, xalcoholR * R + xalcoholE*E = xalcoholF * F\n",
+ "#0.281*R + 0.052 * E = 30 (2)\n",
+ "#Ethylene tetra chloride balance, xethyR * R + xethyE * E = S\n",
+ "#0.009*R + 0.94*E = S (3)\n",
+ "#Solving equation 1, 2 and 3 simultaneously, we get,\n",
+ "\n",
+ "S = 45.1 \n",
+ "E = 47.04 \n",
+ "R = 98.06 \n",
+ "# Calculation and Result\n",
+ "print \"(a)Amount of solvent used = \",S,\"kg\"\n",
+ "print \"(b)Amount of extract = \",E,\"kg\"\n",
+ "print \" Amount of raffinate = \",R,\"kg\"\n",
+ "mextracted = E * xalcoholE \n",
+ "P1 = mextracted * 100 / (F * xalcoholF) \n",
+ "print \"(c)Percent of isopropyl alcohol extracted = %.2f\"%P1,\"%\"\n",
+ "\n",
+ "# note : answer may vary because of rounding error.\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)Amount of solvent used = 45.1 kg\n",
+ "(b)Amount of extract = 47.04 kg\n",
+ " Amount of raffinate = 98.06 kg\n",
+ "(c)Percent of isopropyl alcohol extracted = 8.15 %\n"
+ ]
+ }
+ ],
+ "prompt_number": 22
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.15 pageno : 282"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "G1 = 100. #kmol\n",
+ "\n",
+ "#G1 and G2 be the molar flow rate of the gas at the inlet and the\n",
+ "# exit of the absorber resp_,y1 and y2 mole fraction at entrance and exit resp_,\n",
+ "\n",
+ "y1 = 0.25 #%\n",
+ "y2 = 0.05 #%\n",
+ "\n",
+ "# Calculation \n",
+ "#air balance gives, G1 * ( 1-y1 ) = G2 * ( 1-y2 )\n",
+ "G2 = G1 * ( 1-y1 ) / (1 - y2) \n",
+ "maleaving = G2 * y2 \n",
+ "maentering = G1 * y1 \n",
+ "Pabsorbed = (maentering - maleaving) * 100 / ( maentering) \n",
+ "\n",
+ "# Result\n",
+ "print \"Percentage of acetone absorbed = %.2f\"%Pabsorbed,\"%\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Percentage of acetone absorbed = 84.21 %\n"
+ ]
+ }
+ ],
+ "prompt_number": 23
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.16 pageno : 283"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "F = 5000. #kg/h\n",
+ "P1 = 50. #% (H2O4 in)\n",
+ "MH2SO4 = 98.016 \n",
+ "P1gas = 65. #(nitrogen in gas entering)\n",
+ "P2gas = 35. # ( SO3)\n",
+ "MN2 = 28. \n",
+ "MSO3 = 80. \n",
+ "\n",
+ "# Calculation \n",
+ "Mavg = ( MN2 * P1gas + MSO3 * P2gas)/100 #avg molecular wt. of entering gas\n",
+ "G = 4500. #kg/h\n",
+ "Ng = G / Mavg \n",
+ "NN2 = Ng * P1gas / 100 \n",
+ "NSO3 = Ng - NN2 \n",
+ "P2 = 75. #% (H2O4 out)\n",
+ "\n",
+ "#W be the mass of 75% H2SO4, x and y be the moles of SO3 and water vapour leaving resp_,\n",
+ "Pwater = 25. #kPa\n",
+ "Ptotal = 101.3 #kPa\n",
+ "\n",
+ "#Pwater / Ptotal = y / ( NN2 + x + y )\n",
+ "#we get, y = 0.32765 * x + 2.744 (1)\n",
+ "#Total balance Feed + G = W + (NN2 * 28 + x * 80 + y * 18.016)\n",
+ "#we get, W + 80*x + 18.016*y = 7727.32 (2)\n",
+ "#from 1 and 2, 84.9174*x + W = 7352.68 (3)\n",
+ "#SO3 balance, So3 eneterin with 50% H2SO4 + SO3 in feed gas = SO leaving with 75%H2SO4 + SO3 leaving in exit gas\n",
+ "#5000*0.5*80/98.016 + 34.09*80 = 80* x + 0.75*W * 80/98.016 (4)\n",
+ "# from 3 and 4,\n",
+ "x = 9.74 \n",
+ "Nabsorbed = NSO3 - x \n",
+ "Pabsorbed = Nabsorbed * 100 / NSO3 \n",
+ "\n",
+ "# Result\n",
+ "print \"Percentage of SO3 absorbed = %.2f\"%Pabsorbed,\"%\"\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Percentage of SO3 absorbed = 71.43 %\n"
+ ]
+ }
+ ],
+ "prompt_number": 24
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.17 pageno : 287"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "F = 200. #kmol/h\n",
+ "#F, D and W be the flow rates of the feed, the distillate and residue \n",
+ "# resp_, xf , xd and xw be the mole fraction of ethanol in the fee, distillate and the residue resp_\n",
+ "\n",
+ "xf = 0.10 \n",
+ "xd = 0.89 \n",
+ "xw = 0.003 \n",
+ "\n",
+ "\n",
+ "# Calculation \n",
+ "#total balance gives, F = D + W\n",
+ "#D + W = 200 (1)\n",
+ "#Alcohol balance gives, F*xf = D*xd + W*xw\n",
+ "#0.89*D+0.003*W = 20 (2)\n",
+ "#solving 1 and 2\n",
+ "D = 21.87 #kmol/h\n",
+ "W = 178.13 #kmol/h\n",
+ "Nawasted = W*xw \n",
+ "mmakeup = Nawasted * 46*24 \n",
+ "\n",
+ "# Result\n",
+ "print \"The make up alcohol required per day = %.2f\"%mmakeup,\"kg\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The make up alcohol required per day = 589.97 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 25
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.18 pageno : 287"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "F = 100. #kg\n",
+ "#F, D and W be the flow rates of the feed, the distillate and bottom \n",
+ "# product resp_, xf , xd and xw be the mole fraction of methanol in the \n",
+ "# fee, distillate and the bottom product resp_\n",
+ "\n",
+ "xf = 0.20 \n",
+ "xd = 0.97 \n",
+ "xw = 0.02 \n",
+ "#using, F = D + W and F*xf + D*xd + W*xw,we get\n",
+ "D = 18.95 #kg/h\n",
+ "W = 81.05 #kg/h\n",
+ "R = 3.5 \n",
+ "#R = L / D\n",
+ "#for distillate = 1kg\n",
+ "D1 = 1. #kg\n",
+ "\n",
+ "# Calculation \n",
+ "L = R*D1 \n",
+ "#Taking balance around the condenser,\n",
+ "G = L + D1 \n",
+ "mcondensed = G * D / F \n",
+ "\n",
+ "# Result\n",
+ "print \"(a)Amount of distillate = \",D,\"kg\"\n",
+ "print \" Amount of Bottom Product = \",W,\"kg\"\n",
+ "print \"(b)Amount of vapour condensed per kg of distillate = \",G,\"kg\"\n",
+ "print \"(c)Amount of vapour condensed per kg of feed = %.3f\"%mcondensed,\"kg\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)Amount of distillate = 18.95 kg\n",
+ " Amount of Bottom Product = 81.05 kg\n",
+ "(b)Amount of vapour condensed per kg of distillate = 4.5 kg\n",
+ "(c)Amount of vapour condensed per kg of feed = 0.853 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 26
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.19 pageno : 289"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "mdryair = 1. #kg\n",
+ "Pwater1 = 1.4 #kPa ( Partial pressure at 285K )\n",
+ "Pwater2 = 10.6 #kPa ( Partial pressure at 320K )\n",
+ "P = 101.3 # ( Total )\n",
+ "\n",
+ "# Calculation \n",
+ "Ys1 = Pwater2 * 18 / ((P - Pwater2)*29) #( saturation humidity at 320K )\n",
+ "Ys2 = Pwater1 * 18 / ((P - Pwater1)*29) #( saturation humidity at 285K )\n",
+ "Ys = 0.03 #kg water / kg dry air. (final humidity)\n",
+ "\n",
+ "\n",
+ "# humidity of air leaving dehumidifier is Ys2 and humidity of bypassed \n",
+ "# air is Ys1. these 2 streams combine to give humidity of 0.03kg water / kg dry air.\n",
+ "#therefore, taking balance we get, 1*Ys2 + x * Ys1 = (1 + x)*Ys\n",
+ "x = (1*Ys2 - 1*Ys)/(Ys - Ys1) \n",
+ "\n",
+ "# Result\n",
+ "print \"(a)Mass of dry air bypassed per kg of dry air sent through the dehumidifier = %.3f\"%x,\"kg dry air\"\n",
+ "mcondensed = Ys1 - Ys2 \n",
+ "mwetair = mdryair + Ys1 \n",
+ "Nwetair = mdryair/29 + Ys1/18.016 \n",
+ "Vstp = 22.4143 #m**3/kmol\n",
+ "Vstp1 = Nwetair * Vstp \n",
+ "T = 320. #K\n",
+ "P = 101.3 #kPa\n",
+ "Tstp = 273.15 #K\n",
+ "Pstp = 101.325 #kPa\n",
+ "V = Vstp1 * Pstp * T / (P * Tstp) \n",
+ "Vgiven = 100. #m**3\n",
+ "mcondensed1 = mcondensed * Vgiven / V \n",
+ "print \"(b)mass of water vapour condensed in the dehumidifier per 100m**3 of air sent through it = %.4f\"%mcondensed1,\"kg\"\n",
+ "mfinal = mdryair + x \n",
+ "mfinalair = mfinal * Vgiven / V \n",
+ "N = mfinalair / 29. \n",
+ "Ysn = Ys * 29/18. #kmol water / kmol dry air\n",
+ "Ntotal = N * (Ysn + 1) \n",
+ "Vfinal = Ntotal * Vstp * Pstp * T / ( Tstp * P ) \n",
+ "print \"(c)Volume of final air obtained per 100 cubic metres f air passed through dehumidifier = %.1f\"%\\\n",
+ "Vfinal,\"m**3\"\n",
+ "\n",
+ "# note: answer may vary because of rounding error."
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)Mass of dry air bypassed per kg of dry air sent through the dehumidifier = 0.501 kg dry air\n",
+ "(b)mass of water vapour condensed in the dehumidifier per 100m**3 of air sent through it = 6.3118 kg\n",
+ "(c)Volume of final air obtained per 100 cubic metres f air passed through dehumidifier = 140.9 m**3\n"
+ ]
+ }
+ ],
+ "prompt_number": 29
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.20 pageno : 292"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variables \n",
+ "F = 100. #kg/h\n",
+ "xf = 0.2 \n",
+ "xp = 0.93 \n",
+ "xr = 0.5/1.5 \n",
+ "xx = 0.65 \n",
+ "\n",
+ "# Calculation \n",
+ "#R - recycle stream, P - Product stream , W - water separeted and removed\n",
+ "#component A balance, F * xf = P * xp, that is,\n",
+ "P = F * xf / xp \n",
+ "#Total balance, F = P + W,therefore\n",
+ "W = F - P \n",
+ "#x be the flow rate of strea entering the filter \n",
+ "#total balance, x = P + R (1)\n",
+ "#component A balance , 0.65 * x = 0.5*R/1.5 + 0.93P (2)\n",
+ "#Solving 1 and 2, we get,\n",
+ "R = (xx * P - xp * P)/(xr - xx) \n",
+ "\n",
+ "# Result\n",
+ "print \"Flow rate of the recycle stream = %d\"%R,\"kg/h\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Flow rate of the recycle stream = 19 kg/h\n"
+ ]
+ }
+ ],
+ "prompt_number": 30
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.21 pageno : 293"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# variables \n",
+ "F = 1000. #kg/h\n",
+ "xfwater = 0.7 \n",
+ "xpwater = 0.2 \n",
+ "xrwater = 0.20 \n",
+ "xswater = 0.5 \n",
+ "y1 = 0.0025 \n",
+ "y2 = 0.05 \n",
+ "\n",
+ "# Calculation \n",
+ "#R - recycle, S - stream entering granulator, P - Product, G1 - air entering the drier, G2 - air leaving the drier,\n",
+ "#takin overall, moisture free balance, F * xf = P * xp\n",
+ "P = F * ( 1 - xfwater )/(1 - xpwater ) \n",
+ "# taking material balance at point where recycle strea joins the feed,\n",
+ "# F = R + S\n",
+ "#water balance, F*xfwater = R*xrwater + S*xswater,solving this we get,\n",
+ "R = (-F*xfwater +F*xswater)/(xrwater - xswater) \n",
+ "S = F + R \n",
+ "mleaving = P + R #solid leaving the drier\n",
+ "#dry air entering will there be in air leaving, therefore\n",
+ "#G1 * ( 1 - y1 ) = G2 * ( 1 - y2 )\n",
+ "# water balance over the drier gives, S*xswater+G1*y1=G2*y2+(P+R)*xpwater\n",
+ "#from above 2 equations , we get\n",
+ "G1 = ((mleaving*xpwater - S*xswater)/(y1 - y2*(1-y1)/(1-y2))) \n",
+ "\n",
+ "# Result\n",
+ "print \"(a)Amount of solid recycled = %.2f\"%R,\"kg/h\"\n",
+ "mdryair = G1 * (1 - y1) \n",
+ "print \"(b)circulation rate of air in the drier on dry basis = %.d\"%round(mdryair,-2),\"kg/h\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)Amount of solid recycled = 666.67 kg/h\n",
+ "(b)circulation rate of air in the drier on dry basis = 12500 kg/h\n"
+ ]
+ }
+ ],
+ "prompt_number": 32
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.22 pageno : 296"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# variables \n",
+ "xf = 500. * 10**-6 \n",
+ "xp = 50. * 10**-6 \n",
+ "xb = 1600. * 10**-6 \n",
+ "\n",
+ "# Calculation \n",
+ "#F - Feed water rate, B - blow down rate, S - high pressure steam, P - process stream rate\n",
+ "# total balance, F = P + B\n",
+ "# Solid balance, F * xf + P * xp = B * xb\n",
+ "#eliminating P, we get, F * xf + (F - B)*xp = B * xb\n",
+ "#let F/B be X\n",
+ "X = (xb + xp)/(xf + xp) \n",
+ "\n",
+ "# Result\n",
+ "print \"the ratio of feed water to the blowdown water = \",X\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "the ratio of feed water to the blowdown water = 3.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 33
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file