summaryrefslogtreecommitdiff
path: root/A_Heat_Transfer_Text_Book
diff options
context:
space:
mode:
authorkinitrupti2015-10-15 17:40:30 +0530
committerkinitrupti2015-10-15 17:40:30 +0530
commit4a735f833653551e3321fbe9a8e47faa879d282f (patch)
treedb91b182e06d1695ad8db15d757f669ad929c0b6 /A_Heat_Transfer_Text_Book
parent78784b374b2d1a9be66eb4ad41470409e2bd4dfa (diff)
downloadPython-Textbook-Companions-4a735f833653551e3321fbe9a8e47faa879d282f.tar.gz
Python-Textbook-Companions-4a735f833653551e3321fbe9a8e47faa879d282f.tar.bz2
Python-Textbook-Companions-4a735f833653551e3321fbe9a8e47faa879d282f.zip
solved errors
Diffstat (limited to 'A_Heat_Transfer_Text_Book')
-rwxr-xr-xA_Heat_Transfer_Text_Book/.ipynb_checkpoints/Chapter1-checkpoint.ipynb334
-rwxr-xr-xA_Heat_Transfer_Text_Book/.ipynb_checkpoints/Chapter11-checkpoint.ipynb631
-rwxr-xr-xA_Heat_Transfer_Text_Book/Chapter1.ipynb664
-rwxr-xr-xA_Heat_Transfer_Text_Book/Chapter11.ipynb1266
4 files changed, 1928 insertions, 967 deletions
diff --git a/A_Heat_Transfer_Text_Book/.ipynb_checkpoints/Chapter1-checkpoint.ipynb b/A_Heat_Transfer_Text_Book/.ipynb_checkpoints/Chapter1-checkpoint.ipynb
new file mode 100755
index 00000000..dd1cacc1
--- /dev/null
+++ b/A_Heat_Transfer_Text_Book/.ipynb_checkpoints/Chapter1-checkpoint.ipynb
@@ -0,0 +1,334 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 1 - \"Introduction\""
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.1, Page number: 13"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "\n",
+ "#Variables\n",
+ "k=35; #Thermal Conductivity, [W/m*K]\n",
+ "T1=110 # Temperature of front[C]\n",
+ "T2=50; # Temperature of back,[C]\n",
+ "A=0.4 #area of slab,[m**2]\n",
+ "x=0.03; #Thickness of slab,[m]\n",
+ "\n",
+ "#Calculations\n",
+ "q=-k*(T2-T1)/(1000*x); #formula for heat flux[KW/m^2]\n",
+ "Q=q*A; #formula for heat transfer rate[KW]\n",
+ "\n",
+ "#Results\n",
+ "print \"Heat flux is:\",q,\"KW/m^2\\n\"\n",
+ "print \"Heat transfer rate is:\",Q,\"KW \\n\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat flux is: 70.0 KW/m^2\n",
+ "\n",
+ "Heat transfer rate is: 28.0 KW \n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.2, Page number: 16"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "from sympy import solve,symbols\n",
+ "\n",
+ "#Variables\n",
+ "x=symbols('x');\n",
+ "k1=372; # Thermal Conductivity of slab,W/m*K\n",
+ "x1=0.003; # Thickness of slab,m\n",
+ "x2=0.002 # Thickness of steel,m\n",
+ "k2=17; # Thermal Conductivity of steel,W/m*K\n",
+ "T1=400; # Temperature on one side,C\n",
+ "T2=100 #Temperature on other side,C\n",
+ "\n",
+ "#Calculations\n",
+ "Tcu=solve(x+2*x*(k1/x1)*(x2/k2)-(T1-T2),x);\n",
+ "#q=k1*(Tcu/x1)=k2*(Tss/x2);\n",
+ "Tss = Tcu[0]*(k1/x1)*(x2/k2); # formula for temperature gradient in steel side\n",
+ "Tcul=T1-Tss;\n",
+ "Tcur=T2+Tss;\n",
+ "q=k2*Tss/(1000*x2); # formula for heat conducted, kW\\m^2\n",
+ "\n",
+ "#Results\n",
+ "print \"Temperature on left copper side is :\",round(Tcul,3),\"C\\n\"\n",
+ "print \"Temperature on right copper side is :\",round(Tcur,3),\"C\\n\"\n",
+ "print \"Heat conducted through the wall is :\",round(q,3),\"kW\\m^2\\n\"\n",
+ "print \"Our initial approximation was accurate within a few percent.\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Temperature on left copper side is : 254.971 C\n",
+ "\n",
+ "Temperature on right copper side is : 245.029 C\n",
+ "\n",
+ "Heat conducted through the wall is : 1232.749 kW\\m^2\n",
+ "\n",
+ "Our initial approximation was accurate within a few percent.\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.3, Page number: 22"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "\n",
+ "#Variables\n",
+ "q1=6000; #Heat flux, W*m**-2\n",
+ "T1=120; #Heater Temperature, C\n",
+ "T2=70; #final Temperature of Heater, C\n",
+ "q2=2000; #final heat flux, W*m**-2\n",
+ "\n",
+ "#Calculations\n",
+ "h=q1/(T1-T2) #formula for average heat transfer cofficient\n",
+ "Tnew=T2+q2/h; #formula for new Heater temperature, C\n",
+ "\n",
+ "#Results\n",
+ "print \"Average Heat transfer coefficient is:\",h,\"W/(m^2*K)\\n\"\n",
+ "print \"New Heater Temperature is:\",round(Tnew,3),\"C\\n\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Average Heat transfer coefficient is: 120.0 W/(m^2*K)\n",
+ "\n",
+ "New Heater Temperature is: 86.667 C\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.4, Page number: 25"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "from numpy import array\n",
+ "from numpy import linspace\n",
+ "import matplotlib.pyplot as plt\n",
+ "from pylab import *\n",
+ "%matplotlib inline\n",
+ "\n",
+ "#Variables\n",
+ "h=250; #Heat Transfer Coefficient, W/(m**2*K)\n",
+ "k=45; #Thermal Conductivity, W/(m*K)\n",
+ "c=180; #Heat Capacity, J/(kg*K)\n",
+ "a=9300; #density, kg/m**3\n",
+ "T1=200; #temperature, C\n",
+ "D=0.001; #diameter of bead, m\n",
+ "t1=linspace(0,5,50); #defining time interval of 0.1 seconds\n",
+ "T=linspace(0,5,50);\n",
+ "i=0;\n",
+ "\n",
+ "#Calculations\n",
+ "while i<50:\n",
+ " T[i]=T1-c*math.exp(-t1[i]/((a*c*D)/(6*h))); #Calculating temperature at each time in degree C\n",
+ " i=i+1;\n",
+ "\n",
+ "plt.plot(t1,T);\n",
+ "plt.xlabel(\"Time(in sec)\");\n",
+ "plt.ylabel(\"Temperature(in degree C)\");\n",
+ "plt.title(\"Thermocouple response to a hot gas flow\");\n",
+ "plt.show();\n",
+ "\n",
+ "Bi = h*(D/2)/k; #biot no.\n",
+ "\n",
+ "#Results\n",
+ "print \"The value of Biot no for this thermocouple is\",round(Bi,5);\n",
+ "print \"Bi is <0.1 and hence the thermocouple could be considered as a lumped heat capacity system and the assumption taken is valid.\\n\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n9aVlLh5rAAAAAElFTkSuQmCC\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7fbd3da5b8d0>"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The value of Biot no for this thermocouple is 0.00278\n",
+ "Bi is <0.1 and hence the thermocouple could be considered as a lumped heat capacity system and the assumption taken is valid.\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.5, Page number: 32"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "from sympy import solve,symbols\n",
+ "\n",
+ "#Variables\n",
+ "x=symbols('x');\n",
+ "T1=293; #Temperature of air around thermocouple, K\n",
+ "T2=373; #Wall temperature, K\n",
+ "h=75; #Average Heat Transfer Coefficient, W/(m**2*K)\n",
+ "s=5.67*10**-8; #stefan Boltzman constant, W/(m**2*K**4)\n",
+ "\n",
+ "#Calculations\n",
+ "x=solve((h*(x-T1)+s*(x**4-T2**4)),x);\t #Calculating Thermocouple Temperature, K\n",
+ "y=x[1]-273;\t\t\t\t #Thermocouple Temperature, C\n",
+ "\n",
+ "#Results\n",
+ "print \"Thermocouple Temperature is :\",round(y,3),\"C\\n\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermocouple Temperature is : 28.395 C\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.6, Page number: 34"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "from sympy import solve,symbols\n",
+ "\n",
+ "#Variables\n",
+ "x=symbols('x');\n",
+ "e=0.4; #emissivity\n",
+ "T1=293; #Temperature of air around Thermocouple, K\n",
+ "T2=273; #wall Temperature, K\n",
+ "h=75; #Average Heat Transfer Coefficient, W/(m**2*K)\n",
+ "s=5.6704*10**-8; #stefan Boltzman constant, W/(m**2*K**4)\n",
+ "\n",
+ "#Calculations\n",
+ "z=solve(((s*e*((373)**4 - (x)**4)) - h*(x-293)),x);\t#Calculating Thermocouple Temperature, K\n",
+ "y=z[0]-273;\t\t\t\t\t #Thermocouple Temperature, C\n",
+ "\n",
+ "'''NOTE: Equation written is absolutely correct and solving this equation\n",
+ " should give real result as: 296.112 i.e. 23.112 C, but somehow python is giving wrong result.'''\n",
+ "\n",
+ "#Results\n",
+ "print \"Thermocouple Temperature is :\",round(y,1),\"C \\n\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermocouple Temperature is : 25.9 C \n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/A_Heat_Transfer_Text_Book/.ipynb_checkpoints/Chapter11-checkpoint.ipynb b/A_Heat_Transfer_Text_Book/.ipynb_checkpoints/Chapter11-checkpoint.ipynb
new file mode 100755
index 00000000..cec52317
--- /dev/null
+++ b/A_Heat_Transfer_Text_Book/.ipynb_checkpoints/Chapter11-checkpoint.ipynb
@@ -0,0 +1,631 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 11: An introduction to mass transfer"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.1, Page number:603"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "\n",
+ "#Variables\n",
+ "Mn2=0.7556; #mass fraction of nitrogen\n",
+ "Mo2=0.2315; #mass fraction of oxygen\n",
+ "Mar=0.01289; #mass fraction of argon gas\n",
+ "M1=28.02; #molar mass of N2,kg/kmol\n",
+ "M2=32; #molar mass of O2,kg/kmol\n",
+ "M3=39.95 ; #molar mass of Ar,kg/kmol\n",
+ "p=101325; #Atmospheric pressure in Pascal(Pa)\n",
+ "R=8314.5; #Gas constant, J/kmol-K\n",
+ "T=300; #Approximate room temperature, K\n",
+ "\n",
+ "#Calculations\n",
+ "Mair=(Mn2/M1+Mo2/M2+Mar/M3)**-1; #molar mass of air,kg/kmol\n",
+ "Xo2=Mo2*Mair/M2; #mole fraction of O2\n",
+ "PO2=Xo2*p; #partial pressure of O2,Pa\n",
+ "Co2=PO2/(R*T); #molar volume of O2,kmol/m**3\n",
+ "ao2=Co2*M2; #density of O2,kg/m**3\n",
+ "\n",
+ "\n",
+ "#Result\n",
+ "print \"Mole fraction of O2 is :\",round(Xo2,4),\"\\n\"\n",
+ "print \"Partial pressure of O2 is :\",round(PO2,4),\"\\n\"\n",
+ "print \"Molar volume of O2 is :\",round(Co2,4),\" kmol/m^3\\n\"\n",
+ "print \"Density of O2 is :\",round(ao2,4),\" kg/m^3\\n\"\n",
+ " #end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mole fraction of O2 is : 0.2095 \n",
+ "\n",
+ "Partial pressure of O2 is : 21232.5938 \n",
+ "\n",
+ "Molar volume of O2 is : 0.0085 kmol/m^3\n",
+ "\n",
+ "Density of O2 is : 0.2724 kg/m^3\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.2, Page number: 606"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "\n",
+ "#Variables\n",
+ "r=0.00241; #rate of consumption of carbon,kg/(m**2*s)\n",
+ "Mo2=0.2; #concentration of oxygen at surface s\n",
+ "Mco2=0.052; #concentration of CO2 at surface s\n",
+ "sd=0.29; #density of surface s,kg/m**3\n",
+ "\n",
+ "#since carbon flows through a second imaginary surface u, the mass fluxes are relatedd by Ncu=-12/32*No2s=12/44*Nco2s\n",
+ "#the minus sign arises because the O2 flow is opposite the C and CO2 flows.in steady state if we apply mass conservation to the control volume between the u and s surface, wee find that the total mass flux entering the u surface equals that leaving the s surface\n",
+ "Ncu=r; #mass fluxes of carbon in u surface,kg/m**2/s\n",
+ "\n",
+ "#Calculations\n",
+ "No2s=-32/12*Ncu; #mass flux of O2 in surface s,kg/(m**2*s)\n",
+ "Nco2s=44/12*Ncu; #mass flux of CO2 in surface s,kg/(m**2*s)\n",
+ "Vo2s=No2s/(Mo2*sd); #mass average speed,m/s\n",
+ "Vco2s=Nco2s/(sd); #mass average speed,m/s\n",
+ "Vs=(Nco2s+No2s)/sd; #effective mass average speed,m/s\n",
+ "j1=sd*Mo2*(Vo2s-Vs); #diffusional mass flux,kg/(m**2*s)\n",
+ "j2=sd*Mco2*(Vco2s-Vs); #diffusional mass flux,kg/(m**2*s)\n",
+ "#the diffusional mass fluxes are very nearly equal to the species m ss fluxes. tha is because the mass average speed is much less than species speeds.\n",
+ "\n",
+ "N1 = Ncu/12; #mole flux of carbon through the surface s,kmol/(m**2*s)\n",
+ "N2 = -N1; #mole flux of oxygen through the surface s,kmol/(m**2*s)\n",
+ "\n",
+ "#Result\n",
+ "print \"Mass flux of O2 through an imaginary surface is :\",round(j1,5),\"kg/(m^2*s)\\n\"\n",
+ "print \"Mass flux of CO2 through an imaginary surface is :\",round(j2,5),\"kg/(m^2*s)\\n\"\n",
+ "\n",
+ "print \"Mole flux of Co2 through an imaginary surface is :\",round(N1,5),\"kmol/(m^2*s)\\n\"\n",
+ "print \"Mole flux of O2through an imaginary surface is :\",round(N2,5),\"kmol/(m^2*s)\\n\"\n",
+ "print \"The two diffusional mole fluxes sum to zero themselves because ther is no convective mole flux for other species to diffuse against. the reader may find the velocity of the interface.that calculation shows the interface to be receding so slowly that the velocities are equal to those that would be seen by a stationary observer.\"\n",
+ " #end\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mass flux of O2 through an imaginary surface is : -0.00691 kg/(m^2*s)\n",
+ "\n",
+ "Mass flux of CO2 through an imaginary surface is : 0.00033 kg/(m^2*s)\n",
+ "\n",
+ "Mole flux of Co2 through an imaginary surface is : 0.0002 kmol/(m^2*s)\n",
+ "\n",
+ "Mole flux of O2through an imaginary surface is : -0.0002 kmol/(m^2*s)\n",
+ "\n",
+ "The two diffusional mole fluxes sum to zero themselves because ther is no convective mole flux for other species to diffuse against. the reader may find the velocity of the interface.that calculation shows the interface to be receding so slowly that the velocities are equal to those that would be seen by a stationary observer.\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.3, Page number: 617"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "\n",
+ "#Variables\n",
+ "T1=276; #temp.of air,K\n",
+ "aa=3.711; #lennard jones constant or collision diameter,A\n",
+ "ab=2.827; #lennard jones constant or collision diameter,A\n",
+ "b1=78.6; #lennard jones constant,K\n",
+ "b2=59.7; #lennard jones constant,K\n",
+ "Ma=28.97; #Molecular mass of air, kg/kmol\n",
+ "Mh=2.016; #Molecular mass of hydrogen, kg/kmol\n",
+ "\n",
+ "#Calculations\n",
+ "a=(aa+ab)/2; #effective molecular diameter for collisions of hydrogen and air,m\n",
+ "b=math.sqrt(b1*b2); #effective potential well depth,K\n",
+ "c=T1/b; \n",
+ "\n",
+ "d=0.8822; #potential well function, from table 11.3\n",
+ "Dab=(1.8583*math.pow(10,-7))*math.pow(T1,1.5)/(math.pow(a,2)*d)*math.sqrt(1/Mh+1/Ma); #diffusion coefficient of hydrogen in air,m**2/s\n",
+ "\n",
+ "\n",
+ "#Result\n",
+ "print \"Diffusion coefficient of hydrogen in air is :\",round(Dab,6),\"m^2/s an experimental value from table is 6.34*10^-5 m^2/s,so the prediction is high by 5 percent.\\n\"\n",
+ " #end\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Diffusion coefficient of hydrogen in air is : 6.6e-05 m^2/s an experimental value from table is 6.34*10^-5 m^2/s,so the prediction is high by 5 percent.\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.4, Page number: 625"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "from numpy import array\n",
+ "\n",
+ "#Variables\n",
+ "T1=373.15; #temp.of tea,K\n",
+ "XN2=0.7808; #mole fraction of nitrogen\n",
+ "XO2=0.2095; #mole fraction of oxygen\n",
+ "Xar=0.0093; #mole fraction of\n",
+ "Cp=1006 #mixture diffusivity,j/(kg*K)\n",
+ "\n",
+ "#Calculations\n",
+ "a=array(([3.798, 3.467, 3.542])); #collisin diameter,m\n",
+ "b=array(([71.4, 106.7, 93.3])); #lennard jones constant,K\n",
+ "M=array(([28.02, 32, 39.95])); #molar masses,kg/kmol\n",
+ "c=array(([0.9599, 1.057, 1.021])); #potential well function\n",
+ "d=array(([1.8*10**-5, 2.059*10**-5, 2.281*10**-5])); #calculated viscosity,kg/(m*s)\n",
+ "e=array(([1.8*10**-5, 2.07*10**-5, 2.29*10**-5])); # theoritical viscosity,kg/(m*s)\n",
+ "f=array(([0.0260, 0.02615, 0.01787])); #theoritical thermal conducitvity,W/(m*K)\n",
+ "\n",
+ "u=2.6693*10**-6*(M*T1)**0.5/((a**2*c)); #viscosity,kg/(m*s)\n",
+ "k=0.083228/((a**2*c*(T1/M**0.5))) #thermal conductivity,W/(m*s)\n",
+ "umc = XN2*u.item(0)/0.9978+XO2*u.item(1)/1.008+Xar*u.item(2)/0.9435 ; #calculated mixture viscosity,kg/(m*s)\n",
+ "umc1=1.857*10**-5;\n",
+ "\n",
+ "umd=XN2*e.item(0)/0.9978+XO2*e.item(1)/1.008+e.item(2)*Xar/0.9435; #theoritical mixture viscosity,kg/(m*s)\n",
+ "kmc=XN2*k.item(0)/0.9978+XO2*k.item(1)/1.008+Xar*k.item(2)/0.9435; #calculated thermal conducitvity,W/(m*K)\n",
+ "kmc1=0.02623;\n",
+ "kmd=XN2*f.item(0)/0.9978+XO2*f.item(1)/1.008+Xar*f.item(2)/0.9435; #theoritical thermal conductivity, W/(m*K)\n",
+ "pr=umd*Cp/kmd; #prandtl no.\n",
+ "\n",
+ "#Result\n",
+ "print \"Theoritical mixture viscosity is :\",round(umc1,6),\"kg/(m*s)\\n\"\n",
+ "print \"Calculated mixture viscosity is :\",round(umd,6),\"kg/(m*s)\\n\"\n",
+ "print \"Theoritical thermal conducitvity is :\",round(kmc1,4),\" W/(m*K)\\n\"\n",
+ "print \"Calculated thermal conducitvity is :\",round(kmd,4),\"W/(m*K)\\n\" \n",
+ "print \"Prandtl no. is :\",round(pr,4),\"\\n\"\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoritical mixture viscosity is : 1.9e-05 kg/(m*s)\n",
+ "\n",
+ "Calculated mixture viscosity is : 1.9e-05 kg/(m*s)\n",
+ "\n",
+ "Theoritical thermal conducitvity is : 0.0262 W/(m*K)\n",
+ "\n",
+ "Calculated thermal conducitvity is : 0.026 W/(m*K)\n",
+ "\n",
+ "Prandtl no. is : 0.7214 \n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.5, Page number: 632"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "from numpy import array\n",
+ "import matplotlib.pyplot as plt\n",
+ "%matplotlib inline\n",
+ "\n",
+ "#Variables\n",
+ "Patm=101.325;\t\t\t#Atmospheric pressure in kPa.\n",
+ "Mh20=18.02;\t\t\t\t#Molecular mass of H20 in kg/kmol.\n",
+ "Mair=28.96;\t\t\t\t#Molecular mass of air in kg/kmol.\n",
+ "Psat =array(([0.6113, 1.2276, 2.3385, 4.2461, 7.3837, 12.35, 19.941, 31.188, 47.39, 70.139, 101.325]));\t\t#Saturated pressure of watrer in kPa \n",
+ "T=array(([0.01, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100]));\t\t#Temperature of air in in degree C\n",
+ "#Calculations\n",
+ "xw=Psat/Patm;\t\t\t\t\n",
+ "\n",
+ "mw=(xw*Mh20)/(xw*Mh20+(1-xw)*Mair);\t\t#Mass fraction of water vapour.\n",
+ "#Result\n",
+ "plt.plot(T,mw);\n",
+ "plt.xlabel(\"Temperature(Degree C)\")\n",
+ "plt.ylabel(\"Mass fraction of water vapour\");\n",
+ "plt.show()\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f4109404550>"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.6, Page number: 634"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "\n",
+ "#Variables\n",
+ "T1=263.15; #temp.of ice,K\n",
+ "p=101.325; #Atmospheric pressure, KPa\n",
+ "Molw=18.02; #Molecular mass of water vapour, g/mol\n",
+ "Mola=28.96; #Molecular mass of air, g/mol\n",
+ "\n",
+ "#Calculations\n",
+ "Pv=math.exp(21.99-6141/(T1)); #vapor pressure,KPa\n",
+ "xw=Pv/p; #mole fraction of water\n",
+ "mw=xw*Molw/(xw*Molw+(1-xw)*Mola); #mass fraction\n",
+ "\n",
+ "#Result\n",
+ "print \"Mass fraction of watervapor above the surface of ice is :\",round(mw,5),\"\\n\"\n",
+ "#end\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mass fraction of watervapor above the surface of ice is : 0.0016 \n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 26
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.10, Page number:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "\n",
+ "#Variables\n",
+ "T1=303; # isothermal temp.,K\n",
+ "v=5; #air speed,m/s\n",
+ "l=0.05; #length of naphthalene model that is flat, m\n",
+ "Mnap=128.2; #molar mass of naphthalene,kg/kmol\n",
+ "nu=1.867*10**-5; #Dynamic viscocity, m^2/s\n",
+ "\n",
+ "#Calculations\n",
+ "D=0.86*(10**-5); #diffusion coefficient of naphthalene in air,m/s\n",
+ "\n",
+ "Pv=10**(11.45-3729.3/T1)*133.31; #vapor pressure of napthalene, Pa\n",
+ "xn=Pv/101325; #mole fraction of naphthalene\n",
+ "mn=xn*Mnap/(xn*Mnap+(1-xn)*28.96); #mass fraction of naphthalene\n",
+ "mnp=0; #mass fraction of naphthalene in free stream is 0\n",
+ "\n",
+ "Rel=v*l/nu; #reynolds no.\n",
+ "Sc=nu/D; #schimidt no.\n",
+ "Nul=0.664*math.sqrt(Rel)*(Sc**(1/3)); #mass transfer nusselt no.\n",
+ "Gmn=D*Nul*1.166/l; #gas phase mass transfer coefficient,kg/(m**2*s)\n",
+ "n=Gmn*(mn-mnp); #average mass flux,kg/(m**2*s)\n",
+ "n1=n*1000*3600;# average mass flux, g/m**2.h\n",
+ "\n",
+ "#Result\n",
+ "print \"Average rate of loss of naphthalene from a part of model is :\",round(n,7),\"kg/(m^2*s) or \",round(n1),\"g/(m^2*h)\\n\"\n",
+ "print \"Naphthalene sublimatin can be used to infer heat transfer coefficient by measuring the loss of naphthalene from a model over some length of time.since the schimidt no. of naphthalene is not generally equal to prandtl no. under the conditions of interest, some assumption about the dependence of nusselt no. on the prandtl no. must usually be introduced.\\n\"\n",
+ " #end\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Average rate of loss of naphthalene from a part of model is : 1.61e-05 kg/(m^2*s) or 58.0 g/(m^2*h)\n",
+ "\n",
+ "Naphthalene sublimatin can be used to infer heat transfer coefficient by measuring the loss of naphthalene from a model over some length of time.since the schimidt no. of naphthalene is not generally equal to prandtl no. under the conditions of interest, some assumption about the dependence of nusselt no. on the prandtl no. must usually be introduced.\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.11, Page number:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "\n",
+ "#Variables\n",
+ "T1=300; #temp. of helium-water tube,K\n",
+ "h=0.4; #height of vertical wall,m\n",
+ "m=0.087*10**-3; #flow rate of helium,kg/(m**2*s)\n",
+ "#this is a uniform flux natural convection problem.\n",
+ "Mhes=0.01; # assuming the value of mass fraction of helium at the wall to be 0.01\n",
+ "Mhef=Mhes/2; #film composition\n",
+ "af=1.141; #film density,kg/m**3\n",
+ "wd=1.107; #wall density,kg/m**3\n",
+ "Dha=7.119*10**-5; #diffusion coefficient,m**2/s\n",
+ "u=1.857*10**-5; #film viscosity at 300K,kg/(m*s)\n",
+ "aa=1.177; #air density,kg/m**3\n",
+ "g=9.8; #Gravity constant, m/s**2\n",
+ "#Calculations\n",
+ "Sc=(u/af)/Dha; #schimidt no.\n",
+ "Ra1=g*(aa-wd)*m*h**4/(u*af*Dha**2*Mhes); #Rayleigh no.\n",
+ "Nu=6/5*(Ra1*Sc/(4+9*math.sqrt(Sc)+10*Sc))**(1/5); #approximate nusselt no.\n",
+ "s=m*h/(af*Dha*Nu); #average concentration of helium at the wall\n",
+ "#thus we have obtained an average wall concentration 14 oercent higher than our initial guess of Mhes.we repeat this calclations with revised values of densities to obtain Mhes = 0.01142\n",
+ "\n",
+ "\n",
+ "#Result\n",
+ "print \"Average conentration of helium at the wall is \",round(s,5),\",since the result is within 0.5 percent of our second guess, a third iteration is not needed\"\n",
+ " #end\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Average conentration of helium at the wall is 0.01136 ,since the result is within 0.5 percent of our second guess, a third iteration is not needed\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.14, Page number:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "\n",
+ "#Variables\n",
+ "T1=325; #temp. of helium-water tube,K\n",
+ "l=0.2; #length of tube,m\n",
+ "x=0.01; # mole fraction of water\n",
+ "R=8314.472; #gas constant,J/(kmol*K)\n",
+ "Mw=18.02;#Molecular mass of water, g/mol\n",
+ "#the vapor pressure of the liquid water is approximately the saturation pressure at the water temp.\n",
+ "\n",
+ "#Calculations\n",
+ "p=1.341*10000 ; #vapor pressure using steam table,Pa\n",
+ "x1=p/101325; #mole fraction of saturated water\n",
+ "c=101325/(R*T1); #mole concentration in tube,kmol/m**3\n",
+ "D12=1.067*math.pow(10,-4); #diffusivity ofwater with respect to helium,m**2/s \n",
+ "Nw=c*D12*math.log(1+(x-x1)/(x1-1))/l ; #molar evaporation rate,kmol/(m**2*s)\n",
+ "nw=Nw*Mw; # mass evaporation rate,kg/(m**2*s)\n",
+ "\n",
+ "#S=1+(x1-1)*math.exp(Nw*y/(c*D12)) conentration distribution of water-vapor\n",
+ "#Result\n",
+ "print \"Conentration distribution of water-vapor is : x1(y)=1-0.8677*exp(0.6593*y) where y is expressed in meters.\\n\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Conentration distribution of water-vapor is : x1(y)=1-0.8677*exp(0.6593*y) where y is expressed in meters.\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.15, Page number:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "\n",
+ "#Variables\n",
+ "T1=1473; #suraface temp.of hot water,K\n",
+ "x=0.05; #mass fraction of water\n",
+ "Gm=0.017; #average mass transfer coefficient,kg/(m**2*s)\n",
+ "A=0.04; #suraface area of pan,m**2\n",
+ "\n",
+ " #only water vapour passes through the liquid surface, since air is not strongly absorbed into water under normal conditions.\n",
+ "#Calculations\n",
+ "p=38.58*1000; #saturation pressure of water,kPa\n",
+ "Xwater=p/101325; #mole fraction of saturated water\n",
+ "Mwater=Xwater*18.02/(Xwater*18.02+(1-Xwater)*28.96); #mass fraction of saturated water\n",
+ "\n",
+ "B=(x-Mwater)/(Mwater-1); #mass transfer driving force\n",
+ "m=Gm*B*A; #evaporation rate,kg/s\n",
+ "\n",
+ "#Result\n",
+ "print \"Evaporation rate is:\",round(m,6),\" kg/s\"\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Evaporation rate is: 0.000213 kg/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 23
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.16, Page number:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "\n",
+ "#Variables\n",
+ "T1=298; #temp.of air,K\n",
+ "T2=323.15; #film temp.,K\n",
+ "x=0.05; #mass fraction of water at 75 C\n",
+ "Gm=0.017; #average mass transfer coefficient,kg/(m**2*s)\n",
+ "A=0.04; #suraface area of pan,m**2\n",
+ "l=0.2; #length of pan in flow direction,m\n",
+ "v=5; #air speed,m/s\n",
+ "m=(x+0.277)/2; #film composition of water at 50 C\n",
+ "Mf=26.34; #mixture molecular weight,kg/kmol\n",
+ "p=101325; #Atmospheric pressure, Pa\n",
+ "R=8314.5; #Gas constant, J/kmol-K\n",
+ "Uf=1.75*math.pow(10,-5); #film viscosity,kg/(m*s)\n",
+ "B=0.314; #mass transfer driving force\n",
+ "D=2.96*math.pow(10,-5); #diffusivity of water in air,m**2/s\n",
+ "df=0.993; #Density of ideal air, kg/m**#\n",
+ "\n",
+ "#Calculations\n",
+ "af=p*Mf/(R*T2); \t #film density from ideal gas law,kg/m**3\n",
+ "Vf=Uf/af; #kinematic viscosity,m**2/s\n",
+ "Rel=v*l/Vf; #reynolds no. comes out to be 56,800 so the flow is laminar.\n",
+ "Sc=Vf/D; #scimidt no.\n",
+ "Nu=0.664*math.sqrt(Rel)*math.pow(Sc,1/3); #nussselt no.\n",
+ "Gmw1=Nu*(D*df/l); #appropriate value of mass transfer gas phase coeffficient of water in air,kg/(m**2*s)\n",
+ "Gmw=Gmw1*(math.log(1+B)/B); \t #mass transfer gas phase coeffficient of water in air,kg/(m**2*s)\n",
+ "\n",
+ "#Results\n",
+ "print \"Mass transfer gas phase coeffficient of water in air is :\",round(Gmw,4),\"kg/(m^2*s)\\nIn this caes, the blowing factor is 0.870. Thus the mild blowing has reduced the mass transfer coefficient by about 13 percent\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0.01955648559 133.069905487\n",
+ "Mass transfer gas phase coeffficient of water in air is : 0.017 kg/(m^2*s)\n",
+ "In this caes, the blowing factor is 0.870. Thus the mild blowing has reduced the mass transfer coefficient by about 13 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 28
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/A_Heat_Transfer_Text_Book/Chapter1.ipynb b/A_Heat_Transfer_Text_Book/Chapter1.ipynb
index 9deb4499..dd1cacc1 100755
--- a/A_Heat_Transfer_Text_Book/Chapter1.ipynb
+++ b/A_Heat_Transfer_Text_Book/Chapter1.ipynb
@@ -1,332 +1,334 @@
-{
- "metadata": {
- "name": ""
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "heading",
- "level": 1,
- "metadata": {},
- "source": [
- "Chapter 1 - \"Introduction\""
- ]
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 1.1, Page number: 13"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "import math\n",
- "\n",
- "#Variables\n",
- "k=35; #Thermal Conductivity, [W/m*K]\n",
- "T1=110 # Temperature of front[C]\n",
- "T2=50; # Temperature of back,[C]\n",
- "A=0.4 #area of slab,[m**2]\n",
- "x=0.03; #Thickness of slab,[m]\n",
- "\n",
- "#Calculations\n",
- "q=-k*(T2-T1)/(1000*x); #formula for heat flux[KW/m^2]\n",
- "Q=q*A; #formula for heat transfer rate[KW]\n",
- "\n",
- "#Results\n",
- "print \"Heat flux is:\",q,\"KW/m^2\\n\"\n",
- "print \"Heat transfer rate is:\",Q,\"KW \\n\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Heat flux is: 70.0 KW/m^2\n",
- "\n",
- "Heat transfer rate is: 28.0 KW \n",
- "\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 1.2, Page number: 16"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "import math\n",
- "from sympy import solve,symbols\n",
- "\n",
- "#Variables\n",
- "x=symbols('x');\n",
- "k1=372; # Thermal Conductivity of slab,W/m*K\n",
- "x1=0.003; # Thickness of slab,m\n",
- "x2=0.002 # Thickness of steel,m\n",
- "k2=17; # Thermal Conductivity of steel,W/m*K\n",
- "T1=400; # Temperature on one side,C\n",
- "T2=100 #Temperature on other side,C\n",
- "\n",
- "#Calculations\n",
- "Tcu=solve(x+2*x*(k1/x1)*(x2/k2)-(T1-T2),x);\n",
- "#q=k1*(Tcu/x1)=k2*(Tss/x2);\n",
- "Tss = Tcu[0]*(k1/x1)*(x2/k2); # formula for temperature gradient in steel side\n",
- "Tcul=T1-Tss;\n",
- "Tcur=T2+Tss;\n",
- "q=k2*Tss/(1000*x2); # formula for heat conducted, kW\\m^2\n",
- "\n",
- "#Results\n",
- "print \"Temperature on left copper side is :\",round(Tcul,3),\"C\\n\"\n",
- "print \"Temperature on right copper side is :\",round(Tcur,3),\"C\\n\"\n",
- "print \"Heat conducted through the wall is :\",round(q,3),\"kW\\m^2\\n\"\n",
- "print \"Our initial approximation was accurate within a few percent.\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Temperature on left copper side is : 254.971 C\n",
- "\n",
- "Temperature on right copper side is : 245.029 C\n",
- "\n",
- "Heat conducted through the wall is : 1232.749 kW\\m^2\n",
- "\n",
- "Our initial approximation was accurate within a few percent.\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 1.3, Page number: 22"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "import math\n",
- "\n",
- "#Variables\n",
- "q1=6000; #Heat flux, W*m**-2\n",
- "T1=120; #Heater Temperature, C\n",
- "T2=70; #final Temperature of Heater, C\n",
- "q2=2000; #final heat flux, W*m**-2\n",
- "\n",
- "#Calculations\n",
- "h=q1/(T1-T2) #formula for average heat transfer cofficient\n",
- "Tnew=T2+q2/h; #formula for new Heater temperature, C\n",
- "\n",
- "#Results\n",
- "print \"Average Heat transfer coefficient is:\",h,\"W/(m^2*K)\\n\"\n",
- "print \"New Heater Temperature is:\",round(Tnew,3),\"C\\n\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Average Heat transfer coefficient is: 120.0 W/(m^2*K)\n",
- "\n",
- "New Heater Temperature is: 86.667 C\n",
- "\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 1.4, Page number: 25"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "import math\n",
- "from numpy import array\n",
- "from numpy import linspace\n",
- "import matplotlib.pyplot as plt\n",
- "from pylab import *\n",
- "%matplotlib inline\n",
- "\n",
- "#Variables\n",
- "h=250; #Heat Transfer Coefficient, W/(m**2*K)\n",
- "k=45; #Thermal Conductivity, W/(m*K)\n",
- "c=180; #Heat Capacity, J/(kg*K)\n",
- "a=9300; #density, kg/m**3\n",
- "T1=200; #temperature, C\n",
- "D=0.001; #diameter of bead, m\n",
- "t1=linspace(0,5,50); #defining time interval of 0.1 seconds\n",
- "T=linspace(0,5,50);\n",
- "i=0;\n",
- "\n",
- "#Calculations\n",
- "while i<50:\n",
- " T[i]=T1-c*math.exp(-t1[i]/((a*c*D)/(6*h))); #Calculating temperature at each time in degree C\n",
- " i=i+1;\n",
- "\n",
- "plt.plot(t1,T);\n",
- "plt.xlabel(\"Time(in sec)\");\n",
- "plt.ylabel(\"Temperature(in degree C)\");\n",
- "plt.title(\"Thermocouple response to a hot gas flow\");\n",
- "plt.show();\n",
- "\n",
- "Bi = h*(D/2)/k; #biot no.\n",
- "\n",
- "#Results\n",
- "print \"The value of Biot no for this thermocouple is\",round(Bi,5);\n",
- "print \"Bi is <0.1 and hence the thermocouple could be considered as a lumped heat capacity system and the assumption taken is valid.\\n\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "ename": "ImportError",
- "evalue": "DLL load failed: %1 is not a valid Win32 application.",
- "output_type": "pyerr",
- "traceback": [
- "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[1;31mImportError\u001b[0m Traceback (most recent call last)",
- "\u001b[1;32m<ipython-input-4-48a98dda89ad>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0m__future__\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mdivision\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mmath\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[1;32mfrom\u001b[0m \u001b[0mnumpy\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0marray\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0mnumpy\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mlinspace\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mmatplotlib\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mpyplot\u001b[0m \u001b[1;32mas\u001b[0m \u001b[0mplt\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
- "\u001b[1;32mC:\\Users\\jaidev\\Anaconda\\lib\\site-packages\\numpy\\__init__.py\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 151\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mloader\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0mpackages\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0moptions\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 152\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 153\u001b[1;33m \u001b[1;32mfrom\u001b[0m \u001b[1;33m.\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0madd_newdocs\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 154\u001b[0m \u001b[0m__all__\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;33m[\u001b[0m\u001b[1;34m'add_newdocs'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m'ModuleDeprecationWarning'\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 155\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
- "\u001b[1;32mC:\\Users\\jaidev\\Anaconda\\lib\\site-packages\\numpy\\add_newdocs.py\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 11\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0m__future__\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mdivision\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mabsolute_import\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mprint_function\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 12\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 13\u001b[1;33m \u001b[1;32mfrom\u001b[0m \u001b[0mnumpy\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mlib\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0madd_newdoc\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 14\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 15\u001b[0m \u001b[1;31m###############################################################################\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
- "\u001b[1;32mC:\\Users\\jaidev\\Anaconda\\lib\\site-packages\\numpy\\lib\\__init__.py\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 6\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0mnumpy\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mversion\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mversion\u001b[0m \u001b[1;32mas\u001b[0m \u001b[0m__version__\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 7\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 8\u001b[1;33m \u001b[1;32mfrom\u001b[0m \u001b[1;33m.\u001b[0m\u001b[0mtype_check\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[1;33m*\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 9\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[1;33m.\u001b[0m\u001b[0mindex_tricks\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[1;33m*\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 10\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[1;33m.\u001b[0m\u001b[0mfunction_base\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[1;33m*\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
- "\u001b[1;32mC:\\Users\\jaidev\\Anaconda\\lib\\site-packages\\numpy\\lib\\type_check.py\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 9\u001b[0m 'common_type']\n\u001b[0;32m 10\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 11\u001b[1;33m \u001b[1;32mimport\u001b[0m \u001b[0mnumpy\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcore\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mnumeric\u001b[0m \u001b[1;32mas\u001b[0m \u001b[0m_nx\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 12\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0mnumpy\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcore\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mnumeric\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0masarray\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0masanyarray\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0marray\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0misnan\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0;31m \u001b[0m\u001b[0;31m\\\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 13\u001b[0m \u001b[0mobj2sctype\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mzeros\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
- "\u001b[1;32mC:\\Users\\jaidev\\Anaconda\\lib\\site-packages\\numpy\\core\\__init__.py\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0mnumpy\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mversion\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mversion\u001b[0m \u001b[1;32mas\u001b[0m \u001b[0m__version__\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 6\u001b[1;33m \u001b[1;32mfrom\u001b[0m \u001b[1;33m.\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mmultiarray\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 7\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[1;33m.\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mumath\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 8\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[1;33m.\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0m_internal\u001b[0m \u001b[1;31m# for freeze programs\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
- "\u001b[1;31mImportError\u001b[0m: DLL load failed: %1 is not a valid Win32 application."
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 1.5, Page number: 32"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "import math\n",
- "from sympy import solve,symbols\n",
- "\n",
- "#Variables\n",
- "x=symbols('x');\n",
- "T1=293; #Temperature of air around thermocouple, K\n",
- "T2=373; #Wall temperature, K\n",
- "h=75; #Average Heat Transfer Coefficient, W/(m**2*K)\n",
- "s=5.67*10**-8; #stefan Boltzman constant, W/(m**2*K**4)\n",
- "\n",
- "#Calculations\n",
- "x=solve((h*(x-T1)+s*(x**4-T2**4)),x);\t #Calculating Thermocouple Temperature, K\n",
- "y=x[1]-273;\t\t\t\t #Thermocouple Temperature, C\n",
- "\n",
- "#Results\n",
- "print \"Thermocouple Temperature is :\",round(y,3),\"C\\n\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Thermocouple Temperature is : 28.395 C\n",
- "\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 1.6, Page number: 34"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "import math\n",
- "from sympy import solve,symbols\n",
- "\n",
- "#Variables\n",
- "x=symbols('x');\n",
- "e=0.4; #emissivity\n",
- "T1=293; #Temperature of air around Thermocouple, K\n",
- "T2=273; #wall Temperature, K\n",
- "h=75; #Average Heat Transfer Coefficient, W/(m**2*K)\n",
- "s=5.6704*10**-8; #stefan Boltzman constant, W/(m**2*K**4)\n",
- "\n",
- "#Calculations\n",
- "z=solve(((s*e*((373)**4 - (x)**4)) - h*(x-293)),x);\t#Calculating Thermocouple Temperature, K\n",
- "y=z[0]-273;\t\t\t\t\t #Thermocouple Temperature, C\n",
- "\n",
- "'''NOTE: Equation written is absolutely correct and solving this equation\n",
- " should give real result as: 296.112 i.e. 23.112 C, but somehow python is giving wrong result.'''\n",
- "\n",
- "#Results\n",
- "print \"Thermocouple Temperature is :\",round(y,1),\"C \\n\"\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Thermocouple Temperature is : 25.9 C \n",
- "\n"
- ]
- }
- ],
- "prompt_number": 3
- }
- ],
- "metadata": {}
- }
- ]
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 1 - \"Introduction\""
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.1, Page number: 13"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "\n",
+ "#Variables\n",
+ "k=35; #Thermal Conductivity, [W/m*K]\n",
+ "T1=110 # Temperature of front[C]\n",
+ "T2=50; # Temperature of back,[C]\n",
+ "A=0.4 #area of slab,[m**2]\n",
+ "x=0.03; #Thickness of slab,[m]\n",
+ "\n",
+ "#Calculations\n",
+ "q=-k*(T2-T1)/(1000*x); #formula for heat flux[KW/m^2]\n",
+ "Q=q*A; #formula for heat transfer rate[KW]\n",
+ "\n",
+ "#Results\n",
+ "print \"Heat flux is:\",q,\"KW/m^2\\n\"\n",
+ "print \"Heat transfer rate is:\",Q,\"KW \\n\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat flux is: 70.0 KW/m^2\n",
+ "\n",
+ "Heat transfer rate is: 28.0 KW \n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.2, Page number: 16"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "from sympy import solve,symbols\n",
+ "\n",
+ "#Variables\n",
+ "x=symbols('x');\n",
+ "k1=372; # Thermal Conductivity of slab,W/m*K\n",
+ "x1=0.003; # Thickness of slab,m\n",
+ "x2=0.002 # Thickness of steel,m\n",
+ "k2=17; # Thermal Conductivity of steel,W/m*K\n",
+ "T1=400; # Temperature on one side,C\n",
+ "T2=100 #Temperature on other side,C\n",
+ "\n",
+ "#Calculations\n",
+ "Tcu=solve(x+2*x*(k1/x1)*(x2/k2)-(T1-T2),x);\n",
+ "#q=k1*(Tcu/x1)=k2*(Tss/x2);\n",
+ "Tss = Tcu[0]*(k1/x1)*(x2/k2); # formula for temperature gradient in steel side\n",
+ "Tcul=T1-Tss;\n",
+ "Tcur=T2+Tss;\n",
+ "q=k2*Tss/(1000*x2); # formula for heat conducted, kW\\m^2\n",
+ "\n",
+ "#Results\n",
+ "print \"Temperature on left copper side is :\",round(Tcul,3),\"C\\n\"\n",
+ "print \"Temperature on right copper side is :\",round(Tcur,3),\"C\\n\"\n",
+ "print \"Heat conducted through the wall is :\",round(q,3),\"kW\\m^2\\n\"\n",
+ "print \"Our initial approximation was accurate within a few percent.\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Temperature on left copper side is : 254.971 C\n",
+ "\n",
+ "Temperature on right copper side is : 245.029 C\n",
+ "\n",
+ "Heat conducted through the wall is : 1232.749 kW\\m^2\n",
+ "\n",
+ "Our initial approximation was accurate within a few percent.\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.3, Page number: 22"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "\n",
+ "#Variables\n",
+ "q1=6000; #Heat flux, W*m**-2\n",
+ "T1=120; #Heater Temperature, C\n",
+ "T2=70; #final Temperature of Heater, C\n",
+ "q2=2000; #final heat flux, W*m**-2\n",
+ "\n",
+ "#Calculations\n",
+ "h=q1/(T1-T2) #formula for average heat transfer cofficient\n",
+ "Tnew=T2+q2/h; #formula for new Heater temperature, C\n",
+ "\n",
+ "#Results\n",
+ "print \"Average Heat transfer coefficient is:\",h,\"W/(m^2*K)\\n\"\n",
+ "print \"New Heater Temperature is:\",round(Tnew,3),\"C\\n\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Average Heat transfer coefficient is: 120.0 W/(m^2*K)\n",
+ "\n",
+ "New Heater Temperature is: 86.667 C\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.4, Page number: 25"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "from numpy import array\n",
+ "from numpy import linspace\n",
+ "import matplotlib.pyplot as plt\n",
+ "from pylab import *\n",
+ "%matplotlib inline\n",
+ "\n",
+ "#Variables\n",
+ "h=250; #Heat Transfer Coefficient, W/(m**2*K)\n",
+ "k=45; #Thermal Conductivity, W/(m*K)\n",
+ "c=180; #Heat Capacity, J/(kg*K)\n",
+ "a=9300; #density, kg/m**3\n",
+ "T1=200; #temperature, C\n",
+ "D=0.001; #diameter of bead, m\n",
+ "t1=linspace(0,5,50); #defining time interval of 0.1 seconds\n",
+ "T=linspace(0,5,50);\n",
+ "i=0;\n",
+ "\n",
+ "#Calculations\n",
+ "while i<50:\n",
+ " T[i]=T1-c*math.exp(-t1[i]/((a*c*D)/(6*h))); #Calculating temperature at each time in degree C\n",
+ " i=i+1;\n",
+ "\n",
+ "plt.plot(t1,T);\n",
+ "plt.xlabel(\"Time(in sec)\");\n",
+ "plt.ylabel(\"Temperature(in degree C)\");\n",
+ "plt.title(\"Thermocouple response to a hot gas flow\");\n",
+ "plt.show();\n",
+ "\n",
+ "Bi = h*(D/2)/k; #biot no.\n",
+ "\n",
+ "#Results\n",
+ "print \"The value of Biot no for this thermocouple is\",round(Bi,5);\n",
+ "print \"Bi is <0.1 and hence the thermocouple could be considered as a lumped heat capacity system and the assumption taken is valid.\\n\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n9aVlLh5rAAAAAElFTkSuQmCC\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7fbd3da5b8d0>"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The value of Biot no for this thermocouple is 0.00278\n",
+ "Bi is <0.1 and hence the thermocouple could be considered as a lumped heat capacity system and the assumption taken is valid.\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.5, Page number: 32"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "from sympy import solve,symbols\n",
+ "\n",
+ "#Variables\n",
+ "x=symbols('x');\n",
+ "T1=293; #Temperature of air around thermocouple, K\n",
+ "T2=373; #Wall temperature, K\n",
+ "h=75; #Average Heat Transfer Coefficient, W/(m**2*K)\n",
+ "s=5.67*10**-8; #stefan Boltzman constant, W/(m**2*K**4)\n",
+ "\n",
+ "#Calculations\n",
+ "x=solve((h*(x-T1)+s*(x**4-T2**4)),x);\t #Calculating Thermocouple Temperature, K\n",
+ "y=x[1]-273;\t\t\t\t #Thermocouple Temperature, C\n",
+ "\n",
+ "#Results\n",
+ "print \"Thermocouple Temperature is :\",round(y,3),\"C\\n\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermocouple Temperature is : 28.395 C\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.6, Page number: 34"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "from sympy import solve,symbols\n",
+ "\n",
+ "#Variables\n",
+ "x=symbols('x');\n",
+ "e=0.4; #emissivity\n",
+ "T1=293; #Temperature of air around Thermocouple, K\n",
+ "T2=273; #wall Temperature, K\n",
+ "h=75; #Average Heat Transfer Coefficient, W/(m**2*K)\n",
+ "s=5.6704*10**-8; #stefan Boltzman constant, W/(m**2*K**4)\n",
+ "\n",
+ "#Calculations\n",
+ "z=solve(((s*e*((373)**4 - (x)**4)) - h*(x-293)),x);\t#Calculating Thermocouple Temperature, K\n",
+ "y=z[0]-273;\t\t\t\t\t #Thermocouple Temperature, C\n",
+ "\n",
+ "'''NOTE: Equation written is absolutely correct and solving this equation\n",
+ " should give real result as: 296.112 i.e. 23.112 C, but somehow python is giving wrong result.'''\n",
+ "\n",
+ "#Results\n",
+ "print \"Thermocouple Temperature is :\",round(y,1),\"C \\n\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermocouple Temperature is : 25.9 C \n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
} \ No newline at end of file
diff --git a/A_Heat_Transfer_Text_Book/Chapter11.ipynb b/A_Heat_Transfer_Text_Book/Chapter11.ipynb
index 9cd5d92a..cec52317 100755
--- a/A_Heat_Transfer_Text_Book/Chapter11.ipynb
+++ b/A_Heat_Transfer_Text_Book/Chapter11.ipynb
@@ -1,637 +1,631 @@
-{
- "metadata": {
- "name": ""
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "heading",
- "level": 1,
- "metadata": {},
- "source": [
- "Chapter 11: An introduction to mass transfer"
- ]
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 11.1, Page number:603"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "\n",
- "#Variables\n",
- "Mn2=0.7556; #mass fraction of nitrogen\n",
- "Mo2=0.2315; #mass fraction of oxygen\n",
- "Mar=0.01289; #mass fraction of argon gas\n",
- "M1=28.02; #molar mass of N2,kg/kmol\n",
- "M2=32; #molar mass of O2,kg/kmol\n",
- "M3=39.95 ; #molar mass of Ar,kg/kmol\n",
- "p=101325; #Atmospheric pressure in Pascal(Pa)\n",
- "R=8314.5; #Gas constant, J/kmol-K\n",
- "T=300; #Approximate room temperature, K\n",
- "\n",
- "#Calculations\n",
- "Mair=(Mn2/M1+Mo2/M2+Mar/M3)**-1; #molar mass of air,kg/kmol\n",
- "Xo2=Mo2*Mair/M2; #mole fraction of O2\n",
- "PO2=Xo2*p; #partial pressure of O2,Pa\n",
- "Co2=PO2/(R*T); #molar volume of O2,kmol/m**3\n",
- "ao2=Co2*M2; #density of O2,kg/m**3\n",
- "\n",
- "\n",
- "#Result\n",
- "print \"Mole fraction of O2 is :\",round(Xo2,4),\"\\n\"\n",
- "print \"Partial pressure of O2 is :\",round(PO2,4),\"\\n\"\n",
- "print \"Molar volume of O2 is :\",round(Co2,4),\" kmol/m^3\\n\"\n",
- "print \"Density of O2 is :\",round(ao2,4),\" kg/m^3\\n\"\n",
- " #end"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Mole fraction of O2 is : 0.2095 \n",
- "\n",
- "Partial pressure of O2 is : 21232.5938 \n",
- "\n",
- "Molar volume of O2 is : 0.0085 kmol/m^3\n",
- "\n",
- "Density of O2 is : 0.2724 kg/m^3\n",
- "\n"
- ]
- }
- ],
- "prompt_number": 14
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 11.2, Page number: 606"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "\n",
- "#Variables\n",
- "r=0.00241; #rate of consumption of carbon,kg/(m**2*s)\n",
- "Mo2=0.2; #concentration of oxygen at surface s\n",
- "Mco2=0.052; #concentration of CO2 at surface s\n",
- "sd=0.29; #density of surface s,kg/m**3\n",
- "\n",
- "#since carbon flows through a second imaginary surface u, the mass fluxes are relatedd by Ncu=-12/32*No2s=12/44*Nco2s\n",
- "#the minus sign arises because the O2 flow is opposite the C and CO2 flows.in steady state if we apply mass conservation to the control volume between the u and s surface, wee find that the total mass flux entering the u surface equals that leaving the s surface\n",
- "Ncu=r; #mass fluxes of carbon in u surface,kg/m**2/s\n",
- "\n",
- "#Calculations\n",
- "No2s=-32/12*Ncu; #mass flux of O2 in surface s,kg/(m**2*s)\n",
- "Nco2s=44/12*Ncu; #mass flux of CO2 in surface s,kg/(m**2*s)\n",
- "Vo2s=No2s/(Mo2*sd); #mass average speed,m/s\n",
- "Vco2s=Nco2s/(sd); #mass average speed,m/s\n",
- "Vs=(Nco2s+No2s)/sd; #effective mass average speed,m/s\n",
- "j1=sd*Mo2*(Vo2s-Vs); #diffusional mass flux,kg/(m**2*s)\n",
- "j2=sd*Mco2*(Vco2s-Vs); #diffusional mass flux,kg/(m**2*s)\n",
- "#the diffusional mass fluxes are very nearly equal to the species m ss fluxes. tha is because the mass average speed is much less than species speeds.\n",
- "\n",
- "N1 = Ncu/12; #mole flux of carbon through the surface s,kmol/(m**2*s)\n",
- "N2 = -N1; #mole flux of oxygen through the surface s,kmol/(m**2*s)\n",
- "\n",
- "#Result\n",
- "print \"Mass flux of O2 through an imaginary surface is :\",round(j1,5),\"kg/(m^2*s)\\n\"\n",
- "print \"Mass flux of CO2 through an imaginary surface is :\",round(j2,5),\"kg/(m^2*s)\\n\"\n",
- "\n",
- "print \"Mole flux of Co2 through an imaginary surface is :\",round(N1,5),\"kmol/(m^2*s)\\n\"\n",
- "print \"Mole flux of O2through an imaginary surface is :\",round(N2,5),\"kmol/(m^2*s)\\n\"\n",
- "print \"The two diffusional mole fluxes sum to zero themselves because ther is no convective mole flux for other species to diffuse against. the reader may find the velocity of the interface.that calculation shows the interface to be receding so slowly that the velocities are equal to those that would be seen by a stationary observer.\"\n",
- " #end\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Mass flux of O2 through an imaginary surface is : -0.00691 kg/(m^2*s)\n",
- "\n",
- "Mass flux of CO2 through an imaginary surface is : 0.00033 kg/(m^2*s)\n",
- "\n",
- "Mole flux of Co2 through an imaginary surface is : 0.0002 kmol/(m^2*s)\n",
- "\n",
- "Mole flux of O2through an imaginary surface is : -0.0002 kmol/(m^2*s)\n",
- "\n",
- "The two diffusional mole fluxes sum to zero themselves because ther is no convective mole flux for other species to diffuse against. the reader may find the velocity of the interface.that calculation shows the interface to be receding so slowly that the velocities are equal to those that would be seen by a stationary observer.\n"
- ]
- }
- ],
- "prompt_number": 15
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 11.3, Page number: 617"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "import math\n",
- "\n",
- "#Variables\n",
- "T1=276; #temp.of air,K\n",
- "aa=3.711; #lennard jones constant or collision diameter,A\n",
- "ab=2.827; #lennard jones constant or collision diameter,A\n",
- "b1=78.6; #lennard jones constant,K\n",
- "b2=59.7; #lennard jones constant,K\n",
- "Ma=28.97; #Molecular mass of air, kg/kmol\n",
- "Mh=2.016; #Molecular mass of hydrogen, kg/kmol\n",
- "\n",
- "#Calculations\n",
- "a=(aa+ab)/2; #effective molecular diameter for collisions of hydrogen and air,m\n",
- "b=math.sqrt(b1*b2); #effective potential well depth,K\n",
- "c=T1/b; \n",
- "\n",
- "d=0.8822; #potential well function, from table 11.3\n",
- "Dab=(1.8583*math.pow(10,-7))*math.pow(T1,1.5)/(math.pow(a,2)*d)*math.sqrt(1/Mh+1/Ma); #diffusion coefficient of hydrogen in air,m**2/s\n",
- "\n",
- "\n",
- "#Result\n",
- "print \"Diffusion coefficient of hydrogen in air is :\",round(Dab,6),\"m^2/s an experimental value from table is 6.34*10^-5 m^2/s,so the prediction is high by 5 percent.\\n\"\n",
- " #end\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Diffusion coefficient of hydrogen in air is : 6.6e-05 m^2/s an experimental value from table is 6.34*10^-5 m^2/s,so the prediction is high by 5 percent.\n",
- "\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 11.4, Page number: 625"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "import math\n",
- "from numpy import array\n",
- "\n",
- "#Variables\n",
- "T1=373.15; #temp.of tea,K\n",
- "XN2=0.7808; #mole fraction of nitrogen\n",
- "XO2=0.2095; #mole fraction of oxygen\n",
- "Xar=0.0093; #mole fraction of\n",
- "Cp=1006 #mixture diffusivity,j/(kg*K)\n",
- "\n",
- "#Calculations\n",
- "a=array(([3.798, 3.467, 3.542])); #collisin diameter,m\n",
- "b=array(([71.4, 106.7, 93.3])); #lennard jones constant,K\n",
- "M=array(([28.02, 32, 39.95])); #molar masses,kg/kmol\n",
- "c=array(([0.9599, 1.057, 1.021])); #potential well function\n",
- "d=array(([1.8*10**-5, 2.059*10**-5, 2.281*10**-5])); #calculated viscosity,kg/(m*s)\n",
- "e=array(([1.8*10**-5, 2.07*10**-5, 2.29*10**-5])); # theoritical viscosity,kg/(m*s)\n",
- "f=array(([0.0260, 0.02615, 0.01787])); #theoritical thermal conducitvity,W/(m*K)\n",
- "\n",
- "u=2.6693*10**-6*(M*T1)**0.5/((a**2*c)); #viscosity,kg/(m*s)\n",
- "k=0.083228/((a**2*c*(T1/M**0.5))) #thermal conductivity,W/(m*s)\n",
- "umc = XN2*u.item(0)/0.9978+XO2*u.item(1)/1.008+Xar*u.item(2)/0.9435 ; #calculated mixture viscosity,kg/(m*s)\n",
- "umc1=1.857*10**-5;\n",
- "\n",
- "umd=XN2*e.item(0)/0.9978+XO2*e.item(1)/1.008+e.item(2)*Xar/0.9435; #theoritical mixture viscosity,kg/(m*s)\n",
- "kmc=XN2*k.item(0)/0.9978+XO2*k.item(1)/1.008+Xar*k.item(2)/0.9435; #calculated thermal conducitvity,W/(m*K)\n",
- "kmc1=0.02623;\n",
- "kmd=XN2*f.item(0)/0.9978+XO2*f.item(1)/1.008+Xar*f.item(2)/0.9435; #theoritical thermal conductivity, W/(m*K)\n",
- "pr=umd*Cp/kmd; #prandtl no.\n",
- "\n",
- "#Result\n",
- "print \"Theoritical mixture viscosity is :\",round(umc1,6),\"kg/(m*s)\\n\"\n",
- "print \"Calculated mixture viscosity is :\",round(umd,6),\"kg/(m*s)\\n\"\n",
- "print \"Theoritical thermal conducitvity is :\",round(kmc1,4),\" W/(m*K)\\n\"\n",
- "print \"Calculated thermal conducitvity is :\",round(kmd,4),\"W/(m*K)\\n\" \n",
- "print \"Prandtl no. is :\",round(pr,4),\"\\n\"\n",
- "\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "ename": "ImportError",
- "evalue": "DLL load failed: %1 is not a valid Win32 application.",
- "output_type": "pyerr",
- "traceback": [
- "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[1;31mImportError\u001b[0m Traceback (most recent call last)",
- "\u001b[1;32m<ipython-input-1-f818c437f68e>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0m__future__\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mdivision\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mmath\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[1;32mfrom\u001b[0m \u001b[0mnumpy\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0marray\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[1;31m#Question\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;34m'''Compute the transport properties of normal air at 300 K.'''\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
- "\u001b[1;32mC:\\Users\\jaidev\\Anaconda\\lib\\site-packages\\numpy\\__init__.py\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 151\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mloader\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0mpackages\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0moptions\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 152\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 153\u001b[1;33m \u001b[1;32mfrom\u001b[0m \u001b[1;33m.\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0madd_newdocs\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 154\u001b[0m \u001b[0m__all__\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;33m[\u001b[0m\u001b[1;34m'add_newdocs'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m'ModuleDeprecationWarning'\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 155\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
- "\u001b[1;32mC:\\Users\\jaidev\\Anaconda\\lib\\site-packages\\numpy\\add_newdocs.py\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 11\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0m__future__\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mdivision\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mabsolute_import\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mprint_function\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 12\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 13\u001b[1;33m \u001b[1;32mfrom\u001b[0m \u001b[0mnumpy\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mlib\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0madd_newdoc\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 14\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 15\u001b[0m \u001b[1;31m###############################################################################\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
- "\u001b[1;32mC:\\Users\\jaidev\\Anaconda\\lib\\site-packages\\numpy\\lib\\__init__.py\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 6\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0mnumpy\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mversion\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mversion\u001b[0m \u001b[1;32mas\u001b[0m \u001b[0m__version__\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 7\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 8\u001b[1;33m \u001b[1;32mfrom\u001b[0m \u001b[1;33m.\u001b[0m\u001b[0mtype_check\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[1;33m*\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 9\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[1;33m.\u001b[0m\u001b[0mindex_tricks\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[1;33m*\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 10\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[1;33m.\u001b[0m\u001b[0mfunction_base\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[1;33m*\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
- "\u001b[1;32mC:\\Users\\jaidev\\Anaconda\\lib\\site-packages\\numpy\\lib\\type_check.py\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 9\u001b[0m 'common_type']\n\u001b[0;32m 10\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 11\u001b[1;33m \u001b[1;32mimport\u001b[0m \u001b[0mnumpy\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcore\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mnumeric\u001b[0m \u001b[1;32mas\u001b[0m \u001b[0m_nx\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 12\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0mnumpy\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcore\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mnumeric\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0masarray\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0masanyarray\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0marray\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0misnan\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0;31m \u001b[0m\u001b[0;31m\\\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 13\u001b[0m \u001b[0mobj2sctype\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mzeros\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
- "\u001b[1;32mC:\\Users\\jaidev\\Anaconda\\lib\\site-packages\\numpy\\core\\__init__.py\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0mnumpy\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mversion\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mversion\u001b[0m \u001b[1;32mas\u001b[0m \u001b[0m__version__\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 6\u001b[1;33m \u001b[1;32mfrom\u001b[0m \u001b[1;33m.\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mmultiarray\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 7\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[1;33m.\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mumath\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 8\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[1;33m.\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0m_internal\u001b[0m \u001b[1;31m# for freeze programs\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
- "\u001b[1;31mImportError\u001b[0m: DLL load failed: %1 is not a valid Win32 application."
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 11.5, Page number: 632"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "import math\n",
- "from numpy import array\n",
- "import matplotlib.pyplot as plt\n",
- "%matplotlib inline\n",
- "\n",
- "#Variables\n",
- "Patm=101.325;\t\t\t#Atmospheric pressure in kPa.\n",
- "Mh20=18.02;\t\t\t\t#Molecular mass of H20 in kg/kmol.\n",
- "Mair=28.96;\t\t\t\t#Molecular mass of air in kg/kmol.\n",
- "Psat =array(([0.6113, 1.2276, 2.3385, 4.2461, 7.3837, 12.35, 19.941, 31.188, 47.39, 70.139, 101.325]));\t\t#Saturated pressure of watrer in kPa \n",
- "T=array(([0.01, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100]));\t\t#Temperature of air in in degree C\n",
- "#Calculations\n",
- "xw=Psat/Patm;\t\t\t\t\n",
- "\n",
- "mw=(xw*Mh20)/(xw*Mh20+(1-xw)*Mair);\t\t#Mass fraction of water vapour.\n",
- "#Result\n",
- "plt.plot(T,mw);\n",
- "plt.xlabel(\"Temperature(Degree C)\")\n",
- "plt.ylabel(\"Mass fraction of water vapour\");\n",
- "plt.show()\n",
- "\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Populating the interactive namespace from numpy and matplotlib\n"
- ]
- },
- {
- "metadata": {},
- "output_type": "display_data",
- "png": "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\n",
- "text": [
- "<matplotlib.figure.Figure at 0x8a7c4e0>"
- ]
- }
- ],
- "prompt_number": 18
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 11.6, Page number: 634"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "import math\n",
- "\n",
- "#Variables\n",
- "T1=263.15; #temp.of ice,K\n",
- "p=101.325; #Atmospheric pressure, KPa\n",
- "Molw=18.02; #Molecular mass of water vapour, g/mol\n",
- "Mola=28.96; #Molecular mass of air, g/mol\n",
- "\n",
- "#Calculations\n",
- "Pv=math.exp(21.99-6141/(T1)); #vapor pressure,KPa\n",
- "xw=Pv/p; #mole fraction of water\n",
- "mw=xw*Molw/(xw*Molw+(1-xw)*Mola); #mass fraction\n",
- "\n",
- "#Result\n",
- "print \"Mass fraction of watervapor above the surface of ice is :\",round(mw,5),\"\\n\"\n",
- "#end\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Mass fraction of watervapor above the surface of ice is : 0.0016 \n",
- "\n"
- ]
- }
- ],
- "prompt_number": 26
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 11.10, Page number:"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "\n",
- "#Variables\n",
- "T1=303; # isothermal temp.,K\n",
- "v=5; #air speed,m/s\n",
- "l=0.05; #length of naphthalene model that is flat, m\n",
- "Mnap=128.2; #molar mass of naphthalene,kg/kmol\n",
- "nu=1.867*10**-5; #Dynamic viscocity, m^2/s\n",
- "\n",
- "#Calculations\n",
- "D=0.86*(10**-5); #diffusion coefficient of naphthalene in air,m/s\n",
- "\n",
- "Pv=10**(11.45-3729.3/T1)*133.31; #vapor pressure of napthalene, Pa\n",
- "xn=Pv/101325; #mole fraction of naphthalene\n",
- "mn=xn*Mnap/(xn*Mnap+(1-xn)*28.96); #mass fraction of naphthalene\n",
- "mnp=0; #mass fraction of naphthalene in free stream is 0\n",
- "\n",
- "Rel=v*l/nu; #reynolds no.\n",
- "Sc=nu/D; #schimidt no.\n",
- "Nul=0.664*math.sqrt(Rel)*(Sc**(1/3)); #mass transfer nusselt no.\n",
- "Gmn=D*Nul*1.166/l; #gas phase mass transfer coefficient,kg/(m**2*s)\n",
- "n=Gmn*(mn-mnp); #average mass flux,kg/(m**2*s)\n",
- "n1=n*1000*3600;# average mass flux, g/m**2.h\n",
- "\n",
- "#Result\n",
- "print \"Average rate of loss of naphthalene from a part of model is :\",round(n,7),\"kg/(m^2*s) or \",round(n1),\"g/(m^2*h)\\n\"\n",
- "print \"Naphthalene sublimatin can be used to infer heat transfer coefficient by measuring the loss of naphthalene from a model over some length of time.since the schimidt no. of naphthalene is not generally equal to prandtl no. under the conditions of interest, some assumption about the dependence of nusselt no. on the prandtl no. must usually be introduced.\\n\"\n",
- " #end\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Average rate of loss of naphthalene from a part of model is : 1.61e-05 kg/(m^2*s) or 58.0 g/(m^2*h)\n",
- "\n",
- "Naphthalene sublimatin can be used to infer heat transfer coefficient by measuring the loss of naphthalene from a model over some length of time.since the schimidt no. of naphthalene is not generally equal to prandtl no. under the conditions of interest, some assumption about the dependence of nusselt no. on the prandtl no. must usually be introduced.\n",
- "\n"
- ]
- }
- ],
- "prompt_number": 16
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 11.11, Page number:"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "\n",
- "#Variables\n",
- "T1=300; #temp. of helium-water tube,K\n",
- "h=0.4; #height of vertical wall,m\n",
- "m=0.087*10**-3; #flow rate of helium,kg/(m**2*s)\n",
- "#this is a uniform flux natural convection problem.\n",
- "Mhes=0.01; # assuming the value of mass fraction of helium at the wall to be 0.01\n",
- "Mhef=Mhes/2; #film composition\n",
- "af=1.141; #film density,kg/m**3\n",
- "wd=1.107; #wall density,kg/m**3\n",
- "Dha=7.119*10**-5; #diffusion coefficient,m**2/s\n",
- "u=1.857*10**-5; #film viscosity at 300K,kg/(m*s)\n",
- "aa=1.177; #air density,kg/m**3\n",
- "g=9.8; #Gravity constant, m/s**2\n",
- "#Calculations\n",
- "Sc=(u/af)/Dha; #schimidt no.\n",
- "Ra1=g*(aa-wd)*m*h**4/(u*af*Dha**2*Mhes); #Rayleigh no.\n",
- "Nu=6/5*(Ra1*Sc/(4+9*math.sqrt(Sc)+10*Sc))**(1/5); #approximate nusselt no.\n",
- "s=m*h/(af*Dha*Nu); #average concentration of helium at the wall\n",
- "#thus we have obtained an average wall concentration 14 oercent higher than our initial guess of Mhes.we repeat this calclations with revised values of densities to obtain Mhes = 0.01142\n",
- "\n",
- "\n",
- "#Result\n",
- "print \"Average conentration of helium at the wall is \",round(s,5),\",since the result is within 0.5 percent of our second guess, a third iteration is not needed\"\n",
- " #end\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Average conentration of helium at the wall is 0.01136 ,since the result is within 0.5 percent of our second guess, a third iteration is not needed\n"
- ]
- }
- ],
- "prompt_number": 17
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 11.14, Page number:"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "import math\n",
- "\n",
- "#Variables\n",
- "T1=325; #temp. of helium-water tube,K\n",
- "l=0.2; #length of tube,m\n",
- "x=0.01; # mole fraction of water\n",
- "R=8314.472; #gas constant,J/(kmol*K)\n",
- "Mw=18.02;#Molecular mass of water, g/mol\n",
- "#the vapor pressure of the liquid water is approximately the saturation pressure at the water temp.\n",
- "\n",
- "#Calculations\n",
- "p=1.341*10000 ; #vapor pressure using steam table,Pa\n",
- "x1=p/101325; #mole fraction of saturated water\n",
- "c=101325/(R*T1); #mole concentration in tube,kmol/m**3\n",
- "D12=1.067*math.pow(10,-4); #diffusivity ofwater with respect to helium,m**2/s \n",
- "Nw=c*D12*math.log(1+(x-x1)/(x1-1))/l ; #molar evaporation rate,kmol/(m**2*s)\n",
- "nw=Nw*Mw; # mass evaporation rate,kg/(m**2*s)\n",
- "\n",
- "#S=1+(x1-1)*math.exp(Nw*y/(c*D12)) conentration distribution of water-vapor\n",
- "#Result\n",
- "print \"Conentration distribution of water-vapor is : x1(y)=1-0.8677*exp(0.6593*y) where y is expressed in meters.\\n\"\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Conentration distribution of water-vapor is : x1(y)=1-0.8677*exp(0.6593*y) where y is expressed in meters.\n",
- "\n"
- ]
- }
- ],
- "prompt_number": 18
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 11.15, Page number:"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "\n",
- "#Variables\n",
- "T1=1473; #suraface temp.of hot water,K\n",
- "x=0.05; #mass fraction of water\n",
- "Gm=0.017; #average mass transfer coefficient,kg/(m**2*s)\n",
- "A=0.04; #suraface area of pan,m**2\n",
- "\n",
- " #only water vapour passes through the liquid surface, since air is not strongly absorbed into water under normal conditions.\n",
- "#Calculations\n",
- "p=38.58*1000; #saturation pressure of water,kPa\n",
- "Xwater=p/101325; #mole fraction of saturated water\n",
- "Mwater=Xwater*18.02/(Xwater*18.02+(1-Xwater)*28.96); #mass fraction of saturated water\n",
- "\n",
- "B=(x-Mwater)/(Mwater-1); #mass transfer driving force\n",
- "m=Gm*B*A; #evaporation rate,kg/s\n",
- "\n",
- "#Result\n",
- "print \"Evaporation rate is:\",round(m,6),\" kg/s\"\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Evaporation rate is: 0.000213 kg/s\n"
- ]
- }
- ],
- "prompt_number": 23
- },
- {
- "cell_type": "heading",
- "level": 3,
- "metadata": {},
- "source": [
- "Example 11.16, Page number:"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "from __future__ import division\n",
- "import math\n",
- "\n",
- "#Variables\n",
- "T1=298; #temp.of air,K\n",
- "T2=323.15; #film temp.,K\n",
- "x=0.05; #mass fraction of water at 75 C\n",
- "Gm=0.017; #average mass transfer coefficient,kg/(m**2*s)\n",
- "A=0.04; #suraface area of pan,m**2\n",
- "l=0.2; #length of pan in flow direction,m\n",
- "v=5; #air speed,m/s\n",
- "m=(x+0.277)/2; #film composition of water at 50 C\n",
- "Mf=26.34; #mixture molecular weight,kg/kmol\n",
- "p=101325; #Atmospheric pressure, Pa\n",
- "R=8314.5; #Gas constant, J/kmol-K\n",
- "Uf=1.75*math.pow(10,-5); #film viscosity,kg/(m*s)\n",
- "B=0.314; #mass transfer driving force\n",
- "D=2.96*math.pow(10,-5); #diffusivity of water in air,m**2/s\n",
- "df=0.993; #Density of ideal air, kg/m**#\n",
- "\n",
- "#Calculations\n",
- "af=p*Mf/(R*T2); \t #film density from ideal gas law,kg/m**3\n",
- "Vf=Uf/af; #kinematic viscosity,m**2/s\n",
- "Rel=v*l/Vf; #reynolds no. comes out to be 56,800 so the flow is laminar.\n",
- "Sc=Vf/D; #scimidt no.\n",
- "Nu=0.664*math.sqrt(Rel)*math.pow(Sc,1/3); #nussselt no.\n",
- "Gmw1=Nu*(D*df/l); #appropriate value of mass transfer gas phase coeffficient of water in air,kg/(m**2*s)\n",
- "Gmw=Gmw1*(math.log(1+B)/B); \t #mass transfer gas phase coeffficient of water in air,kg/(m**2*s)\n",
- "\n",
- "#Results\n",
- "print \"Mass transfer gas phase coeffficient of water in air is :\",round(Gmw,4),\"kg/(m^2*s)\\nIn this caes, the blowing factor is 0.870. Thus the mild blowing has reduced the mass transfer coefficient by about 13 percent\"\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0.01955648559 133.069905487\n",
- "Mass transfer gas phase coeffficient of water in air is : 0.017 kg/(m^2*s)\n",
- "In this caes, the blowing factor is 0.870. Thus the mild blowing has reduced the mass transfer coefficient by about 13 percent\n"
- ]
- }
- ],
- "prompt_number": 28
- }
- ],
- "metadata": {}
- }
- ]
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 11: An introduction to mass transfer"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.1, Page number:603"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "\n",
+ "#Variables\n",
+ "Mn2=0.7556; #mass fraction of nitrogen\n",
+ "Mo2=0.2315; #mass fraction of oxygen\n",
+ "Mar=0.01289; #mass fraction of argon gas\n",
+ "M1=28.02; #molar mass of N2,kg/kmol\n",
+ "M2=32; #molar mass of O2,kg/kmol\n",
+ "M3=39.95 ; #molar mass of Ar,kg/kmol\n",
+ "p=101325; #Atmospheric pressure in Pascal(Pa)\n",
+ "R=8314.5; #Gas constant, J/kmol-K\n",
+ "T=300; #Approximate room temperature, K\n",
+ "\n",
+ "#Calculations\n",
+ "Mair=(Mn2/M1+Mo2/M2+Mar/M3)**-1; #molar mass of air,kg/kmol\n",
+ "Xo2=Mo2*Mair/M2; #mole fraction of O2\n",
+ "PO2=Xo2*p; #partial pressure of O2,Pa\n",
+ "Co2=PO2/(R*T); #molar volume of O2,kmol/m**3\n",
+ "ao2=Co2*M2; #density of O2,kg/m**3\n",
+ "\n",
+ "\n",
+ "#Result\n",
+ "print \"Mole fraction of O2 is :\",round(Xo2,4),\"\\n\"\n",
+ "print \"Partial pressure of O2 is :\",round(PO2,4),\"\\n\"\n",
+ "print \"Molar volume of O2 is :\",round(Co2,4),\" kmol/m^3\\n\"\n",
+ "print \"Density of O2 is :\",round(ao2,4),\" kg/m^3\\n\"\n",
+ " #end"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mole fraction of O2 is : 0.2095 \n",
+ "\n",
+ "Partial pressure of O2 is : 21232.5938 \n",
+ "\n",
+ "Molar volume of O2 is : 0.0085 kmol/m^3\n",
+ "\n",
+ "Density of O2 is : 0.2724 kg/m^3\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.2, Page number: 606"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "\n",
+ "#Variables\n",
+ "r=0.00241; #rate of consumption of carbon,kg/(m**2*s)\n",
+ "Mo2=0.2; #concentration of oxygen at surface s\n",
+ "Mco2=0.052; #concentration of CO2 at surface s\n",
+ "sd=0.29; #density of surface s,kg/m**3\n",
+ "\n",
+ "#since carbon flows through a second imaginary surface u, the mass fluxes are relatedd by Ncu=-12/32*No2s=12/44*Nco2s\n",
+ "#the minus sign arises because the O2 flow is opposite the C and CO2 flows.in steady state if we apply mass conservation to the control volume between the u and s surface, wee find that the total mass flux entering the u surface equals that leaving the s surface\n",
+ "Ncu=r; #mass fluxes of carbon in u surface,kg/m**2/s\n",
+ "\n",
+ "#Calculations\n",
+ "No2s=-32/12*Ncu; #mass flux of O2 in surface s,kg/(m**2*s)\n",
+ "Nco2s=44/12*Ncu; #mass flux of CO2 in surface s,kg/(m**2*s)\n",
+ "Vo2s=No2s/(Mo2*sd); #mass average speed,m/s\n",
+ "Vco2s=Nco2s/(sd); #mass average speed,m/s\n",
+ "Vs=(Nco2s+No2s)/sd; #effective mass average speed,m/s\n",
+ "j1=sd*Mo2*(Vo2s-Vs); #diffusional mass flux,kg/(m**2*s)\n",
+ "j2=sd*Mco2*(Vco2s-Vs); #diffusional mass flux,kg/(m**2*s)\n",
+ "#the diffusional mass fluxes are very nearly equal to the species m ss fluxes. tha is because the mass average speed is much less than species speeds.\n",
+ "\n",
+ "N1 = Ncu/12; #mole flux of carbon through the surface s,kmol/(m**2*s)\n",
+ "N2 = -N1; #mole flux of oxygen through the surface s,kmol/(m**2*s)\n",
+ "\n",
+ "#Result\n",
+ "print \"Mass flux of O2 through an imaginary surface is :\",round(j1,5),\"kg/(m^2*s)\\n\"\n",
+ "print \"Mass flux of CO2 through an imaginary surface is :\",round(j2,5),\"kg/(m^2*s)\\n\"\n",
+ "\n",
+ "print \"Mole flux of Co2 through an imaginary surface is :\",round(N1,5),\"kmol/(m^2*s)\\n\"\n",
+ "print \"Mole flux of O2through an imaginary surface is :\",round(N2,5),\"kmol/(m^2*s)\\n\"\n",
+ "print \"The two diffusional mole fluxes sum to zero themselves because ther is no convective mole flux for other species to diffuse against. the reader may find the velocity of the interface.that calculation shows the interface to be receding so slowly that the velocities are equal to those that would be seen by a stationary observer.\"\n",
+ " #end\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mass flux of O2 through an imaginary surface is : -0.00691 kg/(m^2*s)\n",
+ "\n",
+ "Mass flux of CO2 through an imaginary surface is : 0.00033 kg/(m^2*s)\n",
+ "\n",
+ "Mole flux of Co2 through an imaginary surface is : 0.0002 kmol/(m^2*s)\n",
+ "\n",
+ "Mole flux of O2through an imaginary surface is : -0.0002 kmol/(m^2*s)\n",
+ "\n",
+ "The two diffusional mole fluxes sum to zero themselves because ther is no convective mole flux for other species to diffuse against. the reader may find the velocity of the interface.that calculation shows the interface to be receding so slowly that the velocities are equal to those that would be seen by a stationary observer.\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.3, Page number: 617"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "\n",
+ "#Variables\n",
+ "T1=276; #temp.of air,K\n",
+ "aa=3.711; #lennard jones constant or collision diameter,A\n",
+ "ab=2.827; #lennard jones constant or collision diameter,A\n",
+ "b1=78.6; #lennard jones constant,K\n",
+ "b2=59.7; #lennard jones constant,K\n",
+ "Ma=28.97; #Molecular mass of air, kg/kmol\n",
+ "Mh=2.016; #Molecular mass of hydrogen, kg/kmol\n",
+ "\n",
+ "#Calculations\n",
+ "a=(aa+ab)/2; #effective molecular diameter for collisions of hydrogen and air,m\n",
+ "b=math.sqrt(b1*b2); #effective potential well depth,K\n",
+ "c=T1/b; \n",
+ "\n",
+ "d=0.8822; #potential well function, from table 11.3\n",
+ "Dab=(1.8583*math.pow(10,-7))*math.pow(T1,1.5)/(math.pow(a,2)*d)*math.sqrt(1/Mh+1/Ma); #diffusion coefficient of hydrogen in air,m**2/s\n",
+ "\n",
+ "\n",
+ "#Result\n",
+ "print \"Diffusion coefficient of hydrogen in air is :\",round(Dab,6),\"m^2/s an experimental value from table is 6.34*10^-5 m^2/s,so the prediction is high by 5 percent.\\n\"\n",
+ " #end\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Diffusion coefficient of hydrogen in air is : 6.6e-05 m^2/s an experimental value from table is 6.34*10^-5 m^2/s,so the prediction is high by 5 percent.\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.4, Page number: 625"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "from numpy import array\n",
+ "\n",
+ "#Variables\n",
+ "T1=373.15; #temp.of tea,K\n",
+ "XN2=0.7808; #mole fraction of nitrogen\n",
+ "XO2=0.2095; #mole fraction of oxygen\n",
+ "Xar=0.0093; #mole fraction of\n",
+ "Cp=1006 #mixture diffusivity,j/(kg*K)\n",
+ "\n",
+ "#Calculations\n",
+ "a=array(([3.798, 3.467, 3.542])); #collisin diameter,m\n",
+ "b=array(([71.4, 106.7, 93.3])); #lennard jones constant,K\n",
+ "M=array(([28.02, 32, 39.95])); #molar masses,kg/kmol\n",
+ "c=array(([0.9599, 1.057, 1.021])); #potential well function\n",
+ "d=array(([1.8*10**-5, 2.059*10**-5, 2.281*10**-5])); #calculated viscosity,kg/(m*s)\n",
+ "e=array(([1.8*10**-5, 2.07*10**-5, 2.29*10**-5])); # theoritical viscosity,kg/(m*s)\n",
+ "f=array(([0.0260, 0.02615, 0.01787])); #theoritical thermal conducitvity,W/(m*K)\n",
+ "\n",
+ "u=2.6693*10**-6*(M*T1)**0.5/((a**2*c)); #viscosity,kg/(m*s)\n",
+ "k=0.083228/((a**2*c*(T1/M**0.5))) #thermal conductivity,W/(m*s)\n",
+ "umc = XN2*u.item(0)/0.9978+XO2*u.item(1)/1.008+Xar*u.item(2)/0.9435 ; #calculated mixture viscosity,kg/(m*s)\n",
+ "umc1=1.857*10**-5;\n",
+ "\n",
+ "umd=XN2*e.item(0)/0.9978+XO2*e.item(1)/1.008+e.item(2)*Xar/0.9435; #theoritical mixture viscosity,kg/(m*s)\n",
+ "kmc=XN2*k.item(0)/0.9978+XO2*k.item(1)/1.008+Xar*k.item(2)/0.9435; #calculated thermal conducitvity,W/(m*K)\n",
+ "kmc1=0.02623;\n",
+ "kmd=XN2*f.item(0)/0.9978+XO2*f.item(1)/1.008+Xar*f.item(2)/0.9435; #theoritical thermal conductivity, W/(m*K)\n",
+ "pr=umd*Cp/kmd; #prandtl no.\n",
+ "\n",
+ "#Result\n",
+ "print \"Theoritical mixture viscosity is :\",round(umc1,6),\"kg/(m*s)\\n\"\n",
+ "print \"Calculated mixture viscosity is :\",round(umd,6),\"kg/(m*s)\\n\"\n",
+ "print \"Theoritical thermal conducitvity is :\",round(kmc1,4),\" W/(m*K)\\n\"\n",
+ "print \"Calculated thermal conducitvity is :\",round(kmd,4),\"W/(m*K)\\n\" \n",
+ "print \"Prandtl no. is :\",round(pr,4),\"\\n\"\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoritical mixture viscosity is : 1.9e-05 kg/(m*s)\n",
+ "\n",
+ "Calculated mixture viscosity is : 1.9e-05 kg/(m*s)\n",
+ "\n",
+ "Theoritical thermal conducitvity is : 0.0262 W/(m*K)\n",
+ "\n",
+ "Calculated thermal conducitvity is : 0.026 W/(m*K)\n",
+ "\n",
+ "Prandtl no. is : 0.7214 \n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.5, Page number: 632"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "from numpy import array\n",
+ "import matplotlib.pyplot as plt\n",
+ "%matplotlib inline\n",
+ "\n",
+ "#Variables\n",
+ "Patm=101.325;\t\t\t#Atmospheric pressure in kPa.\n",
+ "Mh20=18.02;\t\t\t\t#Molecular mass of H20 in kg/kmol.\n",
+ "Mair=28.96;\t\t\t\t#Molecular mass of air in kg/kmol.\n",
+ "Psat =array(([0.6113, 1.2276, 2.3385, 4.2461, 7.3837, 12.35, 19.941, 31.188, 47.39, 70.139, 101.325]));\t\t#Saturated pressure of watrer in kPa \n",
+ "T=array(([0.01, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100]));\t\t#Temperature of air in in degree C\n",
+ "#Calculations\n",
+ "xw=Psat/Patm;\t\t\t\t\n",
+ "\n",
+ "mw=(xw*Mh20)/(xw*Mh20+(1-xw)*Mair);\t\t#Mass fraction of water vapour.\n",
+ "#Result\n",
+ "plt.plot(T,mw);\n",
+ "plt.xlabel(\"Temperature(Degree C)\")\n",
+ "plt.ylabel(\"Mass fraction of water vapour\");\n",
+ "plt.show()\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f4109404550>"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.6, Page number: 634"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "\n",
+ "#Variables\n",
+ "T1=263.15; #temp.of ice,K\n",
+ "p=101.325; #Atmospheric pressure, KPa\n",
+ "Molw=18.02; #Molecular mass of water vapour, g/mol\n",
+ "Mola=28.96; #Molecular mass of air, g/mol\n",
+ "\n",
+ "#Calculations\n",
+ "Pv=math.exp(21.99-6141/(T1)); #vapor pressure,KPa\n",
+ "xw=Pv/p; #mole fraction of water\n",
+ "mw=xw*Molw/(xw*Molw+(1-xw)*Mola); #mass fraction\n",
+ "\n",
+ "#Result\n",
+ "print \"Mass fraction of watervapor above the surface of ice is :\",round(mw,5),\"\\n\"\n",
+ "#end\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mass fraction of watervapor above the surface of ice is : 0.0016 \n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 26
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.10, Page number:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "\n",
+ "#Variables\n",
+ "T1=303; # isothermal temp.,K\n",
+ "v=5; #air speed,m/s\n",
+ "l=0.05; #length of naphthalene model that is flat, m\n",
+ "Mnap=128.2; #molar mass of naphthalene,kg/kmol\n",
+ "nu=1.867*10**-5; #Dynamic viscocity, m^2/s\n",
+ "\n",
+ "#Calculations\n",
+ "D=0.86*(10**-5); #diffusion coefficient of naphthalene in air,m/s\n",
+ "\n",
+ "Pv=10**(11.45-3729.3/T1)*133.31; #vapor pressure of napthalene, Pa\n",
+ "xn=Pv/101325; #mole fraction of naphthalene\n",
+ "mn=xn*Mnap/(xn*Mnap+(1-xn)*28.96); #mass fraction of naphthalene\n",
+ "mnp=0; #mass fraction of naphthalene in free stream is 0\n",
+ "\n",
+ "Rel=v*l/nu; #reynolds no.\n",
+ "Sc=nu/D; #schimidt no.\n",
+ "Nul=0.664*math.sqrt(Rel)*(Sc**(1/3)); #mass transfer nusselt no.\n",
+ "Gmn=D*Nul*1.166/l; #gas phase mass transfer coefficient,kg/(m**2*s)\n",
+ "n=Gmn*(mn-mnp); #average mass flux,kg/(m**2*s)\n",
+ "n1=n*1000*3600;# average mass flux, g/m**2.h\n",
+ "\n",
+ "#Result\n",
+ "print \"Average rate of loss of naphthalene from a part of model is :\",round(n,7),\"kg/(m^2*s) or \",round(n1),\"g/(m^2*h)\\n\"\n",
+ "print \"Naphthalene sublimatin can be used to infer heat transfer coefficient by measuring the loss of naphthalene from a model over some length of time.since the schimidt no. of naphthalene is not generally equal to prandtl no. under the conditions of interest, some assumption about the dependence of nusselt no. on the prandtl no. must usually be introduced.\\n\"\n",
+ " #end\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Average rate of loss of naphthalene from a part of model is : 1.61e-05 kg/(m^2*s) or 58.0 g/(m^2*h)\n",
+ "\n",
+ "Naphthalene sublimatin can be used to infer heat transfer coefficient by measuring the loss of naphthalene from a model over some length of time.since the schimidt no. of naphthalene is not generally equal to prandtl no. under the conditions of interest, some assumption about the dependence of nusselt no. on the prandtl no. must usually be introduced.\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.11, Page number:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "\n",
+ "#Variables\n",
+ "T1=300; #temp. of helium-water tube,K\n",
+ "h=0.4; #height of vertical wall,m\n",
+ "m=0.087*10**-3; #flow rate of helium,kg/(m**2*s)\n",
+ "#this is a uniform flux natural convection problem.\n",
+ "Mhes=0.01; # assuming the value of mass fraction of helium at the wall to be 0.01\n",
+ "Mhef=Mhes/2; #film composition\n",
+ "af=1.141; #film density,kg/m**3\n",
+ "wd=1.107; #wall density,kg/m**3\n",
+ "Dha=7.119*10**-5; #diffusion coefficient,m**2/s\n",
+ "u=1.857*10**-5; #film viscosity at 300K,kg/(m*s)\n",
+ "aa=1.177; #air density,kg/m**3\n",
+ "g=9.8; #Gravity constant, m/s**2\n",
+ "#Calculations\n",
+ "Sc=(u/af)/Dha; #schimidt no.\n",
+ "Ra1=g*(aa-wd)*m*h**4/(u*af*Dha**2*Mhes); #Rayleigh no.\n",
+ "Nu=6/5*(Ra1*Sc/(4+9*math.sqrt(Sc)+10*Sc))**(1/5); #approximate nusselt no.\n",
+ "s=m*h/(af*Dha*Nu); #average concentration of helium at the wall\n",
+ "#thus we have obtained an average wall concentration 14 oercent higher than our initial guess of Mhes.we repeat this calclations with revised values of densities to obtain Mhes = 0.01142\n",
+ "\n",
+ "\n",
+ "#Result\n",
+ "print \"Average conentration of helium at the wall is \",round(s,5),\",since the result is within 0.5 percent of our second guess, a third iteration is not needed\"\n",
+ " #end\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Average conentration of helium at the wall is 0.01136 ,since the result is within 0.5 percent of our second guess, a third iteration is not needed\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.14, Page number:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "\n",
+ "#Variables\n",
+ "T1=325; #temp. of helium-water tube,K\n",
+ "l=0.2; #length of tube,m\n",
+ "x=0.01; # mole fraction of water\n",
+ "R=8314.472; #gas constant,J/(kmol*K)\n",
+ "Mw=18.02;#Molecular mass of water, g/mol\n",
+ "#the vapor pressure of the liquid water is approximately the saturation pressure at the water temp.\n",
+ "\n",
+ "#Calculations\n",
+ "p=1.341*10000 ; #vapor pressure using steam table,Pa\n",
+ "x1=p/101325; #mole fraction of saturated water\n",
+ "c=101325/(R*T1); #mole concentration in tube,kmol/m**3\n",
+ "D12=1.067*math.pow(10,-4); #diffusivity ofwater with respect to helium,m**2/s \n",
+ "Nw=c*D12*math.log(1+(x-x1)/(x1-1))/l ; #molar evaporation rate,kmol/(m**2*s)\n",
+ "nw=Nw*Mw; # mass evaporation rate,kg/(m**2*s)\n",
+ "\n",
+ "#S=1+(x1-1)*math.exp(Nw*y/(c*D12)) conentration distribution of water-vapor\n",
+ "#Result\n",
+ "print \"Conentration distribution of water-vapor is : x1(y)=1-0.8677*exp(0.6593*y) where y is expressed in meters.\\n\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Conentration distribution of water-vapor is : x1(y)=1-0.8677*exp(0.6593*y) where y is expressed in meters.\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.15, Page number:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "\n",
+ "#Variables\n",
+ "T1=1473; #suraface temp.of hot water,K\n",
+ "x=0.05; #mass fraction of water\n",
+ "Gm=0.017; #average mass transfer coefficient,kg/(m**2*s)\n",
+ "A=0.04; #suraface area of pan,m**2\n",
+ "\n",
+ " #only water vapour passes through the liquid surface, since air is not strongly absorbed into water under normal conditions.\n",
+ "#Calculations\n",
+ "p=38.58*1000; #saturation pressure of water,kPa\n",
+ "Xwater=p/101325; #mole fraction of saturated water\n",
+ "Mwater=Xwater*18.02/(Xwater*18.02+(1-Xwater)*28.96); #mass fraction of saturated water\n",
+ "\n",
+ "B=(x-Mwater)/(Mwater-1); #mass transfer driving force\n",
+ "m=Gm*B*A; #evaporation rate,kg/s\n",
+ "\n",
+ "#Result\n",
+ "print \"Evaporation rate is:\",round(m,6),\" kg/s\"\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Evaporation rate is: 0.000213 kg/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 23
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.16, Page number:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "import math\n",
+ "\n",
+ "#Variables\n",
+ "T1=298; #temp.of air,K\n",
+ "T2=323.15; #film temp.,K\n",
+ "x=0.05; #mass fraction of water at 75 C\n",
+ "Gm=0.017; #average mass transfer coefficient,kg/(m**2*s)\n",
+ "A=0.04; #suraface area of pan,m**2\n",
+ "l=0.2; #length of pan in flow direction,m\n",
+ "v=5; #air speed,m/s\n",
+ "m=(x+0.277)/2; #film composition of water at 50 C\n",
+ "Mf=26.34; #mixture molecular weight,kg/kmol\n",
+ "p=101325; #Atmospheric pressure, Pa\n",
+ "R=8314.5; #Gas constant, J/kmol-K\n",
+ "Uf=1.75*math.pow(10,-5); #film viscosity,kg/(m*s)\n",
+ "B=0.314; #mass transfer driving force\n",
+ "D=2.96*math.pow(10,-5); #diffusivity of water in air,m**2/s\n",
+ "df=0.993; #Density of ideal air, kg/m**#\n",
+ "\n",
+ "#Calculations\n",
+ "af=p*Mf/(R*T2); \t #film density from ideal gas law,kg/m**3\n",
+ "Vf=Uf/af; #kinematic viscosity,m**2/s\n",
+ "Rel=v*l/Vf; #reynolds no. comes out to be 56,800 so the flow is laminar.\n",
+ "Sc=Vf/D; #scimidt no.\n",
+ "Nu=0.664*math.sqrt(Rel)*math.pow(Sc,1/3); #nussselt no.\n",
+ "Gmw1=Nu*(D*df/l); #appropriate value of mass transfer gas phase coeffficient of water in air,kg/(m**2*s)\n",
+ "Gmw=Gmw1*(math.log(1+B)/B); \t #mass transfer gas phase coeffficient of water in air,kg/(m**2*s)\n",
+ "\n",
+ "#Results\n",
+ "print \"Mass transfer gas phase coeffficient of water in air is :\",round(Gmw,4),\"kg/(m^2*s)\\nIn this caes, the blowing factor is 0.870. Thus the mild blowing has reduced the mass transfer coefficient by about 13 percent\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0.01955648559 133.069905487\n",
+ "Mass transfer gas phase coeffficient of water in air is : 0.017 kg/(m^2*s)\n",
+ "In this caes, the blowing factor is 0.870. Thus the mild blowing has reduced the mass transfer coefficient by about 13 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 28
+ }
+ ],
+ "metadata": {}
+ }
+ ]
} \ No newline at end of file