{ "metadata": { "name": "" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Chapter 8 : Phase Equilibria III Phase Diagrams" ] }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.1 Page No : 470" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "from scipy.optimize import fsolve \n", "import math \n", "\n", "# Variables\n", "A_C5H12 = 9.2131 ; \t\t\t#From table E8.2A\n", "B_C5H12 = 2477.07 ; \t\t\t#From table E8.2A\n", "C_C5H12 = -39.94 ; \t\t\t#From table E8.2A\n", "A_C6H12 = 9.1325 ; \t\t\t#From table E8.2A\n", "B_C6H12 = 2766.63 ; \t\t\t#From table E8.2A\n", "C_C6H12 = -50.50 ; \t\t\t#From table E8.2A\n", "A_C6H14 = 9.2164 ; \t\t\t#From table E8.2A\n", "B_C6H14 = 2697.55 ; \t\t\t#From table E8.2A\n", "C_C6H14 = -48.78 ; \t\t\t#From table E8.2A\n", "A_C7H16 = 9.2535 ; \t\t\t#From table E8.2A\n", "B_C7H16 = 2911.32 ; \t\t\t#From table E8.2A\n", "C_C7H16 = -56.51 ; \t\t\t#From table E8.2A\n", "x_C5H12 = 0.3 ;\n", "x_C6H12 = 0.3 ;\n", "x_C6H14 = 0.2 ;\n", "x_C7H16 = 0.2 ;\n", "\n", "# Calculations\n", "def f82(T):\n", " return -1 + (x_C5H12 * math.exp(A_C5H12 - B_C5H12 / (T + C_C5H12)) + x_C6H12 *\\\n", " math.exp(A_C6H12 - B_C6H12 / (T + C_C6H12)) + x_C6H14 * \\\n", " math.exp(A_C6H14 - B_C6H14 / (T + C_C6H14)) + x_C5H12 * math.exp(A_C5H12 - B_C5H12 / (T \\\n", " + C_C5H12)) + x_C7H16 * math.exp(A_C7H16 - B_C7H16 / (T + C_C7H16)));\n", "\n", "y =fsolve(f82,300)\n", "\n", "# Results\n", "print \" The temperature at which the liquid develops the first bubble of vapour = %d K\"%(y); \n", "\n", "# Note : answer may vary because of fsolve function of python." ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ " The temperature at which the liquid develops the first bubble of vapour = 317 K\n" ] } ], "prompt_number": 5 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.2 Page No : 471" ] }, { "cell_type": "code", "collapsed": false, "input": [ "from scipy.optimize import fsolve \n", "import math \n", "\n", "# Variables\n", "A_C5H12 = 9.2131 ; \t\t\t#From table E8.2A\n", "B_C5H12 = 2477.07 ; \t\t\t#From table E8.2A\n", "C_C5H12 = -39.94 ; \t\t\t#From table E8.2A\n", "A_C6H12 = 9.1325 ; \t\t\t#From table E8.2A\n", "B_C6H12 = 2766.63 ; \t\t\t#From table E8.2A\n", "C_C6H12 = -50.50 ; \t\t\t#From table E8.2A\n", "A_C6H14 = 9.2164 ; \t\t\t#From table E8.2A\n", "B_C6H14 = 2697.55 ; \t\t\t#From table E8.2A\n", "C_C6H14 = -48.78 ; \t\t\t#From table E8.2A\n", "A_C7H16 = 9.2535 ; \t\t\t#From table E8.2A\n", "B_C7H16 = 2911.32 ; \t\t\t#From table E8.2A\n", "C_C7H16 = -56.51 ; \t\t\t#From table E8.2A\n", "\n", "y_C5H12 = 0.3 ;\n", "y_C6H12 = 0.3 ;\n", "y_C6H14 = 0.2 ;\n", "y_C7H16 = 0.2 ;\n", "P = 1 ; \t\t\t#[bar]\n", "\n", "# Calculations and Results\n", "def f83(T):\n", " return -1 + P * ( y_C5H12 / math.exp(A_C5H12 - B_C5H12 / (T + \n", " C_C5H12)) + y_C6H12 / math.exp(A_C6H12 - B_C6H12 / (T + C_C6H12)) + \\\n", " y_C6H14 / math.exp(A_C6H14 - B_C6H14 / (T + C_C6H14)) + y_C7H16 / math.exp(A_C7H16 - B_C7H16 / (T + C_C7H16)));\n", "\n", "y =fsolve(f83,300)\n", "\n", "print \"The temperature at which vapour develops the first drop of liquid = %.f K\"%(y) ;\n", "\n", "T = y ;\n", "P_sat_C5H12 = math.exp(A_C5H12 - B_C5H12 / (T + C_C5H12)) ;\n", "p_sat_C6H12 = math.exp(A_C6H12 - B_C6H12 / (T + C_C6H12)) ;\n", "P_sat_C6H14 = math.exp(A_C6H14 - B_C6H14 / (T + C_C6H14)) ;\n", "P_sat_C7H16 = math.exp(A_C7H16 - B_C7H16 / (T + C_C7H16)) ;\n", "\n", "x_C5H12 = y_C5H12 * P / P_sat_C5H12 ;\n", "x_C6H12 = y_C6H12 * P / p_sat_C6H12 ;\n", "x_C6H14 = y_C6H14 * P / P_sat_C6H14 ;\n", "x_C7H16 = y_C7H16 * P / P_sat_C7H16 ;\n", "\n", "print \"x_C5H12 = %.3f x_C6H12 = %.3f x_C6H14 = %.3f x_C7H16 = %.3f\"%(x_C5H12,x_C6H12,x_C6H14,x_C7H16) ;\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The temperature at which vapour develops the first drop of liquid = 349 K\n", "x_C5H12 = 0.091 x_C6H12 = 0.345 x_C6H14 = 0.159 x_C7H16 = 0.405\n" ] } ], "prompt_number": 6 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.3 Page No : 471" ] }, { "cell_type": "code", "collapsed": false, "input": [ "from scipy.integrate import *\n", "from numpy import *\n", "import math \n", "\n", "# Variables\n", "P_a_sat = 0.53 ; \t\t\t#[bar]\n", "P_b_sat = 0.16 ; \t\t\t#[bar]\n", "X = 1./3 ;\n", "Y = 1- X ;\n", "x_a_feed = 0.5 ;\n", "x_b_feed = 0.5 ;\n", "\n", "# Calculations\n", "a = Y * -(x_a_feed + x_b_feed) + Y**2 ;\n", "b = X * Y *(P_a_sat + P_b_sat) - (x_a_feed * P_b_sat + x_b_feed * P_a_sat)*X ;\n", "c = P_a_sat * P_b_sat * X**2;\n", "\n", "k=poly1d([a,b,c])#'k',0);\n", "#P = c + b*k**1 + a*k**2 ;\n", "M = roots(k);\n", "\n", "# Results\n", "for i in range(2):\n", " ans = sign(M[0]) ;\n", " if ans == 1:\n", " print \" Pressure = %.2f bar\"%(M[i]) ; \n", " Xa = x_a_feed / (P_a_sat / M[0] * X + Y) ;\t\t\t#....E8.4D\n", " Ya = Xa * P_a_sat / M[0] \t\t\t#.....E8.4B\n", " print \" Xa = %.2f Ya = %.1f\"%(Xa,Ya);\n", " break\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ " Pressure = 0.31 bar\n", " Xa = 0.40 Ya = 0.7\n" ] } ], "prompt_number": 8 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.5 Page No : 476" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "from scipy.optimize import fsolve \n", "import math \n", "\n", "# Variables\n", "P1_sat = 0.72 ; \t\t\t#[bar]\n", "P2_sat = 0.31 ; \t\t\t#[bar]\n", "A = 3590. ;\n", "B = -1180. ;\n", "R = 8.314 ;\n", "T = 70. + 273 ;\t\t\t#[K]\n", "\n", "# Calculations\n", "def f85(x1):\n", " return -.48 + ( x1 * math.exp((A + 3*B) * (1 - x1)**2 / (R * T) - \n", " 4 * B * (1 - x1)**3 / (R * T)) * P1_sat) / ( x1 * math.exp((A + 3*B) * \n", " (1 - x1)**2 / (R * T) -4 * B * (1 - x1)**3 / (R * T)) * P1_sat +(1 - x1) * \n", " math.exp((A - 3*B) * x1**2 / (R * T) -4 * B * x1**3 / (R * T)) * P2_sat ) ; \n", "\n", "y = fsolve(f85,0.1)[0]\n", "x1 = y ;\n", "P = ( x1 * math.exp((A + 3*B) * (1 - x1)**2 / (R * T) - 4 * B * \n", "(1 - x1)**3 / (R * T)) * P1_sat) + (1 - x1) * math.exp((A - 3*B) * x1**2 / \n", "(R * T) -4 * B * x1**3 / (R * T)) * P2_sat ;\n", "\n", "# Results\n", "print \"The value of x1 = %.3f\"%(y) ;\n", "print \"Pressure = %.2f bar\"%(P) ;\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The value of x1 = 0.114\n", "Pressure = 0.55 bar\n" ] } ], "prompt_number": 5 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.7 Page No : 488" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Variables\n", "import math\n", "P = 0.223 ; \t\t\t#[bar]\n", "P_a_sat = 0.156 ; \t\t\t# [bar]\n", "P_b_sat = 0.124 ; \t\t\t#[bar]\n", "R = 8.314 ;\n", "T = 50 + 273 ;\n", "Xa = 0.554 ;\n", "Xb = 1 - Xa ;\n", "\n", "# Calculations\n", "gama_a = P / P_a_sat ;\n", "A1 = R * T * math.log(gama_a) / (Xb**2) * 10**-3 ;\n", "gama_b = P / P_b_sat ;\n", "A2 = R * T * math.log(gama_b) / (Xa**2) * 10**-3 ; \n", "\n", "A = math.ceil((A1 + A2) / 2) ;\n", "\n", "# Results\n", "print \"Value of two suffix Marguels parameter = %.1f kJ/mol\"%(A);\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Value of two suffix Marguels parameter = 5.0 kJ/mol\n" ] } ], "prompt_number": 6 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.9 Page No : 491" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Variables\n", "import math\n", "R = 8.314 ;\n", "T = 10 + 273 ; \t\t\t#[K]\n", "A_B = 9.2806 ; \t\t\t# From Appendix A , Table A1.1\n", "B_B = 2788.5 ; \t\t\t# From Appendix A , Table A1.1\n", "C_B = -52.36 ; \t\t\t# From Appendix A , Table A1.1\n", "A_C = 9.1325 ; \t\t\t# From Appendix A , Table A1.1\n", "B_C = 2766.63 ; \t\t\t# From Appendix A , Table A1.1\n", "C_C = -50.50 ; \t\t\t# From Appendix A , Table A1.1\n", "\n", "x1 = [0 ,0.0610 ,0.2149 ,0.3187 ,0.4320 ,0.5246 ,0.6117 ,0.7265 ,0.8040 ,0.8830 ,0.8999 ,1] ; \t\t\t#From table E8.9A\n", "P_exp = [6344 ,6590 ,6980 ,7140 ,7171 ,7216 ,7140 ,6974 ,6845 ,6617 ,6557 ,6073] ; \t\t\t#From table E8.9A\n", "\n", "P_1_sat = 6072.15 ; \t\t\t#[Pa]\n", "P_2_sat = 6344 ; \t\t\t#[Pa] \n", "\n", "A = [1390 ,1391 ,1392 ,1393 ,1394 ,1395 ,1396 ,1397 ,1398 ,1399 ,1400 ,1401 ,1402 ,1403 ,1404 ,1405 ,1406 ,1407 ,1408 ,1409 ,1410 ] ;\n", "\n", "C = zeros([21,12])\n", "for k in range(21):\n", " y = A[k] ;\n", " P = zeros(12)\n", " for i in range(12):\n", " P[i] = x1[i] * math.exp( y / (R * T ) * (1 - x1[i])**2) * P_1_sat+(1 - x1[i]) * math.exp(y / (R * T ) * x1[i]**2) * P_2_sat ;\n", " C[k,i] = (P[i] - P_exp[i])**2 ;\n", "\n", "R = zeros(21)\n", "for k in range(21):\n", " y = 0 ;\n", " for i in range(12):\n", " y = y + C[k,i] ; \n", " R[k] = y ;\n", "\n", "\n", "k = 100000. ;\n", "for i in range(21):\n", " K = R[i] ; \n", " if K < k:\n", " k = K ;\n", "\n", "for i in range(21):\n", " if R[i] == k :\n", " print \"The two suffix Margules co-efficient is = %g J/mol\" %(A[i]) ; \n", "\n", "#Note : answer may vary because of rounding off error." ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The two suffix Margules co-efficient is = 1401 J/mol\n" ] } ], "prompt_number": 10 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.10 Page No : 494" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Variables\n", "import math\n", "R = 8.314 ;\n", "T = 10 + 273.15\t\t\t#[K]\n", "A_B = 9.2806 ; \t\t\t# From Appendix A , Table A1.1\n", "B_B = 2788.5 ; \t\t\t# From Appendix A , Table A1.1\n", "C_B = -52.36 ; \t\t\t# From Appendix A , Table A1.1\n", "A_C = 9.1325 ; \t\t\t# From Appendix A , Table A1.1\n", "B_C = 2766.63 ; \t\t\t# From Appendix A , Table A1.1\n", "C_C = -50.50 ; \t\t\t# From Appendix A , Table A1.1\n", "\n", "x1 = [0,0.0610 ,0.2149 ,0.3187 ,0.4320 ,0.5246 ,0.6117 ,0.7265 ,0.8040 ,0.8830 ,0.8999 ,1] ; \t\t\t#From table E8.9A\n", "P_exp = [6344 ,6590 ,6980 ,7140 ,7171 ,7216 ,7140 ,6974 ,6845 ,6617 ,6557 ,6073] ; \t\t\t#From table E8.9A\n", "\n", "P_1_sat = 6073. ; \t\t\t#[Pa]\n", "P_2_sat = 6344. ; \t\t\t#[Pa] \n", "A = linspace(1390,1410,21) ;\n", "B = linspace(60,80,21)\n", "w = 1 / (R * T) ;\n", "S = zeros([21,21])\n", "for k in range(21):\n", " y = A[k] ;\n", " for i in range(21):\n", " z = B[i] ;\n", " P = zeros(12)\n", " R = zeros(12)\n", " for j in range(12):\n", " P[j] = x1[j] * math.exp((y + 3 * z) * (1 - (x1[j]))**2 *w-4*z*(1-x1[j])**3* w )* P_1_sat + (1-x1[j])*exp((y -3*z)*(x1[j])**2 * w + 4 * z * (x1[j]**3) * w )*P_2_sat ;\n", " R[j] =(P[j] - P_exp[j])**2 ;\n", " m = 0 ;\n", " for l in range(12):\n", " m = m + R[l]\n", " S[k,i] = m ;\n", "\n", "D = zeros(21)\n", "for i in range(21):\n", " k = S[i,0]\n", " for l in range(1,21):\n", " if S[i,l] < k:\n", " k = S[i,l]\n", " D[i] = k ;\n", "\n", "a = D[0] ;\n", "for i in range(2,21):\n", " if D[i] < a:\n", " a = D[i] ;\n", "\n", "# Results\n", "for i in range(21):\n", " if D[i] == a :\n", " for l in range(21):\n", " if S[i,l] == a:\n", " print \" A = %g J/mol\"%(A[i]);\n", " print \" B = %g J/mol\"%(B[l]) ;\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ " A = 1397 J/mol\n", " B = 69 J/mol\n" ] } ], "prompt_number": 3 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.11 Page No : 494" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%matplotlib inline\n", "\n", "from matplotlib.pyplot import *\n", "\n", "# Given\n", "R = 8.314 ;\n", "T = 10 + 273.15 ; \t\t\t#[K]\n", "x1 = [0 ,0.0610 ,0.2149 ,0.3187 ,0.4320 ,0.5246 ,0.6117 ,0.7265 ,0.8040 ,0.8830 ,0.8999 ,1] ; \t\t\t#From table E8.9A\n", "P_exp = [6344 ,6590 ,6980 ,7140 ,7171 ,7216 ,7140 ,6974 ,6845 ,6617 ,6557 ,6073 ,6073] ; \t\t\t#From table E8.9A\n", "y1 = [ 1 ,0.0953 ,0.2710 ,0.3600 ,0.4453,0.5106 ,0.5735 ,0.6626 ,0.7312 ,0.8200 ,0.8382, 0 ] ;\t\t\t#From table E8.9A\n", "P_1_sat = 6073. ; \t\t\t#[Pa]\n", "P_2_sat = 6344. ; \t\t\t#[Pa]\n", "\n", "n = 0 ;\n", "x2 = zeros(11)\n", "y2 = zeros(11)\n", "g_E = zeros(11)\n", "ydata = zeros(11)\n", "xdata = zeros(11)\n", "for i in range(1,11):\n", " x2[i] = 1 - x1[i] ;\n", " y2[i] = 1 - y1[i] ;\n", " g_E[i] = R * T *( x1[i] * math.log (( y1[i] * P_exp[i]) / (x1[i]* P_1_sat)) + x2[i] * math.log((y2[i] * P_exp[i]) / (x2[i] * P_2_sat)) ) ;\n", " n = n + g_E[i] / ((x1[i] * x2[i]) * 10) ;\n", " ydata[i-1] = (g_E[i]/(x1[i]*x2[i]));\n", " xdata[i-1] = x1[i] - x2[i] ;\n", "\n", "m= 0\n", "n=0\n", "o = 0\n", "p= 0\n", "N = 10\n", "for i in range(1,11):\n", " m = m + g_E[i] * (2 * x1[i] - 1) / ( x1[i] * x2[i]) ;\n", " n = n + g_E[i] / ( x1[i] * x2[i]) ;\n", " o = o + (2 * x1[i] - 1) ;\n", " p = p + (2 * x1[i] - 1)**2 ;\n", "\n", "x_bar = o / N ;\n", "y_bar = n / N ;\n", "a1 = (N * m - n * o)/(N * p - o**2) ;\n", "a0 = y_bar - a1 * x_bar ;\n", "\n", "ydata2 = zeros(11)\n", "for i in range(11):\n", " ydata2[i] = a0 + a1*xdata[i] ;\n", "\n", "# Results\n", "plot(xdata,ydata,\"+\") ;\n", "plot(xdata,ydata2) ;\n", "xlabel(\"x1-x2\")\n", "ylabel(\"g**E/x1x2 [J/mol]\")\n", "#suptitle(\"Fit of g E /x 1 x 2 vs. x 1 2 x 2 for benzene (1)\u2013cyclohexane (2) at 10\u00b0C to straight line\")\n", "ylim(1320,1500)\n", "\n", "print \" From average, the value of A = %d J/mol\"%(n/10) ;\n", "print \" From linear regression best fit line the values of A and B are \\\n", " %.1f J/mol & %.1f J/mol respectively .\"%(a0, a1) ;\n", "\t\t\t#Readers can refer figure E8.11 .\n", "show()\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Populating the interactive namespace from numpy and matplotlib\n", " From average, the value of A = 1408 J/mol" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", " From linear regression best fit line the values of A and B are 1401.3 J/mol & 76.1 J/mol respectively .\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nncaELhOo7VDb1rGEuCOLnZL9BhcXFyZOnMjEiRPJz89nz549Zs9MiOos+XQyEfoIkk4n8ab/m6wa\nu4r7at1n61hCWESJ5dGnTx8SEq6fufOpp54iNjbW9FjPnj1JSkqyfDpRI1W1q9IdOHuASH0kOw07\neb336ywfvZw6tSr3NkIh7lWJ5ZGTk2P6+9ChQ8Uek9VDwpJuLYnKutrq8LnDRG2JYuvJrbze+3WW\njFyCk6OTrWMJYRWyy4cQZvot6zeitkSxOW0z/+z1T2KGxVCvdj1bxxLCqkosj0uXLrFy5UqUUqa/\nAdN9IayhMq2mOn7+ODO2ziD+93im9pzKF49/QYP7Gtg6lhA2UeLeVhMmTDCdW0cpddt5dm49V5Wt\nyd5WwlJO/HWCmVtnsuboGqb0mMKUnlNoeF9DW8cSokJYfFfdyk7KQ1S0kxdPMmvrLFb+tpIXur/A\ny71epnGdxraOJSpQVT6OqKJY5NxWf//731FK8dxzz5U7mBBVTealTP6x9h90/aIrzvWdOf7icaIe\njpLiqIYq4rIWNVWJ5XHy5En69OnDsGHD8PPz4+TJk9bMJYTV/XHlD15c9yLen3vTqE4jjr5wlFmP\nzKKpU1NbRxOi0ilxg7leryczM5ODBw/i6+tLUVER48ePt2Y2IaziTPYZ5ibM5dv93xKuC+e3F36j\nRb0Wto4lLKSqHUdUWd11m8fTTz/NrFmzePvtt/niiy+smctsss1DmOtczjnm/TqP6ORoQr1Deb33\n67Rs0NLWsYQVVcXT31Q0i2zziIqKwtnZmaib67mMwsPDcXZ2xtPT0zQ2bdo0vL298fDwoG/fvpw4\ncQK4fkDiqFGjcHd3p3379sWuRZ6YmIhOp0Or1TJlyhSzcwhxq6zcLN7Y9Abun7hzrfAaB/9xkPcH\nvi/FIYQZ7loeM2bMQCnFzJkzzZ5wWFgY8fHxxcbeeOMN9u/fz6FDhxg9erSplJYuXYqjoyNHjhzh\nwIEDfPPNN6ZiCQsLIzo6msOHD3Py5ElWrVpldhYhAC7kXWDa5ml0/Lgjl65eYt+z+/go6CNcGrrY\nOpqwEVlNVX4W22Du7+9PkyZNio3Vr1/f9Hd2djYtW17/pafRaMjJyaGoqIicnBxq165N06ZNycjI\nwGg0otPpAAgJCSEuLs6sHEJcvHqRSH0kHT7qwNnssyQ+k8hnj3+GppHG1tGEjUl5lJ/VN5i/9dZb\n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\njh0DYNOmTbi7u9s005w5c8jMzCQtLY1ly5bxyCOP3HNxVEQupRQTJ06kc+fOt51ep6KU5XMbFBTE\nkiVLAEhKSsLBwQEXFxeL5ClrpoyMDEaOHMnixYst+pk2J9OJEydIS0sjLS2NUaNG8dlnn1msOMqa\nafDgwSQkJFBUVERubi47duyw6L+3smRq27YtmzZtAuDs2bOkpKTQpk2bu0+44rftW8fKlSuVq6ur\nqlOnjnJ2dlYDBw5USil16tQpFRQUZHreunXrlFarVe7u7mrOnDkWzXT+/HnVv39/5enpqR599FH1\n119/3TFTRESEateunerQoYMaO3asysvLs3mmffv2qW7duqnOnTurQYMGqQsXLtg80w16vd4qe1uV\nJde2bduUnZ2d8vb2Vl26dFFdunRRP//8c4VnudPn9vPPP1eff/656TnPP/+86ty5s9LpdCXucWjN\nTBMnTlRNmzY1/Xfp3r27zTPdbMKECeqHH36oFJnmz5+vOnfurNq3b6/+9a9/2TzTmTNnVP/+/ZW7\nu7vq0KFDmfYAlYMEhRBCmK1arLYSQghhXVIeQgghzCblIYQQwmxSHkIIIcwm5SGEEMJsUh5CCCHM\nJuUhRAUYOHAgTZo0Kdep4zds2EDXrl1NpzNfv369BRIKUbEq9elJhKgqXnvtNXJzc8t2HYRbPPDA\nA6xfv57mzZtz+PBhAgMDOX36tMVP4ifEvZAlDyHMsGfPHry9vbl27Ro5OTl4eHiQkpLCI488Qv36\n9e/62lWrVpnOoHz69Gk6duzIuXPn8PLyMp0uXKvVYjQauXr1qsXfixD3QpY8hDBD9+7dGTp0KNOm\nTSMvL4+nnnqKzp07l+m1I0aMYOXKlXz88cesX7+eGTNm3HbyxRUrVuDt7Y2Tk5Ml4gtRYeT0JEKY\nqaCggG7duuHk5MSOHTtMq5f0ej0LFixgzZo1Jb724sWLaLVa/Pz8+P7774s9lpKSwtChQ9m4cSNu\nbm4WfQ9C3CtZbSWEmbKyssjJySE7O5u8vDzT+K3bKHbv3o1Op0On07F27Vrg+umwHRwcOHv2bLGz\nQRsMBkaMGEFsbKwUh6gSpDyEMNOzzz7LrFmzGDduHK+//rpp/NaFeF9fX5KTk0lOTubxxx+nsLCQ\niRMnsmzZMjp16sS///1v4PrSyODBg5k7dy69evWy6nsRorxktZUQZvj2229Zs2YN33//PUajET8/\nP9555x0iIiL47bffyM7O5v777yc6OppHH3202GtnzpzJpUuXePfdd8nOzqZ79+6sWrWKFStWMHfu\nXNq3b2967saNG2nWrJm1354QZSblIYQQwmyy2koIIYTZpDyEEEKYTcpDCCGE2aQ8hBBCmE3KQwgh\nhNmkPIQQQphNykMIIYTZpDyEEEKY7f8BfWbvvZfeqaEAAAAASUVORK5CYII=\n", "text": [ "" ] } ], "prompt_number": 1 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.12 Page No : 500" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Variables\n", "H_O2 = 44253.9\t\t\t#[bar] , From table 8.1\n", "p_O2 = 0.21 \t\t\t#[bar]\n", "\n", "# Calculations\n", "x_O2 = p_O2 / H_O2 ;\n", "v_H2O = 1/(1/0.001 * 1/0.018 * 0.001 );\n", "_O2_ = x_O2 / v_H2O ; \t\t\t#[M]\n", "\n", "# Results\n", "print \"Mole fraction of O2 = %.2e\"%(x_O2 ) ;\n", "print \"Concentration of O2 = %.2e M \"%(_O2_) ;\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Mole fraction of O2 = 4.75e-06\n", "Concentration of O2 = 2.64e-04 M \n" ] } ], "prompt_number": 15 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.13 Page No : 500" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Variables\n", "import math\n", "P = 300. ; \t\t\t#[bar]\n", "V_bar_inf_N2 = 3.3 * 10**-5 ;\n", "R = 8.314 ;\n", "T = 298. ; \t\t\t#[K]\n", "y_N2 = 1. ; \t\t\t# At 25*C vapour pressure of water is small\n", "H_N2_1 = 87365. ; \t\t\t#[bar]\n", "P_c = 33.8 ; \t\t\t#[bar]\n", "T_c = 126.2 ;\t\t\t# [K]\n", "w = 0.039 ; \t\t\t# From Appendix A.1 \n", "log_w_0 = 0.013 ;\n", "log_w_1 = 0.210 ;\n", "\n", "# Calculations\n", "H_N2_300 = H_N2_1 * math.exp((V_bar_inf_N2 * (P -1) * 10**5 )/ (R * T)) ;\n", "k = log_w_0 + w * log_w_1 ;\n", "sai_N2 = 10**k ;\n", "x_N2 = y_N2 * sai_N2 * P / H_N2_300 ;\n", "\n", "# Results\n", "print \"Solubility of N2 in water = %.5f\"%(x_N2) ;\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Solubility of N2 in water = 0.00242\n" ] } ], "prompt_number": 13 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.20 Page No : 518" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%matplotlib inline\n", "\n", "import math \n", "from matplotlib.pyplot import *\n", "from numpy import *\n", "\n", "\n", "# Variables\n", "R = 8.314 ;\n", "T = 20. + 273 ;\t\t\t#[K]\n", "A = 6000. ; \t\t\t#[J/mol]\n", "B = -384. ; \t\t\t#[J/mol]\n", "x_a = [0.001 ,0.03 ,0.05 ,0.06 ,0.075 ,0.1 ,0.12 , 0.13 ,0.15 ,0.2 ,0.25 ,0.3 ,0.35 ,0.4 ,0.45,0.475 ,0.5 ,0.55 ,0.6 ,0.65 ,0.7 ,0.75 ,0.8 ,0.8475 ,0.85 ,0.9 ,0.925 ,0.95 ,0.975 ,0.999] ;\n", "\n", "y_data = zeros(30)\n", "y_data2 = zeros(30)\n", "\n", "# Calculations\n", "for i in range(30):\n", " y_data[i] = R * T * ( x_a[i] * math.log(x_a[i]) + (1 - x_a[i]) * math.log(1- x_a[i])) + x_a[i] * (1 - x_a[i]) * (A + B * (2*x_a[i] - 1 )) ;\n", " y_data2[i] = - 82 * x_a[i]- 185.6 ;\n", "\n", "m = min(y_data) ;\n", "for i in range(30):\n", " if y_data[i] == m:\n", " a = x_a[i] ;\n", "\n", "for i in range(30):\n", " y_data2[i] = -(R * T *( math.log(a) - math.log(1 - a)) + A * (1 - 2*a) + B * (6 * a - 1 - 6 * a**2)) * (x_a[i] - a) + m ;\n", "\n", "y_data3 = zeros(20)\n", "for i in range(20):\n", " y_data3[i] = y_data[i] - y_data2[i] ;\n", "n = min(y_data3) ;\n", "\n", "for i in range(20):\n", " if y_data3[i] == n:\n", " b = x_a[i] ;\n", "\n", "\n", "# Results\n", "plot(x_a ,y_data) ;\n", "plot(x_a ,y_data2) ;\n", "xlabel(\"Xa\")\n", "ylabel(\"g-XaGa-XbGb\")\n", "suptitle(\"the binary system described \")\n", "print \"The equilibrium composition can be found by drawing a line tangent to\\\n", " the minima . In this case the answer is %.2f and %.1f .\" %(a ,b)\n", "show()\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Populating the interactive namespace from numpy and matplotlib\n", "The equilibrium composition can be found by drawing a line tangent to the minima . In this case the answer is 0.85 and 0.1 ." ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n" ] }, { "output_type": "stream", "stream": "stderr", "text": [ "WARNING: pylab import has clobbered these variables: ['draw_if_interactive']\n", "`%pylab --no-import-all` prevents importing * from pylab and numpy\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nAABJRU5ErkJggg==\n", "text": [ "" ] } ], "prompt_number": 2 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.21 Page No : 519" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "from scipy.optimize import fsolve \n", "import math \n", "\n", "\n", "# Variables\n", "A = 6349 ; \t\t\t#[J/mol]\n", "B = -384. ; \t\t\t#[J/mol]\n", "R = 8.314 ;\n", "T = 20 + 273 ; \t\t\t#[K]\n", "k = 0.000001 ;\n", "\n", "# Calculations\n", "def f816(x_a):\n", " return R * T * (1/x_a + 1/(1 - x_a)) - 2 * A +6 * B * (1 - 2 * x_a) + k\n", "\n", "ans1 = fsolve(f816,0.1)[0]\n", "ans2 = fsolve(f816,0.5)[0]\n", "\n", "print \"%.3f < x_a < %.3f \"%(ans1,ans2)\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "0.225 < x_a < 0.706 \n" ] } ], "prompt_number": 15 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.22 Page No : 522" ] }, { "cell_type": "code", "collapsed": false, "input": [ "from scipy.optimize import fsolve\n", "\n", "# Variables\n", "import math\n", "T = 300. \t\t\t#[K]\n", "A = 6235. \t \t\t#[J/mol] \n", "P_a_sat = 100. * 10**3 ; \t\t\t#[Pa]\n", "P_b_sat = 50. * 10**3 ; \t\t\t#{Pa}\n", "R = 8.314 ;\n", "w = 1./(R * T) \n", "\n", "def f817(R):\n", " x_a_a = R[0]\n", " x_a_b = R[1]\n", " Z817 = [0,0]\n", " Z817[0] = x_a_b * math.exp(A * (1 - x_a_b) ** 2 * w) - x_a_a * math.exp(A*(1-x_a_a)**2*w)\n", " Z817[1] = (1 - x_a_b) * math.exp(A * ( x_a_b) ** 2 * w) - (1 - x_a_a) * math.exp(A * (x_a_a) ** 2 * w )\n", " return Z817\n", "x0 = [0.75 , 0.1] ;\n", "z = fsolve(f817,x0)\n", "\n", "# Results\n", "print \"The compositions are : x_a_a = %.3f and x_a_b = %.3f\"%(z[0],z[1]) ;\n", "P = z[0] * math.exp(A * z[1] ** 2 * w) * P_a_sat + z[1] * math.exp(A * z[0] ** 2 * w) * P_b_sat ;\n", "print \"Total pressure = %d kPa\"%(P * 10**-3) ;\n", "y_a = z[0] * math.exp(A * z[1] ** 2 * w) * P_a_sat / P ;\n", "print \"y_a = %.3f\" %( y_a ) ;\n", "\n", "# Note : incorrect answer in textbook" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The compositions are : x_a_a = 0.272 and x_a_b = 0.272\n", "Total pressure = 49 kPa\n", "y_a = 0.667\n" ] } ], "prompt_number": 1 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.23 Page No : 535" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Variables\n", "T_b = 373.15 ; \t \t\t#[K]\n", "del_h_vap = 2257. ; \t\t#[J/g]\n", "MW_salt = 58.5 ; \t\t\t#[g/mol]\n", "MW_water = 18. ; \t\t\t#[g/mol]\n", "w_salt = 3.5 ;\n", "w_water = 100 - w_salt ;\n", "R = 8.314 ;\n", "\n", "# Calculations\n", "x_salt = (w_salt / MW_salt) / (w_salt / MW_salt + w_water / MW_water) ;\n", "x_b = 2 * x_salt\n", "del_T = R * T_b**2 / (del_h_vap * MW_water)* x_b ;\n", "\n", "# Results\n", "print \"The temperature that sea water boils is = %.2f degreeC\"%(100 + del_T);\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The temperature that sea water boils is = 100.63 degreeC\n" ] } ], "prompt_number": 17 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 8.24 Page No : 538" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Variables\n", "rho_w = 1000. \t \t\t# [kg/m**3]\n", "g = 9.8 ; \t \t \t# [m/s**2]\n", "h = 0.0071 ;\t\t\t #[m]\n", "m_b = 1.93 * 10**-3 ; \t\t\t# [kg]\n", "V = 520. * 10**-6 ; \t\t\t#[m**3]\n", "R = 8.314\n", "T = 298.\n", "\n", "# Calculations\n", "PI = rho_w * g * h ;\n", "C_b = m_b / V ;\n", "MW_b = R * T * C_b / PI ;\n", "\n", "# Results\n", "print \"The molecular weight of the protein = %d kg/mol\"%( MW_b );\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The molecular weight of the protein = 132 kg/mol\n" ] } ], "prompt_number": 18 } ], "metadata": {} } ] }