summaryrefslogtreecommitdiff
path: root/Elements_Of_Mass_Transfer_Part_1
diff options
context:
space:
mode:
Diffstat (limited to 'Elements_Of_Mass_Transfer_Part_1')
-rwxr-xr-xElements_Of_Mass_Transfer_Part_1/README.txt10
-rwxr-xr-xElements_Of_Mass_Transfer_Part_1/ch2.ipynb1576
-rwxr-xr-xElements_Of_Mass_Transfer_Part_1/ch3.ipynb596
-rwxr-xr-xElements_Of_Mass_Transfer_Part_1/ch5.ipynb983
-rwxr-xr-xElements_Of_Mass_Transfer_Part_1/ch6.ipynb1212
-rwxr-xr-xElements_Of_Mass_Transfer_Part_1/ch7.ipynb698
-rwxr-xr-xElements_Of_Mass_Transfer_Part_1/screenshots/dry-time.pngbin0 -> 45352 bytes
-rwxr-xr-xElements_Of_Mass_Transfer_Part_1/screenshots/enthalpy.pngbin0 -> 34749 bytes
-rwxr-xr-xElements_Of_Mass_Transfer_Part_1/screenshots/tower.pngbin0 -> 20201 bytes
9 files changed, 5075 insertions, 0 deletions
diff --git a/Elements_Of_Mass_Transfer_Part_1/README.txt b/Elements_Of_Mass_Transfer_Part_1/README.txt
new file mode 100755
index 00000000..0640b5db
--- /dev/null
+++ b/Elements_Of_Mass_Transfer_Part_1/README.txt
@@ -0,0 +1,10 @@
+Contributed By: Ashutosh Kumar
+Course: btech
+College/Institute/Organization: Indian Institute of Technology - Bombay, CHAR Lab 2
+Department/Designation: Electrical Department
+Book Title: Elements Of Mass Transfer (Part 1)
+Author: N. Anantharaman & K. M. M. S. Begum
+Publisher: Prentice - Hall Of India, New Delhi
+Year of publication: 2005
+Isbn: 8120327284
+Edition: 1st \ No newline at end of file
diff --git a/Elements_Of_Mass_Transfer_Part_1/ch2.ipynb b/Elements_Of_Mass_Transfer_Part_1/ch2.ipynb
new file mode 100755
index 00000000..0af298a7
--- /dev/null
+++ b/Elements_Of_Mass_Transfer_Part_1/ch2.ipynb
@@ -0,0 +1,1576 @@
+{
+ "metadata": {
+ "name": "ch2",
+ "signature": "sha256:63ec039d8e0cb7cbcf7792965630fc54de76590123e48dd89f9e70d5575deae0"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 2 : Diffusion"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.1.a "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# variable declaration \n",
+ "rA=.3798;\n",
+ "rB=.3941;\n",
+ "\n",
+ "# Calculation\n",
+ "rAB=(rA+rB)/2; #molecular seperation at collision \n",
+ "ebyk_A=71.4;\n",
+ "ebyk_B=195.2;\n",
+ "ebyk_AB=(ebyk_A/ebyk_B)**.5; #energy of molecular attraction\n",
+ "pt=1.013*10**5; #absolute total pressure in pascal\n",
+ "T=298; #absolute temperature in kelvin\n",
+ "s=T/ebyk_AB; #collision function\n",
+ " #from chart f(T/ebyk_AB) = 0.5 let it be = x\n",
+ "x=.5; #collision function\n",
+ "MA=28; #molecular weight of nitrogen\n",
+ "MB=44; #molecular weight of carbondioxide\n",
+ "Mnew=((1./MA)+(1./MB))**.5;\n",
+ "Dab= 10**-4*(1.084-.249*(Mnew))*T**1.5*((Mnew))/(pt*x*rAB**2);\n",
+ "\n",
+ "# Result\n",
+ "print \" the diffisivity of nitrogen-carbondioxide is :%f *10**-5 m**2/s\"%(Dab/10**-5)\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " the diffisivity of nitrogen-carbondioxide is :1.678856 *10**-5 m**2/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 30
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.1.b "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "#\"part(ii)\"\n",
+ "rA=.3339;\n",
+ "rB=.3711;\n",
+ "\n",
+ "# Calculation \n",
+ "\n",
+ "rAB=(rA+rB)/2; #molecular seperation at collision \n",
+ "ebyk_A=344.7;\n",
+ "ebyk_B=78.6;\n",
+ "ebyk_AB=(ebyk_A/ebyk_B)**.5; #energy of molecular attraction\n",
+ "pt=200.*10**3; #absolute total pressure in pascal\n",
+ "T=298.; #absolute temperature in kelvin\n",
+ "s=T/ebyk_AB; #collision function\n",
+ " #from chart f(T/ebyk_AB) = 0.62 let it be = x\n",
+ "x=0.62; #collision function\n",
+ "MA=36.5; #molecular weight of hydrogen chloride\n",
+ "MB=29; #molecular weight of air\n",
+ "Mnew=((1./MA)+(1./MB))**.5;\n",
+ "Dab=10.**-4*(1.084-.249*(Mnew))*T**1.5*((Mnew))/(pt*x*rAB**2);\n",
+ "\n",
+ " # Result\n",
+ "print \"\\n the diffisivity of hydrogen chloride-air is :%f *10**-6 m**2/s\"%(Dab/10**-6)\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the diffisivity of hydrogen chloride-air is :8.488596 *10**-6 m**2/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 31
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.2 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "# variable declaration \n",
+ "\n",
+ "u=1.145*10**-3; #viscosity of water1.145cp\n",
+ "v_a=5*.0148+12*.0037+1*.0074; #by kopp's law\n",
+ "t=288; #temperature of water in kelvin\n",
+ "MB=18; #molecular weight of water\n",
+ "phi=2.26; #association parameter for solvent-water\n",
+ "\n",
+ "# Calculation\n",
+ "D_ab=(117.3*10**-18)*((phi*MB)**.5)*(t)/(u*(v_a)**.6);\n",
+ "\n",
+ " # Result\n",
+ "print \"\\n the diffusivity of isoamyl alcohol is :%f *10**-9 m**2/s\"%(D_ab/10**-9)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the diffusivity of isoamyl alcohol is :0.652780 *10**-9 m**2/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 32
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.3 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "pa1=(33./760)*1.013*10**5; #vapour pressure of ccl4 at 273 in pascal\n",
+ "pa2=0;\n",
+ "d=1.59; \n",
+ "import math #density of liquid ccl4 in g/cm**3\n",
+ "#considering o2 to be non diffusing and with \n",
+ "T=273.; #temperature in kelvin\n",
+ "pt=(755./780)*1.013*10**5; #total pressure in pascal\n",
+ "z=.171; #thickness of film\n",
+ "a=.82*10**-4; #cross-sectional area of cell in m**2\n",
+ "v=.0208; #volume of ccl4 evaporated \n",
+ "t=10.; #time of evaporation\n",
+ "MB=154.; \n",
+ "\n",
+ "# Calculation\n",
+ "#molecular wght of ccl4\n",
+ "rate=v*d/(MB*t); #.0208cc of ccl4 is evaporating in 10hrs \n",
+ "Na=rate*10.**-3/(3600.*a); #flux in kmol/m**2*S\n",
+ "\n",
+ "D_ab=Na*z*8314*273./(pt*(math.log((pt-pa2)/(pt-pa1)))); #molecular diffusivity in m**2/s\n",
+ "\n",
+ " # Result\n",
+ "print \"the diffusivity of ccl4 through oxygen:%.2f *10**-6 m**2/s\"%(D_ab/10.**-6)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "the diffusivity of ccl4 through oxygen:6.27 *10**-6 m**2/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 33
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.4 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "z=.0305*10**-3; #wall thickness sorrounding the crystal\n",
+ "x1=0.0229;\n",
+ "w1=160.; #molecular weight of copper sulphate\n",
+ "w2=18.; #molecular weight of water\n",
+ "Dab=7.29*10**-10; #diffusivity of copper sulphatein m**2/s\n",
+ " #av=d/m\n",
+ " \n",
+ "# Calculation \n",
+ "Mavg=x1*w1+(1-x1)*w2; #average molecular wght of solution\n",
+ "d1=1193; #density of copper sulphate solution\n",
+ "av1=d1/Mavg; #value of (d/m) of copper solution\n",
+ "\n",
+ " #for pure water\n",
+ "d2=1000.; #density of water\n",
+ "m2=18.; #molecular wght of water\n",
+ "av2=d2/m2; #value of (d/m) of water\n",
+ "allavg=(av1+av2)/2.; #average value of d/m\n",
+ "xa2=0;\n",
+ "import math\n",
+ "\n",
+ "# Result\n",
+ "Na=Dab*(allavg)*math.log((1-xa2)/(1-x1))/z; #flux of cuso4 from crystal surface to bulk solution\n",
+ "print \" the rate at which crystal dissolves :%f *10**-5 kmol/m**2*s\"%(Na/10**-5)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " the rate at which crystal dissolves :3.092260 *10**-5 kmol/m**2*s\n"
+ ]
+ }
+ ],
+ "prompt_number": 34
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.5.a"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "ya1=0.8;\n",
+ "ya2=0.1;\n",
+ "T=(273+35); #temperature in kelvin\n",
+ "pt=1*1.013*10**5; #total pressure in pascal\n",
+ "z=0.3*10**-3; #gas film thickness in m\n",
+ "Dab=.18*10**-4; #diffusion coefficient in m**2/s\n",
+ "R=8314; #universal gas constant\n",
+ "\n",
+ "# Calculation\n",
+ "Na=Dab*pt*(ya1-ya2)/(z*R*T) #diffusion flux in kmol/m**2*s\n",
+ "rate=Na*100*10**-4*3600*46; #since molecular weight of mixture is 46\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n rate of diffusion of alcohol-water vapour :%f kg/hr \"%rate\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " rate of diffusion of alcohol-water vapour :2.751429 kg/hr \n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.5.b"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "ya1=0.8;\n",
+ "ya2=0.1;\n",
+ "T=(273+35); #temperature in kelvin\n",
+ "pt=1*1.013*10**5; #total pressure in pascal\n",
+ "z=0.3*10**-3; #gas film thickness in m\n",
+ "Dab=.18*10**-4; #diffusion coefficient in m**2/s\n",
+ "R=8314; #universal gas constant\n",
+ "import math\n",
+ "#diffusion through stagnant film \n",
+ "\n",
+ "# Calculation\n",
+ "Na=Dab*pt*math.log((1-ya2)/(1-ya1))/(z*R*T); #diffusion flux in kmol/m**2*s\n",
+ "rate=Na*100*10**-4*3600*46; #since molecular weight of mixture is 46\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n rate of diffusion if water layer is stagnant :%f *10**-3 kg/s \"%(rate/(3600*10**-3))\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " rate of diffusion if water layer is stagnant :1.642207 *10**-3 kg/s \n"
+ ]
+ }
+ ],
+ "prompt_number": 35
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.6 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "T=298.; #temperature in kelvin\n",
+ "pt=1.*1.013*10**5; #total pressure in pascal\n",
+ "ID=25.*10**-3; #internal diameter in m of unvulcanised rubber in m\n",
+ "OD=50.*10**-3; #internal diameter in m of unvulcanised rubber in m\n",
+ "Ca1=2.37*10**-3; #conc. of hydrogen at the inner surface of the pipe in kmol/m**3\n",
+ "Ca2=0; #conc. of hydrogen at 2\n",
+ "Dab=1.8*10**-10; #diffusion coefficient in cm**2/s\n",
+ "l=2; #length of pipe in m\n",
+ "import math\n",
+ "\n",
+ "# Calculation \n",
+ "# Va=Da*Sa*(pa1-pa2)/z;\n",
+ "z=(50-25)*10**-3/2.; #wall thickness in m\n",
+ "Va=Dab*(Ca1-Ca2)/z; #diffusion through a flat slab of thickness z \n",
+ "Sa=2*3.14*l*(OD-ID)/(2*math.log(OD/ID)); #average mass transfer area of \n",
+ "rate=Va*Sa; #rate of loss of hydrogen by diffusion\n",
+ "\n",
+ "\n",
+ "# Result\n",
+ "\n",
+ "print \"\\n rate of loss hydrogen by diffusion through a pipe of 2m length :%f*10**-12kmol/s\"%(rate/10.**-12)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " rate of loss hydrogen by diffusion through a pipe of 2m length :7.730099*10**-12kmol/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 36
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.7 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "pa1=(1.5)*10**4; #vapour pressure of ammonia at pt.1 \n",
+ "pa2=(0.5)*10**4; #vapour pressure of ammonia at pt.2\n",
+ "Dab=2.3*10**-5 #molecular diffusivity in m**2/s\n",
+ "z=0.15; #diffusion path in m\n",
+ "R=8314.; #universal gas constant \n",
+ " #ammonia diffuses through nitrogen under equimolar counter diffusion\n",
+ "T=298.; #temperature in kelvin\n",
+ "pt=1.013*10**5; #total pressure in pascal\n",
+ "\n",
+ "# Calculation\n",
+ "Na=Dab*(pa1-pa2)/(z*R*T); #flux in kmol/m**2*S\n",
+ "\n",
+ "# Result\n",
+ "print \"the ammonia diffusion through nitrogen under equimolar \\\n",
+ " counter diffusion:%f *10**-7 kmol/m**2*s\"%(Na/10**-7);\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "the ammonia diffusion through nitrogen under equimolar counter diffusion:6.188855 *10**-7 kmol/m**2*s\n"
+ ]
+ }
+ ],
+ "prompt_number": 37
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.8"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math\n",
+ " \n",
+ "\n",
+ "z=0.4*10**-2; #film thickness sorrounding the crystal\n",
+ "xa1=0.0453; #mole fraction of ethanol at pos.2\n",
+ "xa2=0.02775; #mole fraction of ethanol at pos.1\n",
+ "w1=46; #molecular weight of ethanol\n",
+ "w2=18; #molecular weight of water\n",
+ "Dab=74*10**-5*10**-4; #diffusivity of ethanol water sol.in m**2/s\n",
+ " #av=d/m\n",
+ " \n",
+ "# Calculation \n",
+ "Mavg1=xa2*w1+(1-xa2)*w2; #average molecular wght of solution at pos 1\n",
+ "d1=0.9881*10**3; # density of 6.8 wt% solution\n",
+ "av1=d1/Mavg1; #value of (d/m) of copper solution\n",
+ "\n",
+ " #for pure water\n",
+ "d2=972.8; # density of 10.8 wt% solution\n",
+ "Mavg2=xa1*w1+(1-xa1)*w2; #average molecular wght of solution at pos.2\n",
+ "av2=d2/Mavg2; #value of (d/m) of water\n",
+ "\n",
+ "allavg=(av1+av2)/2; #average value of d/m\n",
+ "Na=Dab*(allavg)*math.log((1-xa2)/(1-xa1))/z; #steady state flux in kmol/m**2*s of ethanol water sol.\n",
+ "\n",
+ " # Result\n",
+ "print \"\\n the rate at which crystal dissolves :%f *10**-5 kmol/m**2*s\"%(Na/10**-5)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the rate at which crystal dissolves :1.737360 *10**-5 kmol/m**2*s\n"
+ ]
+ }
+ ],
+ "prompt_number": 39
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.9"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "import math\n",
+ "# variable declaration \n",
+ "\n",
+ " #basis : 100kg of mixture\n",
+ "z=2*10**-3; #film thickness sorrounding the water\n",
+ "xa1=0.0323; #mole fraction of ethanol at pos.2\n",
+ "xa2=0.0124; #mole fraction of ethanol at pos.1\n",
+ "w1=60.; #molecular weight of acetic acid\n",
+ "w2=18.; #molecular weight of water\n",
+ "Dab=0.000095; #diffusivity of acetic water sol.in m**2/s\n",
+ " #av=d/m\n",
+ "# Calculation \n",
+ "Mavg1=xa1*w1+(1-xa1)*w2; #average molecular wght of solution at pos 1\n",
+ "d1=1013.; # density of 10 % acid\n",
+ "av1=d1/Mavg1; #value of (d/m) of copper solution\n",
+ "\n",
+ " #for pure water\n",
+ "d2=1004; #density of 4% acid\n",
+ "Mavg2=xa2*w1+(1-xa2)*w2; #average molecular wght of solution at pos.2\n",
+ "av2=d2/Mavg2; #value of (d/m) of water\n",
+ "\n",
+ "allavg=(av1+av2)/2.; #average value of d/m\n",
+ " #assuming water to be non diffusing\n",
+ "Na=Dab*(allavg)*math.log((1-xa2)/(1-xa1))/z; #diffusion rate of acetic acid aacross film of non diffusing water sol.\n",
+ "\n",
+ " # Result\n",
+ "print \"\\n diffusion rate of acetic acid aacross film of non diffusing water sol. :%f kmol/m**2*s\"%Na\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " diffusion rate of acetic acid aacross film of non diffusing water sol. :0.051508 kmol/m**2*s\n"
+ ]
+ }
+ ],
+ "prompt_number": 41
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.10.a"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ " \n",
+ "r=(50./2)*10**-3; #radius pf circular tube\n",
+ "pa1=190; #vapour pressure of ammonia at pt.1 \n",
+ "pa2=95; #vapour pressure of ammonia at pt.2\n",
+ "Dab=2.1*10**-5 #molecular diffusivity in m**2/s\n",
+ "z=1;\n",
+ "R=760*22.414/273; #universal gas constant in mmHg*m**3*K*kmol \n",
+ " #carbondioxide and oxygen experiences equimolar counter diffusion \n",
+ "T=298.; #temperature in kelvin\n",
+ "\n",
+ "# Calculation \n",
+ "pt=(10.0/780)*1.013*10**5; #total pressure in pascal\n",
+ "Na=Dab*(pa1-pa2)/(z*R*T); #flux in kmol/m**2*S\n",
+ "rate=Na*(3.14*r**2); #rate of mass transfer..(3.14*r**2)-is the area\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the rate of mass transfer.:%f *10**-10 kmol/s\"%(rate/10**-10)\n",
+ " \n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the rate of mass transfer.:2.105552 *10**-10 kmol/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 43
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.10.b"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "r=(50./2)*10**-3; #radius pf circular tube\n",
+ "pa1=(190.); #vapour pressure of ammonia at pt.1 \n",
+ "pa2=(95.); #vapour pressure of ammonia at pt.2\n",
+ "Dab=2.1*10**-5 #molecular diffusivity in m**2/s\n",
+ "R=760.*22.414/273; #universal gas constant in mmHg*m**3*K*kmol \n",
+ " #carbondioxide and oxygen experiences equimolar counter diffusion \n",
+ "T=298.; #temperature in kelvin\n",
+ "\n",
+ "# Calculation\n",
+ "pt=(10./780)*1.013*10**5; #total pressure in pascal\n",
+ "\n",
+ " #part (ii)\n",
+ "#(ya-ya1)/(ya2-ya1)=(z-z1)/(z2-z1);\n",
+ "z2=1; #diffusion path in m at pos.2\n",
+ "z1=0; #diffusion path in m at pos.1\n",
+ "z=.75; #diffusion at general z\n",
+ "#pa=poly([0],'pa'); #calc. of conc. in gas phase\n",
+ "x= 118.750000 #roots((pa-pa1)/(pa2-pa1)-(z-z1)/(z2-z1));\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n partial pressure of co2 at o.75m from the end where partial pressure is 190mmhg is:%f mmHg\"%x\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " partial pressure of co2 at o.75m from the end where partial pressure is 190mmhg is:118.750000 mmHg\n"
+ ]
+ }
+ ],
+ "prompt_number": 44
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.11.a"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "ya1=0.2; #initial mole fraction\n",
+ "ya2=0.1; #final mole fraction\n",
+ "T=298 #temperature in kelvin\n",
+ "pt=1*1.013*10**5; #total pressure in pascal\n",
+ "z=0.2*10**-2; #gas film thickness in m\n",
+ "Dab=.215*10**-4; #diffusion coefficient in m**2/s\n",
+ "R=8314.; #universal gas constant\n",
+ "#part (i)when N2 is non diffusing \n",
+ "import math\n",
+ "\n",
+ "# Calculation\n",
+ "Na=Dab*pt*math.log((1-ya2)/(1-ya1))/(z*R*T); #diffusion flux in kmol/m**2*s\n",
+ "\n",
+ "\n",
+ "# Result\n",
+ "print \" diffusion flux if N2 is non diffusing :%f *10**-5 kmol/m**2*s \"%(Na/10**-5);\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " diffusion flux if N2 is non diffusing :5.176955 *10**-5 kmol/m**2*s \n"
+ ]
+ }
+ ],
+ "prompt_number": 45
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.11.b"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "ya1=0.2;\n",
+ "ya2=0.1;\n",
+ "T=(298); #temperature in kelvin\n",
+ "pt=1*1.013*10**5; #total pressure in pascal\n",
+ "z=0.2*10**-2; #gas film thickness in m\n",
+ "Dab=.215*10**-4; #diffusion coefficient in m**2/s\n",
+ "R=8314; #universal gas constant\n",
+ "\n",
+ "#part (ii) equimolar counter diffusion\n",
+ "# Calculation\n",
+ "Na=Dab*pt*(ya1-ya2)/(z*R*T) #diffusion flux in kmol/m**2*s\n",
+ "\n",
+ " # Result\n",
+ "print \" diffusion flux of oxygen during equimolar counter-diffusion :%f *10**-5 kmol/m**2*s \"%(Na/10**-5)\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " diffusion flux of oxygen during equimolar counter-diffusion :4.395331 *10**-5 kmol/m**2*s \n"
+ ]
+ }
+ ],
+ "prompt_number": 46
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.12"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "ya1=0.1;\n",
+ "ya2=0;\n",
+ "T=293. #temperature in kelvin\n",
+ "pt=1*1.013*10**5; #total pressure in pascal\n",
+ "z=0.2*10**-2; #gas film thickness in m\n",
+ "Dab=.185*10**-4; #diffusion coefficient in m**2/s\n",
+ "R=8314.; #universal gas constant\n",
+ " #part (i)when air is assumed to be stagnant and non-diffusing \n",
+ "import math\n",
+ "\n",
+ "# Calculation\n",
+ "Na=Dab*pt*math.log((1-ya2)/(1-ya1))/(z*R*T); #diffusion flux in kmol/m**2*s\n",
+ "mw=17; #molecular weight of ammonia\n",
+ "massflux=Na*mw; #mass flux of given NH3\n",
+ "print \" diffusion flux when total presssure is 1atm and air \\\n",
+ " is non-diffusing :%f *10**-4 kg/m**2*s \"%(massflux/10**-4);\n",
+ " #part (ii) when pressure is increased to 10atm\n",
+ "\n",
+ "#Dab_1/Dab_2=pt_2/pt_1\n",
+ "pt_2=10; #final pressure in atm\n",
+ "pt_1=1; #initially pressure was 1atm\n",
+ "Dab_1=.185; #initially diffusion coefficient was.185\n",
+ "Dab_2=Dab_1*pt_1/pt_2; #for gases Dab is proportional to 1/pt\n",
+ "Dab=Dab_2*10**-4; #new diffusion coefficient \n",
+ "pt=pt_2*1.013*10**5; #new total pressure\n",
+ "Na=Dab*pt*math.log((1-ya2)/(1-ya1))/(z*R*T); #diffusion flux in kmol/m**2*s\n",
+ "\n",
+ "# Result\n",
+ "print \"diffusion flux when pressure is increased to 10atm :%f *10**-5 kmol/m**2*s \"%(Na/10**-5);\n",
+ "print \"so the rate of diffusion remains same on increasing the pressure\"\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " diffusion flux when total presssure is 1atm and air is non-diffusing :6.889701 *10**-4 kg/m**2*s \n",
+ "diffusion flux when pressure is increased to 10atm :4.052765 *10**-5 kmol/m**2*s \n",
+ "so the rate of diffusion remains same on increasing the pressure\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.13"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# variable declaration \n",
+ "T=290.0; #temperature in kelvin\n",
+ "z=2*10**-3; #film thickness sorrounding the water\n",
+ "xa2=0.0092; #mole fraction of ethanol at pos.2\n",
+ "xa1=0.0288; #mole fraction of ethanol at pos.1\n",
+ "w1=60.0; #molecular weight of acetic acid\n",
+ "w2=18.0; #molecular weight of water\n",
+ "Dab=0.95*10**-9; #diffusivity of acetic water sol.in m**2/s\n",
+ " #av=d/m\n",
+ "# Calculation \n",
+ "Mavg1=xa1*w1+(1-xa1)*w2; #average molecular wght of solution at pos 1\n",
+ "d1=1012.0; # density of 10 % acid\n",
+ "av1=d1/Mavg1; #value of (d/m) of copper solution\n",
+ "\n",
+ " #for position 2\n",
+ "d2=1003.0; #density of 4% acid\n",
+ "Mavg2=xa2*w1+(1-xa2)*w2; #average molecular wght of solution at pos.2\n",
+ "av2=d2/Mavg2; #value of (d/m) of water\n",
+ "\n",
+ "allavg=(av1+av2)/2; #average value of d/m\n",
+ " \n",
+ " #assuming water to be non diffusing\n",
+ "import math \n",
+ "Na=Dab*(allavg)*math.log((1-xa2)/(1-xa1))/z; #diffusion rate of acetic acid aacross film of non diffusing water sol.\n",
+ "\n",
+ "# Result\n",
+ "print \"diffusion rate of acetic acid aacross film of non diffusing water sol. :%f *10**-7 kmol/m**2*s\"%(Na/10.0**-7)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "diffusion rate of acetic acid aacross film of non diffusing water sol. :5.088553 *10**-7 kmol/m**2*s\n"
+ ]
+ }
+ ],
+ "prompt_number": 47
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.14"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "ya1=0.2; #molefraction at pos.1\n",
+ "ya2=0.1; #molefraction at pos.2\n",
+ "T=(293); #temperature in kelvin\n",
+ "pt=1*1.013*10**5; #total pressure in pascal\n",
+ "z=0.2*10**-2; #gas film thickness in m\n",
+ "Dab=.206*10**-4; #diffusion coefficient in m**2/s\n",
+ "R=8314; #universal gas constant\n",
+ " #for ideal gases volume fraction =mole fraction\n",
+ "#part (i)when N2 is non diffusing \n",
+ "import math\n",
+ "\n",
+ "# Calculation\n",
+ "Na=Dab*pt*math.log((1-ya2)/(1-ya1))/(z*R*T); #diffusion flux in kmol/m**2*s\n",
+ "print \"\\n diffusion flux if N2 is non diffusing :%f *10**-5 kmol/m**2*s \"%(Na/10**-5);\n",
+ "#part (ii) equimolar counter diffusion\n",
+ "\n",
+ "Na=Dab*pt*(ya1-ya2)/(z*R*T) #diffusion flux in kmol/m**2*s\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n diffusion flux of nitrogen during equimolar counter-diffusion :%f *10**-5 kmol/m**2*s \"%(Na/10**-5)\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " diffusion flux if N2 is non diffusing :5.044891 *10**-5 kmol/m**2*s \n",
+ "\n",
+ " diffusion flux of nitrogen during equimolar counter-diffusion :4.283207 *10**-5 kmol/m**2*s \n"
+ ]
+ }
+ ],
+ "prompt_number": 48
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.15"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "pa1=0.2*10**5; #partial pressure at pos.1\n",
+ "pa2=0; #partial pressure at pos.2\n",
+ "r=10./2; #radius of tank in which benzene is stored\n",
+ "T=298.; #temperature in kelvin\n",
+ "pt=1*1.013*10**5; #total pressure in pascal\n",
+ "z=10*10**-3; #gas film thickness in m\n",
+ "Dab=.02/3600; #diffusion coefficient in m**2/s\n",
+ "R=8314.; #universal gas constant\n",
+ " #benzene is stored in atank of dia 10m\n",
+ "#part (i)when air is assumed to be stagnant\n",
+ "import math\n",
+ "\n",
+ "# Calculation\n",
+ "Na=Dab*pt*math.log((pt-pa2)/(pt-pa1))/(z*R*T); #diffusion flux in kmol/m**2*s\n",
+ "rate=Na*(3.14*r**2); #rate of loss of benzene if air is stagnant\n",
+ "\n",
+ " # Result\n",
+ "print \"diffusion rate of loss of benzene :%f *10**-4 kmol/s \"%(rate/10**-4);\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "diffusion rate of loss of benzene :3.921799 *10**-4 kmol/s \n"
+ ]
+ }
+ ],
+ "prompt_number": 49
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.16"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "ya2=0.1; #molefraction at pos.2\n",
+ "ya1=0.8; #molefraction at pos.1\n",
+ "T=(370.); #temperature in kelvin\n",
+ "pt=1*1.013*10**5; #total pressure in pascal\n",
+ "z=0.1*10**-3; #gas film thickness in m\n",
+ "Dab=.15*10**-2; #diffusion coefficient in m**2/s\n",
+ "R=8314; #universal gas constant\n",
+ "Area=10; #area of the film is 10m**2\n",
+ "\n",
+ "#for gase Dab=T**3/2\n",
+ "#Dab1/Dab2=(T1/T2)**3/2\n",
+ "import math\n",
+ "T2=370.; #final temperature in kelvin \n",
+ "T1=298.; #initial temperature in kelvin\n",
+ "\n",
+ "# Calculation\n",
+ "Dab1=.15*10**-2; #initial diffusion coefficient \n",
+ "Dab2=((T2/T1)**(3./2))*Dab1; #final diffusion coefficient\n",
+ "Na=Dab2*pt*math.log((1-ya2)/(1-ya1))/(z*R*T); #diffusion flux in kmol/m**2*s\n",
+ "rate=Na*3600*46*Area; #rate of diffusion of alcohol-water vapour in kg/hour\n",
+ "\n",
+ " # Result\n",
+ "print \" rate of diffusion of alcohol-water vapour :%f *10**6 kg/hour \"%(rate/10**6)\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " rate of diffusion of alcohol-water vapour :1.702149 *10**6 kg/hour \n"
+ ]
+ }
+ ],
+ "prompt_number": 50
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.17"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "ya2=0; #molefraction at pos.2\n",
+ "ya1=0.1; #molefraction at pos.1\n",
+ "T=(273); #temperature in kelvin\n",
+ "pt=1*1.013*10**5; #total pressure in pascal\n",
+ "z=2*10**-3; #gas film thickness in m\n",
+ "Dab=.198*10**-4; #diffusion coefficient in m**2/s\n",
+ "R=8314; #universal gas constant\n",
+ " \n",
+ "#for gase Dab=T**3/2\n",
+ "#Dab1/Dab2=(T1/T2)**3/2\n",
+ "import math\n",
+ "T2=293; #final temperature in kelvin \n",
+ "T1=273; #initial temperature in kelvin\n",
+ "\n",
+ "\n",
+ "# Calculation\n",
+ "Dab1=0.198*10**-4; #initial diffusion coefficient \n",
+ "Dab2=((T2/T1)**(3.0/2))*Dab1; #final diffusion coefficient\n",
+ "Na=Dab2*pt*math.log((1-ya2)/(1-ya1))/(z*R*T2); #diffusion flux in kmol/m**2*s\n",
+ "print \" flux of diffusion of ammonia through inert film :%f *10**-5 kmol/m**2*s \"%(Na/10**-5)\n",
+ "\n",
+ "#if pressure is also incresed from 1 to 5 atm\n",
+ "#for gases Dab=(T**3/2)/pt;\n",
+ "#Dab1/Dab2=(T1/T2)**3/2*(p2/p1)\n",
+ "T2=293.; #final temperature in kelvin \n",
+ "T1=273.; #initial temperature in kelvin\n",
+ "pa2=5.; #final pressure in atm\n",
+ "pa1=1; #initial pressure in atm \n",
+ "p=pa2*1.013*10**5;\n",
+ "Dab1=.198*10**-4; #initial diffusion coefficient\n",
+ "Dab2=((T2/T1)**(3.0/2))*Dab1*(pa1/pa2); #final diffusion coefficient\n",
+ "Na=Dab2*p*math.log((1-ya2)/(1-ya1))/(z*R*T2); #diffusion flux in kmol/m**2*s\n",
+ "\n",
+ " # Result\n",
+ "print \"flux of diffusion of ammonia if temp. is 20 and pressure is 5 atm :%f*10**-5 kmol/m**2*s \"%(Na/10**-5)\n",
+ "print \"so there is no change in flux when pressure is changed\"\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " flux of diffusion of ammonia through inert film :4.337554 *10**-5 kmol/m**2*s \n",
+ "flux of diffusion of ammonia if temp. is 20 and pressure is 5 atm :4.822834*10**-5 kmol/m**2*s \n",
+ "so there is no change in flux when pressure is changed\n"
+ ]
+ }
+ ],
+ "prompt_number": 52
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.18"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# variable declaration \n",
+ "pa1=0.418*10**5; #partial pressure initially\n",
+ "pa2=0; #partial pressure of pure air\n",
+ "r=10/2; #radius of tank in which benzene is stored\n",
+ "T=(350); #temperature in kelvin\n",
+ "pt=1*1.013*10**5; #total pressure in pascal\n",
+ "z=2*10**-3; #gas film thickness in m\n",
+ "Dab=.2*10**-4; #diffusion coefficient in m**2/s\n",
+ "R=8314; #universal gas constant\n",
+ "r=0.2/2; #radius of open bowl is 0.2\n",
+ "#when air layer is assumed to be stagnant of thickness 2mm\n",
+ "import math\n",
+ "\n",
+ "# Calculation\n",
+ "\n",
+ "Na=Dab*pt*math.log((pt-pa2)/(pt-pa1))/(z*R*T); #diffusion flux in kmol/m**2*s\n",
+ "rate=Na*(3.14*r**2)*18; #rate of loss of evaporation\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n diffusion rate loss of evaporation :%f *10**-4 kg/s \"%(rate/10**-4)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " diffusion rate loss of evaporation :1.046972 *10**-4 kg/s \n"
+ ]
+ }
+ ],
+ "prompt_number": 54
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.19"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# variable declaration \n",
+ "\n",
+ "#stefan tube experiment\n",
+ "import math\n",
+ "Ml=92.; #molecular weight of toluene\n",
+ "T=(312.4); #temperature in kelvin\n",
+ "pt=1*1.013*10**5; #total pressure in pascal\n",
+ "R=8314.; #universal gas constant\n",
+ "t=275.*3600; #after 275 hours the level dropped to 80mm from the top\n",
+ "zo=20.*10**-3; #intially liquid toluene is at 20mm from top\n",
+ "zt=80.*10**-3; #finally liquid toluene is at 80mm from top\n",
+ "#air is assumed to be satgnant \n",
+ "d=850.; #density in kg/m**3\n",
+ "pa=7.64*10**3; #vapour pressure of toluene in at 39.4degree celcius \n",
+ "\n",
+ "# Calculation \n",
+ "cal=d/Ml; #conc. at length at disxtance l\n",
+ "ca=pt/(R*T); #total conc. \n",
+ "xa1=pa/pt; #mole fraction of toluene at pt1 i.e before evaporation \n",
+ "xb1=1-xa1; #mole fraction of air before evaporation i.e at pt1 \n",
+ "xb2=1.; #mole fraction of air after evaporation i.e at pt.2\n",
+ "xa2=0.; #mole fraction of toluene at point 2\n",
+ "xbm=(xb2-xb1)/(math.log(xb2/xb1));\n",
+ "#t/(zt-zt0) = (xbm*cal*(zt+zo))/(2*c*(xa1-xa2)*t);\n",
+ "Dab=(xbm*cal*(zt**2-zo**2))/(2*ca*t*(xa1-xa2));\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the diffusivity of the mixture in stefan tube of toluene in air is :%f*10**-5 m**2/s\"%(Dab/10**-5)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the diffusivity of the mixture in stefan tube of toluene in air is :0.915437*10**-5 m**2/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 55
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.20 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# variable declaration \n",
+ "\n",
+ "T=(360); #temperature in kelvin\n",
+ "pt=372.4/760; #total pressure in atm\n",
+ "R=82.06; #universal gas constant\n",
+ "Dab=0.0506; #diffusion coefficient in cm**2/s \n",
+ "z=0.254; #gas layer thickness in cm\n",
+ "vp=368.0/760; #vapour pressure of toluene in atm\n",
+ "xtol=.3; #mole fractoin of toluene in atm\n",
+ "pb1=xtol*vp; #partial pressure of toluene\n",
+ "#since pb1 is .045263 bt in book it is rounded to 0.145\n",
+ "\n",
+ "# Calculation \n",
+ "pb2=xtol*pt; #parial pressure of toluene in vapour phase\n",
+ "Na=Dab*(pb1-pb2)/(z*R*T); #diffusion flux \n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the diffusion flux of a mixture of benzene and toluene %f*10**-8 gmol/cm**2*s\\n\"%(Na/10**-8)\n",
+ "print \"\\nthe negative sign indicates that toluene is getting transferred from gas phase \\\n",
+ "to liquid phase(hence the transfer of benzene is from liquid to gas phase)\"\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the diffusion flux of a mixture of benzene and toluene -1.171233*10**-8 gmol/cm**2*s\n",
+ "\n",
+ "\n",
+ "the negative sign indicates that toluene is getting transferred from gas phase to liquid phase(hence the transfer of benzene is from liquid to gas phase)\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.21"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# variable declaration \n",
+ "\n",
+ "Ml=92.; #molecular weight of toluene\n",
+ "T=(303.); #temperature in kelvin\n",
+ "pt=1.*1.013*10**5; #total pressure in pascal\n",
+ "R=8314.; #universal gas constant\n",
+ "t=275.*3600; #after 275 hours the level dropped to 80mm from the top\n",
+ "zo=20.*10**-3; #intially liquid toluene is at 20mm from top\n",
+ "zt=77.5*10**-3; #finally liquid toluene is at 80mm from top\n",
+ " #air is assumed to be satgnant \n",
+ "import math\n",
+ "# Calculation \n",
+ "d=820.; #density in kg/m**3\n",
+ "pa=(57.0/760)*1.0135*10**5; #vapour pressure of toluene in at 39.4degree celcius \n",
+ "cal=d/Ml; #conc. at length at disxtance l\n",
+ "ca=pt/(R*T); #total conc. \n",
+ "xa1=pa/pt; #mole fraction of toluene at pt1 i.e before evaporation \n",
+ "xb1=1.-xa1; #mole fraction of air before evaporation i.e at pt1 \n",
+ "xb2=1.; #mole fraction of air after evaporation i.e at pt.2\n",
+ "xa2=0; #mole fraction of toluene at point 2\n",
+ "xbm=(xb2-xb1)/(math.log(xb2/xb1));\n",
+ "#t/(zt-zt0) = (xbm*cal*(zt+zo))/(2*c*(xa1-xa2)*t);\n",
+ "Dab=(xbm*cal*(zt**2-zo**2))/(2*ca*t*(xa1-xa2));\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the diffusivity of the mixture in stefan tube of toluene in air is :%f*10**-5 m**2/s\"%(Dab/10**-5)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the diffusivity of the mixture in stefan tube of toluene in air is :0.804587*10**-5 m**2/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 57
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.22"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "#variation in liquid level with respect to time is given below\n",
+ "%pylab inline\n",
+ "t=[26,185,456,1336,1958,2810,3829,4822,6385]\n",
+ "# let Zt-Zo= x;\n",
+ "x=[.25,1.29,2.32,4.39,5.47,6.70,7.38,9.03,10.48]\n",
+ "i=0; \n",
+ "y = [0,0,0,0,0,0,0,0,0] #looping starts\n",
+ "\n",
+ "# Calculation \n",
+ "while(i<9):\n",
+ " y[i]=t[i]/x[i]; #for calculating the t/Zt-Zo value\n",
+ " i=i+1;\n",
+ "from matplotlib.pyplot import *\n",
+ "plot(x,y,\"o-\");\n",
+ "show()\n",
+ "#xtitle(\" Fig.2.2 Example 22 \",\"X--(zi-zo),cm --->\",\"Y-- vs (t/(zi-zo))min/cm ---->\");\n",
+ "slope=51.4385*60 *10**4; #slope of the curve in 1/sec*m**2\n",
+ "#slope = Cal *(xblm)/(2*Dab*C*(xa1-xa2))\n",
+ "d=1540.; #density in kg/m**3\n",
+ "Ml=154.; #molecular weight of toluene\n",
+ "Cal=d/Ml ; #conc. at length at disxtance l in mol/m**3\n",
+ "\n",
+ "T=(321.); #temperature in kelvin\n",
+ "pt=1.; #total pressure in atm\n",
+ "R=82.06; #universal gas constant\n",
+ "C=pt/(R*T) *10**3; #total conc. in kg mol/m**3\n",
+ "\n",
+ "pa=(282./760); #vapour pressure of toluene \n",
+ "xa1=pa/pt; #mole fraction of toluene at pt1 i.e before evaporation\n",
+ "xb1=1.-xa1; #mole fraction of air before evaporation i.e at pt1 \n",
+ "xb2=1.; #mole fraction of air after evaporation i.e at pt.2\n",
+ "xa2=0.; #mole fraction of toluene at point 2\n",
+ "xblm=(xb2-xb1)/(math.log(xb2/xb1)); #log mean temp. difference\n",
+ "Dab = Cal *(xblm)/(2*slope*C*(xa1-xa2)); #diffusivity coefficient\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the diffusivity of the mixture by winklemann method of toluene in air is :%f*10**-6 m**2/s\"%(Dab/10**-6)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].\n",
+ "For more information, type 'help(pylab)'.\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "png": "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\n"
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the diffusivity of the mixture by winklemann method of toluene in air is :9.202857*10**-6 m**2/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.23"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "d=0.001;\n",
+ "area=3.14*(d/2)**2; #area of the bulb\n",
+ "T=298.; #temperature in kelvin \n",
+ "p=1.013*10**5; #total pressure of both the bulbs\n",
+ "R=8314.; #universal gas constant\n",
+ "\n",
+ "# Calculation \n",
+ "c=p/(R*T); #total concentration\n",
+ "Dab=.784*10**-4; #diffusion coefficient in m**2/s\n",
+ "xa1=0.8; #molefraction of nitrogen gas at the 1 end\n",
+ "xa2=0.25; #molefraction of nitrogen gas at the 2nd end\n",
+ "z=.15; #distance between the bulbs\n",
+ "\n",
+ " #rate=area*Na;\n",
+ "rate=area*Dab*c*(xa1-xa2)/z; #rate of transfer of hydrogen and hydrogen\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the rate of transfer from 1 to 2 of nitrogen and 2 to 1of hydrogen is :%f *10**-11kmol/s\"%(rate/10.0**-11)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the rate of transfer from 1 to 2 of nitrogen and 2 to 1of hydrogen is :0.922657 *10**-11kmol/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 59
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.24"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "T=288; #temperature in kelvin\n",
+ "Mb=32; #molecular weight of methanol\n",
+ "phi=1.9; #association factor for solvent\n",
+ "\n",
+ "# Calculation \n",
+ "va=(14.8+(4*24.6))*10**-3 #solute(CCl4) volume at normal BP in m**3/kmol\n",
+ "u=.6*10**-3; #viscosity of solution in kg/m*s\n",
+ "Dab=(117.3*10**-18)*(phi*Mb)**0.5*T/(u*va**0.6); #diffusion coefficient in m**2/s\n",
+ "\n",
+ "# Result\n",
+ "print \"\\ndiffusivity of methanol in carbon tetrachloride is :%f*10**-9 m**2/s\"%(Dab/10.0**-9)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "diffusivity of methanol in carbon tetrachloride is :1.622494*10**-9 m**2/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 60
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.25"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "T=288.0; #temperature in kelvin\n",
+ "Mb=18.0; #molecular weight of methanol\n",
+ "phi=2.26; #association factor for solvent\n",
+ "\n",
+ "# Calculation \n",
+ "va=(2*14.8+(6*3.7)+7.4)*10**-3 #solute(water) volume at normal BP in m**3/kmol\n",
+ "u=1*10**-3; #viscosity of solution in kg/m*s\n",
+ "Dab=(117.3*10**-18)*(phi*Mb)**0.5*T/(u*va**0.6); #diffusion coefficient in m**2/s\n",
+ "\n",
+ "# Result\n",
+ "print \"\\ndiffusivity of methanol in water is :%f*10**-9 m**2/s\"%(Dab/10**-9)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "diffusivity of methanol in water is :1.174865*10**-9 m**2/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 28
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.26"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "u=20.*10**-6; #viscosity in Ns/m**2\n",
+ "pt=2666.; #total pressure in N/m**2\n",
+ "pa1=pt; #pressure at 1\n",
+ "pa2=0; #pressure at 2\n",
+ "mw=32.; #molecular weight of oxygen\n",
+ "R=8314.; #universal law constant\n",
+ "T=373.; #temp. in kelvin\n",
+ "gc=1.; \n",
+ "\n",
+ "# Calculation \n",
+ "l=(3.2*u/pt)*((R*T)/(2*3.14*gc*mw))**0.5;#mean free path\n",
+ "d=.2*10**-6; #pore diameter\n",
+ "s=d/l; #value of dia/l\n",
+ " #hence knudsen diffusion occurs\n",
+ "Na=0.093*20*273/(760*373*22414*10**-1); #diffusion coefficient in kmol/m**2*s\n",
+ "Dka=(d/3)*((8*gc*R*T)/(3.14*mw))**0.5;\n",
+ "l1=Dka*(pa1-pa2)/(R*T*Na); #length of the plate\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the length of the plate is :%f m \"%l1\n",
+ "\n",
+ "\n",
+ " #for diffusion with hydrogen\n",
+ "u=8.5*10**-6; #viscosity in Ns/m**2\n",
+ "pt=1333; #total pressure in N/m**2\n",
+ "pa1=pt; #pressure at 1\n",
+ "pa2=0; #pressure at 2\n",
+ "mw=2; #molecular weight of oxygen\n",
+ "R=8314; #universal law constant\n",
+ "T=298; #temp. in kelvin\n",
+ "gc=1; \n",
+ "l=(3.2*u/pt)*((R*T)/(2*3.14*gc*mw))**0.5;#mean free path\n",
+ "d=.2*10**-6; #pore diameter\n",
+ "s=d/l; #value of dia/l\n",
+ " #hence knudsen diffusion occurs\n",
+ "Dka=(d/3)*((8*gc*R*T)/(3.14*mw))**0.5;\n",
+ "Na=Dka*(pa1-pa2)/(R*T*l1); #diffusion coefficient in kmol/m**2*s\n",
+ "print \"\\n the diffusion coefficient is :%f *10**-4 kmol/m**2*s\"%(Na/10.0**-6)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the length of the plate is :0.035635 m \n",
+ "\n",
+ " the diffusion coefficient is :1.788175 *10**-4 kmol/m**2*s\n"
+ ]
+ }
+ ],
+ "prompt_number": 61
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Elements_Of_Mass_Transfer_Part_1/ch3.ipynb b/Elements_Of_Mass_Transfer_Part_1/ch3.ipynb
new file mode 100755
index 00000000..3a0c3089
--- /dev/null
+++ b/Elements_Of_Mass_Transfer_Part_1/ch3.ipynb
@@ -0,0 +1,596 @@
+{
+ "metadata": {
+ "name": "ch3",
+ "signature": "sha256:3744cb249ffd9e10c950b9110990dfac9cd54ad63b8fe61f5671a88b4822fb4c"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 3 : Mass transfer coefficient and interphase mass transfer"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 3.1"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variable Declaration \n",
+ "v=6.; #velocity in m/s\n",
+ "l=6.; #length in m\n",
+ "pa1=10.; #pressure at 1 in atm\n",
+ "pa2=0; #pressure at 2 in atm\n",
+ "t=373.; # temperature in kelvin\n",
+ "p=1.; #pressure of naphthalene in atm at 373kelvin\n",
+ "D=5.15*10**-6; #diffusivity of naphthalene in C02 in m**2/s\n",
+ "d=0.946; #density of air in kg/m**3\n",
+ "u=.021*10**-3; #viscosity of air in Newton*s/m**2\n",
+ "ID=0.075; #diameter in m\n",
+ "\n",
+ "# Calculation\n",
+ "nre=(ID*v*d)/(u); #calc. of reynolds no.\n",
+ "cf=2*0.023*(nre)**(-0.2); #friction factor\n",
+ "nsc=(u)/(d*D); #calc of schmidt no.\n",
+ "kc=(cf*v)/(2*(nsc)**(2./3));\n",
+ "na=(kc*10**5*(pa1/760-0))/(8314*t); #difussion flux in kmol/m**2*s\n",
+ "sub=na*2*3.14*(ID/2)*l; #rate of sublimation\n",
+ "\n",
+ "# Result\n",
+ "print \"\\nrate of sublimation :%f *10**-6 kmol/s\\n\"%(sub/10**-6);\n",
+ "#End"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "rate of sublimation :4.298312 *10**-6 kmol/s\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 3.2"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "v=0.30; #velocity of parallelair in m/s\n",
+ "t=300; #temperature of air in kelvin\n",
+ "p=10.0**5/760; #pressure of air in pascal\n",
+ "Dab=5.9*10**-4; #diffusivity of naphthalene in in air in m**2/s \n",
+ "pa1=0.2*10**5/760; #pressure of air at 1 in pascal\n",
+ "pa2=0; #pressure of air at 2 in pascal\n",
+ "d=1.15; #density of air in kg/m**3\n",
+ "u=0.0185*10**-3; #viscosity of air in Newton*s/m**2\n",
+ "D=1.; #length in m\n",
+ "a=1.; #area of plate in m**2\n",
+ "\n",
+ "# Calculation \n",
+ "Nsc=u/(d*Dab); #schmidt no. calculation\n",
+ "Nre=(D*v*d)/u; #reynolds no. calculation\n",
+ " #flow is turbulent \n",
+ "f=0.072*(Nre)**-.25; #friction factor using \"chilton colburn\" analogy\n",
+ "k_c=(f*v)/(2*(Nsc)**.667); #mass transfer coefficient\n",
+ "NA=k_c*(pa1-pa2)/(8314*300); #mass flux calc.\n",
+ "sub=NA*a; #rate of sublimation in kmol/m**2*s\n",
+ "\n",
+ "# Result\n",
+ "print \"\\nrate of sublimation :%f *10**-7 kmol/s\\n\"%(sub/10**-7)\n",
+ "#End"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "rate of sublimation :1.077674 *10**-7 kmol/s\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 3.3 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "# a is CO2 and b is water\n",
+ "p=2.; #total pressure at 1 in atm \n",
+ "pa1=0.2*10**5; #pressure of CO2 at pt 1 in atm\n",
+ "pa2=0; #pressure of CO2 at pt 2 is 0 since air is pure\n",
+ "ya1=0.1; #mole fraction of CO2 at 1 is 0.2/2\n",
+ "ya2=0; #mole fraction of CO2 at 2 is 0 since air is pure\n",
+ "yb1=0.9; #mole fraction of water at 1 is (1-0.1)\n",
+ "yb2=1.0; #mole fraction of water at 2 is 1.0 since total pressure has to be constant.\n",
+ "k_y1=6.78*10**-5; #mass transfer coefficient in kmol/m**2*s*molefraction\n",
+ "import math\n",
+ "\n",
+ "# Calculation \n",
+ "yb_ln=(yb2-yb1)/(math.log(yb2/yb1)); #log mean is represented by yb_ln\n",
+ "\n",
+ "k_y=k_y1/yb_ln; \n",
+ "\n",
+ "# Result\n",
+ "print \"\\nvalue of mass transfer coefficient k_y is:%f *10**-5 kmol/m**2*s*(molefractin)\"%(k_y/10.0**-5)\n",
+ "k_g=k_y/p; #mass ttransfer coefficient in lmol/m**2*s*atm\n",
+ "print \"\\nvalue mass transfer coefficient k_g is:%f *10**-5 kmol/m**2*s*(atm)\"%(k_g/10**-5)\n",
+ "\n",
+ "NA=k_y*(ya1-ya2); #mass flux in kmol/m**2*s\n",
+ "print \"\\nvalue of rate of mass transfer :%f *10**-6 kmol/m**2*s\"%(NA/10.0**-6)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "value of mass transfer coefficient k_y is:7.143443 *10**-5 kmol/m**2*s*(molefractin)\n",
+ "\n",
+ "value mass transfer coefficient k_g is:3.571721 *10**-5 kmol/m**2*s*(atm)\n",
+ "\n",
+ "value of rate of mass transfer :7.143443 *10**-6 kmol/m**2*s\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 3.4"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "NA=7.5*10**-7; #mass flux in gmol/cm**2*s\n",
+ "Dab=1.7*10**-5; #diffusivity if SO2 in water in cm**2/s\n",
+ "c=1./18.02; #concentration is density/molecular weight in gmol/cm**2*s\n",
+ "#SO2 is absorbed from air into water\n",
+ "\n",
+ "xa1=0.0025; #liquid phase mole fraction at 1\n",
+ "xa2=0.0003; #liquid phase mole fraction at 2\n",
+ " #NA=kc(Ca1-Ca2)=Dab*(Ca1-Ca2)/d\n",
+ "\n",
+ "# Calculation \n",
+ "k_c=NA/(c*(xa1-xa2)); #k_c=Dab/d=NA/c(xa1-xa2)\n",
+ "\n",
+ "# Result \n",
+ "print \"\\nmass transfer coefficient k_c is:%f cm/s\"%k_c\n",
+ "\n",
+ "d=Dab/k_c;\n",
+ "print \"\\nfilm thickness d is :%f cm\"%d\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "mass transfer coefficient k_c is:0.006143 cm/s\n",
+ "\n",
+ "film thickness d is :0.002767 cm\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 3.5 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Kg=2.72*10**-4; #overall gas phase mass transfer coefficient in kmol/m**2*S*atm\n",
+ "r_gas=0.85*(1/Kg); #given that gas phase resisitance is 0.85 times overall resistance\n",
+ "kg=1.0/r_gas; \n",
+ "m=9.35*10**-3; #henry's law constant in atm*m**3/kmol\n",
+ "kl=m/(1./Kg-1/kg); #liquid phase mass transfer coefficient in m/s\n",
+ "print \"\\nthe value of liquid film coefficient kl : %f*10**-5 m/s\"%(kl/10**-5)\n",
+ "print \"\\nthe value of gas film coefficient kg : %f*10**-5 m/s\"%(kg/10**-5);\n",
+ "p=1.; #overall pressure in atm\n",
+ "\n",
+ " #NA=Kg(pag-pa*)=kg(pag-pai)=kl(Cai-Cal)\n",
+ "# Calculation \n",
+ "Yag=0.1; #molefraction of ammonia\n",
+ "Cal=6.42*10**-2; #liquid phase concentration \n",
+ "Pag=Yag*p; #pressure of ammonia\n",
+ " \n",
+ "#Pai=m*C_ai;\n",
+ "#NA=kg(pag-pai)=kl(Cai-Cal)\n",
+ " \n",
+ "#Cai=poly([0],'Cai'); #calc. of conc. in gas phase\n",
+ "x = 1.6588481 #x=roots((Pag-m*Cai)*(kg/kl)-(Cai-Cal));\n",
+ "\n",
+ "# Result \n",
+ "print \"\\nthe value of interphase conc.cai :%f kmol/m**3\"%x\n",
+ "Pai=m*x;\n",
+ "print \"\\nthe value of interphase pressure pai is:%f atm\"%Pai\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "the value of liquid film coefficient kl : 1.695467*10**-5 m/s\n",
+ "\n",
+ "the value of gas film coefficient kg : 32.000000*10**-5 m/s\n",
+ "\n",
+ "the value of interphase conc.cai :1.658848 kmol/m**3\n",
+ "\n",
+ "the value of interphase pressure pai is:0.015510 atm\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 3.6 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "m=0.3672;\n",
+ "t=.9;\n",
+ " #Pai and Cai indicates interfacial pressure and conc.\n",
+ " #Pal and Cal indicates bulk pressure and conc.\n",
+ "Yag=0.15; #molefraction of ammonia\n",
+ "Cal=0.147; #liquid phase concentration in kmol/m**3\n",
+ "p=1; #overall pressure\n",
+ "\n",
+ "# Calculation \n",
+ "Pag=Yag*p; #pressure of ammonia\n",
+ "\n",
+ " #Pai=m*C_ai;\n",
+ " #kg/kl=(Cai-Cal)/(Pag-Pai);\n",
+ " \n",
+ "#Cai=poly([0],'Cai'); #calc. of conc. in gas phase\n",
+ "x = 0.211954 #x=roots((Pag-m*Cai)*(t)-(Cai-Cal));\n",
+ "\n",
+ "# Result\n",
+ "print \"\\nthe value of conc. of ammonia cai is :%f kmol/m**3\"%x\n",
+ "Pai=m*x;\n",
+ "print \"\\nthe value of interphase pressure Pai is :%f atm\"%Pai"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "the value of conc. of ammonia cai is :0.211954 kmol/m**3\n",
+ "\n",
+ "the value of interphase pressure Pai is :0.077830 atm\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 3.7"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "D=.1;\n",
+ "l=3; # l is length of bubble in cm\n",
+ "a=3.14*D*l; # area in cm**2\n",
+ "Ca_o=0.0001; #pure conc. of gas in g*mol/cc*atm\n",
+ "Ca=0;\n",
+ "NA=.482*10**-5; # molar rate of absorption in g*moles/s\n",
+ " #Pa_o and Ca_o indicates pure pressure and conc.\n",
+ "# Calculation \n",
+ "kl=NA/(a*(Ca_o-Ca)); #mass transfer coefficient acc. to higbie's penetration theory\n",
+ "Q=4; #volumetric flow rate in cc/s\n",
+ "A=3.14*.1*.1/4; #area of flow\n",
+ "v=Q/A; #velocity of flow in cm/s\n",
+ "\n",
+ "#timt t=bubble length/linear velocity;\n",
+ "t=l/v;\n",
+ "DAB=(kl**2)*3.14*t/4; #diffusivity in cm**2/s\n",
+ "D_new=0.09; #revised diameter reduced to.09\n",
+ "a_new=3.14*l*D_new; #revised area\n",
+ "A_new=3.14*0.09*0.09/4; #revised flow area\n",
+ "v_new=Q/A_new; #revised velocity\n",
+ "\n",
+ "# Result \n",
+ "print \"\\nthe value of diffusivity of gas DAB is :%f cm/s\"%(DAB/10**-5)\n",
+ "\n",
+ "t_new=l/v_new; #revised time\n",
+ "kl_new=2*(DAB/(3.14*0.0047))**0.5; #revised mass transfer coefficient \n",
+ "NA_new=kl_new*a_new*(Ca_o-Ca); #revised molar rate absorption in g*moles/s\n",
+ "print \"\\nthe value of NA_new is :%f*10**-6 kmol/m**3\"%(NA_new/10**-6)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "the value of diffusivity of gas DAB is :1.210021 cm/s\n",
+ "\n",
+ "the value of NA_new is :4.855188*10**-6 kmol/m**3\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 3.8"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "Kg=7.36*10**-10;\n",
+ "p=1.013*10**5;\n",
+ "Ky=Kg*p;\n",
+ "#resistance in gas phase is 0.45 of total resistance & .55 in liquid phase\n",
+ "#(resistance in gas phase)r_gas=1/ky and (resistance in liq phase)r_liq=m'/kx\n",
+ "r_gas=0.45*(1./Ky);\n",
+ "ky=1./r_gas;\n",
+ "r_liq=0.55*(1./Ky);\n",
+ "print \"film based liq phase mass transfer coeff.ky is :%f \"%ky\n",
+ "\n",
+ "# Calculation\n",
+ "m1=86.45;\n",
+ "kx=m1/r_liq;\n",
+ "yag=.1;\n",
+ "xal=(.4/64)/((99.6/18)+(.4/64));\n",
+ "print \"\\n film based gas phase mass transfer coeff.ky is :%f \"%kx\n",
+ "#slope of the line gives -kx/ky=-70.61\n",
+ "m2=m1; # since equilibrium line a straigth line m'=m''\n",
+ "Kx=1/(1/kx+(1/(m2*ky))); #overall liquid phase mass transfer coefficient\n",
+ "print \"\\n overall liq phase mass transfer coefficient Kx is :%f \"%Kx\n",
+ "# equillibrium relation is given under\n",
+ "p = [0.2,0.3,0.5,0.7];\n",
+ "a = [29,46,83,119];\n",
+ "i=0;\n",
+ "x = [0,0,0,0]\n",
+ "y = [0,0,0,0]\n",
+ " #looping for calcullating mole fraction\n",
+ "while (i<4):\n",
+ " x[i]= (p[i]/64.)/(p[i]/64.+100/18);\n",
+ " y[i]= a[i]/760.; #mole fraction plotted on y-axis\n",
+ " i=i+1; \n",
+ " #mole fraction plotted on x-axis\n",
+ "%pylab inline\n",
+ "from matplotlib.pyplot import *\n",
+ "\n",
+ "# Result\n",
+ "plot(x,y);\n",
+ "title(\"Fig.3.17,Example 8\");\n",
+ "xlabel(\"X-- Concentration of SO2 in liquid phase, X(10**4)(molefraction)\");\n",
+ "ylabel(\"Y-- Concentration of SO2 in gas phase, Y(molefraction)\");\n",
+ "show()\n",
+ " #from the graph we get these values\n",
+ "yao=.083; #corresponding to the value of xao=0.001128\n",
+ "xao=.00132; #corresponding to the value of yag=.1\n",
+ "yai=.0925; #corresponding to the perpendicular dropped from the pt(.001128,0.1) \n",
+ "xai=.00123;\n",
+ " \n",
+ " # flux based on overall coefficient\n",
+ "NAo_gas=Ky*(yag-yao);\n",
+ "NAo_liq=Kx*(xao-xal);\n",
+ "print \"overall gas phase mass transfer flux -NAo_gas is :%f*10**-6 kmol/m**2*s \"%(NAo_gas/10**-6)\n",
+ "print \"overall liq phase mass transfer flux -NAo_liq is :%f*10**-6 kmol/m**2*s \"%(NAo_liq/10**-6);\n",
+ "\n",
+ " # flux based on film coefficient \n",
+ "NAf_gas=ky*(yag-yai);\n",
+ "NAf_liq=kx*(xai-xal);\n",
+ "print \"film based gas phase mass transfer flux-NAf_gas is :%f *10**-6 kmol/m**2*s\"%(NAf_gas/10**-6);\n",
+ "print \"film based liq phase mass transfer flux-NAf_liq is :%f *10**-6 kmol/m**2*s\"%(NAf_liq/10**-6);\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "film based liq phase mass transfer coeff.ky is :0.000166 \n",
+ "\n",
+ " film based gas phase mass transfer coeff.ky is :0.011719 \n",
+ "\n",
+ " overall liq phase mass transfer coefficient Kx is :0.006445 \n",
+ "Populating the interactive namespace from numpy and matplotlib"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stderr",
+ "text": [
+ "WARNING: pylab import has clobbered these variables: ['f']\n",
+ "`%pylab --no-import-all` prevents importing * from pylab and numpy\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n6NEAAD8/P2RmZiI9PR1NmjSBh4cHAOF2nKOjIx4+fFje98cYY0zDlHY3PnbsGC5fvgxdXV0AwIcf\nfggPDw8sX75c6cnT0tJgaWkpf2xhYYGYmBil+zx48ACNGzeWb0tJSUF8fLxWzKjMGGNMCVLC1dWV\nnj17Jn/87NkzcnV1VXYYEREdOnSIxo8fL3+8e/dumjJlSrF9+vTpQ1FRUfLHXbp0oUuXLskfS6VS\n8vb2pl9++aXE+QHwF3/xF3/xVwW+1EnpFcvnn38OLy8vdOrUCUSE06dPY8WKFcoOAwCYm5sjNTVV\n/jg1NRUWFhZl7vPgwQOYm5sDAAoKChAQEIARI0ZgwIABJc5P3COMMca0jkpzhT18+BAXLlyARCJB\n69at0aRJE5VOXlhYCHt7e5w8eRLNmjVD69atsW/fvmIrUIaFhWHDhg0ICwtDdHQ0ZsyYgejoaBAR\nRo8ejQYNGmDt2rUVf4eMMcY0SmFhCQ8Ph1QqxZAhQ4ptP3ToEOrWrYtu3bqp9ALHjx/HjBkzIJPJ\nMG7cOHz++efYtGkTAGDixIkAIO85VqdOHezYsQNeXl6IiopChw4d4ObmJp9CZvny5ejRo0eF3yxj\njDENUHSPrE2bNpSenl5i+5MnT8jPz69S7sMdP36c7O3tydbWllasWFHqPlOnTiVbW1tyc3OjuLg4\npcc+f/6cunbtSnZ2dtStWzfKyMiQP3flyhV69913ydnZmVxdXSkvL0/rcubm5lJgYCC5urqSo6Mj\nLV++XKWM6sp54MABcnJyIh0dnWJtX0REy5YtI1tbW7K3t6fff/9da3JevHhRvv2PP/4gb29vcnV1\nJW9vbzp16pTW5Hz750lEdO/ePapTpw598803WptTmz5HinJW9HOkjoyzZ88mBwcHcnNzo4EDB1Jm\nZqb8OW36DCnKWZHPkMLC4uXlpfAgFxcXpSdWprCwkGxsbOju3buUn59P7u7ulJCQUGyfY8eOUc+e\nPYmIKDo6Wl7Qyjp2zpw5tHLlSiIiWrFiBc2dO5eIiAoKCsjNzY2uXr1KREQvXrwgmUymdTl37NhB\ngYGBRESUk5NDVlZWdO/ePdFy3rhxg27evEn+/v7FPrjXr18nd3d3ys/Pp7t375KNjY2oP09FOePj\n4+nRo0dERPT333+Tubm50oxi5HwtICCA/ud//kflwqLpnNr2OVKUsyKfI3Vl/OOPP+Q/o7lz58o/\n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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x2c409d0>"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "overall gas phase mass transfer flux -NAo_gas is :1.267466*10**-6 kmol/m**2*s \n",
+ "overall liq phase mass transfer flux -NAo_liq is :1.235953*10**-6 kmol/m**2*s \n",
+ "film based gas phase mass transfer flux-NAf_gas is :1.242613 *10**-6 kmol/m**2*s\n",
+ "film based liq phase mass transfer flux-NAf_liq is :1.192479 *10**-6 kmol/m**2*s\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 3.9"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "Cas=1.521*10**-7;\n",
+ "v=1525; #velocity in m/s\n",
+ "D=0.0516; #diffusivity in cm**2/s\n",
+ "d=1.25*10**-3; #density of air in g/cm**3\n",
+ "u=1.786*10**-4; #viscosity of air in n*s/m**2\n",
+ "Dia=2.54; #diameter in cm\n",
+ "\n",
+ "# Calculation \n",
+ "nre=(Dia*v*d)/(u); #calc. of reynolds no.\n",
+ "cf=2*0.036*(nre)**(-0.25); #friction factor\n",
+ "nsc=(u)/(d*D); #calc of schmidt no.\n",
+ "kc=(cf*v)/(2*(nsc)**(2./3)); #cf/2=kc/uo*(sc)**2/3\n",
+ "\n",
+ "#rate of mass transfer=(cross sectional area)*(air velocity)*dc =(3.14*d**2/4)*v*dc -----1 eqn\n",
+ " \n",
+ "#flux for mass transfer from the surface=kc*(Cas-C)\n",
+ "# rate of mass transfer=(flux)*mass transfer\n",
+ "# =kc*(Cas-C)*3.14*dx*D------2 eqn\n",
+ "# solving ----1 & -----2 we get\n",
+ "# \n",
+ "# (3.14*d**2/4)*v*dc=kc*(Cas-C)*3.14*dx*d;\n",
+ "# dc/(Cas-C)=(kc*3.14*d*v)/(3.14*d**2/4)*dx\n",
+ "# solving this we get\n",
+ "# ln[(Cas-C)/(Cas-C_in)]=(kc*4*x)/(d*v)\n",
+ "import math\n",
+ "x=183; #upper limit of x\n",
+ "C_in=0; #C=C_in=0;\n",
+ "t=(kc*4*x)/(Dia*v); #variable to take out the exponential\n",
+ "z=math.e**t;\n",
+ "C_final=Cas-(z*(Cas-C_in)); #value of c_final in g*mol/cc;\n",
+ "\n",
+ "# Result\n",
+ "print \"\\t conc. of acid at outlet :%f *10**-8 g*mol/cc\\n\"%(abs(C_final/10**-8))\n",
+ "rate=(3.14*Dia**2/4)*v*(C_final-C_in);\n",
+ "print \"\\trate of mass transfer :%f *10**-4 g*mol/s\\n\"%(abs(rate/10**-4));\n",
+ "#End"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\t conc. of acid at outlet :7.709387 *10**-8 g*mol/cc\n",
+ "\n",
+ "\trate of mass transfer :5.954246 *10**-4 g*mol/s\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Elements_Of_Mass_Transfer_Part_1/ch5.ipynb b/Elements_Of_Mass_Transfer_Part_1/ch5.ipynb
new file mode 100755
index 00000000..49994a84
--- /dev/null
+++ b/Elements_Of_Mass_Transfer_Part_1/ch5.ipynb
@@ -0,0 +1,983 @@
+{
+ "metadata": {
+ "name": "ch5",
+ "signature": "sha256:2ee4e5f8137c7268975819ca4a31ef66c4a59076a802f56667cecd1c3f67b2a9"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 5 : Humidification"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.1 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "# Variable Declaration \n",
+ "#dry bulb temperature=50 and wet bulb temperature=35 \n",
+ "Tg=50.; #dry bulb temperature=50\n",
+ "To=0; #refrence temperature in degree celcius \n",
+ "Mb=28.84; #average molecular weight of air\n",
+ "Ma=18.; #average molecular weight of water\n",
+ "\n",
+ "#part(i)\n",
+ "ybar=.0483 #0.003 kg of water vapour/kg of dry air\n",
+ "print \"\\n the humidity(from chart) is \\t\\t:%f percent\"%ybar\n",
+ "\n",
+ "#part(ii)\n",
+ "humper=35.; #humidity percentage\n",
+ "print \"\\n the percentage humidity is(from chart) :%f percent\"%humper\n",
+ "\n",
+ "# Calculation and Result\n",
+ "#part(iii)\n",
+ "pt=1.013*10**5; #total pressure in pascal\n",
+ "molhum=0.0483; #molal humidity =pa/(pt-pa)\n",
+ "pa=molhum*pt/(1+molhum);\n",
+ "#the vopour pressure of water(steam tables)at 50degree = .1234*10**5 N/m**2\n",
+ "relhum=(pa/(.1234*10**5))*100; #percentage relative humidity =partial pressure/vapour pressure\n",
+ "print \"\\n the percentage relative humidity is \\t percent:%f \"%relhum\n",
+ "\n",
+ "#part(iv)\n",
+ "dewpoint=31.5; #dew point temperature in degree celcius\n",
+ "print \"\\n the dew point temperature \\t\\t :%f degree celcius\"%dewpoint\n",
+ "\n",
+ "#part(v)\n",
+ "Ca=1.005;\n",
+ "Cb=1.884;\n",
+ "ybar=.03; #saturation temperature inkg water vapour/kg dry air\n",
+ "Cs=Ca+Cb*ybar; #humid heat in kj/kg dry air degree celcius\n",
+ "print \"\\n we get humid heat as \\t\\t\\t :%f kj/kg dry air degree celcius \"%Cs\n",
+ "\n",
+ "#part(vi)\n",
+ "d=2502; #latent heat in kj/kg\n",
+ "H=Cs*(Tg-0)+ybar*d; #enthalpy for refrence temperature of 0 degree\n",
+ "print \"\\n we get H as \\t\\t\\t\\t :%f kj/kg\"%H\n",
+ "Hsat=274.; #enthalpy of sturated air\n",
+ "Hdry=50.; #enthalpy of dry air in kj/kg\n",
+ "Hwet=Hdry+(Hsat-Hdry)*0.35; #enthalpy of wet air in kj/kg\n",
+ "print \"\\n we get enthalpy of wet air as \\t:%f kj/kg\"%Hwet\n",
+ "\n",
+ "#part(vii)\n",
+ "VH=8315*((1./Mb)+(ybar/Ma))*((Tg+273.)/pt); #humid volume in m**3mixture/kg of dry air\n",
+ "print \"\\n we get VH as (a)\\t\\t\\t :%f m**3/kg of dry air\"%VH\n",
+ "spvol=1.055; #specific volume of saturated air in m**3*kg\n",
+ "vdry=0.91; #specific volume of dry air in m**3/kg\n",
+ "Vh=vdry+(spvol-vdry)*.35 #by interpolation we get Vh in m**3/kg of dry air \n",
+ "print \"\\n by interpolation we get specific volume Vh as(b) :%f m**3/kg of dry air\"%Vh\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the humidity(from chart) is \t\t:0.048300 percent\n",
+ "\n",
+ " the percentage humidity is(from chart) :35.000000 percent\n",
+ "\n",
+ " the percentage relative humidity is \t percent:37.822988 \n",
+ "\n",
+ " the dew point temperature \t\t :31.500000 degree celcius\n",
+ "\n",
+ " we get humid heat as \t\t\t :1.061520 kj/kg dry air degree celcius \n",
+ "\n",
+ " we get H as \t\t\t\t :128.136000 kj/kg\n",
+ "\n",
+ " we get enthalpy of wet air as \t:128.400000 kj/kg\n",
+ "\n",
+ " we get VH as (a)\t\t\t :0.963494 m**3/kg of dry air\n",
+ "\n",
+ " by interpolation we get specific volume Vh as(b) :0.960750 m**3/kg of dry air\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.2 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "\n",
+ "#dry bulb temperature=25 and wet bulb temperature=22\n",
+ "Tg=25.; #dry bulb temperature=50\n",
+ "To=0; #refrence temperature in degree celcius \n",
+ "Mb=28.84; #average molecular weight of air\n",
+ "Ma=18.; #average molecular weight of water\n",
+ "\n",
+ "\n",
+ "# Calculation and Result\n",
+ "#part(i)\n",
+ "hum=.0145 #0.0145 kg of water/kg of dry air\n",
+ "print \"\\n the saturation humidity(from chart) is :%f percent\"%hum\n",
+ "\n",
+ "#part(ii)\n",
+ "humper=57.; #humidity percentage\n",
+ "print \"\\n the percentage humidity is \\t\\t:%f percent\"%humper\n",
+ "\n",
+ "#part(iii)\n",
+ "pt=1.; #total pressure in atm\n",
+ "sathum=0.0255; #molal humidity =pa/(pt-pa)\n",
+ "pa1=sathum*pt*(28.84/18)/(1+(sathum*(28.84/18)));\n",
+ "#the vopour pressure of water(steam tables)at 25 = .0393*10**5 N/m**2\n",
+ "pt=1; #total pressure in atm\n",
+ "molhum=0.0145; #molal humidity =pa/(pt-pa)\n",
+ "pa2=molhum*pt*(28.84/18)/(1+(molhum*pt*(28.84/18)));\n",
+ "#the vopour pressure of water(steam tables)at 25 = .0393*10**5 N/m**2\n",
+ "relhum=(pa2/pa1)*100; #percentage relative humidity =partial pressure/vapour pressure\n",
+ "print \"\\n the percentage relative humidity is \\t :%f \"%relhum\n",
+ "\n",
+ "#part(iv)\n",
+ "dewpoint=19.5; #dew point temperature in degree celcius\n",
+ "print \"\\n the dew point temperature \\t :%f degree celcius\"%dewpoint\n",
+ "\n",
+ "#part(v)\n",
+ "Ca=1005.;\n",
+ "Cb=1884.;\n",
+ "ybar=.0145; # humidity inkg water /kg dry air\n",
+ "Cs=Ca+Cb*ybar; #humid heat in j/kg dry air degree celcius\n",
+ "d=2502300.; #latent heat in j/kg\n",
+ "H=Cs*(Tg-0)+ybar*d; #enthalpy for refrence temperature of 0 degree\n",
+ "print \"\\n we get Humid heat H as \\t :%f j/kg\"%H\n",
+ "#the actual answer is 62091.3 bt in book it is given 65188.25(calculation mistake in book)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the saturation humidity(from chart) is :0.014500 percent\n",
+ "\n",
+ " the percentage humidity is \t\t:57.000000 percent\n",
+ "\n",
+ " the percentage relative humidity is \t :57.842165 \n",
+ "\n",
+ " the dew point temperature \t :19.500000 degree celcius\n",
+ "\n",
+ " we get Humid heat H as \t :62091.300000 j/kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.3"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "\n",
+ "#part(i)\n",
+ "pt=800.; #total pressure in mmHg\n",
+ "pa=190.; #vapour pressure of acetone at 25 degree \n",
+ "ys_bar=pa*(58./28)/(pt-pa) #\n",
+ "#percentage saturation = y_bar/ys_bar *100\n",
+ "s=80; #percent saturation\n",
+ "\n",
+ "# Calculation and Result\n",
+ "y_bar=ys_bar*s/100.; #absolute humidity\n",
+ "print \"\\n the absolute humidity is \\t :%f kg acetone/kmol N2 \"%y_bar\n",
+ "\n",
+ "#part(ii)\n",
+ "#y_bar=pa*(58/28)/(pt-pa) \n",
+ "pa1=pt*y_bar*(28./58)/(1+(y_bar*(28./58)));\n",
+ "print \"\\n the partial pressure of acetone is:%f mmHg\"%pa1\n",
+ "\n",
+ "#part(iii)\n",
+ "y=pa1/(pt-pa1); #absolute molal humidity\n",
+ "print \"\\n absolute molal humidity \\t:%f kmol acetone/kmol N2\"%y\n",
+ "\n",
+ "#part(iv)\n",
+ "#volume of .249kmol acetone vapour at NTP =.249*22.14\n",
+ "#p1v1/T1 =p2v2/T2\n",
+ "p2=800.; #final pressure of acetone and nitrogen at 25 degree\n",
+ "p1=760.; #initial pressure of acetone and nitrogen at 25 degree\n",
+ "T2=298.; #final temperature of acetone and nitrogenat 25 degree\n",
+ "T1=273.; #initial temperature of acetone and nitrogen at 25 degree\n",
+ "vA1=5.581; #initial volume of acetone at 25 degree\n",
+ "vN1=22.414; #initial volume of nitrogen at 25 degree \n",
+ "vA2=T2*vA1*p1/(T1*p2); #final volume of acetone at 25 degree\n",
+ "vN2=T2*vN1*p1/(T1*p2); #final volume of nitrogen at 25 degree\n",
+ "vtotal=vA2+vN2; #total volume of the mixture\n",
+ "vper=vA2*100/vtotal; #percentage volume of acetone\n",
+ "print \"\\n the percentage volume of acetone is :%f m**3\"%vper\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the absolute humidity is \t :0.516159 kg acetone/kmol N2 \n",
+ "\n",
+ " the partial pressure of acetone is:159.580052 mmHg\n",
+ "\n",
+ " absolute molal humidity \t:0.249180 kmol acetone/kmol N2\n",
+ "\n",
+ " the percentage volume of acetone is :19.935703 m**3\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.4 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "# Variable Declaration \n",
+ "\n",
+ "#part(i)\n",
+ "pa=13.3; #pressure in kpa\n",
+ "pa2=20.6; #vapour pressure at 60 degree\n",
+ "pt=106.6 #total pressure in kpa\n",
+ "y=pa/(pt-pa); #absolute molal humidity\n",
+ "\n",
+ "# Calculation and Result\n",
+ "y_bar=y*(18/28.84); #relative humidity\n",
+ "print \"\\n absolute humidity of mixture :%f kg water-vapour/kg dry air\"%y_bar\n",
+ "\n",
+ "\n",
+ "#part(ii)\n",
+ "mf=pa/pt; #mole fraction\n",
+ "print \"\\n the mole fraction is :%f\"%mf\n",
+ "\n",
+ "#part(iii)\n",
+ "vf=mf; #volume fraction\n",
+ "print \"\\n the volume fraction is :%f\"%vf\n",
+ "\n",
+ "#part(iv)\n",
+ "Ma=18.; #molecular weight\n",
+ "Mb=28.84; #molecular weight\n",
+ "Tg=60.; #temperature of mixture\n",
+ "rh=(pa/pa2)*100.; #relative humidity in pecentage \n",
+ "print \"\\n we get relative humidity as as :%f percent\"%rh\n",
+ "\n",
+ "#part(v)\n",
+ "VH=8315.*((1./Mb)+(y_bar/Ma))*((Tg+273)/pt)*10**-3; #humid volume in m**3mixture/kg of dry air\n",
+ "x=y_bar/VH; #g water/m**3 mixture \n",
+ "print \"\\n we get x i.e. gwater/m**3 mixture as :%f \"%(x*1000)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " absolute humidity of mixture :0.088971 kg water-vapour/kg dry air\n",
+ "\n",
+ " the mole fraction is :0.124765\n",
+ "\n",
+ " the volume fraction is :0.124765\n",
+ "\n",
+ " we get relative humidity as as :64.563107 percent\n",
+ "\n",
+ " we get x i.e. gwater/m**3 mixture as :86.460483 \n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.5 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "# Variable Declaration \n",
+ "\n",
+ "#part(i)\n",
+ "y_bar=.0183; #kg water vapour/kg dry air\n",
+ "print \"\\n we get humidity as(from chart) :%f kg of water/kg dry air\"%y_bar\n",
+ "print \"\\n we get saturation humidity as(from chart) :%d percent\"%67\n",
+ "Ma=18.; #molecular weight\n",
+ "Mb=28.84; #molecular weight\n",
+ "Tg=30.; \n",
+ "pa = 13.3\n",
+ "pa2 = 20.6 #temperature of mixture\n",
+ "rh=(pa/pa2)*100; #relative humidity in pecentage \n",
+ "pt=1.013*10**5; #total pressure in pascal\n",
+ "\n",
+ "# Calculation and Result\n",
+ "VH=8315*((1./Mb)+(y_bar/Ma))*((Tg+273)/pt); #humid volume in m**3mixture/kg of dry air\n",
+ "print \"\\n we get humid volume as \\t:%f m**3/kg dry air\"%VH\n",
+ "\n",
+ "#part(ii)\n",
+ "Ca=1005.;\n",
+ "Cb=1884.;\n",
+ "Cs=Ca+Cb*y_bar; #humid heat in j/kg dry air degree celcius\n",
+ "print \"\\n we get humid heat as \\t\\t :%f j/kg dry air degree celcius \"%Cs\n",
+ "\n",
+ "#part(iii)\n",
+ "d=2502300.; #latent heat in j/kg\n",
+ "H=Cs*(Tg-0)+y_bar*d; #enthalpy for refrence temperature of 0 degree\n",
+ "print \"\\n we get Enthalpy H as \\t\\t:%f j/kg dry air\"%H\n",
+ "\n",
+ "#part(iv)\n",
+ "dewpoint=23.5; #dew point temperature in degree celcius\n",
+ "print \"\\n the dew point temperature \\t :%f degree celcius\"%dewpoint\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " we get humidity as(from chart) :0.018300 kg of water/kg dry air\n",
+ "\n",
+ " we get saturation humidity as(from chart) :67 percent\n",
+ "\n",
+ " we get humid volume as \t:0.887669 m**3/kg dry air\n",
+ "\n",
+ " we get humid heat as \t\t :1039.477200 j/kg dry air degree celcius \n",
+ "\n",
+ " we get Enthalpy H as \t\t:76976.406000 j/kg dry air\n",
+ "\n",
+ " the dew point temperature \t :23.500000 degree celcius\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.6 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "\n",
+ "#part(i)\n",
+ "y=.048; #humidity kmol water vapour/kmol dry air\n",
+ "y_bar=y*(18/28.84); #(from chart) absolute humidity\n",
+ "print \"we get absolute humidity as :%f kg of water/kg dry air\"%(y_bar)\n",
+ "print \"we get percentage humidity as(from chart) :%f percent\"%(25.5);\n",
+ "\n",
+ "# Calculation and Result\n",
+ "y_bar=y*(18/28.84); #relative humidity\n",
+ "Ma=18.; #molecular weight\n",
+ "Mb=28.84; #molecular weight\n",
+ "Tg=55.; #temperature of mixture\n",
+ "pt=1.013*10**5; #total pressure in pascal\n",
+ "VH=8315*((1./Mb)+(y_bar/Ma))*((Tg+273)/pt); #humid volume in m**3mixture/kg of dry air\n",
+ "print \"\\n we get VH as \\t :%f m**3/kg dry air\"%VH\n",
+ "\n",
+ "#part(ii)\n",
+ "Ca=1005.;\n",
+ "Cb=1884.;\n",
+ "Cs=Ca+Cb*y_bar; #humid heat in j/kg dry air degree celcius\n",
+ "print \"\\n we get humid heat as \\t :%f j/kg dry air degree celcius \"%Cs\n",
+ "\n",
+ "#part(iii)\n",
+ "d=2502300.; #latent heat in j/kg\n",
+ "H=Cs*(Tg-0)+y_bar*d; #enthalpy for refrence temperature of 0 degree\n",
+ "print \"\\n we get H as \\t :%f j/kg dry air\"%H\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "we get absolute humidity as :0.029958 kg of water/kg dry air\n",
+ "we get percentage humidity as(from chart) :25.500000 percent\n",
+ "\n",
+ " we get VH as \t :0.978346 m**3/kg dry air\n",
+ "\n",
+ " we get humid heat as \t :1061.441609 j/kg dry air degree celcius \n",
+ "\n",
+ " we get H as \t :133344.170596 j/kg dry air\n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.7 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "# Variable Declaration \n",
+ "\n",
+ " \n",
+ "ft=46; #final temperature in degree celcius\n",
+ "# Calculation and Result\n",
+ "print \"\\n final temperature is (from chart):%f degree celcius\"%ft\n",
+ "y_bar=.0475; # humidity of air\n",
+ "print \"\\n the humidity of air(from chart) :%f kg water vapour /kg dry air\"%y_bar\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " final temperature is (from chart):46.000000 degree celcius\n",
+ "\n",
+ " the humidity of air(from chart) :0.047500 kg water vapour /kg dry air\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.8"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "\n",
+ "pa1=4.24 #data:vapour pressure of water at 30degree = 4.24 kpa\n",
+ "pa2=1.70 #vapour pressure of water at 30degree = 1.70 kpa\n",
+ "\n",
+ "#part(i)\n",
+ "pt=100.; #total pressure\n",
+ "\n",
+ "# Calculation \n",
+ "ys_bar=pa1/(pt-pa1); #kg water vapour/kg dry air\n",
+ "rh=.8; #relative humidity\n",
+ "pa3=rh*pa1; #partial pressure\n",
+ "y_bar=pa3*(18/28.84)/(pt-pa3); #molal humidity\n",
+ "print \"\\n the molal humidity:%f kg/kg dry air\"%y_bar\n",
+ "\n",
+ "#part(ii)\n",
+ "\n",
+ "pa=1.7; \n",
+ "pt=200.;\n",
+ "ys=pa/(pt-pa);\n",
+ "ys_bar=ys*(18/28.84);\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the molal humidity if pressure doubled and temp. is 15 :%f kg/kg dry air\"%ys_bar\n",
+ "\n",
+ "#part(iii) \n",
+ "Ma=18.; #molecular weight\n",
+ "Mb=28.84; #molecular weight\n",
+ "Tg=30.; #temperature of mixture\n",
+ "rh=(pa/pa2)*100; #relative humidity in pecentage \n",
+ "pt=10**5; #total pressure in pascal\n",
+ "VH=8315*((1./Mb)+(y_bar/Ma))*((Tg+273)/pt); #humid volume in m**3mixture/kg of dry air\n",
+ "print \"\\n we get humid volume VH as \\t :%f m**3/kg of dry air\"%VH\n",
+ "w=100/VH; #100 m**3 of original air \n",
+ "wo= w*y_bar; #water present in original air\n",
+ "wf= w*ys_bar; #water present finally\n",
+ "wc=wo-wf; #water condensed from 100m**3 of original sample\n",
+ "print \"\\n the weight water condensed from 100m**3 of original sample:%f kg\"%wc\n",
+ "\n",
+ "#part(iv)\n",
+ "Tg=15.; #temperature of mixture \n",
+ "pt=2*10**5; #total pressure in pascal\n",
+ "VH=8315*((1./Mb)+(ys_bar/Ma))*((Tg+273)/pt); #humid volume in m**3mixture/kg of dry air\n",
+ "vf=VH*110.6; #final volume of mixture\n",
+ "print \"\\n we get VH final volume of mixture as \\t :%f m**3\"%vf\n",
+ "\n",
+ "#end\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the molal humidity:0.021914 kg/kg dry air\n",
+ "\n",
+ " the molal humidity if pressure doubled and temp. is 15 :0.005351 kg/kg dry air\n",
+ "\n",
+ " we get humid volume VH as \t :0.904267 m**3/kg of dry air\n",
+ "\n",
+ " the weight water condensed from 100m**3 of original sample:1.831684 kg\n",
+ "\n",
+ " we get VH final volume of mixture as \t :46.311825 m**3\n"
+ ]
+ }
+ ],
+ "prompt_number": 20
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.9"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "\n",
+ "#part(i)\n",
+ "y_bar=.03; # humidity inkg water /kg dry air\n",
+ "pt=760.; #total pressure in pascal\n",
+ "pa2=118.; #final pressure\n",
+ "\n",
+ "# Calculation and Result\n",
+ "y=y_bar/(18/28.84); #humidity kmol water vapour/kmol dry air\n",
+ "pa=(y*pt)/(y+1); #partial pressure\n",
+ "rh=pa/pa2; #relative humidity\n",
+ "sh=pa2/(pt-pa2); #saturated humidity\n",
+ "ph=(y/sh)*100; #percentage humidity\n",
+ "print \"\\n percentage humidity is :%f\"%ph\n",
+ "\n",
+ "#/part(ii)\n",
+ "Ma=18.; #molecular weight\n",
+ "Mb=28.84; #molecular weight\n",
+ "Tg=55.; #temperature of mixture\n",
+ "pt=1.013*10**5; #total pressure in pascal\n",
+ "VH=8315*((1./Mb)+(y_bar/Ma))*((Tg+273)/pt); #humid volume in m**3mixture/kg of dry air\n",
+ "print \"\\n we get VH humid volume as :%f m**3/kg dry air\"%VH\n",
+ "\n",
+ "\n",
+ "#part(iii)\n",
+ "Ca=1005.;\n",
+ "Cb=1884.;\n",
+ "Cs=Ca+Cb*y_bar; #humid heat in j/kg dry air degree celcius\n",
+ "print \"\\n we get humid heat as \\t :%f j/kg dry air degree celcius \"%Cs\n",
+ "d=2502300; #latent heat in j/kg\n",
+ "H=Cs*(Tg-0)+y_bar*d; #enthalpy for refrence temperature of 0 degree\n",
+ "print \"\\n we get H enthalpy as \\t :%f j/kg\"%H\n",
+ "\n",
+ "#part(iv)\n",
+ "v=100.; #volume of air\n",
+ "mass=v/VH; #mass of dry air\n",
+ "Tg=110.; #temperature of mixture\n",
+ "d=2502300.; #latent heat in j\n",
+ "H_final=Cs*(Tg-0)+y_bar*d; #enthalpy for refrence temperature of 0 degree\n",
+ "H_added=(H_final-H)*102.25; #HEAT added in kj \n",
+ "print \"\\n we get heat added as \\t :%f kj\"%(H_added/1000)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " percentage humidity is :26.151525\n",
+ "\n",
+ " we get VH humid volume as :0.978409 m**3/kg dry air\n",
+ "\n",
+ " we get humid heat as \t :1061.520000 j/kg dry air degree celcius \n",
+ "\n",
+ " we get H enthalpy as \t :133452.600000 j/kg\n",
+ "\n",
+ " we get heat added as \t :5969.723100 kj\n"
+ ]
+ }
+ ],
+ "prompt_number": 21
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.10"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "\n",
+ "%pylab inline\n",
+ "L=2000.; #flow rate of water to be cooled in kg/min\n",
+ "T1=50.; #temperature of inlet water\n",
+ "T2=30.; #temp. of outlet water\n",
+ "H1=.016; #humidity of incoming air\n",
+ "cp=4.18; #specific heat of water\n",
+ "cpair=1.005; #specific heat capcity of air\n",
+ "cpwater=1.884; #specific heat capcity of water\n",
+ "tg=20.; #temperature in degree\n",
+ "to=0;\n",
+ "ybar=0.016; #saturated humidity at 20 degree\n",
+ "d=2502.; #latent heat\n",
+ "Ky_a=2500.; #value of masstransfer coefficient in kg/hr*m**3*dybar\n",
+ "\n",
+ "# Calculation \n",
+ "E=cpair*(tg-to)+(cpwater*(tg-to)+d)*ybar; #enthalpy\n",
+ "#similarly for other temperatures\n",
+ "T=[20,30,40,50,55] #differnt temperature for different enthalpy calculation\n",
+ "i=0;\n",
+ "E= [0,0,0,0,0]\n",
+ "while(i<5): #looping for different enthalpy calculation of operating line\n",
+ " E[i]=cpair*(T[i]-to)+(cpwater*(T[i]-to)+d)*ybar;\n",
+ " print \"\\n the enhalpy at :%f is :%f\"%(T[i],E[i]);\n",
+ " i=i+1;\n",
+ "\n",
+ "ES=[60.735,101.79,166.49,278.72,354.92] #enthalpy of eqll condition\n",
+ "from matplotlib.pyplot import *\n",
+ "\n",
+ "# Result\n",
+ "plot(T,E);\n",
+ "plot(T,ES);\n",
+ "title(\"Fig.5.10(b),Temperature-Enthalpy plot\");\n",
+ "xlabel(\"X-- Temperature, degree celcius\");\n",
+ "ylabel(\"Y-- Enthalpy ,kj/kg\");\n",
+ "legend(\"operating line\",\"Enthalpy at saturated cond\")\n",
+ "show()\n",
+ "\n",
+ "Hg1=71.09; #point on the oper. line(incoming air)\n",
+ "Hg2=253.; #point after drawing the tangent\n",
+ "slope=(Hg2-Hg1)/(T1-T2); #we gt slope of the tangent\n",
+ " #slope = (L*Cl/G)_min\n",
+ "Cl=4.18;\n",
+ "G_min=L*60*Cl/slope; #tangent gives minimum value of the gas flow rate\n",
+ "G_actual=G_min*1.3; #since actual flow rate is 1.3 times the minimum\n",
+ "slope2=L*Cl*60/G_actual; #slope of operating line\n",
+ "Hg2_actual=slope2*(T1-T2)+Hg1; #actual humidityat pt 2\n",
+ "Ggas=10000.; #minimum gas rate in kg/hr*m**2\n",
+ "Area1=G_actual/Ggas; #maximum area of the tower(based on gas)\n",
+ "Gliq=12000.; #minimum liquid rate in kg/hr*m**2\n",
+ "Area2=60*L/Gliq; #maximum area of the tower(based on liquid)\n",
+ "print \"\\n \\n the maximum area of the tower(based on gas) is :%f m**2\"%Area1\n",
+ "print \"\\n the maximum area of the tower(based on liquid) is :%f m**2\"%Area2\n",
+ "dia=(Area1*4/3.14)**0.5; #diameter of the tower in m\n",
+ "\n",
+ "\n",
+ " \n",
+ "#table\n",
+ "T=[20,30,40,50,55] #differnt temperature for different enthalpy calculation\n",
+ "#enthaly \n",
+ "H_bar=[101.79,133.0,166.49,210.0,278.72] #H_bar i.e. at equl.\n",
+ "Hg=[71.09,103.00,140.00,173.00,211.09] #Hg i.e. of operating line\n",
+ "i=0;\n",
+ "y = [0,0,0,0,0]\n",
+ "while(i<5): #looping for different enthalpy calculation of operating line\n",
+ " y[i]=1./(H_bar[i]-Hg[i]);\n",
+ " print \"\\n the enhalpy at :%f is :%f\"%(T[i],y[i]);\n",
+ " i=i+1;\n",
+ "\n",
+ "plot(Hg,y,\"o-\");\n",
+ "\n",
+ "#area under this curve gives Ntog =4.26\n",
+ "Ntog=4.26; #no. of transfer unit\n",
+ "Gs=10000.; #gas flow rate\n",
+ "Htog=Gs/Ky_a; # height of transfer unit\n",
+ "height=Ntog*Htog; #height of the tower\n",
+ "print \"\\n \\nthe tower height is :%f m\"%height\n",
+ "\n",
+ "\n",
+ "#M = E + B + W\n",
+ "W=.2/100 *L*60; #windage loss(W)\n",
+ "B=0; #blow down loss neglected\n",
+ "E=G_actual*(.064-.016); #assuming air leaves fully saturated\n",
+ "M = E + B + W; #make up water is based onevaporation loss(E),blow down loss(B),windage loss(W)\n",
+ "print \"\\n make up water is based onevaporation loss(E),blow down loss(B),windage loss(W) is :%f kg /hr\"%M\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].\n",
+ "For more information, type 'help(pylab)'.\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the enhalpy at :20.000000 is :60.734880\n",
+ "\n",
+ " the enhalpy at :30.000000 is :71.086320\n",
+ "\n",
+ " the enhalpy at :40.000000 is :81.437760\n",
+ "\n",
+ " the enhalpy at :50.000000 is :91.789200\n",
+ "\n",
+ " the enhalpy at :55.000000 is :96.964920\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stderr",
+ "text": [
+ "C:\\Anaconda\\lib\\site-packages\\matplotlib\\legend.py:336: UserWarning: Unrecognized location \"Enthalpy at saturated cond\". Falling back on \"best\"; valid locations are\n",
+ "\tright\n",
+ "\tcenter left\n",
+ "\tupper right\n",
+ "\tlower right\n",
+ "\tbest\n",
+ "\tcenter\n",
+ "\tlower left\n",
+ "\tcenter right\n",
+ "\tupper left\n",
+ "\tupper center\n",
+ "\tlower center\n",
+ "\n",
+ " % (loc, '\\n\\t'.join(self.codes.iterkeys())))\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "png": "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\nH5Tvu9xFN1PzSj1qaC+eEEIahloeOahZZEII4V1dt50aSsxCCCFETfFWHEQiEXr37g0HBwc4OTkB\nALKzs+Hu7g4rKyt4eHggNzeXr3hKIxaL+Y7wXig/f9Q5O0D51Q1vxUEgEEAsFiMuLg7R0dEAgA0b\nNsDd3R2JiYlwc3PDhg0b+IqnNOr+A6P8/FHn7ADlVze8Niu92/4VERGBwMBAAEBgYCCOHj3KRyxC\nCGn2eD1yGDZsGBwdHbF161YAQFZWFszMzAAAZmZmyMrK4iseIYQ0b4wn6enpjDHGnj9/zuzs7Nif\nf/7JjIyM5N5jbGxcaT4A9Ed/9Ed/9FePv7rg7TqH9u3fDmlhYmKCsWPHIjo6GmZmZsjMzES7du2Q\nkZEBU9PKI6Qy6sZKCCFKx0uzUlFREfLz8wEAhYWFiIqKgq2tLby8vBAWFgYACAsLg7e3Nx/xCCGk\n2ePlIrikpCSMHTsWACCRSDBx4kSsWLEC2dnZ8PX1RUpKCkQiEfbv3w8jI6PGjkcIIaSepwwaRUpK\nCnN1dWXW1tbMxsaGbdq0iTHG2KtXr9iwYcNY9+7dmbu7O8vJyeE5aWWKsq9evZqZm5sze3t7Zm9v\nz06dOsVz0qoVFxczJycnZmdnx3r27MmWL1/OGFOPdc+Y4vzqsv7LSSQSZm9vz0aPHs0YU5/1X+7d\n/Oq0/jt37sxsbW2Zvb0969evH2NMfdZ/Vdnruu5VeviMzMxMZGZmwt7eHgUFBejbty+OHj2K7du3\no23btli6dCm+/fZb5OTkqNw1EYqy79+/H0KhEIsWLeI7Yo2Kioqgq6sLiUSCAQMGYOPGjYiIiFD5\ndV+uqvznz59Xm/UPAD/++CNiY2ORn5+PiIgILF26VG3WP1A5/5o1a9Rm/VtaWiI2NhatW7fmpqnL\n+q8qe13XvUoPn9GuXTvY29sDAPT19dGzZ0+kpaWpxfUQirID6nNSXVdXFwBQWloKqVQKY2NjtVj3\n5arKD6jP+n/27BlOnjyJ6dOnc5nVaf1XlZ8xpjbrH6j8W1Gn9V/Veq7Lulfp4lDR06dPERcXB2dn\nZ7W7HqI8u4uLCwBg8+bNsLOzw7Rp01R6iBCZTAZ7e3uYmZlhyJAhsLGxUat1X1V+QH3W/+eff47v\nv/8eGhr/999UndZ/VfkFAoHarH91vharquxAHX/7Smv0akD5+fmsT58+7MiRI4wxVqvrIVRFfn4+\n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\n"
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " \n",
+ " the maximum area of the tower(based on gas) is :7.169260 m**2\n",
+ "\n",
+ " the maximum area of the tower(based on liquid) is :10.000000 m**2\n",
+ "\n",
+ " the enhalpy at :20.000000 is :0.032573\n",
+ "\n",
+ " the enhalpy at :30.000000 is :0.033333\n",
+ "\n",
+ " the enhalpy at :40.000000 is :0.037750\n",
+ "\n",
+ " the enhalpy at :50.000000 is :0.027027\n",
+ "\n",
+ " the enhalpy at :55.000000 is :0.014786\n",
+ "\n",
+ " \n",
+ "the tower height is :17.040000 m"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "\n",
+ " make up water is based onevaporation loss(E),blow down loss(B),windage loss(W) is :3681.244571 kg /hr\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "png": "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\n3TidToYNG9aofVZWFi6XixEjRjBixAiKiopaeRgiIsGvXz9riurixVZyCEY+k4LX62XOnDkUFRWx\ne/du1qxZw549exq1KSwsZN++fZSXl7Ny5UoyMjLsn82aNavJE77D4eD++++nrKyMsrIybr75Zj8d\njohIcLvqKuuKIT3dqmUINj6TQmlpKVFRUURERBASEkJqair5+fmN2hQUFJCWlgZAYmIitbW1HDx4\nEIAbbriBvn37NrlvDSCLSFd1ag3DqlXbSEn5CUlJWaSk/ISNG7cFNDafdQrV1dWEh4fbz10uFzt2\n7Dhnm+rqagYMGODzjZcvX05eXh4JCQk8/fTThIaGtiR+EZEOye2GTZu2kZHxMsePL7a379+/EICJ\nE8cEJC6fScHhcDRrJ6d/6z/X6zIyMnjssccAePTRR5k/fz6rVq1qsm1WVpb9OCkpiaSkpGbFJCIS\n7D74YHOjhACwf/9ili9/tNlJobi4mOLiYr/F5DMphIWF4fF47OcejweXy+WzTVVVFWFhYT7ftH//\n/vbje+65h0k+7np9alIQEelMjh1r+hRcV9e92fs4/cvyokWLWhWTzzGFhIQEysvLqayspL6+nrVr\n1+I+bck/t9tNXl4eACUlJYSGhuJ0On2+6YEDB+zH69evP2N2kohIV9Cz54kmt/fq5W3nSL7mMyn0\n6NGDFStWkJKSQmxsLLfffjuDBw8mJyeHnJwcACZMmMBVV11FVFQUs2fP5tlnn7VfP2PGDEaPHs3e\nvXsJDw9n9erVADz00EMMHz6cuLg4XnvtNZ555pk2PEQRkeCUmTmeyMiFjbZFRj7C3LnJAYpIy1yI\niATUxo3bWL58C3V13enVy8vcucmtGmTW2kciImLT2kciIuI3SgoiImJTUhAREZuSgoiI2JQURETE\npqQgIiI2JQUREbEpKYiIiE1JQUREbEoKIiJiU1IQERGbkoKIiNiUFERExKakICIiNiUFERGxKSmI\niIhNSUFERGxKCiIiYlNSEBERm5KCiIjYlBRERMSmpCAiIjYlBRERsSkpiIiITUlBRERsSgoiImJT\nUhAREds5k0JRURExMTFER0ezZMmSJttkZmYSHR1NXFwcZWVl9va7774bp9PJsGHDGrU/dOgQycnJ\nDBo0iPHjx1NbW9vKwwic4uLiQIfQLIrTvxSnfynO4OEzKXi9XubMmUNRURG7d+9mzZo17Nmzp1Gb\n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\n3JueAAAAAElFTkSuQmCC\n"
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.11"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ " \n",
+ "T1=30.; #temperature at the inlet in degree celcius\n",
+ "T2=17.; #temperature at the exit in degree celcius\n",
+ "f=100000.; #flow rate of water in kg/hr\n",
+ "hi=.004; #humidity of incoming air in kg/kg of dry air\n",
+ "hl=.015; #humidity of leaving air in kg/kg of dry air\n",
+ "Hi=18.11; #enthalpy of incoming air in kg/kg of dry air\n",
+ "Hl=57.16; #enthalpy of leaving air in kg/kg of dry air\n",
+ "#w=mdry*(hl-hi) = mdry*0.011; -----equn 1st \n",
+ "#mass of water evaporated\n",
+ "\n",
+ "#making energy balance: total heat in = total heat out\n",
+ "#heat in entering water + heat in entering air = heat in leaving water + heat in leaving air\n",
+ "#100000*1*(30-0) + mdry*Hi = (100000-w)*1*(17-0) + mdry*Hl ----eqn 2nd\n",
+ "\n",
+ "#substituting eqn 1st in 2nd we get;\n",
+ "a=14.4; #cross sectional area of the tower in m**2\n",
+ "\n",
+ "# Calculation \n",
+ "mdry=(T1*f-T2*f)/(Hl-Hi-T2*.011); #mass of dry air\n",
+ "velocity=mdry/a; #air velocity in kg/m**2* hr\n",
+ "x=mdry*.011; #make up water needed in kg/hr\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the make up water needed is :%f kg /hr\"%x\n",
+ "print \"\\n the velocity of air is as :%f kg/hr\"%velocity\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the make up water needed is :367.959241 kg /hr\n",
+ "\n",
+ " the velocity of air is as :2322.975009 kg/hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 22
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.12 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "import math\n",
+ " \n",
+ "\n",
+ "T1=65; #dry bulb temperature at the inlet in degree celcius\n",
+ "f=3.5; #flow rate of air in m**3/s\n",
+ "hi=1.017; #humidity of incoming air in kg/kg of dry air\n",
+ "hl=.03; #humidity of leaving air in kg/kg of dry air\n",
+ "k=1.12; #mass transfer coefficient in kg/m**3*s\n",
+ "y1=.017; #molefraction at recieving end\n",
+ "y2=.03; #molefraction at leaving end\n",
+ "\n",
+ "#substituting eqn 1st in 2nd we get;\n",
+ "a=2; #cross sectional area of the tower in m**2\n",
+ "d=1.113; #density o fair in kg/m**3\n",
+ "\n",
+ "# Calculation \n",
+ "m=(f*d) #mass flow rate of air\n",
+ "gs=m/hi; #air velocity in kg/m**2* hr\n",
+ "ys_bar=.032;\n",
+ "#for recirculation humidifier\n",
+ "# Result\n",
+ "z=math.log((ys_bar-y1)/(ys_bar-y2))*gs/k; #length of the chamber required\n",
+ "print \"\\n the length of the chamber required is :%f m\"%z\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the length of the chamber required is :6.890939 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Elements_Of_Mass_Transfer_Part_1/ch6.ipynb b/Elements_Of_Mass_Transfer_Part_1/ch6.ipynb
new file mode 100755
index 00000000..3dc4dd02
--- /dev/null
+++ b/Elements_Of_Mass_Transfer_Part_1/ch6.ipynb
@@ -0,0 +1,1212 @@
+{
+ "metadata": {
+ "name": "ch6",
+ "signature": "sha256:a29072d0985b8dbf41dbd6153642bf709b504655904069bc08292ea01d2d0ef9"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 6 : Drying"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.1 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "H1=.005; #humidity of incoming air per kg of dry air\n",
+ "T1=25.; #wet bulb temperature\n",
+ "\n",
+ "\n",
+ "print \"\\n the solid temp. correspond to wbt and they are 23, 27,32 and 34 degree respectively\"\n",
+ "\n",
+ "#part(ii)\n",
+ "Ybar=.032; #kg water/kg dry air#final moist air condotions \n",
+ "T2=42.; #dry bulb temperature\n",
+ "Mair=28.84; #molecular weight of air \n",
+ "Mwater=18; #molecular weight of water\n",
+ "pt=1.013*10**5; #total pressure in pascal\n",
+ "Vh=8315*((1/Mair)+(Ybar/Mwater))*((T2+273)/pt);\n",
+ "r=300; #flow rate of moist air leaving the dryer\n",
+ "a=r*60/Vh; #amount of dry air leaving /hr\n",
+ "w=a*(Ybar-0.005); # water removed /hr\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the water removed /hr is :%fkg /hr\"%w\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the solid temp. correspond to wbt and they are 23, 27,32 and 34 degree respectively\n",
+ "\n",
+ " the water removed /hr is :515.648113kg /hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 22
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.2 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "%pylab inline\n",
+ " \n",
+ "\n",
+ "Ls=262.5; #mass of bone dry solid ais the drying surface\n",
+ "A=262.5/8; #both upper surafce and lower surface are exposed\n",
+ "Nc=0.3; #in kg/m**2*hr\n",
+ "x2=.06; #moisture content on wet basis finally after drying\n",
+ "x1=.25; #moisture content on wet basis finally after drying\n",
+ "Xcr=0.20; #crtical moisture content\n",
+ "X1=x1/(1-x1); #moisture content on dry basis intially\n",
+ "X2=x2/(1-x2); #moisture content on dry basis finally after drying\n",
+ "Xbar=0.025; #equillibrium moisture \n",
+ "\n",
+ "# Calculation \n",
+ "t1=Ls/(A*Nc) *(X1-Xcr); #so for constant rate period \n",
+ "\n",
+ "#for falling rate period we find time graphically\n",
+ "p = [.20 ,.18, .16, .14, .12, .10, .09, .08, .07, .064];\n",
+ "a = [3.3, 5.56, 6.25, 7.14, 8.32, 10.00, 11.11, 12.5, 14.29, 15.625];\n",
+ "from matplotlib.pyplot import *\n",
+ "\n",
+ "# Result\n",
+ "plot(p,a);\n",
+ "title(\"Fig.6.18 Example2 1/N vs X for fallling rate period\");\n",
+ "xlabel(\"X-- Moisture content, X(kg/kg)\");\n",
+ "ylabel(\"Y-- 1/N, hr,m**2/kg\");\n",
+ "\n",
+ "Area=1.116; #area under the curve\n",
+ "t2=Area *Ls/A; #falling rate period we find time graphically\n",
+ "ttotal=t1+t2; #total time for drying\n",
+ "print \"\\n the total time for drying the wet slab on wet basis is :%f min\"%ttotal\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].\n",
+ "For more information, type 'help(pylab)'.\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the total time for drying the wet slab on wet basis is :12.483556 min\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "png": "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\n"
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.3.a "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "#part(i)\n",
+ "\n",
+ "# Variable Declaration \n",
+ "p = [1.0,0.6,.44,0.4,.36,.224, 0.14];\n",
+ "a = [5.0,5.0, 4.5, 4.0, 3.5, 2.00, 1.00];\n",
+ "\n",
+ "i=0; #looping for calc. of 1/N \n",
+ "t = [0,0,0,0,0,0,0]\n",
+ "\n",
+ "# Calculation \n",
+ "while(i<7): #looping begins\n",
+ " t[i]=1./(a[i]);\n",
+ " i=i+1;\n",
+ "\n",
+ "from matplotlib.pyplot import *\n",
+ "\n",
+ "# Result\n",
+ "plot(p,a);\n",
+ "title(\"Fig.6.19(a) Example3 Drying Rate curve\");\n",
+ "xlabel(\"X-- Moisture content, X(kg/kg) ---->\");\n",
+ "ylabel(\"Y-- Drying Rate, N(kg/hr.m**2 ---->\");\n",
+ "#xset('window',1);\n",
+ "plot(p,t,\"o-\");\n",
+ "title(\"Fig.6.19(b) Example3 1/N vs X\");\n",
+ "xlabel(\"X-- Moisture content, X(kg/kg) --->\");\n",
+ "ylabel(\"Y-- 1/N, hr,m**2/kg --->\");\n",
+ "show()\n",
+ "#from X=0.6 to 0.44 ,falling rate is non linear and from X=.44 to .14 falling rate is linear\n",
+ "\n",
+ "print \"\\n from the graph we get critical moisture content as 0.6 kg moisture/kg dry solid\"\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "display_data",
+ "png": "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\nAElFTkSuQmCC\n"
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " from the graph we get critical moisture content as 0.6 kg moisture/kg dry solid\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.3.b"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "#part(ii)\n",
+ "w1=5.; #wet of wet solid\n",
+ "c1=.5/(1-.5); #moisture content per kg wet solid\n",
+ "w2=5.*0.5; #moisture for 5kg wet solid\n",
+ "w3=w1-w2; #weight of dry solid\n",
+ "xbar=0.05; #equillibrium moisture content\n",
+ "Xbar=xbar/(1-xbar); #equillibrium moisture content\n",
+ "Ls=2.5; #mass of bone dry solid ais the drying surface\n",
+ "A=5.; #both upper surafce and lower surface are exposed\n",
+ "Nc=0.6; #in kg/m**2*hr\n",
+ "#from X=0.6 to 0.44 ,falling rate is non linear and from X=.44 to .14 falling rate is linear\n",
+ "X2=.15/(1-.15);\n",
+ "Xcr=.6; #kg moisture per kg dry solid\n",
+ "#so we can find time fro drying from 0.6 to .44 graphically and then for X=.44 to .1765\n",
+ "X1=1.; #moisture content on dry basis intially\n",
+ "\n",
+ "# Calculation \n",
+ "t1=Ls/(A*Nc) *(X1-Xcr); #time taken for constant drying rate(fromX=1 to .6) \n",
+ "X1=.44; #moisture content on dry basis\n",
+ "import math\n",
+ "t2=(Ls/(A*Nc))*((Xcr-Xbar)*math.log((X1-Xbar)/(X2-Xbar)));\n",
+ "t3=0.0336*Ls/Nc; #fro graph we get from X=.6 to .44\n",
+ "ttotal=t1+t2+t3; #total time for drying the wet slab\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the total time for drying the wet slab to 15 percent moisture on wet basis is :%f min\"%(ttotal*60)\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the total time for drying the wet slab to 15 percent moisture on wet basis is :59.610778 min\n"
+ ]
+ }
+ ],
+ "prompt_number": 24
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.4"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "#let Ls/A=p\n",
+ "# Variable Declaration \n",
+ "p=48.; #mass of bone dry solid ais the drying surface\n",
+ "v=1.5*1.5*.5; #volume of material\n",
+ "Nc=1.22; #in kg/m**2*hr\n",
+ "Xcr=0.2; #crtical moisture content\n",
+ "X1=0.25; #moisture content on dry basis intially\n",
+ "X2=0.08; #moisture content on dry basis finally after drying\n",
+ "Xbar=0.025; #equillibrium moisture \n",
+ "\n",
+ "#tbar=(Ls/(A*Nc))*((Xcr-Xbar)*log((Xcr-Xbar)/(X2-Xbar)));\n",
+ "# Calculation \n",
+ "t1=p/(Nc) * (X1-Xcr); #time taken for constant drying rate period \n",
+ "\n",
+ "# equillibrium relation is given under\n",
+ "p = [.18,.15,.14,.11,.07,.05];\n",
+ "a = [.8772,1.11,1.25,1.7857,4.545,20];\n",
+ "from matplotlib.pyplot import *\n",
+ "\n",
+ "# Result\n",
+ "plot(p,a);\n",
+ "title(\"Fig.6.20 Example4 1/N vs X for fallling rate period\");\n",
+ "xlabel(\"X-- Moisture content, X(kg/kg) ---->\");\n",
+ "ylabel(\"Y-- 1/N, hr,m**2/kg ---->\");\n",
+ "\n",
+ "a=14*.025*1; #area under the curve\n",
+ "t2=a*48; #time taken for varying drying period\n",
+ "ttotal=t1+t2; #total time taken \n",
+ "print \"\\n total time for drying the material from 25 to 8 percent moisture under same drying conditions is :%f hr\"%(ttotal)\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " total time for drying the material from 25 to 8 percent moisture under same drying conditions is :18.767213 hr\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEXCAYAAABCjVgAAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XdYFOfaBvB7KYr0oiAKgqKI9EXsDUVEj2IUjRETezTR\nmERzNBpLUGM3fhr1mGI4amzRBIwdW0QNCWJDY4uJCgKigtIFac/3xx5GFljasjssPL/r8pLdmZ33\nnm3PzjvzzkiIiMAYY4wB0BI7AGOMsbqDiwJjjDEBFwXGGGMCLgqMMcYEXBQYY4wJuCgwxhgTNNii\nYGRkhNjYWLFj1DsRERGwtbUVO4ZGOXDgAGxtbWFkZITr168rvbynT5+id+/eMDY2xpw5cyqdX0tL\nCw8ePAAATJgwAYsWLQJQ9rV0dXXF+fPnlc5XHynz3JR8/uuCel8U7O3toa+vDyMjIxgZGcHY2BhP\nnjxBZmYm7O3ta7TMly9fYvr06WjWrBlMTU3Rp0+fcufLy8vD5MmTYW9vD2NjY0ilUoSHh8vNc+bM\nGTg5OcHAwAD9+vXDo0ePFLbr4+ODJk2aCOtiZGSEN954o0brUNf4+vpCS0sLRUVFCudZtGgR3Nzc\noKuriyVLlpQ7z3vvvYetW7di+/bt0NLSwtq1a+Wm29jYqPSL7fDhw7C2tkZqaqpw38GDB2FjY4PM\nzMxyHzN79mxs2bIFmZmZ8PDwUDrDd999B0tLS2RkZJRZ/8pIJBJIJJJyp928eRO9e/dWOl9tsLe3\nx6+//ip2DEFdem6UVe+LgkQiwZEjR5CZmYnMzExkZGSgefPmSi1z6tSpSEtLw927d5GamooNGzaU\nO19BQQFatWqF8+fPIyMjA8uWLcOoUaMQFxcHAEhJScGIESOwfPlypKamwtvbG2+99VaF6/Kf//xH\nWJfMzEwcPHhQqXWpC3bv3o2CggKFX0bF2rVrh7Vr12Lw4MEK5w0PD8fgwYMBAObm5lizZg2ysrKE\n6ZW1oayAgAD069cPs2bNAgCkpaVh+vTp+Oabb2BkZFRmfiLCo0eP4OzsXKP2yiuicXFx6NChQ42W\nV5xJTIWFhZXOI5FIRM8JyD7j9Q7Vc/b29nTmzJky90skErp//z4REaWkpNCQIUPI2NiYOnXqRAsW\nLKCePXuWu7w7d+6QsbExZWZm1iiPu7s7hYWFERHRt99+Sz169BCmZWdnU5MmTeivv/4q97E+Pj4U\nEhJS7rRVq1ZRly5dqKCggIiItmzZQi4uLvTq1SsiIho5ciQ1b96cTExMqHfv3nTr1i3hsePHj6dp\n06bRoEGDyNDQkHr27ElJSUn00UcfkampKTk5OdG1a9eE+e3s7GjlypXk7OxMZmZmNHHiRMrNzSUi\norNnz5KNjY0wb2JiIgUGBlKzZs2odevWtHHjRrncaWlp5OjoSFFRUSSRSKiwsLDS5/Cdd96hxYsX\nl7n/+vXr5O7uTkRE27Zto549e9LQoUNpyZIlwjw2NjZ07ty5Mo+Nioqi5s2bU1FRkXBfWFiYsLyL\nFy9Sx44dydjYmKysrOiTTz5RmC8lJYUsLS3pxIkTNGHCBBozZky58+Xm5pKBgQFJJBIyMDCgtm3b\nEhHR7du3qU+fPmRqakouLi506NAh4THjx4+n999/nwYNGkQGBgZl3tvjx48nXV1datSoERkaGtKZ\nM2fo4sWL1LVrVzI1NSVra2uaMWMG5eXlCY8p+VmYMGECLVy4kIjKvpZ2dnZCe8HBwfTmm2/SuHHj\nyMjIiFxcXOjy5cvCvFeuXCFPT08yMjKiN998k0aNGiUst7Rt27ZR9+7dadasWWRhYUGLFi2i+/fv\nU9++fcnCwoKaNm1Kb7/9NqWlpRGR7PXX0tKiJk2akKGhIa1du5aIiP744w/q1q0bmZqakoeHB0VE\nRCh8jSp6DxMRHT58mDw8PMjU1JS6d+9ON27ckHvs6tWryc3NjfT09KigoIDs7Ozo9OnTwuv68ccf\nU4sWLahFixY0c+ZM4XNIRLRmzRqytramli1bUkhIiNzzXxc0iKJQ/GKVVPKFeOuttygoKIhycnLo\n9u3bZGtrS7169Sp3eTt27CA3NzeaNWsWNW3alNzc3Cg0NLRKWZ48eUJ6enrCl/5HH31E06dPl5un\nouX5+PjQ999/X+60oqIi6t27Ny1evJju3btHZmZmFBMTI0zftm0bZWVlUV5eHs2cOZM8PT2FaePH\nj6emTZvS1atXKTc3l/r160d2dna0c+dOKioqooULF1Lfvn2F+e3s7MjNzY0SEhLoxYsX1KNHj3K/\nSAoLC8nLy4u++OILys/PpwcPHlCbNm3oxIkTwrKmT59OGzZsoIcPHypdFFauXEnz588X1rdnz54U\nExNDZmZmlJqaSkSKiwIRkYODA506dUq4PXLkSFq9ejUREXXt2pV27dpFRLLiHRUVVWHGvXv3koWF\nBVlaWlJKSkqF85Z8L+bl5ZGDgwOtXLmS8vPz6ddffyUjIyPhPTN+/HgyMTGh33//nYhI7ous2IQJ\nE2jRokXC7StXrtDFixepsLCQYmNjqUOHDrRhw4Zy26+oKJT8gRUcHEx6enp0/PhxKioqos8++4y6\ndu1KRESvXr2iVq1a0caNG6mgoIDCwsKoUaNGcplK2rZtG+no6NDmzZupsLCQcnJy6J9//qHTp09T\nXl4eJScnU+/evWnmzJnlZiEiSkhIIAsLCzp+/DgREZ06dYosLCwoOTm53DYreg9fvXqVLC0tKTo6\nmoqKimjHjh1kb28vFFI7OzuSSqWUkJAgPP8l8yxatIi6detGycnJlJycTN27dxfW/fjx42RlZUW3\nbt2i7OxsCgoK4qKgbnZ2dmRoaEimpqZkampKw4cPJ6LXH4SCggLS1dWle/fuCY9ZuHChwi2F5cuX\nk0QioSVLllB+fj6dO3eODA0N6c6dOxXmyMvLI19fX3r//feF+yZPnkzz5s2Tm69Hjx60Y8eOcpfR\np08f0tfXF9bF1NSUPv/8c2F6bGwsmZubU4cOHWjVqlUKs6SmppJEIqGMjAwikn0RTJ06VZi+adMm\ncnZ2Fm7fuHGDTE1Nhdv29vb07bffCrePHTtGDg4ORCT/RRIVFUWtWrWSa3vFihU0ceJEIiK6dOkS\nSaVSKiwsrJWi0KtXL/rtt9+I6HVRICIaNWoUzZ07l4gqLgoLFy6kSZMmERFRRkYGGRgY0KNHj4iI\nqHfv3hQcHKzwS6a0Bw8ekK6uLr3zzjuVzlvyS+H8+fPUvHlzuelBQUHC+o4fP57Gjx9f4fJKfrGX\nZ/369cLnoHT71SkKfn5+wrRbt25RkyZNiIjo3Llz1LJlS7k2e/bsWWFRKP0+Ke3AgQMklUrLzUIk\n21IeO3as3GP8/f0VfpYqeg+///77ZbK2b9+ezp8/Lzx227ZtZZZXnMfBwUEoTkREJ06cIHt7eyIi\nmjhxIn322WfCtHv37tW5otAg9ikcPHgQqampSE1NRVhYmNz05ORkFBQUyB1lYWNjo3B5TZo0ga6u\nLhYuXAgdHR307t0bffv2xcmTJxU+pqioCGPHjoWenh42b94s3G9oaIiMjAy5edPT08vtey5el02b\nNgnrkpqaKrfD1c7ODj4+PoiLi8MHH3wg1/68efPQtm1bmJiYoHXr1gBk+zSKWVpaCn/r6enJ3W7S\npIlcvzwAueerVatWePz4cZm8cXFxePz4MczMzIR/K1euxLNnz0BEmD59OjZs2AAtrddvQ6phP3Hx\nPp7u3buXmbZ06VJ8/fXXePbsWYXLGDNmDMLCwpCXl4ewsDB07NhRWM+QkBDcu3cPHTp0QOfOnXH0\n6NEKlzV16lSMGzcOR48eRVRUVJXX4/Hjx2WO3rKzsxOeX4lEUu2ju+7du4chQ4bA2toaJiYmWLBg\nAZ4/f16tZZTHyspK+FtfXx+5ubkoKirC48eP0bJlS7l5bW1tK3xtS6/T06dPMXr0aNjY2MDExARj\nx46tMHNcXBx++uknufdaZGQknjx5UqU2S76H4+LisG7dOrllJSQkyL3HK3oNHj9+DDs7u3KXnZSU\nVKbduqbeF4XKNGvWDDo6OoiPjxfuK/l3ae7u7gDKfnkp2oFJRJg8eTKSk5MRGhoKbW1tYZqLi4vc\nIYjZ2dm4f/8+XFxcarQuxV9Avr6+mD17tnD/7t27cejQIZw5cwbp6el4+PBhuetQHSWPknr06BFa\ntGhRZh5bW1u0bt1arohlZGTgyJEjSE9Px5UrV/DWW2/B2toanTt3BiAryJGRkZW2X/r5PnHiBHx9\nfct9Hdq3b4/AwEAsW7aswmV26NABdnZ2OH78OPbs2YMxY8YI09q2bYs9e/YgOTkZc+fOxciRI5GT\nk1PuckJCQpCYmIivv/4aK1aswLvvvov8/PxK1wkAWrRogfj4eLnXJi4ursyXbHVMmzYNzs7O+Oef\nf5Ceno7ly5dXeJSXsjvjra2tkZiYKHffo0ePKlxu6Wnz58+HtrY2bt68ifT0dOzcuVMuc+n5W7Vq\nhbFjx8q91zIzM/Hpp58qbLP0e7j4OW7VqhUWLFggt6ysrCy5g0AqWpcWLVrIHe5ectnW1tZl2q1r\nGnxR0NbWRmBgIBYvXoycnBzcvXsXO3fuVPii9+nTB61atcLKlStRUFCAyMhIREREwN/fv9z5p02b\nhrt37+LQoUNo3Lix3LThw4fj5s2bCAsLQ25uLpYsWQJPT084OjoqzKvoizwlJQVTpkxBSEgItm/f\njsOHD+P48eMAgKysLDRu3Bjm5ubIzs7G/Pnzq7TMijJs2bIFiYmJePHiBZYvX47Ro0eXma9z584w\nMjLCmjVrkJOTg8LCQty8eROXL1+GqakpkpKScP36dVy/fh3Hjh0DAFy9elUoEKUVFBQgNzcXhYWF\nyM/PF36ZAsCxY8eEo47KExwcjG3btiEtLa3CdRszZgw2bNiACxcu4M033xTu37VrF5KTkwEAJiYm\nkEgkcls4xR4/foxPP/0UW7duha6uLt5//31YWFhg+fLlFbZbrGvXrtDX18eaNWuQn5+PiIgIHDly\nRHh+q/JalZ4nKysLRkZG0NfXx927d/H1119X+FhlfiwAQLdu3aCtrY3NmzejoKAABw8exKVLl6q1\njKysLBgYGMDY2BiJiYllDq21srLC/fv3hdvvvPMODh8+jJMnT6KwsBC5ubmIiIgoU5yKlfceLv7S\nnzJlCr755htER0eDiJCdnY2jR4+W2VpWJCgoCMuWLUNKSgpSUlKwdOlSvPPOOwCAUaNGYfv27bhz\n5w5evnyp8NBqMTXYolDyS3/z5s1IT09H8+bNMX78eAQFBaFRo0bCdFdXV+zduxcAoKOjg4MHD+LY\nsWMwNTXFe++9h507dwpf5CtWrMC//vUvALJfeN999x2uX7+O5s2bC2MLipfVtGlThIaGYsGCBTA3\nN8fly5fx448/Vph7xowZcuMUOnXqBEB2fP6wYcMwcOBAmJubIyQkBO+++y5SU1Mxbtw42NnZoWXL\nlnB1dUW3bt3k1r/0senlHateevqYMWMwYMAAODg4oF27dli4cGGZebW1tXHkyBHExMSgTZs2aNas\nGaZOnSp0mVlaWgr/mjZtColEAisrK+jq6pa77u+++y709fXx448/Yvny5dDX18euXbtARDh58iQG\nDhyocB3s7e0xbtw4vHz5ssLnNygoCOfPn4evry/Mzc2F+0+cOAFXV1cYGRlh1qxZ+PHHH8sUeQD4\n4IMPEBQUhB49egj3bd26FRs2bMCdO3fKbbNkTl1dXaGgN2vWDDNmzJB7f1U0jkDRun/55ZfYs2cP\njI2NMXXqVIwePbrM66nosYraqug90qhRI4SFhSEkJARmZmbYvXs3hgwZIveZqmxZwcHBuHr1KkxM\nTBAQEIARI0bIzfPZZ59h2bJlMDMzw//93//BxsYGBw8exIoVK2BpaYlWrVph3bp1CreIKnoPd+zY\nEVu3bsWMGTNgbm6Odu3a4YcffqjyFtTChQvh7e0Nd3d3uLu7w9vbW1j2wIEDMXPmTPTr1w+Ojo4K\nt27FJCFlfxbUQ3PnzsWzZ8+wbds2saPUSa1bt0ZISAj69esndhQAQHR0ND766KNq9d0z9erSpQum\nT5+O8ePHix0FQN17D9clKttSiI+PR9++feHi4gJXV1ds3LgRAPDixQv4+fnB0dERAwYMqHRzXh3+\n+usv3LhxA0SE6Oho/Pe//8Xw4cPFjsWqSCKR1MnN8Ibs/PnzePLkCQoKCrBjxw7cvHlTbkuO1V0q\nKwq6urpYv349bt26haioKPznP//BnTt3sGrVKvj5+eHevXvw9fXFqlWrVBWhyjIzMzFixAgYGhpi\n9OjRmD17NoYOHSp2LFZFnTp1UrhPh4njr7/+gqenJ8zMzLB+/Xr8/PPPckcrsbpLbd1Hw4YNw4wZ\nMzBjxgycO3cOVlZWePLkCXx8fHD37l11RGCMMVYJtRSF2NhY9OnTBzdv3kSrVq2Ek4UREczNzeVO\nHsYYY0w8OqpuICsrCyNGjMBXX31VZlCWoiMp6treeMYY0xTK/s5X6SGp+fn5GDFiBMaOHYthw4YB\ngNBtBMhG95UcOVtS8fHSqvg3dizh669Vt/zg4GCV5lf1P87P+Rtqfk3OTlQ7nT4qKwpEspG8zs7O\nmDlzpnD/0KFDsWPHDgDAjh07hGKhTv7+wIkTam+WMcbqPJUVhcjISOzatQtnz56FVCoVLjAzb948\nnDp1Co6Ojvj1118xb948VUVQyM8POHsWqOKZBxhjrMFQ2T6Fnj17KhxNePr0aVU1WyWWloCDAxAV\nBfTqVfvL9/Hxqf2FqhHnFxfnF48mZ68tdXJEszquqjR/PqClBVRyjjTGGNMYtfHd2WDPfcT7FRhj\nrKwGu6WQlwc0awbcvw80barSphhjTC14S0EJjRoBPj7AqVNiJ2GMsbqjwRYFgLuQGGOstAbbfQTI\nuo569QISEwEeRM0Y03TcfaQkBwdAXx/480+xkzDGWN3QoIsCwF1IjDFWEhcFLgqMMSZo0PsUACAz\nE2jRAnjyBDAwUEuTjDGmErxPoRYYGQEdOwLnzomdhDHGxNfgiwLAXUiMMVaMiwK4KDDGWDEuCgA8\nPYHUVCAuTuwkjDEmLi4KkJ0t1c+PtxYYY4yLwv9wFxJjjPEhqYKnTwEnJyA5GdBR2aWHGGNMdfiQ\n1FpkZQXY2wMXL4qdhDHGxMNFoQTuQmKMNXRcFErgosAYa+h4n0IJxVdje/AAsLBQe/OMMaYU3qdQ\nyxo1Anr3Bk6fFjsJY4yJg4tCKdyFxBhryLj7qJS//5Zduzkhga/GxhjTLNx9pAJt2wKNGwO3bomd\nhDHG1I+LQikSCXchMcYaLi4K5eCiwBhrqHifQjkyMoCWLWWnvtDXFy0GY4xVC+9TUBFjY0AqBc6f\nFzsJY4ypFxcFBbgLiTHWEHFRUICLAmOsIeKioICXl+w02vHxYidhjDH14aKgAF+NjTHWEHFRqAB3\nITHGGho+JLUCSUmAiwvw7BlfjY0xVvfxIakqZm0N2NoCly6JnYQxxtSDi0IluAuJMdaQcFGoBBcF\nxlhDwvsUKvHqlexqbHFxgJmZ2GkYY0wx3qegBo0bA7168dXYGGMNAxeFKuAuJMZYQ8FFoQqKi0Id\n6dFijDGV4aJQBY6OgLY2cOeO2EkYY0y1uChUAV+NjTHWUHBRqCIuCoyxhoAPSa2i9HTZ6OanT4Em\nTcROwxhjZfEhqWpkYgK4uwMXLoidhDHGVEelRWHSpEmwsrKCm5ubcN/ixYthY2MDqVQKqVSK8PBw\nVUaoVdyFxBir76pUFIgIw4YNw51qHn4zceLEMl/6EokEn3zyCa5du4Zr165h4MCB1VqmmLgoMMbq\nuyoVhZMnTyI6Ohpbt26t1sJ79eoFs3LODVHX9hdUVceOwJMnQEKC2EkYY0w1qnSVgO+//x7ff/89\nPv74Y6xZswY6Sl5cYNOmTfjhhx/g7e2NdevWwdTUtMw8ixcvFv728fGBj4+PUm3WBm1toH9/4ORJ\nYNIksdMwxhq6iIgIRERE1OoyKz36KCUlBb1798bt27cxbdo0+Pr6YuTIkVVuIDY2FgEBAfjzzz8B\nAM+ePUOzZs0AAIsWLUJSUhJCQkLkQ9XBo4+KbdsGhIcD+/aJnYQxxuSp5eijH374AWPGjAEg20fw\n/fffK9WgpaUlJBIJJBIJ3n33XURHRyu1PHUbMEB2crzCQrGTMMZY7au0KGzbtg0TJkwAAHTu3BlJ\nSUmIj4+vcYNJSUnC3wcOHJA7MkkTtGwJtGgBXL4sdhLGGKt9Fe4cSEtLwwcffAAbGxvhvrVr1yI5\nORm2traVLjwoKAjnzp1DSkoKbG1tsWTJEkRERCAmJgYSiQStW7fGt99+q/xaqFnxUUhduoidhDHG\nahePaK6BU6eAxYuByEixkzDG2GtqH9Hs5eWlVGP1Ra9ewJ9/AmlpYidhjLHaVa2iUJd/vauTnh7Q\nowdw5ozYSRhjrHZVqygMHjxYVTk0Do9uZozVR9UqCl14z6qAr8bGGKuPqlUUPv/8c1Xl0DhOTrKC\n8NdfYidhjLHaw6fOriG+GhtjrD6qVlHQxDEFqsRFgTFW31SrKCh7iov6xtcX+O03IDdX7CSMMVY7\nqlUULl26pKocGsnMDHB1lRUGxhirD6pVFCwtLVWVQ2NxFxJjrD6pVlHYvn27imJoLi4KjLH6hAev\nKalTJyAxEXj8WOwkjDGmPD7NhZK0tWU7nE+eFDsJY4wpr1pFYcqUKarKodG4C4kxVl/wqbNrQUIC\n4OkJPH0q23JgjDExqP3U2ax8NjaAlRVw9arYSRhjTDlcFGoJdyExxuoDLgq1hIsCY6w+qHSfgpGR\nUZn7TExM0KlTJ6xbtw5t2rSp/VAatk8BAHJyAEtL2f4FExOx0zDGGqLa+O7UqWyGjz/+GLa2tggK\nCgIA/Pjjj7h//z6kUikmTZqEiIgIpQLUF02aAN27A7/+CgwfLnYaxhirmUq3FNzd3XHjxg25+zw9\nPRETEwMPDw9cv3699kNp4JYCAPzf/wH37gHffCN2EsZYQ6SWo4/09fWxb98+FBUVoaioCPv374ee\nnp4QgL3GV2NjjGm6SovC7t27sXPnTlhaWsLS0hI//PADdu3ahZycHGzevFkdGTWGszOQnw/8/bfY\nSRhjrGYq7T568eIFzM3N5e57+PAhWrdurbpQGtp9BACTJ8sGsn34odhJGGMNjVq6j4YMGYL09HTh\n9u3btzFkyBClGq3P+NBUxpgmq7QoLFiwAAEBAcjKysKVK1fw5ptvYvfu3erIppH69wfOnwdevRI7\nCWOMVV+lh6QOHjwYeXl58PPzQ1ZWFsLCwtC+fXt1ZNNI5uayfQuRkUC/fmKnYYyx6lFYFD4s1Sme\nkZEBBwcHbN68GRKJBBs3blR5OE01YICsC4mLAmNM0ygsCt7e3gBeX0OhY8eOwk4MPhS1Yv7+wAcf\nAKtXi52EMcaqR2FRiIyMxKBBg9C/f/9yT3XBFOvSBYiLA548AZo3FzsNY4xVncIdzZMmTcL169fx\nr3/9C/369cPq1atVMnq5PtLRkXUd8dXYGGOapkoX2UlJScHJkycRHh6OGzduQCqVYtCgQRg1apRq\nQmnwOIVi330HnDsH8IFajDF1qY3vzmpfeY2IcOXKFZw4cQILFixQqnGFoepBUYiLAzp1knUhafEJ\nyhljaqDywWt37tzBmTNnkJWVJddocnKyygpCfWFnJzs89do1sZMwxljVKSwKGzduxLBhw7Bp0ya4\nuLjgl19+EabNnz9fLeE0HY9uZoxpGoVF4bvvvsOVK1fwyy+/4Ny5c1i2bBk2bNigzmwaj4sCY0zT\nKDwklYhgaGgIALC3t0dERARGjBiBuLg4je/vV5c+fYC33gIyMgBjY7HTMMZY5RRuKVhaWiImJka4\nbWhoiCNHjuD58+dlLrrDymdgIBuzcPas2EkYY6xqFB59FB8fD11dXTQvNfqKiBAZGYmePXuqLlQ9\nOPqo2Nq1wMOHwJYtYidhjNV3Kj36yNbWFmfOnAEA7N27V65RVRaE+ob3KzDGNEmFh6Q+fvwY+/fv\nR0JCgrry1DtubkBODvDPP2InYYyxyiksCkuWLMGLFy8wZswYvHjxAkuWLFFnrnpDInl91lTGGKvr\nKhzR/OWXX6Jly5ZITEzE7Nmz1ReqHu1TAIC9e2X/Dh0SOwljrD5T+Yhma2trBAUFoWXLlko10tD5\n+cnOg5SXJ3YSxhirGJ+VRw2aNgUcHYHffxc7CWOMVYx3NKsJH4XEGNMEvKNZTbgoMMY0gcKiEBwc\nDAsLC+zcuRMWFhYIDg6u9sInTZoEKysruLm5Cfe9ePECfn5+cHR0xIABA5CWllaz5Bqma1fgwQPg\n6VOxkzDGmGIq3dE8ceJEhIeHy923atUq+Pn54d69e/D19cWqVatqtGxNo6sL9O0LnDoldhLGGFOs\nShfZefHiBeLj41FYWCjc5+XlVaUGYmNjERAQgD///BMA4OTkhHPnzsHKygpPnjyBj48P7t69Kx+q\nnh2SWuybb4DISGDnTrGTMMbqo9r47lR4ltRiixYtwvbt29GmTRtolbiE2NkanuXt6dOnsLKyAgBY\nWVnhqYL+lMWLFwt/+/j4wMfHp0bt1SX+/sDixUBREV+NjTGmvIiICERERNTqMivdUnB0dMTNmzfR\nqFGjGjVQekvBzMwMqampwnRzc3O8ePFCPlQ93VIAZIem7t8PeHqKnYQxVt+ofPAaALi4uMh9iSur\nuNsIAJKSkmBpaVlry9YEfBQSY6wuq7QozJ8/H1KpFAMGDEBAQAACAgIwdOjQGjc4dOhQ7NixAwCw\nY8cODBs2rMbL0kRcFBhjdVml3UcdOnTAtGnT4OrqKuxTkEgk6NOnT6ULDwoKwrlz55CSkgIrKyss\nXboUb7zxBkaNGoVHjx7B3t4e+/fvh6mpqXyoetx9lJUFWFsDSUnA/y5sxxhjtaI2vjsrLQqdOnXC\npUuXlGqkuupzUQCAfv2ATz4BhgwROwljrD5RS1H45JNP0LhxYwwdOhSNGzcW7q/qIak1ClXPi8Lq\n1UBCArDvIXETAAAbh0lEQVRpk9hJGGP1iVqKgo+PDyQSSZn7a3pIapVC1fOiEBMDjBoF3LsndhLG\nWH2ilqIghvpeFIqKgBYtgD/+AFq3FjsNY6y+UMshqaX98ssvuHjxolKNNnRaWnw1NsZY3VTtonDx\n4kUsW7YMAwcOVEWeBoMPTWWM1UUVdh8VFRUhKioK3bt3V2emet99BADPnslGNycny06WxxhjylJ5\n95GWlhamT5+uVAOsfJaWgIMDEBUldhLGGHut0u6j/v374+eff673v9zFwF1IjLG6ptKjjwwNDfHy\n5Utoa2tDT09P9iCJBBkZGaoL1QC6jwDg3Dlg9mxAzWMDGWP1FB+SquHy8oBmzYD794GmTcVOwxjT\ndGq5ngIAJCYmIi4uDgUFBcJ9vXv3VqphBjRqBPj4yK7GFhQkdhrGGKtCUZg7dy727dsHZ2dnaGtr\nC/dzUagdxfsVuCgwxuqCKl1k588//5Q775GqNZTuI0DWddSrF5CYCJRzNhHGGKsytYxodnBwQF5e\nnlKNMMUcHAB9feB/F6ZjjDFRKew++vDDDwEA+vr68PT0hK+vr7C1IJFIsHHjRvUkbACKu5Dc3cVO\nwhhr6BQWhY4dOwpnRw0ICBD+JqJyz5rKas7fH9i4EZgzR+wkjLGGjg9JrQMyM2VnTX3yBDAwEDsN\nY0xTiXKWVFb7jIyAjh1lg9kYY0xMXBTqCD7lBWOsLuCiUEdwUWCM1QXVLgrz58/H6tWr8fz5c1Xk\nabA8PYHUVCAuTuwkjLGGrNpFoVOnTtDW1sbMmTNVkafB0tIC/Px4a4ExJi4++qgO2bkT+OUXIDRU\n7CSMMU2k0rOkLlmyRGGjAPD5558r1XCFoRpoUXj6FHBykl2NTadKpypkjLHXVHpIqoGBAQwNDeX+\nSSQShISEYPXq1Uo1yspnZQXY2wMXL4qdhDHWUFWp+ygjIwMbN25ESEgIRo0ahX//+9+wtLRUXagG\nuqUAAPPmyU6pvXSp2EkYY5pG5YPXnj9/joULF8LDwwP5+fm4evUqVq9erdKC0NDxoamMMTEp7Lme\nPXs2Dhw4gKlTp+LGjRswMjJSZ64Gq0cP4O5d4PlzwMJC7DSMsYZGYfeRlpYWGjVqBF1d3bIP4ms0\nq1RAAPDOO8Bbb4mdhDGmSVR6Oc6ioiKlFsxqrrgLiYsCY0zdFO5T6NixIz7++GOEh4cjNzdXnZka\nvOKi0IA3lhhjIlHYfZSfn4/ffvsN4eHhiIiIgLm5OQYOHIhBgwbB0dFRtaEaePcRkeyKbIcOAa6u\nYqdhjGkKlQ5eKy0xMRHh4eE4ceIE/vnnH3Tt2hVbtmxRqnGFoRp4UQCAadOAtm2Bf/9b7CSMMU2h\n1qJQUmFhIaKiotCjRw+lGleEi4LsdBdbtgAnT4qdhDGmKUS7yM60adNUVhCYTL9+wB9/AC9fip2E\nMdaQKDz66MWLF+XeT0Q4evSoygIxGWNjQCoFzp8HBg4UOw1jrKFQWBSaNm0KOzu7cqclJyerLBB7\nrfgoJC4KjDF1UVgU2rRpgzNnzpRbGGxtbVUaisn4+wPjxomdgjHWkCjcpzBz5kykpqaWO23OnDkq\nC8Re8/KSnUY7Pl7sJIyxhoIvslPHjRkj2+n87rtiJ2GM1XWiHX3E1IfPmsoYUyfeUqjjkpIAFxfg\n2TO+GhtjrGK8pdAAWFsDtrbApUtiJ2GMNQTVKgqLFy9WUQxWEe5CYoypS7WKwsGDB1WVg1WAiwJj\nTF2qVRS4n18cPXsCt24BCo4QZoyxWlOtonD16lVV5WAVaNwY6NULOH1a7CSMsfquWkXB29u71hq2\nt7eHu7s7pFIpOnfuXGvLra+4C4kxpg4Ki8KgQYPw8OFDuftqs/tIIpEgIiIC165dQ3R0dK0tt77i\nq7ExxtRBYVGYNGkS/P39sXz5cuTn5wMABg8eXKuN8z6KqnN0BLS1gTt3xE7CGKvPKhy8lpWVhaVL\nl+LEiRMYO3YsJBKJ7EESCT755BOlGm7Tpg1MTEygra2N9957D1OmTHkdSiJBcHCwcNvHxwc+Pj5K\ntVcfvPce4OQEzJoldhLGWF0QERGBiIgI4faSJUuU/rFd4RhZXV1dGBoaIjc3F5mZmdDSqr2xbpGR\nkbC2tkZycjL8/Pzg5OSEXr16CdN5TERZ/v7Ad99xUWCMyZT+wbxkyRKll6mwKISHh+OTTz5BQEAA\nrl27Bn19faUbK8na2hoA0KxZMwwfPhzR0dFyRYGV5esLTJgA5OQATZqInYYxVh8p/Om/fPly/PTT\nT1i9enWtF4SXL18iMzMTAJCdnY2TJ0/Czc2tVtuoj0xMAHd34MIFsZMwxuorhVsK58+fF/Yh1Lan\nT59i+PDhAICCggK8/fbbGDBggEraqm/8/YEffgC6dJEVCcYYq018llQNEx8PTJsmu3Zzr15AYCDw\nxhtA06ZiJ2OMia02vju5KGiojAzg6FEgLAw4eRLo2BEYMQIYNgxo2VLsdIwxMXBRYABkO55PnJAV\niCNHgPbtZQUiMBBo00bsdIwxdeGiwMrIywPOngVCQ4FffpFtNQQGyv45OwMq2k3EGKsDuCiwChUW\nApGRsgIRFgYYGMiKw4gRgJcXFwjG6hsuCqzKiIDLl2UFIjQUyM9/vQXRrZvsFBqMMc3GRYHVCBFw\n86Zs6yE0FEhOlu2gDgwEfHwAXV2xEzLGaoKLAqsVf/8tKxBhYcA//wABAbICMWAAoKcndjrGWFVx\nUWC1Lj4eOHBAViBiYmSD5UaMAAYNAoyMxE7HGKsIFwWmUs+eAQcPygpEZKSsa2nECNmWhLm52OkY\nY6VxUWBqk5YmGwMRGgqcOQN07SrrYho2DGjeXOx0jDGAiwITSXY2EB4uKxDHjgFubq+PZLKzEzsd\nYw0XFwUmulevgNOnZV1Mhw7JikLxaOr27cVOx1jDwkWB1SkFBbIT9RUfyWRm9rpAeHjwYDnGVI2L\nAquzioqAixdfj4WQSF6Ppu7cGajFi/gxxv6HiwLTCETA9euvT7eRlgYMHy4rEL16AToVXhSWMVZV\nXBSYRrp793UXU1yc7HoQgYGyy402bix2OsY0FxcFpvFiY2WD5UJDgVu3gH/9S1YgBg6UncCPMVZ1\nXBRYvZKUJBssFxoKREfLthwCA4EhQwBTU7HTMVb3cVFg9daLF7JDXMPCgIgIoEcP2T6IN94AmjUT\nOx1jdRMXBdYgZGbKBsmFhcmuMCeVyrYghg8HbGzETsdY3cFFgTU4OTnAqVOyAnH4MNCu3evR1G3b\nip2OMXFxUWANWn6+rGup+NKjVlavx0K4uPBgOdbwcFFg7H8KC4Hff399qGvjxq9HU3t7c4FgDQMX\nBcbKQQRcufJ6NHVOzusuph49+NKjrP7iosBYJYiA27dfF4ikJNnpvkeMAPr25UuPsvqFiwJj1XT/\n/usupnv3ZGMgii892qSJ2OkYUw4XBcaUkJj4+tKjV67ILj0aGCgbVW1sLHY6xqqPiwJjtSQ5+fVg\nuQsXgD59ZAVi6FDAwkLsdIxVDRcFxlQgPR04elS2D+L0aaBTJ9k+iGHDAGtrsdMxphgXBcZU7OVL\n2aVHw8JkhcLZWTaiulkzwNJS9n/Jv83N+VoRTDxcFBhTo7w84OxZ4K+/ZN1NycnAs2fyf2dmygpD\n6WLBRYSpAxcFxuqY/Hzg+fOyxYKLCFMHLgqMabjiIlJZ8Sj+OyODiwhTjIsCYw0MFxFWES4KjLEK\ncRFpWLgoMMZqVckiUpVCkpEBmJnJFwxzc9mV8szMXv8rfdvEhM9BpQpcFBhjoiqviKSmAmlpsv+L\n/5W8nZYmKyYGBuUXjYoKiqkpoK8vOyUJn7eqLC4KjDGNVFQkKwzlFYyKiklammzsyMuXstOhN2ny\n+l9xsSjvdkXTqnK7SRPN6CbjosAYa7Dy82WnRc/JkRWJ4r9L365oWlXnzc0FGjWqnQJTlWLVqFHN\nrgFSG9+dOko9mjHGRKKrK/unjpMXEgGvXtWs2KSkVL9QFRQAenrVLzC1gYsCY4xVQiKRfUnr6amn\nvcLCmm3p1AbuPmKMsXqiNr47NWDXCWOMMXXhosAYY0zARYExxpiAiwJjjDGBKEUhPDwcTk5OaNeu\nHVavXi1GBJWKiIgQO4JSOL+4OL94NDl7bVF7USgsLMSMGTMQHh6O27dvY+/evbhz5466Y6iUpr+x\nOL+4OL94NDl7bVF7UYiOjkbbtm1hb28PXV1djB49GgcPHlR3DMYYY+VQe1FITEyEra2tcNvGxgaJ\niYnqjsEYY6wcah+8FhoaivDwcGzduhUAsGvXLly8eBGbNm16HaomJ/1gjDGmeec+atmyJeLj44Xb\n8fHxsLGxkZuHRzMzxpg41N595O3tjb///huxsbHIy8vDvn37MHToUHXHYIwxVg61byno6Ohg8+bN\n8Pf3R2FhISZPnowOHTqoOwZjjLFyqH1LITw8HLNmzUJRURGmTJmCzz77rMw8H330Edq1awcPDw9c\nu3ZNblphYSGkUikCAgLUFVlOVcZYKMqflpaGkSNHokOHDnB2dkZUVJS6YguUyb9y5Uq4uLjAzc0N\nY8aMwatXr9QVG0Dl2e/evYtu3bpBT08P69atq9Zj1aGm+ePj49G3b1+4uLjA1dUVGzduVGdsgTLP\nP1D3P7sV5deEz25F+av12SU1KigoIAcHB3r48CHl5eWRh4cH3b59W26eo0eP0qBBg4iIKCoqirp0\n6SI3fd26dTRmzBgKCAhQW+5iyuYfN24chYSEEBFRfn4+paWlqS88KZf/4cOH1Lp1a8rNzSUiolGj\nRtH27dvrVPZnz57RpUuXaMGCBfTll19W67F1OX9SUhJdu3aNiIgyMzPJ0dFRo/IXq+uf3Yrya8Jn\nV1H+6n521bqlUJUxCocOHcL48eMBAF26dEFaWhqePn0KAEhISMCxY8fw7rvvirIzWpn86enpuHDh\nAiZNmgRA1o1mYmKiMfmNjY2hq6uLly9foqCgAC9fvkTLli3rVPZmzZrB29sbuqUu3lsXxsYok795\n8+bw9PQEABgaGqJDhw54/Pix2rIDyuUHNOOzqyi/pnx2FeWv7mdXrUWhKmMUKppn1qxZWLt2LbRE\nulhqTfMnJCTg4cOHaNasGSZOnAgvLy9MmTIFL1++VFt2Rdmq+vybm5vj3//+N1q1aoUWLVrA1NQU\n/fv3r1PZVfHY2lJbGWJjY3Ht2jV06dKlNuNVStn8mvDZVURTPruKVPezq9ZXqKrjD0r/kiAiHDly\nBJaWlpBKpaIdslrT/BKJBAUFBbh69SqmT5+Oq1evwsDAAKtWrVJFTIVqmh8A7t+/jw0bNiA2NhaP\nHz9GVlYWdu/eXdsRFVJm7EpdGPdSGxmysrIwcuRIfPXVVzA0NKyFVFWnTH5N+uyWR5M+u+Wp7mdX\nrUWhKmMUSs+TkJCAli1b4vfff8ehQ4fQunVrBAUF4ddff8W4cePUlr28bNXJb2NjAxsbG3Tq1AkA\nMHLkSFy9elU9wRVkq07+y5cvo3v37rCwsICOjg4CAwPx+++/16nsqnhsbVE2Q35+PkaMGIF33nkH\nw4YNU0XECimTX1M+u4poymdXkep+dtVaFKoyRmHo0KH44YcfAABRUVEwNTVF8+bNsWLFCsTHx+Ph\nw4f48ccf0a9fP2G+up7fysoKzZs3h62tLe7duwcAOH36NFxcXDQmf/v27REVFYWcnBwQEU6fPg1n\nZ+c6lb1Y6V+jdWFsjDL5iQiTJ0+Gs7MzZs6cqY64ZSiTX1M+u8VK59eUz26x0vmdnJyq99mtnX3j\nVXfs2DFydHQkBwcHWrFiBRERffPNN/TNN98I83zwwQfk4OBA7u7udOXKlTLLiIiIEOUIBiLl8sfE\nxJC3tze5u7vT8OHD1X4Eg7L5V69eTc7OzuTq6krjxo2jvLy8OpU9KSmJbGxsyNjYmExNTcnW1pYy\nMzMVPlbdapr/woULJJFIyMPDgzw9PcnT05OOHz+uMflLqsuf3Yrya8Jnt6L81fnsqv3cR4wxxuou\nvvIaY4wxARcFxhhjAi4KjDHGBFwUGGOMCbgo1FPx8fFo06YNUlNTAQCpqalo06YNHj16VOVlRERE\nQEtLCyEhIcJ9MTEx0NLSKveEZyUFBwfjzJkzCqcfPHiwzl+b+/r16zh+/LhSy1ixYkWl8xQWFsLb\n2xsXLlwQ7hswYABCQ0OF2/3790dmZiZiY2Ph5uZW7RyrVq3Cnj17MHHiRLnlVubQoUP44osvqt0e\n01xcFOopW1tbTJs2DfPmzQMAzJs3D++99x5atWpV5WVIJBK4urpi//79wn179+6Fh4dHpSMslyxZ\nAl9fX4XTDxw4gNu3b1c5CyAbWapO165dw7Fjx5RaxsqVKyudR1tbG1u2bMGMGTNQUFCAvXv3QkdH\nByNGjAAA/Prrr2jfvj2MjIxqnOPkyZMYMGBAtR8XEBCA0NBQ5Ofn17jt8hT/WGF1DxeFemzWrFmI\niorChg0b8Pvvv2P27NnVXoadnR1evXqFZ8+egYhw4sQJDBo0SBggExMTg65du8LDwwOBgYFIS0sD\nAEyYMEH4RTpv3jy4uLjAw8MDc+bMwR9//IHDhw9jzpw58PLywoMHD+Dj44MrV64AAFJSUtC6dWsA\nwPbt2zF06FD4+vrCz88PL1++xKRJk9ClSxd4eXnh0KFD5eZevXo13N3d4enpKZyeXVFWHx8fzJs3\nD126dEH79u3x22+/IT8/H59//jn27dsHqVSKn376CdnZ2eW2vX37dgQGBmLQoEFwdHTE3LlzhfXO\nycmBVCrF2LFjK3yeO3fujG7duiE4OBgLFizA5s2bhWl79uzBG2+8UeYxDx48gJeXF65cuYKXL19i\n1KhRcHFxQWBgILp27So8nxkZGcjLy0PTpk0BvD5lwqJFizBx4kQUFRXh2LFj6NChA7y9vfHRRx8J\np7eWSCTo1q0bTp48WWH+6ho+fDjeeOMNHD58WO3FnlVCtcMtmNjCw8NJIpHQ6dOnq/3YiIgIGjJk\nCG3atIk2b95MkZGRNHHiRFq8eLFwal43Nzc6f/48ERF9/vnnNHPmTCIimjBhAoWGhlJKSgq1b99e\nWGZ6errc9GI+Pj7CQLnk5GSyt7cnIqJt27aRjY0NpaamEhHRZ599Rrt27SIiotTUVHJ0dKTs7Gy5\n3MeOHaPu3btTTk6OMF9FWX18fGj27NnCY/v3709ERNu3b6cPP/xQWK6itrdt20Zt2rShjIwMys3N\nJTs7O0pISCAiIkNDwyo/3y9evCB9fX1auHCh3P1OTk70/PlzIpKdBtnV1ZXu3r1LUqmUbty4QURE\na9eupffff5+IiG7evEk6OjrC8xkaGkrBwcHC8/7zzz/T7Nmzadq0aURElJOTQ7a2thQbG0tEREFB\nQXIDzP773//Sp59+WuX1qKqIiAgaN24ctWvXjubPn0///PNPrbfBqo+3FOq548ePo0WLFvjzzz+r\n/Vj639bAm2++if3792Pv3r0ICgoSpmdkZCA9PR29evUCAIwfPx7nz5+XW4apqSn09PQwefJkHDhw\nAE2aNCmz/Mr4+fnB1NQUgKwbZNWqVZBKpejbty9evXold04YADhz5gwmTZoEPT09IUN6enqFWQMD\nAwEAXl5eiI2NFfKVzFhe248ePYJEIoGvry+MjIzQuHFjODs7Iy4urkrrVtK5c+dgampa5rV6/Pgx\nzM3NhdvPnj3DsGHDsGfPHmH/QmRkJEaPHg0AcHFxgbu7uzB/8dZd8Tp98cUXyMjIwJYtWwDILs7S\npk0b2NnZAQCCgoLk1rtFixbCc1Kb+vTpgx07dghbNE5OTjhw4ECtt8Oqh4tCPRYTE4PTp0/jjz/+\nwPr16/HkyRMkJCRAKpVCKpXi22+/xZYtWyCVSuHl5YUnT56UuxwrKys0atQIp0+fFvYTlLdPofSX\nPBFBW1sb0dHRGDlyJI4cOYKBAwcK00suQ0dHB0VFRQCA3NxcueUYGBjI3Q4LC8O1a9dw7do1xMbG\non379pVmqWx648aNAcj69yvqzijdtpOTk9zjq7KM8mRnZ2Pu3Lk4e/Ysnj17VuEOblNTU9jZ2cnt\nmC5vnYpFR0ejc+fOAGTPeadOnXDlyhWhX7/0a1l6OUVFReW+3gMHDoRUKsXUqVMRHR0tvK8OHz6M\nhQsXCu+roqIieHp6QiqVYvHixcLjc3JysGfPHgQGBuLUqVPYuHGjWk/Hzsqn9ms0M/UgIkybNg1f\nffUVbG1tMWfOHMyePRu7du0qc4nT6dOnV7q8pUuXIjk5GVpaWsIvaGNjY5iZmeG3335Dz549sXPn\nTvj4+Mg9Ljs7G9nZ2Rg0aBC6d+8OBwcHAICRkREyMjKE+ezt7XH58mV4e3vj559/VpjD398fGzdu\nxKZNmwDIdgZLpVK5efz8/LB06VK8/fbbaNKkCVJTU2FmZlZp1tKMjY2RmZlZadsVFSBdXV0UFBRA\nR0f2UfP19cWuXbtgbW0tN9/SpUvx1ltvwdHREVu2bMHo0aPRr18/NG7cGC1atMDz589hYWEBAGjU\nqBHCwsLg7+8PQ0NDBAUFoUePHti/fz98fHxw+/ZtYWvj1q1bcHJykvtSHzhwIPz9/TF48GCcPHkS\njo6OePDgAeLi4mBnZ4d9+/bJZUtKShK2IkoKDw+Xu13yfRUQEIBly5YJt2NiYuTm/fTTT/Hzzz9j\nyJAh+PLLL+Hh4aHwOWTqxVsK9dTWrVthb28v/LKfPn067ty5U+bXZUUkEonwZdKtWzfhrIwl79+x\nYwfmzJkDDw8P3LhxA59//rnc4zMzMxEQEAAPDw/06tUL69evBwCMHj0aa9euRceOHfHw4UPMnj0b\nX3/9Nby8vPD8+XNh+SXbAmQ7R/Pz8+Hu7g5XV1cEBweXye3v74+hQ4fC29sbUqlUOHy2oqyl1xsA\n+vbti9u3bws7mhW1XTpjSVOnToW7uzvGjh0LIsL9+/fluoIA2Rf3wYMHsWDBAgCAp6cn/P39sWbN\nGgBAz549cfnyZbl8+vr6OHLkCNavX48jR45g+vTpSE5OhouLCxYtWgQXFxcYGxvj+PHjQtdRyceP\nHDkSU6ZMwdChQyGRSLBlyxYMHDgQ3t7eMDY2lruyWHR0NHr37l3u+tVU3759cffuXWzcuJELQh3D\nJ8RjTE1u3bqFbdu24csvv6zW4yIiIrBv3z58/fXXCucpKipCfn4+GjdujPv372PAgAG4e/cuBg8e\njJ07d8LKyqrCNrKzs4Vuug8++ACOjo74+OOPUVRUBC8vL1y+fFnY2mH1GxcFxjRA//79ceDAAYVj\nFTIzM9GvXz/k5+eDiLBmzRr4+/tXefkbNmzAjh07kJeXBy8vL2zduhV6eno4dOgQbty4gYULF9bW\nqrA6josCY4wxAe9TYIwxJuCiwBhjTMBFgTHGmICLAmOMMQEXBcYYYwIuCowxxgT/D4G/ftCXVIQy\nAAAAAElFTkSuQmCC\n"
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.5.a"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "w=[5.314,5.238,5.162,5.124,5.048,4.972,4.895,4.819,4.743,4.667,4.524,4.468,4.426,4.340,4.120]\n",
+ "t=[0.0,0.4,0.8,1.0,1.4,1.8,2.2,2.6,3.0,3.4,4.2,4.6,5.0,6.0]\n",
+ "#part(i)\n",
+ "x=4.120; #weight of the dried material\n",
+ "print \"\\n moisture content (dry basis) \"\n",
+ "i=0; \n",
+ "p = [] #looping starts\n",
+ "\n",
+ "# Calculation \n",
+ "while(i<15): #calculation of moisture content\n",
+ " p.append((w[i]-x)/x);\n",
+ " print \"\\n :%f\"%p[i]\n",
+ " i=i+1;\n",
+ "\n",
+ "print \"Drying rate kg/hr*m**2\"\n",
+ "i=1;\n",
+ "a = []\n",
+ "for i in range(15):\n",
+ " a.append(0)\n",
+ " \n",
+ "while(i<14):\n",
+ " a[i] =((p[i-1]-p[i])*4.12/(t[i]-t[i-1]))\n",
+ " print \" %f \"%a[i]\n",
+ " i=i+1;\n",
+ "from matplotlib.pyplot import *\n",
+ "a[0]=.19;\n",
+ "a[14]=0;\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n\\n from the above data it is clear that critical moisture content Xcr=0.11\"\n",
+ "plot(p,a);\n",
+ "title(\"Fig.6.19(a) Example3 Drying Rate curve\");\n",
+ "xlabel(\"X-- Moisture content, X(kg/kg) ---->\");\n",
+ "ylabel(\"Y-- Drying Rate, N(kg/hr.m**2 ---->\");\n",
+ "show()\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " moisture content (dry basis) \n",
+ "\n",
+ " :0.289806\n",
+ "\n",
+ " :0.271359\n",
+ "\n",
+ " :0.252913\n",
+ "\n",
+ " :0.243689\n",
+ "\n",
+ " :0.225243\n",
+ "\n",
+ " :0.206796\n",
+ "\n",
+ " :0.188107\n",
+ "\n",
+ " :0.169660\n",
+ "\n",
+ " :0.151214\n",
+ "\n",
+ " :0.132767\n",
+ "\n",
+ " :0.098058\n",
+ "\n",
+ " :0.084466\n",
+ "\n",
+ " :0.074272\n",
+ "\n",
+ " :0.053398\n",
+ "\n",
+ " :0.000000\n",
+ "Drying rate kg/hr*m**2\n",
+ "\n",
+ "\n",
+ " from the above data it is clear that critical moisture content Xcr=0.11\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "png": "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\n"
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.5.b "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "#part(ii)\n",
+ "w1=4.934; #weight after two hours\n",
+ "w0=5.314; #initial weight \n",
+ "w2=w0-w1; # water evaporated in 2 hrs\n",
+ "H1=.01; #humidty of incoming air\n",
+ "H2=.03; #humidity of leaving air\n",
+ "yout=.03;\n",
+ "yin=.01;\n",
+ "\n",
+ "# Calculation \n",
+ "Gs=w2/(yout- yin); #water carried away\n",
+ "\n",
+ " # Result\n",
+ "print \"\\n the amount of air required in 2hours is :%f kg\"%Gs\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the amount of air required in 2hours is :19.000000 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 27
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.5.c "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "#part(iii)\n",
+ "#let us choose the consistency of 11 and 13 readings\n",
+ "Xbar=0; #equillibrium moisture content\n",
+ "Ls=4.12; #mass of bone dry solid ais the drying surface\n",
+ "A=1.; #both upper surafce and lower surface are exposed\n",
+ "Nc=0.19; #in kg/m**2*hr\n",
+ "X1=.098; #moisture content on dry basis intially\n",
+ "Xcr=.11; #kg moisture per kg dry solid\n",
+ "X2=0.074; #moisture content on dry basis finally\n",
+ "# Calculation \n",
+ "import math\n",
+ "tfall=(Ls/(A*Nc))*((Xcr-Xbar)*math.log((X1-Xbar)/(X2-Xbar)));\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n from this data we get time as :%f hour\"%tfall\n",
+ "print \"\\n the actual time is 0.8 hours\"\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " from this data we get time as :0.670026 hour\n",
+ "\n",
+ " the actual time is 0.8 hours\n"
+ ]
+ }
+ ],
+ "prompt_number": 28
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.6"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "Xcr=0.55; #crtical moisture content\n",
+ "X1=1; #moisture content on dry basis intially\n",
+ "X2=.1; #moisture content on dry basis finally after drying\n",
+ "Xbar=.06; #equillibrium moisture \n",
+ "#since eqn 1 is tobe divided by eqn 2 so let the value of Ls/A*Nc be = 1 as it will be cancelled \n",
+ "p=1; #let Ls/A*Nc be =p\n",
+ "#p=poly([0],'p'); #calc. of time 1\n",
+ "tbar=1; #since the eqns are independent of tbar\n",
+ "\n",
+ "# Calculation \n",
+ "import math\n",
+ "t1=0.5960514 #roots(tbar- p*((X1-Xcr)+(Xcr-Xbar)*math.log((Xcr-Xbar)/(X2-Xbar)))); #------eqn1\n",
+ "X2bar=.16; \n",
+ "#p=poly([0],'p'); #calc. of time 2\n",
+ "t2=0.8138516 #roots(tbar- p*((X1-Xcr)+(Xcr-Xbar)*math.log((Xcr-Xbar)/(X2bar-Xbar))));#------eqn2\n",
+ "\n",
+ "#let t1/t2 be = k\n",
+ "k=t1/t2;\n",
+ "ans=1./k-1; #reduction in time for drying \n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the reduction in time for drying is :%f percent\"%(ans*100)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the reduction in time for drying is :36.540506 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 29
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.7 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "#Ls/ A*Nc is unknown;\n",
+ "# Variable Declaration \n",
+ "Xcr=0.14; #crtical moisture content\n",
+ "X1=.3/(1-.3); #moisture content on dry basis intially\n",
+ "X2=0.1/(1-0.1); #moisture content on dry basis finally after drying\n",
+ "Xbar=.04; #equillibrium moisture \n",
+ "tbar=5; #time needed to dry from 30 to 6 percent on bone dry basis\n",
+ "\n",
+ "#let Ls / A*Nc be = p\n",
+ "#p=poly([0],'p'); #calc. of Ls / A*Nc be = p value\n",
+ "# Calculation and Result\n",
+ "x= 15.495992 #roots(tbar-p * ((X1-Xcr)+(Xcr-Xbar)*log((Xcr-Xbar)/(X2-Xbar))));\n",
+ "print \"\\n the value of Ls/ A*Nc is :%f\"%x\n",
+ "import math\n",
+ "#new X1 AND X2 are now given as follows\n",
+ "X1=0.3/(1-.3); #new moisture content on dry basis intially\n",
+ "X2=0.064; #new moisture content on dry basis finally after drying\n",
+ "tbar=x * ((X1-Xcr)+(Xcr-Xbar)*math.log((Xcr-Xbar)/(X2-Xbar)));\n",
+ "print \"\\n the time for drying the sheets from 30 to 6 percent moisture under same drying conditions is :%f hr\"%tbar\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the value of Ls/ A*Nc is :15.495992\n",
+ "\n",
+ " the time for drying the sheets from 30 to 6 percent moisture under same drying conditions is :6.683159 hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 30
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.8.a"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "Ls=1000.; #mass of bone dry solid ais the drying surface\n",
+ "A=55.; #both upper surafce and lower surface are exposed\n",
+ "v=.75; #velocity of air\n",
+ "Nc=.3*10**-3; #in kg/m**2*s\n",
+ "x2=.2; #moisture content on wet basis finally after drying\n",
+ "Xcr=0.125; #crtical moisture content\n",
+ "X1=0.15; #moisture content on dry basis intially\n",
+ "X2=0.025; #moisture content on dry basis finally after drying\n",
+ "Xbar=0.0; #equillibrium moisture \n",
+ "import math\n",
+ "\n",
+ " # Calculation \n",
+ "tbar=(Ls/(A*Nc))*((X1-Xcr)+(Xcr-Xbar)*math.log((Xcr-Xbar)/(X2-Xbar)));\n",
+ "\n",
+ "# Result\n",
+ "print \"the time for drying the sheets from .15 to .025 kg water /kg of dyr solid moisture under same drying conditions is :%f hour\"%(tbar/3600);\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "the time for drying the sheets from .15 to .025 kg water /kg of dyr solid moisture under same drying conditions is :3.807740 hour\n"
+ ]
+ }
+ ],
+ "prompt_number": 31
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.8.b "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "Ls=1000.; #mass of bone dry solid ais the drying surface\n",
+ "A=55.; #both upper surafce and lower surface are exposed\n",
+ "v=.75; #velocity of air\n",
+ "Nc=.3*10**-3; #in kg/m**2*s\n",
+ "x2=.2; #moisture content on wet basis finally after drying\n",
+ "Xcr=0.125; #crtical moisture content\n",
+ "X1=0.15; #moisture content on dry basis intially\n",
+ "X2=0.025; #moisture content on dry basis finally after drying\n",
+ "Xbar=0.0; #equillibrium moisture \n",
+ "tbar=3.8077; #time to dry material ,calculated from previous part\n",
+ "V1=.75; #old velocity\n",
+ "V2=4.; #new velocity\n",
+ "import math\n",
+ "\n",
+ "# Calculation \n",
+ "Nc2=Nc*(V2/V1)**.71; #in kg/m**2*s\n",
+ "t2=(Ls/(A*Nc2))*((X1-Xcr)+(Xcr-Xbar)*math.log((Xcr-Xbar)/(X2-Xbar))); #if air velocity is increased to 4\n",
+ "t=tbar-t2/3600; #time saved\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the time saved , if air velocity is increased to 4 m/s: %f\"%t\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the time saved , if air velocity is increased to 4 m/s: 2.647593\n"
+ ]
+ }
+ ],
+ "prompt_number": 32
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.9 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "x1=.75; #moisture content on wet basis\n",
+ "xbar=0.1; #equilllibrium moisture on dry basis\n",
+ "xcr=0.6; #critical moisture content\n",
+ "Ls=0.90; #mass of bone dry solid ais the drying surface\n",
+ "A=0.3*0.3*2; #both upper surafce and lower surface are exposed\n",
+ "#A*Nc=10**-4;\n",
+ "x2=.2; #moisture content on wet basis finally after drying\n",
+ "\n",
+ "# Calculation \n",
+ "Xcr=0.6/0.4; #crtical moisture content\n",
+ "X1=3; #moisture content on dry basis intially\n",
+ "X2=0.25; #moisture content on dry basis finally after drying\n",
+ "Xbar=0.1/0.9; #equillibrium moisture \n",
+ "import math\n",
+ "tbar=Ls/(10**-4) * ((X1-Xcr)+(Xcr-Xbar)*math.log((Xcr-Xbar)/(X2-Xbar)));\n",
+ "\n",
+ "# Result \n",
+ "print \"\\n the time for drying the sheets from 75 to 25 percent moisture under same drying conditions is :%f hr\"%(tbar/3600);\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the time for drying the sheets from 75 to 25 percent moisture under same drying conditions is :11.745087 hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 34
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.10 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "Xcr=0.16; #crtical moisture content\n",
+ "X1=.33; #moisture content on dry basis intially\n",
+ "X2=0.09; #moisture content on dry basis finally after drying\n",
+ "Xbar=.05; #equillibrium moisture \n",
+ "tbar=7; #time needed to dry from 33 to 9 percent on bone dry basis\n",
+ "import math\n",
+ "#let Ls / A*Nc be = p\n",
+ "#p=poly([0],'p'); #calc. of Ls / A*Nc be = p value\n",
+ "# Calculation \n",
+ "x= 24.886579 #roots(tbar-p * ((X1-Xcr)+(Xcr-Xbar)*math.log((Xcr-Xbar)/(X2-Xbar))));\n",
+ "\n",
+ "#new X1 AND X2 are now given as follows\n",
+ "X1=0.37; #new moisture content on dry basis intially\n",
+ "X2=0.07; #new moisture content on dry basis finally after drying\n",
+ "tbar=x * ((X1-Xcr)+(Xcr-Xbar)*math.log((Xcr-Xbar)/(X2-Xbar)));\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the time for drying the sheets from 33 to 9 percent moisture under same drying conditions is :%f hr\"%tbar\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the time for drying the sheets from 33 to 9 percent moisture under same drying conditions is :9.892970 hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 35
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.11 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "d=.22; #density of dry pulp in g/cc;\n",
+ "x1=.65; #moisture content on wet basis\n",
+ "x2=.3; #moisture content on wet basis\n",
+ "Ls=2.5; #mass of bone dry solid ais the drying surface in kg\n",
+ "A=1.5*1.5*2; #both upper surafce and lower surface are exposed\n",
+ "v=1.5*1.5*.5; #volume of material\n",
+ "Nc=1.4; #in kg/m**2*hr\n",
+ "Xcr=1.67; #crtical moisture content\n",
+ "# Calculation \n",
+ "X1=x1/(1-x1); #moisture content on dry basis intially\n",
+ "X2=x2/(1-x2); #moisture content on dry basis finally after drying\n",
+ "Xbar=0.0; #equillibrium moisture \n",
+ "import math\n",
+ "\n",
+ "tbar=(Ls/(A*Nc))*((X1-Xcr)+(Xcr-Xbar)*math.log((Xcr-Xbar)/(X2-Xbar)));\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the time for drying the sheets from 65 to 30 percent moisture under same drying conditions is :%f hour\"%tbar\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the time for drying the sheets from 65 to 30 percent moisture under same drying conditions is :0.975613 hour\n"
+ ]
+ }
+ ],
+ "prompt_number": 36
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.12"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variable Declaration \n",
+ "d=.22; #density of dry pulp in g/cc;\n",
+ "\n",
+ "Ls=1.125*10**-2*.22*10**3; #mass of bone dry solid ais the drying surface\n",
+ "A=1.5*1.5*2; #both upper surafce and lower surface are exposed\n",
+ "v=1.5*1.5*.5; #volume of material\n",
+ "Nc=1.4; #in kg/m**2*hr\n",
+ "x2=.2; #moisture content on wet basis finally after drying\n",
+ "Xcr=0.46; #crtical moisture content\n",
+ "X1=0.15; #moisture content on dry basis intially\n",
+ "X2=0.085; #moisture content on dry basis finally after drying\n",
+ "Xbar=0.025; #equillibrium moisture \n",
+ "import math\n",
+ "#tbar=(Ls/(A*Nc))*((Xcr-Xbar)*log((Xcr-Xbar)/(X2-Xbar)));\n",
+ "\n",
+ "\n",
+ "# Calculation \n",
+ "tbar=(Ls/(A*Nc))*((Xcr-Xbar)*math.log((X1-Xbar)/(X2-Xbar)));\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the time for drying the sheets from 15 to 8.5 percent moisture under same drying conditions is :%f min\"%(tbar*60)\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the time for drying the sheets from 15 to 8.5 percent moisture under same drying conditions is :7.525805 min\n"
+ ]
+ }
+ ],
+ "prompt_number": 37
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.13"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "import math\n",
+ "Xcr=0.14; #crtical moisture content\n",
+ "x1=0.3; #moisture content on wet basis\n",
+ "x2=0.1; #moisture content on wet basis\n",
+ "X1=x1/(1-x1); #moisture content on dry basis intially\n",
+ "X2=x2/(1-x2); #moisture content on dry basis finally after drying\n",
+ "Xbar=0.04; #equillibrium moisture \n",
+ "tbar=5; #time needed to dry from 30 to 10 percent on bone dry basis\n",
+ "\n",
+ " #let Ls / A*Nc be = p\n",
+ "#p=poly([0],'p'); #calc. of Ls / A*Nc be = p value\n",
+ "x= 15.495992 #roots(tbar-p * ((X1-Xcr)+(Xcr-Xbar)*math.log((Xcr-Xbar)/(X2-Xbar))));\n",
+ "\n",
+ "#new X1 AND X2 are now given as follows\n",
+ "# Calculation \n",
+ "x1=.3; #new moisture content on wet basis\n",
+ "x2=0.06; #new moisture content on wet basis\n",
+ "X1=x1/(1-x1); #new moisture content on dry basis intially\n",
+ "X2=x2/(1-x2); #new moisture content on dry basis finally after drying\n",
+ "tbar=x * ((X1-Xcr)+(Xcr-Xbar)*math.log((Xcr-Xbar)/(X2-Xbar)));\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the time for drying the sheets from 30 to 10 percent moisture under same drying conditions is :%f hr\"%tbar\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the time for drying the sheets from 30 to 10 percent moisture under same drying conditions is :6.694188 hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 38
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.14"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "d=450.; #density of dry pulp in kg/m**3;\n",
+ "thickness=0.05; #thickness in m**2\n",
+ "Ls=d*thickness; #mass of bone dry solid ais the drying surface\n",
+ "A=1.; #area in m**2\n",
+ "v=1*5*10**-2; #volume of material\n",
+ "Nc=4.8; #in kg/m**2*hr\n",
+ "xcr=.2;\n",
+ "xbar=0.02;\n",
+ "x1=.45; #new moisture content on wet basis\n",
+ "x2=0.05; #new moisture content on wet basis\n",
+ "\n",
+ "# Calculation \n",
+ "X1=x1/(1-x1); #new moisture content on dry basis intially\n",
+ "X2=x2/(1-x2); #new moisture content on dry basis finally after drying\n",
+ "Xbar=xbar/(1-xbar); #crtical moisture content\n",
+ "Xcr=xcr/(1-xcr); #equillibrium moisture \n",
+ "import math\n",
+ "#tbar=(Ls/(A*Nc))*((Xcr-Xbar)*log((Xcr-Xbar)/(X2-Xbar)));\n",
+ "\n",
+ "tbar=Ls/(A*Nc) * ((X1-Xcr)+(Xcr-Xbar)*math.log((Xcr-Xbar)/(X2-Xbar)));\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the time for drying the sheets from 45 to 5 percent moisture under same drying conditions is :%f min\"%tbar\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the time for drying the sheets from 45 to 5 percent moisture under same drying conditions is :4.776612 min\n"
+ ]
+ }
+ ],
+ "prompt_number": 39
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.15"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "# Variable Declaration \n",
+ "t1=20.; #ambient air temperature \n",
+ "t2=70.; #exhaust air temperature \n",
+ "r1=150.; #evaporation of water \n",
+ "r2=.25; #outlet solid moisture content\n",
+ "t3=15.; #inlet solid temperature\n",
+ "t4=65.; #outlet solid temperature\n",
+ "p=5.; #power demand in KW\n",
+ "h=18.; #heat loss in kj\n",
+ "\n",
+ "h1=1.; #mean specific heat of dry air in kj/kg*K\n",
+ "h2=1.25; #mean specific heat of dry material in kj/kg*K\n",
+ "h3=4.18; #mean specific heat of moisture in kj/kg*K\n",
+ "e=2626.; #enthalpy of saturated water vapour in kj/kg\n",
+ "\n",
+ "# Calculation \n",
+ " #basis is 1hr\n",
+ "a1=r1*h3*(t4-t3); #heat required for heating 150 kg of water from 15 to 65\n",
+ "a2=r1*e; #heat required for 150 kg water evaporation\n",
+ "a3=2000*h1*(t2-t1); #heat required for heating air from 20 to 70 \n",
+ "a4=r2*h3*(t4-t3); #heat required for heating moisture from 15 to 65\n",
+ "a5=120*h2*(t4-t3); #heat required for heating dry solid from 15 to 65\n",
+ "hlost=h*3600; #heat lost in kj\n",
+ "total=(a2+a3+a4+a5+hlost)/3600.; #total heat lost \n",
+ "\n",
+ "# Result\n",
+ "print \"\\n :%f kW of heat required for 2000kg/hr of dry air\"%total\n",
+ "ans1=a2+a1; #heat needed for evaporation \n",
+ "print \"\\n heat needed fro evaporation is :%f\"%(ans1/3600)\n",
+ "ans2=(ans1/3600.)/total; #fraction of this heat needed for evaporation\n",
+ "print \"\\n fraction of this heat needed for evaporation:%f\"%(ans2)\n",
+ " \n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " :157.292292 kW of heat required for 2000kg/hr of dry air\n",
+ "\n",
+ " heat needed fro evaporation is :118.125000\n",
+ "\n",
+ " fraction of this heat needed for evaporation:0.750990\n"
+ ]
+ }
+ ],
+ "prompt_number": 40
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.16"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "m1=.12; #initial moisture content\n",
+ "dT=85.; #product of 85 degree is used in design purpose\n",
+ "U=1700.; #overall heat transfer coefficient\n",
+ "m2=.4; #final moisture content\n",
+ "r=20.; #production rate\n",
+ " #4 kg of moisture is present in 100 kg product\n",
+ "# Calculation \n",
+ "t=4*20./100; # moisture content in 20 kg moisture\n",
+ "w=20-t; #dry solid weight\n",
+ "i=w*m1/(1-m1); #initial moisture content \n",
+ "j=i-t #water evaporated\n",
+ "ds=2296.1; #latent heat for vaporisation at 85 degree in kj/kg\n",
+ "h=j*ds; #heat required (assuming th esolid mix. enters at 85)\n",
+ "#U*A*dT = j*ds\n",
+ "A=h/(U*dT); #surface area of the roller required to produce aproduction rate of 20 kg product per hour\n",
+ "\n",
+ "# Result \n",
+ "print \"\\n surface area of the roller required to produce aproduction rate of 20 kg product per hour:%f m**2\"%(A/3.600);\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " surface area of the roller required to produce aproduction rate of 20 kg product per hour:0.008025 m**2\n"
+ ]
+ }
+ ],
+ "prompt_number": 41
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.17"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "# Variable Declaration \n",
+ "r=7.5*10**-5; #constant drying rate in kg/s\n",
+ "A1=.3*.3**2; # area of the sppecimen\n",
+ "Nc=r/A1; #drying rate\n",
+ "# Calculation \n",
+ "Xcr=.15/0.85; #.15 is the critical moisture content\n",
+ "Xo=.25/.75; #.25 is the initial moisture content\n",
+ "Xfinal=.02/0.98; #.02 is the final moisture content\n",
+ "Xbar=0; #equillibrium moisture content\n",
+ "A=1.2*.6*2; #area of the new solid\n",
+ "Ls=28.8; #bone dry weight of new solid\n",
+ "v1=.3*.3*.006; #volume of the old solid;\n",
+ "v2=.6*1.2*.012; #volume of the new solid\n",
+ "w2=1.8; #weight of the old solid\n",
+ "w3=864*10**-5*1.8*10**-5/54; #weight of the bone dry solid\n",
+ "\n",
+ " #Nc is prporional to =(t-ts) = (G)**0.71---- whrere G is the mass flow rate\n",
+ "v1=3.; #old velocity\n",
+ "Tg=52.; #old dry bulb temperature\n",
+ "Tw=21.; #wet bulb temperature\n",
+ "H=.002; #humidity \n",
+ "SH=0.015; #saturated humidity \n",
+ "vnew=5. #new velocity\n",
+ "Tgnew=66.; #new DBT\n",
+ "Twnew=24.; #new WBT\n",
+ "Hnew=.004; #new humidity\n",
+ "SH=.020; #new satuurated humidity\n",
+ "import math \n",
+ "#hence drying rate of air under new condition\n",
+ "Nc=4.167*10**-4*((vnew/v1)*(273+Tg)/(273+Tgnew))**0.71 * ((.019-H)/(.015-H));#drying rate of air under new condition in kg/m**2*s \n",
+ "DT=Ls/(A*Nc) * ((Xo-Xcr)+(Xcr-Xbar)*math.log((Xcr-Xbar)/(Xfinal-Xbar)));\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the time for drying the sheets from 25 to 2 percent moisture under same drying conditions is :%f hours\"%(DT/3600)\n",
+ "\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the time for drying the sheets from 25 to 2 percent moisture under same drying conditions is :3.929236 hours\n"
+ ]
+ }
+ ],
+ "prompt_number": 42
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Elements_Of_Mass_Transfer_Part_1/ch7.ipynb b/Elements_Of_Mass_Transfer_Part_1/ch7.ipynb
new file mode 100755
index 00000000..5e37db80
--- /dev/null
+++ b/Elements_Of_Mass_Transfer_Part_1/ch7.ipynb
@@ -0,0 +1,698 @@
+{
+ "metadata": {
+ "name": "ch7",
+ "signature": "sha256:9c280dff7f4e1d5ae99e0fbadb3fa83466c67b9a415e20bbef76992fab6df294"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 7 : Crystallisation"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.1 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "c=.498; #solute content afetr crystallisation\n",
+ "W1=111.; #molecular weight of CaCl2\n",
+ "W2=219.; #molecular weight of CaCl2.6H2O\n",
+ "\n",
+ "# Calculation \n",
+ "M1=(108./W2)*100; #water present in 100kg of CaCl2.6H2O\n",
+ "M2=(W1/W2)*100; #CaCl2 present in 100kg of CaCl2.6H20\n",
+ "#t=M2+c*x; #total weight entering the solubility\n",
+ "#x+49.3; total water solubility used\n",
+ "#s*(x+49.3)/100 #total Cacl2 after solubility\n",
+ "#x=poly([0],'x'); #calc. x the weight of crystal\n",
+ "t= 32.112871 #roots((M2+c*x)-(x+49.3)*.819); \n",
+ "\n",
+ "# Result\n",
+ "print \"\\nthe weight of water in the quantity of solution needed :%f kg\"%t\n",
+ "\n",
+ "h=(c)*t; #weight of CaCl2 corresponding to weight water\n",
+ "tw=t+h; # total weight of the solution\n",
+ "print \"\\nthe total weight of the solution is :%f kg\"%tw\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "the weight of water in the quantity of solution needed :32.112871 kg\n",
+ "\n",
+ "the total weight of the solution is :48.105081 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.2 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "#part(i)\n",
+ "w1=1000.; #weight of solution to be cooled\n",
+ "s1=104.1; #solubility at 50 degree per 100 kg of water\n",
+ "s2=78.0; #solubility at 10 degree per 100 kg of water\n",
+ "a2=45.; #percentage of sodium nitrate in the solution per 100kg of solution \n",
+ "\n",
+ "# Calculation \n",
+ "x1=s1/(100+s1)*100; #percentage of saturated solution at 50 degree\n",
+ "tw=(a2/(100-a2))/(x1/(100-x1)); #the percentage saturation\n",
+ "print \"\\nthe percentage saturation is :%f percent\"%(tw*100)\n",
+ "\n",
+ "#part(ii)\n",
+ "#let x be the weight of NaNO3 crystal formed after crystallisation\n",
+ "#x=poly([0],'x'); #calc. x the weight of crystal\n",
+ "t=21.000000 #roots((w1*a2/100)-(x+(w1-x)*s2/(100+s2)));\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the weight of NaNO3 crystal formed after crystallisation :%f kg\"%t\n",
+ "\n",
+ "#part(iii)\n",
+ "y=t/(a2*w1/100); #yield = weight of NaNO3 crystal formed/weight of NaNO3\n",
+ "print \"\\n the percentage yield is:%f percent\"%(y*100)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "the percentage saturation is :78.595756 percent\n",
+ "\n",
+ " the weight of NaNO3 crystal formed after crystallisation :21.000000 kg\n",
+ "\n",
+ " the percentage yield is:4.666667 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.3"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "s1=19.75; #solubility at 70 degree per 100 gm of water\n",
+ "s2=16.5; #solubility at 50 degree per 100 gm of water\n",
+ "s3=12.97; #solubility at 30 degree per 100 gm of water\n",
+ "s4=9.22; #solubility at 10 degree per 100 gm of water\n",
+ "s5=7.34; #solubility at 0 degree per 100 gm of water\n",
+ "\n",
+ "# Calculation \n",
+ " #basis is 1000kg of saturated solution\n",
+ "w1=1000.*(s1/(s1+100)); #weight of K2SO4 in the original solution\n",
+ "w2=1000.-w1; #weight of water in kg\n",
+ "w3=w1*.5; #weight of K2SO4 in the solution\n",
+ "wp=w3/(w3+w2); #weight percent of K2SO4 in the solution after crystallistion\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n for the corresponding temperature to :%f percent of K2SO4 is 15 degree (by linear interpolation between 10 to 30 degree) \"%(wp*100)\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " for the corresponding temperature to :8.987486 percent of K2SO4 is 15 degree (by linear interpolation between 10 to 30 degree) \n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.4 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "#part(i)\n",
+ "a1=146.; #solubility at 70 degree\n",
+ "a2=121.; #solubility at 10 degree\n",
+ "t1=58.; # percentage of solute content\n",
+ "t2=40.66;\n",
+ "\n",
+ "# Calculation and Result\n",
+ "x1=a1/(100+a1) *100; #percentage of saturated solution at 50 degree\n",
+ "tw=(t1/42.)/(x1/t2); #the percentage saturation\n",
+ "print \"\\nthe percentage saturation is :%f percent\"%(tw*100)\n",
+ "\n",
+ "#part(ii)\n",
+ "p1=2000*.58; #weight of solute in 200kg of solution 2000*.58\n",
+ "#let x be the weight of crystal formed after crystallisation\n",
+ "#x=poly([0],'x'); #calc. x the weight of crystal\n",
+ "t=231.743929 #roots((1160)-(x+(1055.02-.547*x))); \n",
+ "print \"\\n the weight of NaNO3 crystal formed after crystallisation :%f kg\"%t\n",
+ "\n",
+ "#part(iii)\n",
+ "y=t/p1; #yield = weight of NaNO3 crystal formed/weight of NaNO3\n",
+ "print \"\\n the percentage yield is:%f percent\"%(y*100)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "the percentage saturation is :94.608102 percent\n",
+ "\n",
+ " the weight of NaNO3 crystal formed after crystallisation :231.743929 kg\n",
+ "\n",
+ " the percentage yield is:19.977925 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.5"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "p1=.3; #percentage of the solute in the solution\n",
+ "w1=1000.; #weight of the solution taken\n",
+ "w2=142.; #molecular weight of Na2SO4.\n",
+ "\n",
+ "# Calculation \n",
+ "M1=(w2/(180+w2)); #solute (Na2SO4) present in the Na2CO3.10H2O solution\n",
+ "s1=40.8; #solubility of Na2SO4 at 30 degree per 100 gm of water\n",
+ "s2=9.0; #solubility of Na2SO4 at 10 degree per 100 gm of water\n",
+ "#percent weight of solute in Na2SO4.10H2O= 144/322\n",
+ "#let x be the weight of crystal formed \n",
+ "#x=poly([0],'x'); #calc. x the weight of crystal\n",
+ "t= 576.477290 #roots((w1*40.8/140.8)-(.442*x+(w1-x)*(s2/(100+s2)))); \n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the weight of crystal formed after crystallisation :%f kg\"%t\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the weight of crystal formed after crystallisation :576.477290 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 20
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.6 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "s1=12.5; #solubility of Na2CO3 at 10 degree per 100 gm of water\n",
+ "p1=.3; #percentage of the solute in the solution\n",
+ "w1=2000.; #weight of the solution taken\n",
+ "w2=106.; #molecular weight of Na2CO3.\n",
+ "\n",
+ "# Calculation \n",
+ "M1=(w2/(180+w2)); #solute (Na2CO3) present in the Na2CO3.10H2O solution\n",
+ "#let x be the quantity of Na2CO3.10H2O crystal formed\n",
+ "#x=poly([0],'x'); #calc. x the weight of crystal\n",
+ "t= 1455.688623 #roots(w1*p1-M1*x-(w1-x)*(s1/(100+s1))); \n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the weight of quantity of Na2CO3.10H2O :%f kg\"%t\n",
+ "#in the book the ans is wrong, they have calculated 2000*0.3-2000*12.5/112.5 as =x(miscalculation)\n",
+ "\n",
+ "p=(286./106)*w1*p1; #weight of Na2CO3.10H2O crystal present in the original solution\n",
+ "y=t/p; #percentage yield \n",
+ "print \"\\n percentage yield :%f percent\"%(y*100)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the weight of quantity of Na2CO3.10H2O :1455.688623 kg\n",
+ "\n",
+ " percentage yield :89.920160 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 21
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.7 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "s1=139.8; #solubility at 80 degree per 100 gm of water\n",
+ "s2=110.5; #solubility at 20 degree per 100 gm of water\n",
+ "w2=174.2; #molecular weight of K2CO3.10H2O\n",
+ "\n",
+ "# Calculation \n",
+ "M1=(138/w2)*100; #water present in 100kg of K2CO3.10H2O\n",
+ "#let x be the quantity of Na2CO3.10H2O\n",
+ "#x=poly([0],'x'); #calc. x the weight of crystal\n",
+ "t=108.634036 #roots(500*(139.8/239.8)-.7921*x-(500-x)*110.5/210.5); \n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the weight of quantity of K2CO3.10H2O formed :%f kg\"%t\n",
+ "\n",
+ "p=(174./138)*500*(139.8/239.8); #weight of crystal present in the original solution\n",
+ "y=t/p; #percentage yield \n",
+ "print \"\\n percentage yield :%f percent\"%(y*100)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the weight of quantity of K2CO3.10H2O formed :108.634036 kg\n",
+ "\n",
+ " percentage yield :29.557504 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.8 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "s1=20.51; #solubility at 10 degree per 100 gm of water\n",
+ "w2=277.85; #molecular weight of FeSO4.7H2O\n",
+ "\n",
+ "# Calculation and Result\n",
+ "#let x be the quantity of Na2CO3.10H2O\n",
+ "#x=poly([0],'x'); #calc. x the weight of crystal\n",
+ "t= 549.684973 #roots(900*.4-.5465*x-(900-x)*20.5/120.5); \n",
+ "print \"\\n the weight of quantity of FeSO4.7H2O formed :%f kg\"%t\n",
+ "\n",
+ "p=(277.85/151.85)*900*(0.4); #weight of crystal present in the original solution\n",
+ "y=t/p; #percentage yield \n",
+ "print \"\\n percentage yield :%f percent\"%(y*100)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the weight of quantity of FeSO4.7H2O formed :549.684973 kg\n",
+ "\n",
+ " percentage yield :83.447967 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 22
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.9"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "#part(i)\n",
+ "a1=229.7; #solubility at 60 degree\n",
+ "a2=174.7; #solubility at 60 degree\n",
+ "t1=68; # percentage of sodium nitrate\n",
+ "t2=30.34;\n",
+ "\n",
+ "# Calculation and Result\n",
+ "x1=a1/329.7 *100; #percentage of saturated solution at 50 degree\n",
+ "tw=(t1/32.)/(x1/t2); #the percentage saturation\n",
+ "print \"\\nthe percentage saturation is :%f percent\"%(tw*100)\n",
+ "\n",
+ "#part(ii)\n",
+ "#let x be the weight of Cesium chloride crystal formed after crystallisation\n",
+ "#x=poly([0],'x'); #calc. x the weight of crystal\n",
+ "t=120.960000 #roots(1000*.68-(x+(1000-x)*174.7/274.7)); \n",
+ "print \"\\n the weight of CaCl2 crystal formed after crystallisation :%f kg\"%t\n",
+ "\n",
+ "#part(iii)\n",
+ "y=t/680.; #yield = weight of CaCl2 crystal formed/weight of CaCl2\n",
+ "print \"\\n the percentage yield of Cesium chloride is:%f percent\"%(y*100)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "the percentage saturation is :92.540632 percent\n",
+ "\n",
+ " the weight of CaCl2 crystal formed after crystallisation :120.960000 kg\n",
+ "\n",
+ " the percentage yield of Cesium chloride is:17.788235 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 23
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.10"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "s1=38.8; #solubility at 30 degree per 100 gm of water\n",
+ "s2=12.5; #solubility at 10 degree per 100 gm of water\n",
+ "w2=296; #molecular weight of Na2CO3.10H2O\n",
+ "per=116./w2 *100; #percentage solute in Na2CO3.10H2O\n",
+ "\n",
+ "#let x be the quantity of Na2CO3.10H2O\n",
+ "w=200.; #original solotion weight\n",
+ "\n",
+ "# Calculation \n",
+ "m1=w*(s2/(s2+100)); #weight of Na2CO3.10H2O needed to dissolve Na2CO3 present in the original solotion \n",
+ "w3=w-m1; #weight of water \n",
+ "#w4=m1+per/100; weight of Na2CO3 after dissolution\n",
+ "x1=s1/(s1+100); #weight fraction of solute after dissolution \n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the weight of quantity of Na2CO3.10H2O formed :%f kg\"%w3\n",
+ "\n",
+ "#for the total solution after dissolution\n",
+ "#x=poly([0],'x'); #calc. x the weight of crystal\n",
+ "t= 300.485784 #roots((m1+per*x/100)-((m1+per*x/100)+(w3+.609*x))*x1); \n",
+ "print \"\\nweight of Na2CO3.10H2O needed to dissolve Na2CO3 present in the original solution %f kg\"%t\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the weight of quantity of Na2CO3.10H2O formed :177.777778 kg\n",
+ "\n",
+ "weight of Na2CO3.10H2O needed to dissolve Na2CO3 present in the original solution 300.485784 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 24
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.11"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "s1=35.; #percentage of solution\n",
+ "x1=6000.; #weight of Na2CO3 solution\n",
+ "s2=21.5; #solubility at 20 degree per 100 gm of water\n",
+ "w2=296.; #molecular weight of Na2CO3.10H2O\n",
+ "\n",
+ "# Calculation \n",
+ "per=116./w2 *100; #percentage solute in Na2CO3.10H2O\n",
+ "w1=s1*x1; #weight of solute\n",
+ "w3=x1*0.04; #weight of solution lost by vaporisation\n",
+ "#let x be the quantity of Na2CO3.10H2O formed \n",
+ "#making material balance \n",
+ "#x=poly([0],'x'); #calc. x the weight of crystal\n",
+ "t= 5049.122335 #roots(2100-(.391*x)-(6000-240-x)*(21.5/121.5)); \n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the weight of Na2CO3.10H2O crystal formed after crystallisation :%f kg\"%t\n",
+ "\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the weight of Na2CO3.10H2O crystal formed after crystallisation :5049.122335 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 25
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.12"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "C=1000.; #crystal formed in kg\n",
+ "hf=26.002; #enthalpy of the feed at 80 degree in cal/g\n",
+ "hl=-1.33; #enthalpy of the saturated sol at 30 degree in cal/g\n",
+ "hc=-50.56; #enthalpy of crystal\n",
+ "xf=40./(100+40);\n",
+ "xm=30./(100+30);\n",
+ "xc=151.84/277.85; #151.84 is the weight of FeSO4\n",
+ " #component balance\n",
+ "\n",
+ "Hf=26.002; #enthalpy of the feed at 80 degree in cal/g\n",
+ "Hv=612.; #\n",
+ "Hm=-1.33; #enthalpy of the saturated sol at 30 degree in cal/g\n",
+ "Hc=-50.56; #enthalpy of crystal leaving the crystalliser\n",
+ "from numpy import matrix\n",
+ "from numpy import linalg\n",
+ "#solving these we gt \n",
+ "\n",
+ "# Calculation \n",
+ "a=matrix([[1,-1,-1],[.286,-.231,0],[26.002,1.33,-612]])\n",
+ "b=matrix([[10000],[5470],[-505600]])\n",
+ "x=linalg.inv(a)*b; #solving out the values using matrices \n",
+ "t1=x[0]; #3 solution of the eqn\n",
+ "t2=x[1];\n",
+ "t3=x[2];\n",
+ "\n",
+ "# Result\n",
+ "print \"\\n the feed rate F= : %f kg/hr \\n value of M= : %f kg/hr\\n value of V=: %f kg/hr\"%(t1,t2,t3)\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " the feed rate F= : 45556.688340 kg/hr \n",
+ " value of M= : 32723.865218 kg/hr\n",
+ " value of V=: 2832.823122 kg/hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 26
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.13 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "\n",
+ "import math\n",
+ "C=800.; #crystal formed in kg/hr\n",
+ "t2=49.; #temp. of the entering fed\n",
+ "t1=27.; #temp. of the product\n",
+ "t3=21.; #temp. of the leaving cooling water\n",
+ "t4=15.; #temp. of the enetring cooling water\n",
+ "U=175.; #overall heat transfer coefficient\n",
+ "F=140*151.85/277.85; #feed concentration \n",
+ "xf=F/240; #concentration in feed solution\n",
+ "P=74*151.85/277.85; #product concentration \n",
+ "xm=P/174; #concentration of FeSO4 in product solution\n",
+ "xc=151.85/277.85; #\n",
+ " \n",
+ "# Calculation \n",
+ "#solving these we get\n",
+ "F=800*.3141/0.0866; #feed conc.\n",
+ "M=F-C; #product concentration \n",
+ " #making energy balance\n",
+ " #heat to be removed by cooling water =heat to be removed from solution + heat of crystallization\n",
+ "cp=.7; #specific heat capacity\n",
+ "dt=(t2-t1); #change in temp.\n",
+ "dh=15.8; #heat of crystallization\n",
+ "Q=F*cp*dt+dh*C; #heat to be removed by cooling water\n",
+ "cp=1; #specific heat capacity of water\n",
+ "dt=(t3-t4); #change in temp.\n",
+ "mw=Q/(cp*dt); #cooling water needed\n",
+ "\n",
+ "# Result \n",
+ "print \"\\n cooling water requiement is :%f kg/hr\"%mw\n",
+ " #Q=U*A*(dtlm)\n",
+ "dtlm=((t2-t3)-(t1-t4))/(math.log((t2-t3)/(t1-t4)));#log mean temp. difference\n",
+ "A=Q/(U*dtlm); #area of the crystallizer section\n",
+ "l=A/1.3;\n",
+ "print \"\\n length of crystallliser sections needed is :%f m\"%l\n",
+ "\n",
+ "#end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " cooling water requiement is :9554.149346 kg/hr\n",
+ "\n",
+ " length of crystallliser sections needed is :13.343753 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 27
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Elements_Of_Mass_Transfer_Part_1/screenshots/dry-time.png b/Elements_Of_Mass_Transfer_Part_1/screenshots/dry-time.png
new file mode 100755
index 00000000..3235d6e8
--- /dev/null
+++ b/Elements_Of_Mass_Transfer_Part_1/screenshots/dry-time.png
Binary files differ
diff --git a/Elements_Of_Mass_Transfer_Part_1/screenshots/enthalpy.png b/Elements_Of_Mass_Transfer_Part_1/screenshots/enthalpy.png
new file mode 100755
index 00000000..2f5099d0
--- /dev/null
+++ b/Elements_Of_Mass_Transfer_Part_1/screenshots/enthalpy.png
Binary files differ
diff --git a/Elements_Of_Mass_Transfer_Part_1/screenshots/tower.png b/Elements_Of_Mass_Transfer_Part_1/screenshots/tower.png
new file mode 100755
index 00000000..630464a7
--- /dev/null
+++ b/Elements_Of_Mass_Transfer_Part_1/screenshots/tower.png
Binary files differ