{
 "metadata": {
  "name": "",
  "signature": "sha256:8a4a2e9c3fff1b1819d5290ddbbc5e41fcd04a943a3cffb4a3e2d4883b56476a"
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "heading",
     "level": 1,
     "metadata": {},
     "source": [
      "Chapter 11 : Solution Thermodynamics Theroy"
     ]
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 11.4  page no :  168"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from numpy import poly1d,roots\n",
      "\n",
      "\n",
      "#H = 400x1 + 600x2 + x1x2(40x1 + 20x2)  Given\n",
      "#Substituting x2 = 1-x1\n",
      "H = poly1d([600, -180, 0, -20],'x1','c')     \t\t\t#(A)\n",
      "#K = dH/dx1\n",
      "K = poly1d([-180, 0, -60],'x1','c')\n",
      "\n",
      "# Calculations\n",
      "#Using Eqn 11.15  H1 = H+x2*K\n",
      "#substituting x2 = 1-x1\n",
      "H1 = poly1d([420, 0, -60, 40],'x1','c')     \t\t\t#(B)\n",
      "\n",
      "#Similarly for H2\n",
      "\n",
      "H2 = poly1d([600 ,0 ,0, 40],'x1','c')       \t\t\t#(C)\n",
      "#Now to calculate H1_inf and H2_inf \n",
      "#x1 = 0 in (B)\n",
      "H1_inf = 420;\t\t\t#[J/mol]\n",
      "#x2 = 0 in (C) i.e. x1 = 1\n",
      "H2_inf = 640;\t\t\t#[J/mol]\n",
      "\n",
      "# Results\n",
      "print (H1,'H1  =  ');\n",
      "print (H2,'H2  =  ');\n",
      "print ('J/mol',H1_inf,'H1_inf  =  ')\n",
      "print ('J/mol',H2_inf,'H2_inf  =  ')\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "(poly1d([      1,    -400,  -10800, 1008000,       0]), 'H1  =  ')\n",
        "(poly1d([    1,  -640, 24000,     0,     0]), 'H2  =  ')\n",
        "('J/mol', 420, 'H1_inf  =  ')\n",
        "('J/mol', 640, 'H2_inf  =  ')\n"
       ]
      }
     ],
     "prompt_number": 4
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 11.5  page no : 170"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "%matplotlib inline\n",
      "from matplotlib.pyplot import plot,suptitle,xlabel,ylabel,subplot\n",
      "\n",
      "from numpy import array,exp,round,linspace\n",
      "import math \n",
      "\n",
      "# Variables\n",
      "#Using Eqn 11.30\n",
      "#G = t(T)+RT ln f\n",
      "#G` = t(T)+rt ln f`\n",
      "#Hence ln(f/f`)  =  (1/RT)*(G-G`)\n",
      "#G = H-TS\n",
      "#G` = H-TS`\n",
      "#ln (f/f`) = (n/R)*(((H-H`)/T)-(S-S`))   (A)\n",
      "R = 8.314;\n",
      "n = 18.015;\n",
      "f_ = 1;\t\t\t#[kPa]\n",
      "P_ = f_;\n",
      "H_ = 3076.8;\t\t\t#[J/g]\n",
      "S_ = 10.3450;\t\t\t#[J/g/K]\n",
      "T = 573.15;\t\t\t#[K]\n",
      "\n",
      "P = array([10, 50, 100, 200, 500, 1000, 1500, 2000, 2500, 3000, 3500, 4000, 4500, 5000, 5500, 6000, 6500, 7000, \\\n",
      " 7600, 8000, 8400,0]);\n",
      "H = array([3076.6, 3075.7, 3074.2, 3072.1, 3064.8, 3052.1, 3038.9, 3025 ,3010.4, 2995.1, 2979 ,2962, \\\n",
      " 2944.2, 2925.5, 2905.8, 2885 ,2862.9, 2839.4, 2808.8, 2786.8, 2763.1,0]); \n",
      "S = array([9.282, 8.5380, 8.2166, 7.8937, 7.4614, 7.1251, 6.9207, 6.7696, 6.6470, 6.5422, \\\n",
      " 6.4491, 6.3642, 6.2852, 6.2105, 6.1388, 6.0692, 6.0008, 5.9327, 5.8503, 5.7942, 5.7366,0]);\n",
      "\n",
      "# Calculations and Results\n",
      "K = round(exp((n/R)*(((H-H_)/T)-(S-S_))),0);\n",
      "\n",
      "f = K*f_;\n",
      "P[21] = 8592.7;\t\t\t#[kPa]\n",
      "P_sat = P[21]\n",
      "f[21] = 6738.9;\n",
      "f_sat = f[21]\n",
      "\n",
      "si = round(f/P,4);\n",
      "si_sat = si[21]\n",
      "\n",
      "Vl = round(1.403*n,2)\t\t\t#[cm**3/mol]\n",
      "#Umath.sing Eqn 11.41\n",
      "P_new = linspace(8592.7,10000,10);\n",
      "f_new = round(f_sat*exp(Vl*(P_new-P_sat)/(R*1000*T)),1);\n",
      "si_new = f_new/P_new;\n",
      "\n",
      "subplot(211)\n",
      "plot(P/1000,f/1000,'b')\n",
      "plot(P_new/1000,f_new/1000,'g')\n",
      "\n",
      "dotsx = [0 ,P_sat/1000];\n",
      "dotsy = [f_sat/1000, f_sat/1000];\n",
      "plot(dotsx,dotsy,'b--')\n",
      "\n",
      "dotsx = [0, f_sat/1000];\n",
      "dotsy = [P_sat/1000 ,P_sat/1000];\n",
      "plot(dotsy,dotsx,'g--')\n",
      "\n",
      "dotsx = [11,8];\n",
      "dotsx = [6,6];\n",
      "plot(dotsx,dotsy,'w')\n",
      "\n",
      "suptitle('f vs P')\n",
      "xlabel('P X 10**-3 /kPa')\n",
      "ylabel('f X 10**-3 /kPa')\n",
      "\n",
      "subplot(222)\n",
      "plot(P/1000,si,'r')\n",
      "plot(P_new/1000,si_new,'g')\n",
      "dotsx = [0, P_sat/1000];\n",
      "dotsy = [si_sat ,si_sat];\n",
      "plot(dotsx,dotsy,'g--')\n",
      "dotsx = [0.55, si_sat];\n",
      "dotsy = [P_sat/1000, P_sat/1000];\n",
      "plot(dotsy,dotsx,'r--')\n",
      "\n",
      "suptitle('si vs P')\n",
      "xlabel('P X 10**-3 /kPa')\n",
      "ylabel('si')\n",
      "\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 10,
       "text": [
        "<matplotlib.text.Text at 0x10f99d990>"
       ]
      },
      {
       "metadata": {},
       "output_type": "display_data",
       "png": "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\n5f8B6h7cSnJenvIAAAAASUVORK5CYII=\n",
       "text": [
        "<matplotlib.figure.Figure at 0x10f947110>"
       ]
      }
     ],
     "prompt_number": 10
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 11.7  page no : 171"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math \n",
      "\n",
      "# Variables\n",
      "T = 200.;\t\t\t#[K]\n",
      "P = 30.;\t\t\t#[bar]\n",
      "R = 83.14;\n",
      "x1 = 0.4;\t\t\t#[N2]\n",
      "x2 = 1-x1;\t\t\t#[CH4]\n",
      "\n",
      "B11 = -35.2;\t\t\t#[cm**3/mol]\n",
      "B22 = -105.;\t\t\t#[cm**3/mol]\n",
      "B12 = -59.8;\t\t\t#[cm**3/mol]\n",
      "\n",
      "# Calculations\n",
      "delta_12 = round((2*B12)-B11-B22,1);\n",
      "si_1 = round(math.exp((P/(R*T))*(B11+(x2**2*delta_12))),4);\n",
      "si_2 = round(math.exp((P/(R*T))*(B22+(x1**2*delta_12))),4);\n",
      "\n",
      "B = round((x1**2*B11)+(2*x1*x2*B12)+(x2**2*B22),2);\n",
      "Z = round(1+((B*P)/(R*T)),2);\n",
      "\n",
      "# Results\n",
      "print 'Fugacity Coefficients are ',si_2,si_1\n",
      "print 'Second Viral coefficient is ',B\n",
      "print 'Compressibility Factor is ',Z\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Fugacity Coefficients are  0.8324 0.9511\n",
        "Second Viral coefficient is  -72.14\n",
        "Compressibility Factor is  0.87\n"
       ]
      }
     ],
     "prompt_number": 11
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 11.8 page no :  176"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math \n",
      "\n",
      "# Variables\n",
      "T = 473.15;\t\t\t#[K]\n",
      "P = 70.;\t\t\t#[bar]\n",
      "Tc = 420.;\t\t\t#[K]\n",
      "Pc = 40.43;\t\t\t#[bar]\n",
      "omega = 0.191;\n",
      "\n",
      "# Calculations\n",
      "#By interpolation in Tables E.15 and E.16\n",
      "si_0 = 0.627;\n",
      "si_1 = 1.096;\n",
      "#Using Eqn(11.64)\n",
      "si = round(si_0*(si_1**omega),3);\n",
      "f = round(si*P,1);\n",
      "\n",
      "# Results\n",
      "print 'Fugacity coefficient is ',si\n",
      "print 'fugacity is ',f,'bar'\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Fugacity coefficient is  0.638\n",
        "fugacity is  44.7 bar\n"
       ]
      }
     ],
     "prompt_number": 12
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 11.9 page no : 179"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from numpy import array,exp,round\n",
      "import math \n",
      "\n",
      "# Variables\n",
      "P = 25.;\t\t\t#[KPa]\n",
      "T = 323.15;\t\t\t#[K]\n",
      "R = 83.14;\n",
      "x1 = 0.5;\n",
      "x2 = 1-x1;\n",
      "\n",
      "# Calculations\n",
      "ij = array([11,22,12]);\n",
      "Tc_ij = array([535.5,591.8,563.0]);\n",
      "Pc_ij = array([41.5,41.1,41.3]);\n",
      "Vc_ij = array([267,316,291]);\n",
      "Zc_ij = round((Pc_ij*Vc_ij)/(R*Tc_ij),3);\n",
      "omega_ij = array([0.323,0.262,0.293]);\n",
      "\n",
      "Tr_ij = round(T/Tc_ij,3);\n",
      "B0 = round(0.083-(0.422/(Tr_ij**1.6)),3)\n",
      "B1 = round(0.139-(0.172/(Tr_ij**4.2)),3)\n",
      "B_ij = round((R*Tc_ij/Pc_ij)*(B0+(omega_ij*B1)),0);\n",
      "\n",
      "delta_12 = (2*B_ij[2])-B_ij[0]-B_ij[1];\n",
      "R = 8314;\n",
      "si_1 = round(exp((P/(R*T))*(B_ij[0]+(x2**2*delta_12))),3);\n",
      "si_2 = round(exp((P/(R*T))*(B_ij[2]+(x1**2*delta_12))),3);\n",
      "\n",
      "Ans = [ij,Tc_ij,Pc_ij,Vc_ij,Zc_ij,omega_ij,Tr_ij,B0,B1,B_ij];\n",
      "\n",
      "# Results\n",
      "print '   ij     Tcij     Pcij   Vcij     Zcij      Wij     Trij      B0       B1       Bij'\n",
      "print Ans\n",
      "print 'Fugacity Coefficients are ',si_2,si_1\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "   ij     Tcij     Pcij   Vcij     Zcij      Wij     Trij      B0       B1       Bij\n",
        "[array([11, 22, 12]), array([ 535.5,  591.8,  563. ]), array([ 41.5,  41.1,  41.3]), array([267, 316, 291]), array([ 0.249,  0.264,  0.257]), array([ 0.323,  0.262,  0.293]), array([ 0.603,  0.546,  0.574]), array([-0.865, -1.028, -0.943]), array([-1.3  , -2.045, -1.632]), array([-1378., -1872., -1611.])]\n",
        "Fugacity Coefficients are  0.985 0.987\n"
       ]
      }
     ],
     "prompt_number": 15
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 11.10  page no : 181"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math \n",
      "\n",
      "# Variables\n",
      "T0 = 298.15;\t\t\t#[K]\n",
      "T = 323.15;\t\t\t#[K]\n",
      "Cp_E = -2.86;\t\t\t#[J/mol/K]\n",
      "Ho_E = 897.9;\t\t\t#[J/mol]\n",
      "Go_E = 384.5;\t\t\t#[J/mol]\n",
      "\n",
      "# Calculations\n",
      "#(a)  Derivations\n",
      "#G_E = -a*(T ln T - T)+ bT + c\n",
      "#S_E = a ln T - b\n",
      "#H_E = aT + c\n",
      "#Where\n",
      "#a = Cp_E\n",
      "#c = Ho_E-aT0\n",
      "#b = ((Go_E+a(T ln T0 - T0)-c)/T0)\n",
      "#(b)\n",
      "a = Cp_E;\n",
      "c = round(Ho_E-(a*T0),1);\n",
      "b = round((Go_E+(a*((T0*math.log(T0))-T0)-c))/T0,4);\n",
      "G_E = round((-a*(T*math.log(T)-T))+(b*T)+c,1);\n",
      "S_E = round((a*math.log(T))-b,3);\n",
      "H_E = round((a*T)+c,1);\n",
      "\n",
      "# Results\n",
      "print 'G_E  =  ',G_E,'J/mol'\n",
      "print 'S_E  =  ',S_E,'J/mol/K'\n",
      "print 'H_E  =  ',H_E,'J/mol'\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "G_E  =   344.4 J/mol\n",
        "S_E  =   1.492 J/mol/K\n",
        "H_E  =   826.4 J/mol\n"
       ]
      }
     ],
     "prompt_number": 16
    }
   ],
   "metadata": {}
  }
 ]
}