diff options
Diffstat (limited to 'Textbook_Of_Heat_Transfer')
15 files changed, 4727 insertions, 0 deletions
diff --git a/Textbook_Of_Heat_Transfer/Chapter_1_Introduction_.ipynb b/Textbook_Of_Heat_Transfer/Chapter_1_Introduction_.ipynb new file mode 100755 index 00000000..2ab3d5d9 --- /dev/null +++ b/Textbook_Of_Heat_Transfer/Chapter_1_Introduction_.ipynb @@ -0,0 +1,157 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:9b1229db232c49aaabbc7f0d29465c24cc6508532c6b435aa2f1e98a362531bd"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ " Chapter 1:Introduction"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1.1 , Page no:5"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "v=28.8*10**-6; #the viscosity of water at 100 degree Celsius in kgf s/m^2\n",
+ "g=9.81; #Acceleration due to gravity in m/s^2\n",
+ "\n",
+ "#calculations\n",
+ "v=28.8*10**-6*g; # Conversion of unit\n",
+ "\n",
+ "#result\n",
+ "print (\"The viscosity of water at 100 degree Celsius = {:.4e}\".format(v)),\"N s/m^2 (or kg/m s)\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The viscosity of water at 100 degree Celsius = 2.8253e-04 N s/m^2 (or kg/m s)\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1.2, Page no:14"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#variable declaration\n",
+ "i=950; # radiation flux [W/m^ 2 ]\n",
+ "A=1.5; # area [m^ 2 ]\n",
+ "Ti=61; # inlet temperature\n",
+ "To=69; # outlet temperature\n",
+ "m=1.5; # mass flow rate\n",
+ "M=1.5/60; # kg/sec\n",
+ "Qconductn=50; # W\n",
+ "t=0.95; # transmissivity\n",
+ "a=0.97; # absoptivity\n",
+ "Cp=4183; # J/kg K\n",
+ "\n",
+ "#calculations\n",
+ "q=M*Cp*(To-Ti); # heat gain rate\n",
+ "n=q/(i*A); # thermal efficiency\n",
+ "n_percent=n*100; # thermal efficiency\n",
+ "Qreradiated=(i*A*t*a)-Qconductn-q; # rate at which energy is lost by re-radiation\n",
+ "\n",
+ "#result\n",
+ "print \"Useful heat gain rate is \",round(q,4),\"W\"\n",
+ "print \"Thermal efficiency is\",'%.4E'%n,\"i.e\",round(n_percent,3),\"%\"\n",
+ "print \"The rate at which energy is lost by re-radiation and convection is \", round(Qreradiated,6),\"W\"\n",
+ " \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Useful heat gain rate is 836.6 W\n",
+ "Thermal efficiency is 5.8709E-01 i.e 58.709 %\n",
+ "The rate at which energy is lost by re-radiation and convection is 426.5375 W\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1.3, Page no:16"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#variable declaration\n",
+ "vi=10; # velocity at inlet in m/s\n",
+ "q=1000; # heat in w\n",
+ "di=0.04; # inside diameter in m\n",
+ "do=0.06; # outside diameter in m\n",
+ "den1=0.946; # density in kg/m^3 at 100 degree C\n",
+ "Cp=1009; # specific heat in J/kg k\n",
+ "den2=0.773; # specific heat at To=183.4 degree C\n",
+ "\n",
+ "#calculations\n",
+ "m=den1*(3.14/4)*(di**2)*vi; # kg/s\n",
+ "dh=q/m; # j/kg\n",
+ "To=dh/Cp+100; # Exit Temperature\n",
+ "vo=m/(den2*(3.14/4)*(do)**2); # Exit velocity \n",
+ "dKeKg=(vo**2-vi**2)/2; # Change in Kinetic Energy per kg\n",
+ "\n",
+ "#result\n",
+ "print \"Exit Temperature is\",round(To,4),\"degree C\"\n",
+ "print \"Exit velocity is \",round(vo,4),\"m/s\"\n",
+ "print \"Change in Kinetic Energy per kg =\",round(dKeKg,5),\"J/kg\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Exit Temperature is 183.4119 degree C\n",
+ "Exit velocity is 5.4391 m/s\n",
+ "Change in Kinetic Energy per kg = -35.20795 J/kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Textbook_Of_Heat_Transfer/Chapter_2_Heat_Conduction_in_Solids.ipynb b/Textbook_Of_Heat_Transfer/Chapter_2_Heat_Conduction_in_Solids.ipynb new file mode 100755 index 00000000..8e524b2c --- /dev/null +++ b/Textbook_Of_Heat_Transfer/Chapter_2_Heat_Conduction_in_Solids.ipynb @@ -0,0 +1,1017 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:a3257cf5589919f02234d6cf7ed2bf5fce234214f8f5ed548e011fbbc2b55a9f"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 2:Heat Conduction in Solids"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.1 , Page no:27"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "di=0.02; #inner radius m\n",
+ "do=0.04; #inner radius m\n",
+ "ri=di/2; #inner radius m\n",
+ "ro=do/2; #inner radius m\n",
+ "k=0.58; #thermal conductivity of tube material w/m K\n",
+ "ti=70; #degree C\n",
+ "to=100; #degree C\n",
+ "l=1; #per unit length m\n",
+ "\n",
+ "#calculations\n",
+ "q=l*2*(3.14)*k*(ti-to)/math.log(ro/ri);\n",
+ "\n",
+ "#result\n",
+ "print\"Heat flow per unit length is\",round(q,4),\"W/m\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat flow per unit length is -157.6462 W/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.2 , Page no:31"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "di=0.02; #inner radius\n",
+ "do=0.04; #outer radius\n",
+ "ri=di/2; #inner radius\n",
+ "ro=do/2; #outer radius\n",
+ "k=0.58; #thermal conductivity of tube material\n",
+ "ti=70; #degree C\n",
+ "to=100; #degree C\n",
+ "l=1; #per unit length\n",
+ "h=5000; #W/m^2 K\n",
+ "\n",
+ "#calculations\n",
+ "Rthtube=(math.log(ro/ri))/(2*3.14*k*l); #thermal resistance of tube per unit length\n",
+ "Rthcond=1/(3.14*do*l*h); #thermal resistance of condensing steam per unit length\n",
+ "q=l*2*(3.14)*k*(ti-100)/math.log(ro/ri); #heat flow rate per unit meter \n",
+ "\n",
+ "#result\n",
+ "print\"Thermal resistance of tube per unit length is\",round(Rthtube,4),\"K/W\";\n",
+ "print\"Thermal resistance of condensing steam perunit length is\",round(Rthcond,5),\"K/W\";\n",
+ "print\"Heat flow per unit length is\",round(q,4),\"K/W\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal resistance of tube per unit length is 0.1903 K/W\n",
+ "Thermal resistance of condensing steam perunit length is 0.00159 K/W\n",
+ "Heat flow per unit length is -157.6462 K/W\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.3 , Page no:31"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "hw=140; #heat transfer coefficient on water side\n",
+ "ho=150; #heat transfer coefficient on oil side\n",
+ "k=30; #thermal conductivity\n",
+ "ro=0.1; #inner diameter of GI pipe on inside\n",
+ "ri=0.008; #outer diameter of GI pipe on inside\n",
+ "l=1; #per unit length\n",
+ "\n",
+ "#calculations\n",
+ "RinnerGI=math.log((ro/ri))/(2*3.14*k*l); #Thermal resistance of inner GI pipe\n",
+ "Roilside=1/(ho*3.14*2*ri*l); #Thermal resistanceon the oil side per unit length\n",
+ "Rwaterside=1/(hw*3.14*2*ro*l); #Thermal resistanceon the water side per unit length\n",
+ "\n",
+ "#result\n",
+ "print\"Thermal resistance of inner GI pipe =\",round(RinnerGI,5),\"K/W\";\n",
+ "print\"Thermal resistance on the oil side perunit length =\",round(Roilside,5),\"K/W\";\n",
+ "print\"Thermal resistance on cold water side per unit length =\",round(Rwaterside,5),\"K/W\";\n",
+ "print\"So,Engineer in-charge has made a bad decision\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal resistance of inner GI pipe = 0.01341 K/W\n",
+ "Thermal resistance on the oil side perunit length = 0.1327 K/W\n",
+ "Thermal resistance on cold water side per unit length = 0.01137 K/W\n",
+ "So,Engineer in-charge has made a bad decision\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.4 , Page no:32"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "ti=300; #Internal temp of hot gas in degree Celsius\n",
+ "od=0.1; #Outer diameter of long metal pipe in meters\n",
+ "i_d=0.04; #Internal diamtere of long metal pipe in meters\n",
+ "ki=0.052; #thermal conductivity of mineral wood in W/mK\n",
+ "to=50; #Outer surface temperature in degree celsius\n",
+ "hi=29; #heat transfer coefficient in the inner side in W/m^2 K\n",
+ "ho=12; #heat transfer coefficient in the outer pipe W/m^2 K\n",
+ "t=25; # Surrounding temperature in degree celsius\n",
+ "\n",
+ "#Calculation\n",
+ "#Determination of thickness of insulation\n",
+ "#By solving the following two equations by trial and error method for r3\n",
+ "#q_L=2*3.14*0.047*(t1-t)/(1/hi+(0.047/ki)*2.303*math.log(r3/od/2)+(0.047/h0*r3));\n",
+ "#q_L=2*3.14*h0*(to-t);\n",
+ "#By trial and error we get\n",
+ "r3=0.082; #in m\n",
+ "t=r3-(od/2);\n",
+ "#Heat loss per unit length\n",
+ "q=600*(22/7)*r3;\n",
+ "\n",
+ "#Result\n",
+ "print\"Thickness of insulation =\",t*100,\"cm\";\n",
+ "print\"Heat loss per unit length =\",round(q,1),\"W/m\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thickness of insulation = 3.2 cm\n",
+ "Heat loss per unit length = 154.6 W/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.5 , Page no:34"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "import matplotlib.pyplot as plt\n",
+ "import numpy as np\n",
+ "\n",
+ "#Variable declaration\n",
+ "ti=90; #Temp on inner side in degree celsius\n",
+ "to=30; #Temp on outer side in degree celsius\n",
+ "hi=500; #heat transfer coeffcient in W/m^2 K\n",
+ "ho=10; #heat transfer coeffcient in W/m^2 K\n",
+ "i_d=0.016; #Internal diameter in meters\n",
+ "od=0.02; #Outer diameter in meters\n",
+ "from pylab import *\n",
+ "%matplotlib inline\n",
+ "\n",
+ "\n",
+ "#Calculation\n",
+ "r3=np.linspace (0.01,0.06,12);\n",
+ "t=[0,0.5,1,1.5,2,2.5,3,3.5,4,4.5,5,5.5]\n",
+ "q_L=(2*(3.14)*(i_d/2)*(ti-to))/((1/hi)+(0.008/0.2)*np.log(r3/0.01) + (0.008/r3*(1/ho)));\n",
+ "\n",
+ "#Result\n",
+ "print \"Insulaion thickness (cm)\", \" r3 (m)\",\" Heat loss rate per meter (W/m) \" \n",
+ "print \" \",t[0],\" \",0.01,\" \",round(q_L[0],1),\"(roundoff error)\"\n",
+ "print \" \",t[1],\" \",0.015,\" \", round(q_L[1],1),\"(roundoff error)\"\n",
+ "print \" \",t[2],\" \",0.02,\" \",round(q_L[2],1),\"(roundoff error)\"\n",
+ "print \" \",t[4],\" \",0.03,\" \",round(q_L[4],1),\"(roundoff error)\"\n",
+ "print \" \",t[6],\" \",0.04,\" \",round(q_L[6],1),\"(roundoff error)\"\n",
+ "print \" \",t[8],\" \",0.05,\" \",round(q_L[8],1),\"(roundoff error)\"\n",
+ "print \" \",t[10],\" \",0.06,\" \",round(q_L[10],1),\"(roundoff error)\"\n",
+ "plt.plot (t,q_L);\n",
+ "plt.title (\"Variation of heat loss rate with insulation thickness\");\n",
+ "plt.xlabel(\" Insulation thickness in cm\");\n",
+ "plt.ylabel(\" Heat Loss in W/m \");\n",
+ "plt.show();"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Insulaion thickness (cm) r3 (m) Heat loss rate per meter (W/m) \n",
+ " 0 0.01 36.8 (roundoff error)\n",
+ " 0.5 0.015 41.9 (roundoff error)\n",
+ " 1 0.02 43.2 (roundoff error)\n",
+ " 2 0.03 42.0 (roundoff error)\n",
+ " 3 0.04 39.6 (roundoff error)\n",
+ " 4 0.05 37.4 (roundoff error)\n",
+ " 5 0.06 35.5 (roundoff error)\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "iVBORw0KGgoAAAANSUhEUgAAAX0AAAEVCAYAAAAM3jVmAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XdcU2f3APCTsPfeIENE2YSpoIIi4gK3dQEO1OpbtWqt\nYh3UuuqoVVurdaDgrrWKiCIqQwVBZYnUDQKCArI3Se7vj/vm15SXESDhhuR8P5/7UZLce8+9hJMn\nz33ueWgEQQBCCCHxQKc6AIQQQr0Hkz5CCIkRTPoIISRGMOkjhJAYwaSPEEJiBJM+QgiJEUz6HVBS\nUqrJy8sz6c66Z8+enePr6xvD55A69fDhQ48BAwa8VlJSqomMjPRv/byJiUne3bt3vXs7LgAALy+v\n+BMnTiykYt/CIj8/v5+SklINQRC09l5Dp9PZ7969M+Nlezt37gxZtGjRMf5F+L9CQ0NDAwICIrq7\nvo2NTXZiYuJwfsbUno7OHa9/kz09XmEnMkl/zJgxt7Zs2fJ968evXbs2UU9Pr5jNZnf5WGtqapRM\nTEzyOntdXl6eCZ1OZ3PvY86cOWdjYmJ8u7rPntq8efPWFStWHKypqVHy9/ePbP08jUYjaDQa32/O\nOHXq1Lxhw4bd7+g1gto3v3Ql2XZXv3798mtqapQ456GnH4QhISE7jx07toh/Ef6vrvzO5s2bd2rT\npk0/cD+WnZ1tM3z48ER+x9XVc8fr36Qwv0f5QWSS/rx5806dOXNmbuvHIyIiAubOnXuGTqezed0W\nk8mU7E4MHbXeekt+fn4/KyurHKrjEDYsFkuCl9f19u+wLyQYYXhft0VQ505Yj5dvCIIQiaW+vl5O\nRUWlMjExcRjnsfLycjVZWdmGrKws25SUFNfBgwcnq6qqVujp6RV99dVXh5qbm6U4r6XRaOxff/11\nmbm5+WszM7O3nMfevn1rRhAEREVFjXdwcEhXVlauMjIyyg8NDd3CWdfIyCifRqOxFRUVa5SUlKqT\nk5MHh4WFzRs6dOh9zmsePnzo7uzs/FhFRaXSxcUlNSkpaQjnOU9Pz/hNmzZt9fDweKCkpFQ9evTo\nmLKyMo32jvX3339fZG5u/lpdXf2zv7//taKiIj2CIMDMzOwtnU5nycnJ1SspKVVzHx9nMTExyd27\nd+8aOzu7TBUVlcovvvjiQmNjowzn+evXr0+wt7fPUFVVrXB3d3+YlZVly3lu586d6/v37/9GSUmp\n2srK6vlff/01iSAIyMnJsZSVlW2QkJBgKioq1qipqZW3FbeXl1fciRMnFhAEAWw2m/bDDz9sNDY2\nztPW1v4UGBh4uqqqSpkgCGhoaJCdM2fOGQ0NjTJVVdUKFxeX1E+fPmkTBAFhYWHzzMzM3iopKVWb\nmpq+O3v27Oy29rVly5bQqVOnXp47d26EsrJy1YkTJxakpqa6tPceGDZsWCKNRmMrKCjUKioq1ly6\ndGl6Z+eDe9m8efP3y5cvP0gQBDQ3N0vJy8vXrV27djfnvSkjI9NYUVGhmpuba0Kj0dhMJlNiw4YN\n2yUkJJiysrINioqKNZz1aTQa+8iRI0sGDBjwSlVVteI///nPL+29F7Zs2RI6d+7cCIIggLPt06dP\nB/br1++9pqZm6fbt2zdwXpuSkuLq5OT0RFlZuUpHR+fj6tWr9xEEAXFxcV6GhoYF3Ns1NjbOu3v3\n7sjW+yAIAqZNm/aHrq5usYqKSuXw4cMTnj9/bkUQBBw9enSxlJRUs7S0dJOiomKNv7//Nc627ty5\n400QBDQ2NsqsXLnyZ319/Q/6+vofvv766/1NTU3SnDgMDAwK9+3bt1pbW/uTnp5eUVhY2Ly2jrs7\n567132R2drb1qFGjYtXV1T/r6Oh83LFjR0jr421ubpaaOXPm+WnTpv3R3NwstWXLltDp06dfCgwM\nPK2kpFRtbW2d/eTJEyfONj98+KA/ZcqUP7W0tEpMTU3fHTx4cHln57+j97sgFsqTNT+XRYsW/R4c\nHHyM8/ORI0eWMBiMNIIg4OnTp44pKSmuLBaLnpeXZ2xpaZnz888/r+S8lkajsUePHh1TUVGhykmC\n3Ek/Pj7eMzs725ogCMjKyrLV0dH5ePXq1YkEQUBeXp4xjUZjs1gseltvsM+fP6urqqpWnDlzZg6L\nxaKfP39+ppqaWnl5ebkaQZBJ39zc/PXr16/NGxoaZL28vOLWr1+/s61jvHv37khNTc3S9PR0h6am\nJunly5cfHD58eALneRMTk1zOH2tbi7GxcZ6bm9uj4uJi3fLycjVLS8ucI0eOLCEIAtLS0hja2tqf\nUlNTXdhsNu306dOBJiYmuZzE+Mcff0wrLi7WJQgCLl68OENBQaH248ePOgRBwKlTp4K4/6DaWriT\n/okTJxaYm5u/zs3NNamtrVWYMmXKnwEBAeGc35ufn19kQ0ODLJvNpqWlpTGqq6uVamtrFZSVlate\nvXo1gCAI+Pjxow4n4bRetmzZEiolJdV87do1f84fFi/vAc7vu6PzwUlS3Mu9e/dG2NraZhEE+QHf\nv3//N25ubo84vzMHB4d0gvgnMXPeK9znhDsOPz+/yKqqKuX8/HwjLS2tklu3bvm2dZyhoaFbWif9\nxYsXH21sbJTJzMy0k5GRaXzx4sVAgiBg8ODByWfOnJlDEATU1dXJp6SkuBJE20mf+33UOumHhYXN\nq62tVWhubpb6+uuv93OOjSAImDdvXtimTZu2tretTZs2bR0yZEhSaWmpZmlpqaa7u/tDzuvj4uK8\nJCUlW7Zs2RLKZDIloqOjx8rLy9dVVlaqdPZ+4uXccf9NVldXK+nq6hb/9NNPq5qamqRramoUOeeD\nc7wNDQ2y48aNuzF//vyTbDabxnlOVla24ebNm2PYbDYtJCRkx+DBg5MJggAWi0V3dHR8+sMPP2xs\naWmRfPfunamZmdnbmJiY0R2d//be74LKkyLTvQMAEBQUdPry5cvTmpubpQEAwsPDA4OCgk4DADg6\nOqa5urqm0ul0trGx8fvFixf/npCQ4Mm9fkhIyE5VVdVKGRmZptbb9vT0TLC2tn4OAGBra/ts5syZ\nFzjrE518Hbxx48b4gQMHvpwzZ85ZOp3Onjlz5oVBgwa94FxopdFoxPz588PMzc3fyMrKNs6YMeNS\nRkaGQ1vbOnv27JyFCxeecHBwyJCWlm7euXNnSHJy8pD8/Px+vJwjGo1GrFix4qCuru5HNTW1Cj8/\nv+ucff3++++LlyxZctTFxeUxjUYjAgMDw2VkZJqSk5OHAABMmzbtsq6u7kcAgBkzZlwaMGDA65SU\nFDdezkFbx7FmzZp9JiYmeQoKCnU7d+4MuXDhwkwWiyUhLS3d/PnzZ43Xr18PoNFoBIPBSFdSUqoB\nIPvdnz17ZtvQ0CCno6PzqaOuLHd39yTOdQ1ZWdlGXt4D3No7H48ePRrc+rWDBw9+9Pr16wHl5eXq\n9+/fH7Zw4cITHz58MKirq1NISEjw9PT0TGhvP22du/Xr1+9SVlauNjIyKhgxYkRce++HttbdsmXL\n9zIyMk12dnZZ9vb2mZmZmfYAANLS0s2vX78eUFZWpikvL1/v6uqa2l5MHZk3b94pBQWFOikpqZYt\nW7Z8n5mZaV9TU6PUUUwc586dm7158+atmpqaZZqammVbtmz5PiIiIoDzvJSUVMvmzZu3SkhIsMaO\nHXtTUVGx9uXLlwPb2153z11UVNQEfX39olWrVu2XlpZuVlRUrOWcDxqNRlRXVyv7+vrGDBgw4PXJ\nkycXcHclDRs27P6YMWNu0Wg0Yu7cuWc45/fx48cuZWVlmhs3btwmKSnJNDU1zQ0ODj5+4cKFmQDt\nn/+O3u+CIFJJ38PD46GmpmbZX3/9Nfnt27f9Hz9+7DJ79uxzAACvXr2ymDBhQpSenl6xiopK1Xff\nfbf98+fPGtzrGxkZFbS37ZSUFLcRI0bEaWtrl6iqqlYePXp0Sev121NUVKTfr1+/fO7HjI2N3xcV\nFelzfuYkUwAAOTm5htraWsW2tlVcXKxnbGz8nvOzgoJCnYaGxucPHz4Y8BJLR/t6//698b59+9ao\nqalVcJbCwkLD4uJiPQDyQ5TBYKRznsvOzrbh9Rx0dhz9+vXLZzKZkiUlJdoBAQERvr6+MTNnzrxg\nYGDwYd26dT8ymUxJBQWFuosXL35x5MiRL/X19YsmTJgQ1VFCMDQ0LOT+mZf3ALfOzgc3OTm5Bmdn\n5ycJCQmeiYmJwz09PRPc3d2THj586MH5ub39tNU3zf07kpeXr2/v/dCW9tY9ceLEwlevXllYWlr+\n7erqmnrjxo3xvG6Tg8ViSaxfv36Xubn5GxUVlSpTU9NcAICysjJNXtYvKirSb/175/470NDQ+Mx9\n/a2zY+fl3NXV1Sm0fk1BQYGRmZnZu7a2SRAE7dGjR4Ozs7Nt1q1b92Pr53V0dD5xb7+xsVGWzWbT\n379/b1xUVKTP/X7ZuXNnSElJiTZA++e/vfd7e8fcUyKV9AEAAgMDw8PDwwPPnDkzd8yYMbe0tLRK\nAQCWLl36m5WVVc6bN2/Mq6qqVLZv3/5d6xE9HV0Ymj179rlJkyZdLSwsNKysrFT98ssvj3DW7+yC\nkoGBwYf3798bcz/2/v17YwMDgw9dPT59ff0i7mGkdXV1Cp8/f9bozrY4OPH369cv/7vvvtteUVGh\nxllqa2sVv/jii4vv3783Xrx48e+//vrrf8rLy9UrKirUbGxssjktra5eVGt9HPn5+f0kJSWZOjo6\nnyQlJZmbN2/e+vz5c+ukpCT3qKioCeHh4YEAAKNHj759+/bt0R8/ftQdNGjQi/aGK7Y1UoiX9wC3\njs5HW6/39PRMuHv3rnd6ejrDxcXlsaenZ8KtW7fGpKamurY3eqWnFyO7sr65ufmbc+fOzS4tLdVa\nt27dj9OmTbvc0NAgp6CgUFdfXy/PeR2LxZIoLS3Vamsb586dmx0ZGel/9+5d76qqKpXc3FxTgH9a\n3J3F09bvXV9fv4jXY+DWk3PXr1+//PZGatFoNGL06NG3169fv8vb2/suJ2l3tk8jI6MCU1PTXO73\nS3V1tXJUVNQEgPbPf0fvd0EQyaQfGxvrc/z48WBO1w4AQG1traKSklKNvLx8/YsXLwb99ttvS7uy\n3draWkU1NbUKaWnp5tTUVNdz587N5rwBtLS0Sul0Ovvt27f921p37NixN1+9emVx/vz5WUwmU/Li\nxYtfvHjxYtCECROiOK/htXtk1qxZ58PCwuZnZmbaNzU1yWzYsGHH4MGDH7X+JtEVnH0vWrTo2JEj\nR75MTU11JQiCVldXp3Djxo3xtbW1inV1dQo0Go3Q1NQsY7PZ9LCwsPnZ2dk2nG3o6Oh8KiwsNGxp\naZHi9Tj279+/Ki8vz6S2tlZxw4YNO2bOnHmBTqez4+PjvZ49e2bLYrEklJSUaqSkpFokJCRYJSUl\n2teuXZtYV1enICUl1aKgoFAnISHB6uiYuHX2HtDR0fnE/Tvs6Hy0tU9PT8+E8PDwQGtr6+dSUlIt\nXl5e8cePHw82MzN7p6Gh8bmtdVrvk9dj4eW51s6cOTOXk8xVVFSqaDQaQafT2RYWFq8aGxtlo6Oj\nx7W0tEht27ZtY1NTk0xb26itrVWUkZFpUldXL6+rq1PYsGHDjtbH09Gw11mzZp3ftm3bxrKyMs2y\nsjLNrVu3bu7umHhez11b52j8+PE3iouL9Q4cOLCyqalJpqamRik1NdWVsw4AwNq1a/fMnj37nLe3\n913ON8KOzrerq2uqkpJSze7du79taGiQY7FYEtnZ2TZPnjxxBmj//MfFxY1o6/3enXPCC5FL+sbG\nxu89PDwe1tfXy3OPU9+7d+83586dm62srFy9ePHi32fOnHmB+1O7rU9w7scOHz68bPPmzVuVlZWr\nf/jhh03crT15efn67777bruHh8dDdXX18pSUFDfulqaGhsbnqKioCfv27VujqalZtnfv3m+ioqIm\nqKurl7e1r47Gs3t7e9/94YcfNk2dOvVPfX39otzcXFNOn2F3cO/Lycnp6bFjxxZ99dVXv6irq5cP\nGDDgNafFYWVllbNmzZp9Q4YMSdbV1f2YnZ1tM3To0AfccVlbWz/X1dX9qK2tXdLZfhcsWHAyICAg\nYvjw4YlmZmbv5OXl6w8dOrQcAODjx4+606dP/0NFRaXKysoqx8vLKz4gICCCzWbT9+/fv8rAwOCD\nhobG5/v37w9r78O7rXPY2XsgNDQ0NCgo6LSamlrF5cuXp3V0PtoyZMiQ5MbGRllOq97S0vJvOTm5\nhtatfO59rly58sDly5enqaurl3/99dc/83os7T3XUUs0JibG18bGJltJSalm1apV+y9cuDBTRkam\nSUVFperw4cPLgoODjxsaGhYqKirWcnd1cu8jMDAw3NjY+L2BgcEHGxub7CFDhiRz73PhwoUncnJy\nrNTU1CqmTJlypXUMGzdu3Obs7PzEzs4uy87OLsvZ2fnJxo0bt/ESf2tdPXfc/1dSUqqJjY31uX79\nup+enl6xhYXFq/j4eK/Wr9u4ceO2SZMmXfXx8YmtqKhQa+t3wflZQkKCFRUVNSEjI8PBzMzsnZaW\nVunixYt/r66uVu7o/H/69Emnrfc7r+ehq2gEIfTDhBFCCPGJQFv6LBZLgsFgpPv5+V3nfnzfvn1r\n6HQ6u7y8XF2Q+0cIIfRvAk36Bw4cWGllZZXD/XWooKDAKDY21of7Cj5CCKHeIbCkX1hYaBgdHT0u\nODj4OPfFj9WrV/+0e/fubwW1X4QQQu0T2FjQVatW7d+zZ89azkUMALL4maGhYaGdnV1We+v1hVok\nCCEkjHgZzSWQln5UVNQEbW3tEgaDkc4Jor6+Xn7Hjh0bvv/++y2dBSio24+FYdmyZQvlMeCx4fHh\n8YnewiuBtPSTkpLcIyMj/aOjo8c1NjbKVldXKwcGBobn5eWZ2NvbZwKQ3T9OTk5PU1NTXXkZ4ocQ\nQqjnBJL0d+zYsWHHjh0bAAASEhI89+7d+83ly5encb/G1NQ09+nTp07cY9URQggJVq/cnNXZjU/i\nxMvLi+oQBEaUjw0Aj6+vE/Xj45XQ3ZxFo9EIYYsJIYSEHY1GA4KqC7kIIYSEEyZ9hBASI5j0EUJI\njGDSRwghMYJJHyGExAgmfYQQEiOY9BFCSIxg0kcIITGCSR8hhMQIJn2EEBIjmPQRQkiMYNLvZVVV\nAC0tVEeBEBJXAps5C/2vlBSAMWMAmEwAV1eAYcPIZfBgAAUFqqNDCIkDrLLZS7KzAUaNAjhxAsDd\nHSApCeD+fXLJzASwsfnnQ8DDA0BDg+qIEUJ9Ca9VNjHp94I3bwA8PQH27QOYOfN/n29oAEhN/edD\n4NEjACOjfz4Ehg0jf0YIofZg0hcShYVk0g4JAVi8mLd1mEyy9X//PkBiIsCDBwDy8v/+EBg0CIDW\n6a8XISQuMOkLgdJSgOHDARYsAFi7tvvbIQiAly//+SZw/z5AbS3A0KH/fAgwGACSeIUGIbGFSZ9i\nVVUAI0eSF263b+f/9gsL//0h8P49gJvbPx8Cbm7ktwOEkHjApE+h+noy2dvZARw61DvdMOXlAA8f\n/vMhkJVF7t/LC+DbbwHU1AQfA0KIOpj0KdLcDDBxIoCWFsCpUwB0iu6EqK8nh4iePw9w5w7AxYsA\nLi7UxIIQEjxM+hRgsQBmzSJvvvrjD+HpY//zT4ClSwE2bQL46iu8AIyQKMKk38sIAmDRIoC8PICo\nKABZWaoj+re3bwFmzAAwNSXvFVBRoToihBA/8Zr0sQwDHxAEwJo1AM+fA1y9KnwJHwCgf3+yz19H\nB8DRESAtjeqIEEJUwKTPBz/8QPabR0cDKCpSHU37ZGUBfv0VYMcOAF9fgMOHyQ8shJD4wO6dHjpw\ngEykiYkAurpUR8O716/J7h4LC4BjxwCUlamOCCHUE9i90wtOnSJLK8TG9q2EDwAwYABAcjI5lNPJ\nCSAjg+qIEEK9AZN+N/35J1la4fZtAGNjqqPpHllZgCNHALZuBfDxATh6FLt7EBJ12L3TDTExAAEB\n5L8MBtXR8MfLlwDTp5PVPo8eBVBSojoihFBXYPeOgDx8CDB3LsBff4lOwgcAGDiQrO4pL0/exJWV\nRXVECCFBwKTfBenpAJMnA5w5Q9a8FzXy8gDHjwN89x2Atzf5fyH/0oUQ6iLs3uHRy5dkHZtffgGY\nOpXqaATv77/J7h5HR4DffsOZvRASdti9w0fv3wOMHk2ObxeHhA8AYGlJ1u6RkCC7e54/pzoihBA/\nYNLvxKdP5MiW1asB5s+nOprepaAAEBZGVun08iKHqCKE+jbs3ulARQWZ7KZOBdi8mepoqJWdTXb3\nDB5M3oyGtfoREi7YvdNDtbUA48aRFzQ3baI6GurZ2AA8fkxO5ejqSvb5I4T6HoEmfRaLJcFgMNL9\n/PyuAwCsXbt2j6Wl5d/29vaZU6ZMuVJVVSWUtR4bGwEmTQKwtibvuMVSxCRFRYDwcIBVq8hpICMi\nqI4IIdRVAk36Bw4cWGllZZVDo9EIAIDRo0fffv78uXVmZqa9hYXFq507d4YIcv/dwWQCzJwJoK5O\n3qSECf/faDSAhQsB7t4F2LYNIDgYoKGB6qgQQrwSWNIvLCw0jI6OHhccHHyc08/k4+MTS6fT2QAA\nbm5uKYWFhYaC2n93sNnkJOZNTeRYfAkJqiMSXnZ2AE+ekDN0ubmRQ1oRQsJPYHM7rVq1av+ePXvW\nVldXt1m/8eTJkwtmzZp1vq3nQkND////Xl5e4OXlJZAYuREEwIoVALm5ZHkFaWmB77LPU1ICOHsW\n4PffAYYOBTh4kJw5DCEkePHx8RAfH9/l9QSS9KOioiZoa2uXMBiM9Pj4eK/Wz2/fvv07aWnp5tmz\nZ59ra33upN9bNm0CSEoCiIvDkSldQaMBLFlCXtydMYMsMX3wIICUFNWRISTaWjeIv//+e57WE0j3\nTlJSkntkZKS/qalp7qxZs87fu3dvZGBgYDgAwKlTp+ZFR0ePO3v27BxB7Ls79uwhq2bGxOA0gt3F\nYAA8fQqQnw8wZQr28yMkrAQ+Tj8hIcFz796931y/ft3v1q1bY9asWbMvISHBU1NTs6zNgHp5nP7J\nk+TMV/fvAxgK1RWGvqmlBWDePIDCQoDISPwQRai3CM04fYIgaJzRO8uXLz9UW1ur6OPjE8tgMNKX\nLVt2WND778zOnQAXL2LC5xcpKXIop50dwIgRACUlVEeEEOIm1nfkFhUB2NoClJYC0PE2Nb4iCIDv\nvwc4d46cWayvTjSDUF/Ba0tfYKN3+oLERIBhwzDhCwKNBhAaSt7vMGwYwK1bAFZWVEeFEBLrpJ+Q\nQN5ZigRnxQpyHt6RIwGuXycrdiKEqCPWbdzERABPT6qjEH0BAQDHjgGMH0/eyYsQoo7Y9umXlgKY\nmwN8/gwgKdbfd3pPQgJZqfPoUXIGMoQQ/2CfficSE8kpDzHh9x5PT7Jvf/x4smz1ggVUR4SQ+BHb\nlIddO9RwdCRb/KNHk4l/zRqqI0JIvIhtnz5exKWOhQV5M9zx4wAbNuDk6wj1JrHs06+oAOjXj+zP\nx8Jq1CkrAxg7FsDJiZyNC6uaItR9QnNHrjB68IAsB4wJn1qamgD37gG8fg0wezZAczPVESEk+sQy\n6WN/vvBQUgK4cYNM+H5+AHV1VEeEkGgTy6SfkIBJX5jIygL88QeAgQGAjw9AeTnVESEkusQu6dfU\nAOTkkPXfkfCQlAQ4cQLA3Z38QC4qojoihEST2A3ZTEoiLxzKylIdCWqNRiPnNtDQIOv13L4N0L8/\n1VEhJFrELunjUE3hRqMBhISQhdqGDwe4eZMs04wQ4g+x697Bi7h9w5IlAD/9RPbxJyVRHQ1CokOs\nxunX1wNoawN8+gSgoCCQXSA+i4khC7aFhwOMGUN1NAgJLxyn34ZHj8hJUzDh9x2+vgBXrwIEBQFc\nuEB1NAj1fWLVp49dO32Tuzs5+9a4cQCVlQBffkl1RAj1XTwl/czMTPu8vDwTJpMpCUB2wUyZMuWK\nYEPjv4QEgLVrqY4CdYedHfmh7eNDls/YsIG86IsQ6ppO+/Tnz58f9uzZM1tra+vndDqdzXk8LCxs\nvkACElCfflMTORTwwwcAFRW+bx71kuJiskKnjw/A3r041SVCHLz26Xea9K2srHKeP39uTaPReuWK\nr6CS/oMHACtXAjx9yvdNo15WUUHW5B84kJyRC+dEQIiPF3JdXFwe5+Tk9PkprbH0guhQUyP7+IuL\nyZm4GhupjgihvqPTln58fLyXv79/pK6u7kcZGZkmALI1npWVJZBbZgTV0vf1BVi2DGDiRL5vGlGk\nuRlgzhyAqipyhI+8PNURIUQdvnXv9O/f/+3+/ftX2djYZHP36ZuYmOT1PMw2AhJA0m9pIfvzc3PJ\nf5HoYDIBgoMB3r0DiIoCUFamOiKEqMG3OXK1tbVL/P39I/kTFjXS0wFMTDDhiyJJSYCTJwGWLwfw\n9ibn4MXfM0Lt6zTpMxiM9NmzZ5/z8/O7Li0t3QzQ94ZsYr0d0UanA/zyC8C6dQBeXmR/v64u1VEh\nJJw6Tfr19fXy0tLSzbdv3x7N/XhfSvqJiQCBgVRHgQSJRgP48UdyUpbhwwHu3gUwMqI6KoSET7t9\n+ufOnZvt6+sbo6Gh8blXA+Jznz6LRU7L9+IFgI4O3zaLhNhPPwEcOkS2+M3NqY4God7R4z79/Pz8\nftOnT/+jublZetSoUXfGjh1709XVNbW3xuvzS1YWmewx4YuP1avJ+kpeXmRNfqs+P+AYIf7pdPRO\ndXW18p07d0bFxMT4pqamug4aNOjF2LFjb/r6+sbo6Oh84ntAfG7pHzhAzpR19CjfNon6iDNnyLIb\nN24AODpSHQ1CgsW3IZutPX/+3PrmzZtjb9++Pbp1Pz8/8DvpT5kCMHUqOZ4biZ8rV8gCbVevkoXb\nEBJVPU76EydOvObh4fHQw8PjoYuLy2POyB1B42fSJwgALS1yyCZe1BNft26RNfkvXgQYOZLqaBAS\njB4n/evXr/slJSW5JycnD8nMzLQfNGjQC3d396ShQ4c+cHd3TxJE1w4Af5P+8+cAfn7kjTtIvCUk\nkCUbwsKjm/MvAAAgAElEQVTIuj0IiRq+du+wWCyJ9PR0Rnx8vNeRI0e+zM3NNWWxWBJ8ibR1QHxM\n+ocPAzx+TP6hI5SSAuDvT47pnz6d6mgQ4i++3JFbWlqqlZSU5J6UlOSekpLi1tjYKDtq1Kg7Q4YM\nSeZfqIKTmIhT7KF/uLmRo3nGjiWnzgwKojoihHpfuy39AQMGvFZRUamaOnXqn25ubimurq6pioqK\ntQIPiE8tfYIA0NcHePgQwMyMD4EhkfHiBVmTf/16sggfQqKgx6WVFyxYcFJfX7/ozz//nHrs2LFF\nYWFh8588eeLclW4dFoslwWAw0v38/K4DAJSXl6v7+PjEWlhYvBo9evTtyspKVV631VVv3pB1WUxN\nBbUH1FcNGkT28e/dC7BnD9XRINS7eOrTf/ny5cDk5OQhSUlJ7g8ePBiqqalZlpiY2Gk1m59++mn1\n06dPnWpqapQiIyP9v/32292amppl33777e4ff/xxXUVFhdquXbvW/ysgPrX0jx8HiIsDOHu2x5tC\nIqqwEGDUKIAvvgAIDcXpF1HfxrdJVN69e2eWmprqmpKS4paSkuJWUlKiraysXN3ZeoWFhYbR0dHj\ngoODj3MCiYyM9A8KCjoNABAUFHT66tWrk3g5mO7ASVNQZwwNyes+V68CrFlDdgkiJOravZA7efLk\nvx49ejRYWVm52sPD46G7u3vSihUrDg4aNOgFL6UYVq1atX/Pnj1rq6ur/7/C+adPn3Q4Qz11dHQ+\nffr0qc3iCKGhof//fy8vL/Dy8urCIZESEwE2buzyakjMaGuT3wjHjiVv4vrtN5x3F/UN8fHxEB8f\n3+X12u3euXbt2kR3d/ckLS2t0q5uNCoqasLNmzfH/vrrr/+Jj4/32rdv35rr16/7qampVVRUVKhx\nXqeurl5eXl6u/q+A+NC9k5cHMHgwOZ0efmVHvKipIe/pMDIih/jivLuor+nxkM2JEyde6+7Ok5KS\n3CMjI/2jo6PHNTY2ylZXVysHBARE6OjofPr48aOurq7ux+LiYj1tbe2S7u6jI4mJZHldTPiIV0pK\nANHRZMmOGTMAzp8HkJGhOiqE+E8gX2R37NixoaCgwCg3N9f0woULM0eOHHkvIiIiwN/fP/L06dNB\nAACnT58OmjRp0lVB7B8nTUHdIS9P9u8DAEyaRI7lR0jU9ErvJecawPr163fFxsb6WFhYvLp3797I\n9evX7xLE/hIT8SIu6h4ZGYBLl8g5GMaNI7t9EBIlPA3Z/PDhg0FeXp4Ji8WSIAiCRqPRiOHDhycK\nJKAe9ukXFQHY2gKUluIFOdR9bDZ541Z6OlmwTU2t83UQohLfJkZft27djxcvXvzCysoqR0JCgsV5\nXFBJv6cSEgCGDcOEj3qGTidH8nzzDcCIEWT5Bm1tqqNCqOc6belbWFi8evbsma2MjExTrwTUw5b+\n0qUAFhYAq1bxMSgktggC4PvvAS5cALhzhxzbj5Aw4tvNWf3793/b3NwszZ+wBA8v4iJ+otHIu3UX\nLiTfV1imG/V1nXbvyMnJNTg4OGR4e3vf5bT2aTQacfDgwRWCD69rSkoAPnwAcHCgOhIkatauJefd\n9fQEuHkTwMaG6ogQ6p5Ok76/v3+kv79/JPdjwjo5+v37AB4eABICqfSPxN2yZeQFXW9vgL/+wukX\nUd/U5TlyBa0nfforVgAYGACsW8fnoBDiwpl+MTycLN+AkDDo8cxZ06dP/+OPP/6Ybmtr+6yNjRNZ\nWVl2fIjzfwPqQdJ3cAA4coQswYCQICUnkzdw/fQTwJw5VEeDEB+SflFRkb6+vn5RXl6eSVvPm5iY\n5PUowvYC6mbSr6gA6NcPoLwcQEpKAIEh1Mrz5+TMbGvXkt8yEaJSj8fp6+vrFwEILrnz24MHZAsf\nEz7qLdbW5HWk0aPJmwG3bsV6T0j4icwtTDhUE1HBxIRscERHk/eIsFidroIQpUQq6WO9HUQFTk3+\n168BZs0CaOqV2xgR6p4uJf3y8nJ1QV3A7YmaGoC//wZwdaU6EiSulJUBbtwgW/oTJmChNiS8Ok36\nnp6eCdXV1crl5eXqTk5OT4ODg4+vWrVqf28Ex6uHDwGcnABkZamOBIkzWVmyQqepKTmWv6yM6ogQ\n+l+dJv2qqioVZWXl6itXrkwJDAwMT01Ndb1z586o3giOV1hKGQkLCQmAo0cBfHwAhg4FyM+nOiKE\n/q3TpM9isSSKi4v1Ll26NGP8+PE3AITvjly8iIuECY0GsH07wJIlZOL/+2+qI0LoH50m/c2bN2/1\n9fWN6d+//1tXV9fUt2/f9h8wYMDr3giOF/X1AJmZAEOGUB0JQv+2ahXAtm1kaeaUFKqjQYjU58sw\n3LsHsHEjQFKSAINCqAeiogDmzwc4e5Yc04+QIPCttPK33367u7q6WrmlpUXK29v7rqamZllEREQA\nf8LsOezaQcJuwgSyQFtAAHmhFyEqdZr0Y2JifJWVlaujoqImmJiY5L19+7b/nj171vZGcLzAi7io\nLxg6FCA2FmD1aoDDh6mOBomzTksrM5lMSQCAqKioCdOmTbusoqJSJSwXcpuaAB4/JsspIyTs7Oz+\nXbZh82Ys24B6X6ctfT8/v+uDBg168fTpUydvb++7JSUl2rKyso29EVxnHj8GGDSIvDEGob7A1JQs\n23D1Klmkjc2mOiIkbni6kFteXq6uoqJSJSEhwaqrq1Oorq5W1tPTKxZIQF24kLt9O8Dnz2R5W4T6\nkqoqAH9/AH19gNOnAaT7zISkSFjx7UJuc3OzdERERMCMGTMuTZ069c+TJ08u0NTUFIp7DbHeDuqr\nVFTIyVjq68nkX1dHdURIXHTa0l+4cOEJJpMpGRQUdJogCFpERESApKQk8/jx48ECCYjHln5LC4CG\nBkBeHoC6uiAiQUjwmEyAxYvJG7hu3MD3Muq+Hk+iwmFnZ5fVushaW4/xC69JPyUFYNEigKwsQUSB\nUO8hCHKKzxs3AGJiAAwNqY4I9UV8696RlJRkvnnzxpzz89u3b/tLSkoyexpgT+FQTSQqaDSA3bsB\n5s0jh3a+fEl1REiUdTpkc8+ePWtHjhx5z9TUNBcAIC8vzyQsLGy+4EPrWEICQFAQ1VEgxD9r1wJo\nagJ4eQFcvw7g7Ex1REgU8TR6p7GxUfbly5cDaTQaYWFh8YozZl8gAfHQvcNikf35L18C6OgIIgqE\nqBMZCRAcDHD+PFmiGSFe8K1Pvy1GRkYFBQUFRt2KrBO8JP30dIDZs7F6IRJdCQkA06eTd+9Om0Z1\nNKgv6PHE6MIM6+0gUefpCXD7Nlm3Jy8PYM0avHsX8UefnCMXL+IiceDgAJCcDBARQU66zqR8+AQS\nBe1279ja2j5rb6WXL18ObG5uFsg9hJ1177DZ5ETUGRk4tA2Jh5oagC++IN/7ly5h2RHUth736efl\n5Zl0tKKJiUletyLrRGdJPzsbYOJEgLdvBbF3hIQTk0nW6nnwgKzP368f1REhYdPjPn1BJfWewq4d\nJI4kJQF+/RVg/35ylrjISAAnJ6qjQn1Rn+vTx4u4SFzRaGQ9/l9+ARg7lkz8CHVVn5oukSDIqoRJ\nSWSJWoTE1ePHAJMmAXz7LdntgyN7EN/KMBw4cGAlL49xa2xslHVzc0txcHDIsLKyygkJCdkJAJCa\nmurq6uqaymAw0l1cXB4/fvzYpbP9c3v9mvyaa2LSlbUQEj0uLmTj59gxMunjyB7EM4IgOlwcHBzS\nWz9mb2+f0dl6dXV18gRBQEtLi6Sbm9uj+/fvD/Xy8oq7deuWL0EQEB0dPdbLyyuu9XpkSG07dowg\n5sxp92mExE5lJUH4+BDEuHEEUV1NdTSISv/NnZ3m9HYv5J4/f37WuXPnZufm5pr6+fld5zxeU1Oj\npKGh8bmzDxN5efl6ALIeP4vFklBTU6vQ1dX9WFVVpQIAUFlZqWpgYPChKx9QWD8foX9TUSGrcy5b\nRl7riooCMDCgOiokzNpN+u7u7kl6enrFpaWlWt98881e4r99RUpKSjX29vaZnW2YzWbTHR0d096+\nfdt/6dKlv1lbWz/ftWvX+qFDhz745ptv9rLZbHpycvKQttYNDQ39//97eXmBl5cXEASZ9Ddu7PpB\nIiTKpKQAfv8dYM8egMGDyWJtDg5UR4UELT4+HuLj47u+Ii9fB3qyVFZWqri5uT2Ki4vz8vb2vnPl\nypXJBEHApUuXpo8aNSq29euhne6d3FyC0NEhCDabP1+FEBJFf/xBEFpaBBEVRXUkqLcBj907nV7I\nTU5OHuLi4vJYUVGxVkpKqoVOp7OVlZWref1QUVFRqRo/fvyNJ0+eOKemprpOnjz5LwCAadOmXU5N\nTXXldTucoZo4SgGh9k2bRg7lXLSIHNePUGudJv2vvvrql3Pnzs0eMGDA68bGRtkTJ04sXLZs2eGO\n1ikrK9OsrKxUBQBoaGiQi42N9XFwcMgwNzd/k5CQ4AkAcO/evZEWFhaveA0Ub8pCiDeDBwM8fEiO\n51+1iixFjhBHp+P0nZycnj59+tSJe4pEBweHjIyMjHZ7DZ89e2YbFBR0ms1m09lsNj0gICBi7dq1\ne548eeL8n//859empiYZOTm5hsOHDy9jMBjp/wqonXH65uYAf/0FYGvbvQNFSNxUVABMnQqgpARw\n7hyAggLVESFB4ls9/eHDhyfGxsb6BAcHH9fT0yvW1dX9ePr06aDMzEx7vkXLHVAbSf/DBwB7e4CS\nEgB6n7uHGCHqNDcDLFkC8OwZeYFXT4/qiJCg8O3mrPDw8EA2m03/5ZdfvpKXl68vLCw0/PPPP6fy\nJ0zeJCYCDBuGCR+hrpKWBjh5EmDKFLLb51m7tXORuOCpDEN9fb18QUGB0cCBAwU+ZXNbLf0vvwQY\nOJDsn0QIdc+FC+TduxERAL6+VEeD+I1vLf3IyEh/BoOR7uvrGwMAkJ6ezvD39+/VUk94ERehnps5\nk7wuFhQEcPQo1dEgqnSa9ENDQ0NTUlLc1NTUKgAAGAxG+rt378wEHxqppASgqIjs00cI9YyHB1mT\n/6efANauJSdmQeKl06QvJSXVoqqqWvmvlej0XnurJCaSb1QJid7aI0KizdycLNaWmgowYwZAfT3V\nEaHe1GnSt7a2fn727Nk5TCZT8vXr1wOWL19+yN3dPak3ggPArh2EBEFDg5x4XU4OYMQIgE+fqI4I\n9ZZOk/6hQ4eWP3/+3FpGRqZp1qxZ55WVlat//vnnr3sjOACcNAUhQZGRAQgPBxg3jhzZk5NDdUSo\nNwj1JCrl5QDGxuS/UlIUB4aQCDtzhpyV6+xZAB8fqqNB3dHjOXK5yyn/NxHTuH+OjIz073mYHXvw\ngGyBYMJHSLDmziUnW//iCzL5f/MN1rkSVe0m/TVr1uzjJPtFixYdO378eDAn8dNotF75eoD9+Qj1\nnuHDyYu7U6YAPHlC3tSFpRtED0/dOwwGIz09PZ3RC/H8q3vHxYUcWjZsWG/sGSEEANDYSE7K8vgx\nOa7f3JzqiBAv+HZzFlWqqwH+/ptM/Aih3iMrC3DiBJn4PTwAbt6kOiLET+1275SXl6sDABAEQWOx\nWBKcnznU1dXLBRlYUhKAszP5BkQI9S4aDWDpUrKq7RdfkB8AISFY/0oUtNu9Y2JiksfpuycIgsbd\nj0+j0QhB3ZXL6d4JCSEv4G7dKoi9IIR4VVRETs6iowNw+jSAsjLVEaG28K20cm/jJH0PDzLhe3tT\nHRFCqKkJYOVK8r6Zq1fJAohIuPTppF9XR4CWFll3B0cPICQ8jh8H2LAB4NgxgIkTqY4GcevxOH0q\nJSeTBdYw4SMkXIKDyX7+6dMBnj4FCA3Ffv6+Rih/XTg+HyHh5eZGDueMjwfw9weorOx0FSREhDLp\nY70dhISbjg7A3bsA/fuTw6qfP6c6IsQroezTV1AgoKgIRwkg1BdERJClG377jRzlg6jRp/v0Bw3C\nhI9QXxEQAGBt/U/5hu3bcf4LYSaU3TvYn49Q3+LoSCb8J0/IUs2fP1MdEWqPUCb9CROojgAh1FWa\nmgC3bgHY2ZH9/BkZVEeE2iKUffrCFhNCqGsuXABYvhzg558B5syhOhrx0KdvzhK2mBBCXZeVRfbz\n+/kB7N6N82IIWp+vsokQ6tvs7Mj6/C9ekLNxlZRQHRECwKSPEBIgdXWAqCiyRLOLC3lTF6IWdu8g\nhHrFlSsAS5aQXT3z51MdjejBPn2EkNDJyQGYPBlg1CiA/fsBpKWpjkh0YJ8+QkjoWFmR/fwFBQAj\nRwIUF1MdkfjBpI8Q6lUqKmRNfl9f8qauW7eojki8YPcOQogyCQkAc+eSUzLu2IHdPT2B3TsIIaHn\n6QmQng7w6hU5wufNG6ojEn2Y9BFClNLUBLh2jSzcNmQIwLlzVEck2rB7ByEkNNLTAWbOBHB3Bzh0\nCEBRkeqI+g5Ku3caGxtl3dzcUhwcHDKsrKxyQkJCdnKeO3To0HJLS8u/bWxsstetW/ejIPaPEOqb\nGAxyGkYAACcnLNomCAKppy8rK9sYFxc3Ql5evp7JZEoOHTr0wYMHD4a2tLRIRUZG+mdlZdlJSUm1\nlJaWagli/wihvktRESAsjOzm8fEB2LSJLN5G67QNi3ghsD59eXn5egCA5uZmaRaLJaGmplZx5MiR\nL0NCQnZKSUm1AABoaWmVCmr/CKG+bfZsgEePyJm5Jk4EKCujOiLRILCZs9hsNt3R0THt7du3/Zcu\nXfqbtbX181evXlkkJiYO37Bhww5ZWdnGvXv3fuPs7Pyk9bqhoaH//38vLy/w8vISVJgIISHWvz/A\nw4cAGzaQXT9nzuAkSxzx8fEQHx/f9RUJghDoUllZqeLm5vYoLi7Oy8bG5tmKFSsOEAQBqampLqam\npu9av54MCSGE/i06miB0dQli82aCaGmhOhrh89/c2WlOFviQTRUVlarx48ffePLkibOhoWHhlClT\nrgAAuLi4PKbT6ezPnz9rCDoGhFDfN3YsQFoaQFISWcKhoIDqiPomgST9srIyzcrKSlUAgIaGBrnY\n2FgfBoORPmnSpKv37t0bCQDw6tUri+bmZmkNDQ2cTRMhxBM9PYCYGHIeXmdnspwD6hqB9OkXFxfr\nBQUFnWaz2XQ2m00PCAiI8Pb2vjt8+PDEBQsWnLS1tX0mLS3dHB4eHiiI/SOERBedDrB+PYCXF8Cs\nWQCxsQD79gHIylIdWd+AN2chhPqsykqAxYsBXr4k5+W1tKQ6Iupg7R2EkMhTVQW4eBHgq68Ahg8H\nOHECANuMHcOWPkJIJOTkkNU6ra0Bjh4lSziLE2zpI4TECmeCFnV1ckx/SgrVEQknbOkjhETOlSsA\nS5cCrF4NsHYtefFX1OEcuQghsfb+PcCcOQDy8gDh4QC6ulRHJFjYvYMQEmvGxgDx8QBubuS0jLdv\nUx2RcMCWPkJI5MXFkZO0TJ8OsH072foXNdjSRwih/xoxAiAzE+DTJwAHB7KUg7jClj5CSKz8+Sc5\nrn/uXICtWwHk5KiOiD+wpY8QQm2YOhUgKwsgL4/s6xe3oZ3Y0kcIia1LlwBWrACYPx8gNBRARobq\niLoPW/oIIdSJGTPIvv6XL8k5eZ/8z5ROogeTPkJIrOnokP38GzYAjB9Pzsnb3Ex1VIKDSR8hJPZo\nNHJO3owMsuXv7AyQnk51VIKBSR8hhP5LTw/g2jWAb74B8PUF+P57gJYWqqPiL0z6CCHEhUYDCAwk\nW/opKQCuruRoH1GBSR8hhNpgYABw4wbA8uUA3t7knbxMJtVR9RwO2UQIoU7k5wMEBwOUlwOcPk3W\n7Bc2OGQTIYT4pF8/ckL2xYsBPD0Bfvyx77b6saWPEEJdkJcHsHAhQF0dwKlTAIMGUR0RCVv6CCEk\nACYmALGxAEFBAEOHAuzdC8BiUR0V77CljxBC3fTuHcCCBeTNXKdOAVhYUBcLtvQRQkjAzMwA7t0D\nmDULwN0d4OefAdhsqqPqGLb0EUKID968AZg3j5yP9+RJAHPz3t0/tvQRQqgXmZsDJCQATJ4MMHgw\nwC+/CGerH1v6CCHEZy9fkuWa9+wB8PDonX3y2tLHpI8QQgJAEGRJh96C3TsIIUSh3kz4XYFJHyGE\nxAgmfYQQEiOY9BFCSIxg0kcIITGCSR8hhMQIJn2EEBIjmPQRQkiMYNLvZfHx8VSHIDCifGwAeHx9\nnagfH68EkvQbGxtl3dzcUhwcHDKsrKxyQkJCdnI/v2/fvjV0Op1dXl6uLoj9CzNRfuOJ8rEB4PH1\ndaJ+fLySFMRGZWVlG+Pi4kbIy8vXM5lMyaFDhz548ODB0KFDhz4oKCgwio2N9TE2Nn4viH0jhBBq\nn8C6d+Tl5esBAJqbm6VZLJaEurp6OQDA6tWrf9q9e/e3gtovQgihDhAEIZCFxWLR7e3tMxQVFWvW\nrl27myAIuHr16sSvv/56P0EQYGJikvv582f11usBAIELLrjggkvXF15ys0C6dwAA6HQ6OyMjw6Gq\nqkrF19c3Jjo6etzOnTtDbt++PZrzmrYqwvFSJQ4hhFD3CHz0joqKStX48eNvpKWlOebm5pra29tn\nmpqa5hYWFho6OTk9LSkp0RZ0DAghhEgCSfplZWWalZWVqgAADQ0NcrGxsT5DhgxJ/vTpk05ubq5p\nbm6uqaGhYWFaWpqjtrZ2iSBiQAgh9L8E0r1TXFysFxQUdJrNZtPZbDY9ICAgwtvb+y73a2g0GiGI\nfSOEEOqAoC7kdme5efPmmIEDB74wNzd/vWvXrnVUx8PPZf78+Se1tbU/2djYPKM6FkEs+fn5Rl5e\nXnFWVlbPra2tsw8cOLCC6pj4tTQ0NMi6urqm2NvbZ1haWuasX79+J9UxCWJhMpkSDg4O6RMmTLhO\ndSz8XoyNjfNsbW2zHBwc0l1cXFKpjoffS0VFherUqVMvDxo06G9LS8uc5OTkwe29lvJgOQuTyZTo\n37//m9zcXJPm5mYpe3v7jJycHEuq4+LXkpiYOCwtLY0hqkm/uLhYNz093YEgCKipqVG0sLB4KUq/\nv7q6OnmCIKClpUXSzc3t0f3794dSHRO/l3379q2ePXv2WT8/v0iqY+H30t5oQVFZAgMDT584cWIB\nQZDv0crKSpX2Xis0ZRhSU1Ndzc3N35iYmORJSUm1zJw588K1a9cmUh0XvwwbNuy+mppaBdVxCIqu\nru5HBweHDAAARUXFWktLy7+Lior0qY6LX9q770RUFBYWGkZHR48LDg4+TojoCDpRPa6qqiqV+/fv\nD1uwYMFJAABJSUmmiopKVXuvF5qk/+HDBwMjI6MCzs+GhoaFHz58MKAyJtQ9eXl5Junp6Qw3N7cU\nqmPhFzabTXdwcMjQ0dH5NGLEiDgrK6scqmPip1WrVu3fs2fPWjqdzqY6FkGg0WjEqFGj7jg7Oz85\nduzYIqrj4afc3FxTLS2t0vnz54c5OjqmLVq06Fh9fb18e68XmqSPF3ZFQ21treK0adMuHzhwYKWi\nomIt1fHwC+e+k8LCQsPExMTh8fHxXlTHxC9RUVETtLW1SxgMRrqotoYfPnzokZ6ezrh58+bYX3/9\n9T/3798fRnVM/MJkMiXT0tIcly1bdjgtLc1RQUGhbteuXevbe73QJH0DA4MPBQUFRpyfCwoKjAwN\nDQupjAl1TUtLi9TUqVP/nDt37plJkyZdpToeQeDcd/LkyRNnqmPhl6SkJPfIyEh/U1PT3FmzZp2/\nd+/eyMDAwHCq4+InPT29YgAALS2t0smTJ/+VmprqSnVM/GJoaFhoaGhY6OLi8hgAYNq0aZfT0tIc\n23u90CR9Z2fnJ69fvx6Ql5dn0tzcLH3x4sUv/P39I6mOC/GGIAjawoULT1hZWeV8/fXXP1MdDz+1\ndd8Jg8FIpzouftmxY8eGgoICo9zcXNMLFy7MHDly5L3w8PBAquPil/r6evmamholAIC6ujqF27dv\nj7a1tX1GdVz8oqur+9HIyKjg1atXFgAAd+7cGWVtbf283RWovurMvURHR4+1sLB42b9//zc7duwI\noToefi4zZ848r6enVyQtLd1kaGhYcPLkyflUx8TP5f79+0NpNBrb3t4+w8HBId3BwSH95s2bY6iO\nix9LVlaWLYPBSLO3t8+wtbXN2r1791qqYxLUEh8f7ylqo3fevXtnam9vn2Fvb59hbW2dLWq5hSAI\nyMjIsHd2dn5sZ2eXOXny5Csdjd6hEQR2pSOEkLgQmu4dhBBCgodJHyGExAgmfYQQEiOY9BFCSIxg\n0kfdYmJiksfvie07u5mrqqpK5bffflvK+bmoqEh/+vTpf/Bj3z///PPXDQ0Ncp3FcvTo0SUREREB\n7W0nPj7ey8/P7zo/YuqOp0+fOq1cufIAVftHfQDVQ41w6ZuLIApYKSoq1nT0fG5uromgCtaZmJjk\nlpWVafAaS3tLXFyclyhWqcRFdBZs6aMeycvLM7G0tPx78eLFv9vY2GT7+vrGNDY2ygIAHDx4cIW1\ntfVze3v7zNmzZ58DAAgNDQ3dt2/fGs76NjY22fn5+f24t1lbW6s4atSoO05OTk/t7OyyIiMj/QEA\n1q9fv+vt27f9GQxG+rp16358//69sY2NTTYAQGNjo+z8+fPD7OzsshwdHdM4ZRJOnTo1b8qUKVfG\njh1708LC4tW6det+bH0MBw8eXFFUVKQ/YsSIOO55HzZu3LjNwcEhY8iQIcmcGd6443/z5o35qFGj\n7jg4OGQ4OTk9fffunRn3dh8/fuzi6OiY9u7dO7PQ0NDQBQsWnBwxYkRc//793x46dGg553VnzpyZ\n6+bmlsJgMNK//PLLI2w2m85isSTmzZt3ytbW9pmdnV3WgQMHVrY+p7NmzTrf+li4v2l0tE9ut27d\nGuPk5PTUwcEhw8fHJ5azblBQ0Onhw4cnmpiY5F25cmXKN998s9fOzi5r7NixN5lMpsCmWkUCRvWn\nDi59c+G09HNzc00kJSVbMjMz7QiCgBkzZlw8c+bMHIIgQF9f/0Nzc7MUQRBQVVWlTBAEhIaGbtm7\ndyMuWiMAAAVQSURBVO8aznZsbGyevX//vh9B/NO6ZjKZEtXV1UoEQUBpaammubn5a4IgIC8vz5i7\npc/d8t+7d++ahQsXHicIAl68eDGwX79+7xsbG2XCwsLmmZmZva2urlZqbGyUMTY2zissLDRo73g4\nP9NoNHZUVNR4giDg22+//XHbtm3fceLft2/faoIgwNXVNeXq1asTCYKApqYm6fr6ejlOS//hw4fu\nTk5OTwoKCgwJgoAtW7aEenh4PGhubpYqKyvT0NDQKGMymRI5OTmWfn5+kUwmU4IgCFi2bNmv4eHh\nAU+fPnX08fG5zYmHc/7aOqfcC/c3jfb2yf36kpISLSMjo/y8vDxjgiDrsnPWHTZsWCKTyZTIzMy0\nk5OTq79165YvQRAwefLkK5zjxqXvLdjSRz1mamqaa2dnlwUA4OTk9DQvL88EAMDOzi5r9uzZ586e\nPTtHQkKCxev22Gw2PSQkZKe9vX2mj49PbFFRkX5JSYk20UExsIcPH3rMnTv3DADAwIEDXxobG79/\n9eqVBY1GI7y9ve8qKSnVyMjINFlZWeVw4uuItLR08/jx42+0PiaO2tpaxaKiIv2JEyde47xeTk6u\nAQDg77//tlyyZMnRqKioCZz6UTQajRg/fvwNKSmpFg0Njc/a2tolHz9+1L17967306dPnZydnZ8w\nGIz0u3fveufm5pqamZm9e/fundmKFSsOxsTE+CopKdV09Zy2tc9Pnz7pcL/m0aNHgz09PROMjY3f\nAwCoqqpWctYdO3bsTQkJCZaNjU02m82m+/r6xgAA2NraPuPlHCLhhEkf9ZiMjEwT5/8SEhIszlf/\nGzdujP/Pf/7za1pamqOLi8tjFoslISkpyWSz2f//vuN0BXE7e/bsnLKyMs20tDTH9PR0hra2dklb\nr2utvQ+F1vGxWCyJzrYlJSXVwvk/nU5n89qdQaPRCD09vWI5ObmG1kWvpKWlm7nj4GwzKCjodHp6\nOiM9PZ3x4sWLQZs3b96qqqpamZWVZefl5RV/5MiRL4ODg48DtH1OO4qnvX1yx9veeeOsS6fT2d09\nH0j4YNJHAkEQBC0/P7+fl5dX/K5du9ZXVVWp1NXVKZiYmORxkmFaWppjbm6uaet1q6urlbW1tUsk\nJCRYcXFxI96/f28MAKCkpFTDKZzV2rBhw+6fPXt2DgDAq1evLPLz8/sNGjToRVsJra3HlJSUaqqr\nq5V5OS6CIGiKioq1hoaGhZyJfpqammQaGhrkCIKgqaqqVkZFRU0ICQnZmZCQ4NnetjjfQi5fvjyt\ntLRUCwCgvLxcPT8/v9/nz581mEym5JQpU6788MMPm9LS0hzbO6cdxdrZ8bi5uaUkJiYO57Tc+T0i\nCwkf/LRG3cI9/0HruRBoNBrBYrEkAgICIqqqqlQIgqCtXLnygLKycvXUqVP/DA8PD7Sxscl2c3NL\nGThw4MvW25kzZ85ZPz+/63Z2dlnOzs5PLC0t/wYA0NDQ+Ozh4fHQ1tb22bhx46KXLVt2mLPOsmXL\nDi9duvQ3Ozu7LElJSebp06eDpKSkWmg0GtFWfK2PZ/Hixb+PGTPmloGBwYe7d+96tz4+zs/c/4+I\niAhYsmTJ0c2bN2+VlpZuvnTp0gzO89ra2iVRUVETxo4de/PkyZML2tuvpaXl39u2bds4evTo22w2\nmy4lJdVy+PDhZbKyso3z588P43wr2rVr1/r2zmnrY2sr1vZoaWmV/v7774unTJlyhc1m03V0dD7F\nxMT48vI77mi7SHhhwTWEEBIj2L2DEEJiBJM+QgiJEUz6CCEkRjDpI4SQGMGkjxBCYgSTPkIIiZH/\nAxLp4OAIwDpgAAAAAElFTkSuQmCC\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x4db9850>"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.6 , Page no:34"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "hnatural = 10; #heat transfer coefficient for natural \n",
+ "hforced = 50; #heat transfer coefficient for forced\n",
+ "k1 = 0.2; #thermal conductivity\n",
+ "k2 = 0.05; #thermal conductivity\n",
+ "\n",
+ "#result\n",
+ "print\"critical radius of insulation in cm\";\n",
+ "print\"\\n h=10 h=50\";\n",
+ "print\"\\nAsbestos \",k1 *100/ hnatural,\" \", k1*100/ hforced;\n",
+ "print\"\\nMineral wool \",k2 *100/ hnatural,\" \", k2*100/ hforced;"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "critical radius of insulation in cm\n",
+ "\n",
+ " h=10 h=50\n",
+ "\n",
+ "Asbestos 2.0 0.4\n",
+ "\n",
+ "Mineral wool 0.5 0.1\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.7 , Page no:43"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "h=5; #Height\n",
+ "l=10; #Length\n",
+ "t=1; #thickness\n",
+ "k=1.05; #W/m K\n",
+ "q=58; #W/m^3\n",
+ "t1=35; #c\n",
+ "h=11.6; #Heat transfer coefficient\n",
+ "\n",
+ "#calculations\n",
+ "b=t/2;\n",
+ "tmax=t1+q*b*(b/(2*k)+1/h);\n",
+ "\n",
+ "#result\n",
+ "print\"Maximum Temperature =\",round(tmax,3),\"degree c\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Maximum Temperature = 44.405 degree c\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.8 , Page no:47"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "#The bar will have two dimensional variation in temperature\n",
+ "#the differential equation is subject to boundary conditions\n",
+ "x1 = 0; #cm\n",
+ "Tx1 = 30; #C\n",
+ "x2 = 5; #cm\n",
+ "Tx2 = 30; #C\n",
+ "y1 = 0; #cm\n",
+ "Ty1 = 30; #C\n",
+ "y2 = 10; #cm\n",
+ "Ty2 = 130; #C\n",
+ "\n",
+ "#substituting theta = T-30 and using eqn 2.6.11\n",
+ "#putting x = 2.5cm and y = 5cm in infinite summation series\n",
+ "n = 1;\n",
+ "x1 = (1- math.cos ( 3.14*3.14/180 *n))/( math.sinh (2*3.14* 3.14/180 *n))*math.sin(n**(3.14*3.14/180 /2))*math.sinh (n*3.14*3.14/180);\n",
+ "\n",
+ "n = 3;\n",
+ "x2 = (1- math.cos ( 3.14*3.14/180 *n))/( math.sinh (2*3.14* 3.14/180 *n))*math.sin(n**(3.14*3.14/180 /2))*math.sinh (n*3.14*3.14/180);\n",
+ "\n",
+ "n = 5;\n",
+ "x3 = (1- math.cos ( 3.14*3.14/180 *n))/( math.sinh (2*3.14* 3.14/180 *n))*math.sin(n**(3.14*3.14/180 /2))*math.sinh (n*3.14*3.14/180);\n",
+ "\n",
+ "x = x1+x3+x3;\n",
+ "T = x *100+30;\n",
+ "\n",
+ "#result\n",
+ "print \"Steady statetemper a ture= \",T,\"c (roundoff error)\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Steady statetemper a ture= 33.1695223665 c (roundoff error)\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.9 , Page no:51"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "k = 330; #thermal conductivity\n",
+ "a = 95*10**(-6); #thermal expansion coefficient\n",
+ "R = 0.01; #radius in meters\n",
+ "To = 77; #temperature in kelvins\n",
+ "Tf = 273+50; #temperature in kelvins\n",
+ "theta1 = To - Tf; \n",
+ "T = 273+10; ##temperature in kelvins\n",
+ "theta = T - Tf;\n",
+ "h = 20; #heat transfer coefficient in W/m^2 K\n",
+ "\n",
+ "print\"Theta1 =\",theta1,\"K\";\n",
+ "print\"Theta =\",theta,\"K\";\n",
+ "print\"v/A =\",R/2,\"m\";\n",
+ "print\"k/a =\",round((k/a)*10**(-6),4),\"*10^(6)J/m^3 K\";\n",
+ "\n",
+ "time =(k/a)*(R/2)/h*math.log(theta1/theta);\n",
+ "\n",
+ "print\"Time taken by the rod to heat up =\",round(time,1),\"secs\";\n",
+ "\n",
+ "Bi = h*R/k;\n",
+ "\n",
+ "#result\n",
+ "print\"Biot number Bi =\",round(Bi*10**4,2),\"*10^(-4)\";\n",
+ "print\"Since Biot number is much less than 0.1,therefore assumption that internal temper a ture gradients are negligible is a good one\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theta1 = -246 K\n",
+ "Theta = -40 K\n",
+ "v/A = 0.005 m\n",
+ "k/a = 3.4737 *10^(6)J/m^3 K\n",
+ "Time taken by the rod to heat up = 1577.4 secs\n",
+ "Biot number Bi = 6.06 *10^(-4)\n",
+ "Since Biot number is much less than 0.1,therefore assumption that internal temper a ture gradients are negligible is a good one\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.10(1) , Page no:58"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "b = 0.005; #m\n",
+ "t = 5*60; #time, [sec]\n",
+ "Th = 200; #C\n",
+ "Tw = 20 ; #C\n",
+ "h = 150; #W/m^2 K\n",
+ "rho = 2200; #kg/m^3\n",
+ "Cp = 1050; #J/kg K\n",
+ "k = 0.4; #W/m K\n",
+ "ratiob0 = 0.12; \n",
+ "ratiob1 = 0.48; \n",
+ "lambda1b = 1.0498; \n",
+ "\n",
+ "#calculations\n",
+ "theta = Th - Tw;\n",
+ "Biotno = h*b/k;\n",
+ "a = k/( rho*Cp); #alpha\n",
+ "Fourierno = a*t/b**2;\n",
+ "thetaxb0 = theta*ratiob0;\n",
+ "Txb0 = thetaxb0+Tw;\n",
+ "thetaxb1 = theta*ratiob1 ;\n",
+ "Txb1 = thetaxb1+Tw ;\n",
+ "\n",
+ "x = (2*math.sin((lambda1b)))/(lambda1b+((math.sin((lambda1b)))*(math.cos((lambda1b)))));\n",
+ "thetaxb0 = theta*x*(math.exp((-lambda1b**2)*Fourierno));\n",
+ "Txb0 = thetaxb0+Tw;\n",
+ "\n",
+ "#result\n",
+ "print\"Temperature at b=0 is\",round(Txb0,4),\"degree\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Temperature at b=0 is 41.3418 degree\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.10(2) , Page no:58"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "b = 0.005; #m\n",
+ "t = 5*60; #time, [sec]\n",
+ "Th = 200; #C\n",
+ "Tw = 20; #C\n",
+ "h = 150; #W/m^2 K\n",
+ "rho = 2200; #kg/m^3\n",
+ "Cp = 1050; #J/kg K\n",
+ "k = 0.4; #W/m K\n",
+ "ratiob0 = 0.12;\n",
+ "ratiob1 = 0.48;\n",
+ "lambda1b = 1.0498;\n",
+ "\n",
+ "#calculations\n",
+ "theta = Th - Tw;\n",
+ "Biotno = h*b/k;\n",
+ "a = k/( rho *Cp);\n",
+ "Fourierno = a*t/b**2;\n",
+ "thetaxb0 = theta * ratiob0;\n",
+ "Txb0 = thetaxb0 + Tw;\n",
+ "thetaxb1 = theta * ratiob1;\n",
+ "Txb1 = thetaxb1 + Tw;\n",
+ "x = 2*math.sin(((lambda1b)))/(lambda1b + (math.sin(((lambda1b))))*(math.cos((lambda1b))));\n",
+ "thetaxb1 = thetaxb0*(math.cos (lambda1b *1));\n",
+ "Txb1 = thetaxb1+Tw;\n",
+ "\n",
+ "#result\n",
+ "print\"Temperature at b=1 is\",round(Txb1,3),\"degree C\\n\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Temperature at b=1 is 30.751 degree C\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.11(1) , Page no:65"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.05 ; #m\n",
+ "To = 450 ; #degree C\n",
+ "Tf = 90 ; #degree C\n",
+ "T = 150 ; #degree C\n",
+ "h = 115 ; #W/m^2 K\n",
+ "rho = 8000 ; #kg/m^3\n",
+ "Cp = 0.42*1000 ; #kg/m^3\n",
+ "k = 46 ; #W/m K\n",
+ "R = D/2; \n",
+ "\n",
+ "#calculations\n",
+ "t1 = rho*Cp*R /(3* h)* math.log ((To -Tf)/(T-Tf)); #sec\n",
+ "t1min = t1 /60 ; #min\n",
+ "\n",
+ "#result\n",
+ "print\"Time taken by the centre of the ball to reach 150 degree C if internal gradients are neglected is\",round(t1,4),\"seconds i.e.\",round(t1min,4),\"minutes\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Time taken by the centre of the ball to reach 150 degree C if internal gradients are neglected is 436.2545 seconds i.e. 7.2709 minutes\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.11(2) , Page no:65"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.05 ; #m\n",
+ "To = 450 ; #degree C\n",
+ "Tf = 90 ; #degree C\n",
+ "T = 150 ; #degree C\n",
+ "h = 115 ; #W/m^2 K\n",
+ "rho = 8000 ; #kg/m^3\n",
+ "Cp = 0.42*1000 ; #kg/m^3\n",
+ "k = 46 ; #W/m K\n",
+ "R = D/2;\n",
+ "lambda1R = 0.430;\n",
+ "y = 5;\n",
+ "\n",
+ "#calculations\n",
+ "ratio = (T-Tf)/( To - Tf);\n",
+ "Bi = h*R/k;\n",
+ "x = 2* (math.sin(lambda1R)- lambda1R * math.cos(lambda1R))/ (lambda1R - math.sin ( lambda1R)*math.cos( lambda1R));\n",
+ "t=(math.log (ratio/x))/(-1*(k/(Cp*rho*R**2))*lambda1R**2);\n",
+ "tmin = t /60;\n",
+ "\n",
+ "#result\n",
+ "print\"Time taken by the centre of the ball to reach 150 degree\" \n",
+ "print \"C if internal temperature gradients are not neglected is\",round(t,3),\"seconds i.e\",round(tmin,3),\"min (roundoff error)\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Time taken by the centre of the ball to reach 150 degree\n",
+ "C if internal temperature gradients are not neglected is 446.95 seconds i.e 7.449 min (roundoff error)\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.12 , Page no:67"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "a = 0.12 ; #m\n",
+ "T = 400 ; #C\n",
+ "To = 25 ; #C\n",
+ "t = 100/60 ; #hour\n",
+ "h = 10 ; #W/m^2 K\n",
+ "k = 1.0 ; #W/m K\n",
+ "alpha = 3.33*10** -3 ; #m^2/h\n",
+ "ratiox = 0.82 ;\n",
+ "ratioy = 0.41;\n",
+ "ratioz = 0.30;\n",
+ "\n",
+ "#calculations\n",
+ "x1 = h*a/k ;\n",
+ "x2 = k/(h*a);\n",
+ "x3 = alpha *t/a**2;\n",
+ "totalratio = ratiox * ratioy * ratioz ;\n",
+ "Tcentre = To + totalratio *(T-To) ;\n",
+ "ratiox = 1.1310* math.exp ( -(0.9036**2) *0.385) ;\n",
+ "ratioy = 1.0701* math.exp ( -(0.6533**2) *2.220) ;\n",
+ "ratioz = 1.0580* math.exp ( -(0.5932**2) *3.469) ;\n",
+ "ratio = ratiox * ratioy * ratioz ;\n",
+ "Tcentre = To + totalratio *(T-To) ;\n",
+ "\n",
+ "#result\n",
+ "print\"Temperature at the centre of the brick =\",round(Tcentre,3),\"degree c\";\n",
+ "print\"Alternatively, obtaining Biot number and values of lambda1b and using eqn 2.7.20, we get\";\n",
+ "print\"Temperature at the centre of the brick =\",round(Tcentre,3),\"degree c\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Temperature at the centre of the brick = 62.822 degree c\n",
+ "Alternatively, obtaining Biot number and values of lambda1b and using eqn 2.7.20, we get\n",
+ "Temperature at the centre of the brick = 62.822 degree c\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.13(1) , Page no:73"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.003 ; #m\n",
+ "L = 0.03 ; #m\n",
+ "h = 10 ; #W/m^2\n",
+ "Tf = 20 ; #C\n",
+ "T1 = 120 ; #C\n",
+ "k = 350 ; #W/m K\n",
+ "\n",
+ "#calculations\n",
+ "m = (4* h/(k*D)) **(1/2) ;\n",
+ "ml = m *0.03 ;\n",
+ "T = Tf + (T1 -Tf)/ math.cosh (m*L);\n",
+ "\n",
+ "#result\n",
+ "print\"ml=\",round(ml,4);\n",
+ "print\"Temperature at the tip of fin made of copper is\",round(T,4),\"degree c\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "ml= 0.1852\n",
+ "Temperature at the tip of fin made of copper is 118.3099 degree c\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.13(2) , Page no:73"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.003 ; #m\n",
+ "l = 0.03 ; #m\n",
+ "h = 10 ; #W/m^2\n",
+ "Tf = 20 ; #C\n",
+ "T1 = 120 ; #C\n",
+ "k = 15 ; #W/m K\n",
+ "\n",
+ "#calculations\n",
+ "m = (4*h/(k*D)) **(1/2) ;\n",
+ "ml = m *0.03 ;\n",
+ "T = Tf + (T1 -Tf)/ math.cosh (m*l);\n",
+ "\n",
+ "#result\n",
+ "print\"ml=\",round(ml,4);\n",
+ "print\"Temperature at the tip of fin made of steel is\",round(T,4),\"degree c\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "ml= 0.8944\n",
+ "Temperature at the tip of fin made of steel is 90.058 degree c\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.13(3) , Page no:73"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.003 ; #m\n",
+ "L = 0.03 ; #m\n",
+ "h = 10 ; #W/m^2\n",
+ "Tf = 20 ; #C\n",
+ "T1 = 120 ; #C\n",
+ "k = 0.35 ; #W/m K\n",
+ "\n",
+ "#calculations\n",
+ "m = (4* h/(k*D)) **(1/2) ;\n",
+ "mL = m *0.03 ;\n",
+ "T = Tf + (T1 -Tf)/ math.cosh (m*L);\n",
+ "\n",
+ "#result\n",
+ "print\"ml=\",round(mL,4);\n",
+ "print\"Temperature at the tip of fin made of teflon is\",round(T,4),\"degree c\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "ml= 5.8554\n",
+ "Temperature at the tip of fin made of teflon is 20.5729 degree c\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.14 , Page no:74"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "L = 0.02 ; #M\n",
+ "t = 0.002 ; #M\n",
+ "b = 0.2 ; #M\n",
+ "theta1 = 200 ; #C\n",
+ "h = 15 ; #W/m^2 K\n",
+ "k = 45 ; #W/m K\n",
+ "\n",
+ "#calculations\n",
+ "Bi = h*(t /2) /k ;\n",
+ "P = 2*( b+t); #m\n",
+ "A = b*t ;\n",
+ "mL = math.sqrt((h*P)/(A*k))*L;\n",
+ "n = math.tanh(mL)/mL;\n",
+ "qloss = n*h *40.4*2*10**-4*200;\n",
+ "\n",
+ "#result\n",
+ "print\"Fin Effectiveness =\",round(n,3);\n",
+ "print\"Heat loss rate from fin surface =\",round(qloss,3);"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Fin Effectiveness = 0.957\n",
+ "Heat loss rate from fin surface = 23.207\n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.15 , Page no:74"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "h = 15 ; #W/m^2 .K\n",
+ "k = 300; #W/m.K\n",
+ "T = 200; #C\n",
+ "Tsurr = 30; #C\n",
+ "d = .01; #M\n",
+ "L = .1; #M #\n",
+ "A = .5*.5; #M^2\n",
+ "n = 100; #Number of Pins\n",
+ "\n",
+ "#calculations\n",
+ "Bi = h*d /2/ k; #Biot Number\n",
+ "mL = (h *4/ k/d) **.5* L; \n",
+ "zi = math.tanh (mL)/mL;\n",
+ "Res1 = 1/h/A; #Thermal resistance without fins\n",
+ "Res2 = 1/(h*(A - n*3.14 /4* d**2 + zi *(n* 3.14 *d*L))); #Thermal resistance with fins\n",
+ "delRes = Res1 - Res2 ; #heat transfer rate\n",
+ "q = (T- Tsurr )/ Res2 - (T- Tsurr )/ Res1 ;\n",
+ "\n",
+ "#result\n",
+ "print\"Decrease in thermal resistaneat surface\",round(delRes,4),\"k/w\",\"\\nIncrease in heattransfer rate\",round(q,1);"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Decrease in thermal resistaneat surface 0.1425 k/w \n",
+ "Increase in heattransfer rate 731.3\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Textbook_Of_Heat_Transfer/Chapter_3_Thermal_Radiation.ipynb b/Textbook_Of_Heat_Transfer/Chapter_3_Thermal_Radiation.ipynb new file mode 100755 index 00000000..b531d4b6 --- /dev/null +++ b/Textbook_Of_Heat_Transfer/Chapter_3_Thermal_Radiation.ipynb @@ -0,0 +1,641 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:3f494d977b9882173f1289b65c0c4b5e1b60b5511a2cd5bc368a603771906dc9"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 3: Thermal Radiation"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.1 , Page no:114"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "T = 5779 ; #Temperature,in Kelvin\n",
+ "\n",
+ "#calculations\n",
+ "lambdam = 0.00290/ T ; #m\n",
+ "e = 2*(3.14) *0.596*(10** -16) /(((0.5018*10** -6) **5) *( math.exp(0.014387/0.00290) -1)) ; #W/m^2 m\n",
+ "eblmax = e / 10**6 ;\n",
+ "eearth = eblmax *((0.695*10**6) /(1.496*10**8) )**2 ;\n",
+ "\n",
+ "#result\n",
+ "print\"Value of emissivity on sun surface is\",round(eblmax,4),\"W/m^2 um\";\n",
+ "print\"The value of emmissivity on earths surface is\",round(eearth,4),\"W/m^2 um\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Value of emissivity on sun surface is 82995768.8548 W/m^2 um\n",
+ "The value of emmissivity on earths surface is 1791.2755 W/m^2 um\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.2 , Page no:115"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "Stefanconstt = 5.67*10**( -8) ; #W/m^ 2 .K^ 4 \n",
+ "T = 1500; #tempera ture is in kelvins\n",
+ "eb = ( Stefanconstt )*(T **(4) ); #energy radiated by blackbody\n",
+ "e = 0.9; #emissivity\n",
+ "lamda1 = 1; #wave lengthis in um\n",
+ "lamda2 = 0.3; #wave lengthis in um\n",
+ "D01 =0.5*(0.01972+0.00779) ;\n",
+ "D02 =0;\n",
+ "\n",
+ "#calculations\n",
+ "q = e*( D01 - D02 )* Stefanconstt *T **(4) ; #W/m^2\n",
+ "\n",
+ "#result\n",
+ "print\"wavelength*temp=\",1*1500,\"um K\";\n",
+ "print\"wavelength*temp at\",0.3*1500,\"um K\";\n",
+ "print\"Required heat flux, q =\",round(q,0),\"W/m^2\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "wavelength*temp= 1500 um K\n",
+ "wavelength*temp at 450.0 um K\n",
+ "Required heat flux, q = 3553.0 W/m^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.3 , Page no:119"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "a02 =1; #absorptivity\n",
+ "a24 =1; #absorptivity\n",
+ "a46 =0.5; #absorptivity\n",
+ "a68 =0.5; #absorptivity\n",
+ "a8 =0; #absorptivity\n",
+ "H02 =0; #Irradiationin W/m^2 um\n",
+ "H24 =750;#Irradiationin W/m^2 um\n",
+ "H46 =750;#Irradiationin W/m^2 um\n",
+ "H68 =750;#Irradiationin W/m^2 um\n",
+ "H8 =750;#Irradiationin W/m^2 um\n",
+ "\n",
+ "#calculations\n",
+ "Absorbedradiantflux =1*0*(2 -0) +1*750*(4 -2)+0.5*750*(8 -4) +0;\n",
+ "H = 750*(8 -2) ; #Incident flux\n",
+ "a = Absorbedradiantflux /H;\n",
+ "p = 1-a;\n",
+ "\n",
+ "#result\n",
+ "print\"Absorbed radiant flux =\",Absorbedradiantflux,\"W/m^2\";\n",
+ "print\"Incident flux =\",H,\"W/m^2\";\n",
+ "print\"Absorptivity =\",round(a,3);\n",
+ "print\"Since the surf =\",round(p,3);"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Absorbed radiant flux = 3000.0 W/m^2\n",
+ "Incident flux = 4500 W/m^2\n",
+ "Absorptivity = 0.667\n",
+ "Since the surf = 0.333\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.4(a) , Page no:123"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "e = 0.08; #emissivity\n",
+ "T = 800; #temperature,[K]\n",
+ "\n",
+ "#calculations\n",
+ "Stefanconstt = 5.67*10**( -8) ; #W/m^ 2 .K^ 4 \n",
+ "q = e* Stefanconstt *T **4; #W/m^ 2\n",
+ "i_n = (q/(3.14));\n",
+ "\n",
+ "#result\n",
+ "print\"Energy emitted =\",round(q,1),\"W/m^2\";\n",
+ "print\"Energy emitted normal to the surface =\",round(i_n,1),\"W/m^2 sr\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Energy emitted = 1857.9 W/m^2\n",
+ "Energy emitted normal to the surface = 591.7 W/m^2 sr\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.4(b) , Page no:123"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "e = 0.08; #emissivity\n",
+ "T = 800; #temperature,[K]\n",
+ "\n",
+ "#calculations\n",
+ "Stefanconstt = 5.67*10**( -8) ; #W/m^ 2 .K^ 4 \n",
+ "q = e* Stefanconstt *T **4; #W/m^ 2\n",
+ "i_n = (q/(3.14));\n",
+ "#Radiant flux emitted in the cone 0<= pzi <= 50 degree, 0 <= theta <= 2*3.14\n",
+ "qcone =2*(3.14)*i_n *((- math.cos(math.radians(100))+(math.cos(math.radians(0))))/4);\n",
+ "Ratio = qcone /q;\n",
+ "\n",
+ "#result\n",
+ "print\"Radiant flux emitted in the cone =\",round(qcone,1),\"W/m^2\";\n",
+ "print\"Ratio =\",round(Ratio,3);\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Radiant flux emitted in the cone = 1090.3 W/m^2\n",
+ "Ratio = 0.587\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.5 , Page no:124"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "l1 = 0.5 ; #wavelength , [um]\n",
+ "l2 = 1.5 ; #wavelength , [um]\n",
+ "l3 = 2.5 ; #wavelength , [um]\n",
+ "l4 = 3.5 ; #wavelength , [um]\n",
+ "H1 = 2500 ; #W/m^2 um\n",
+ "H2 = 4000 ; #W/m^2 um\n",
+ "H3 = 2500 ; #W/m^2 um\n",
+ "\n",
+ "#calculations\n",
+ "#Since the irridiation is diffuse, the spectral intensity\n",
+ "#Integrating i_lambda over the directions of the specified solid angle and using fig 3.12\n",
+ "flux = 3/4*( H1 *(l2 -l1)+H2 *(l3 -l2)+H3 *(l4 -l3) );\n",
+ "\n",
+ "#result\n",
+ "print\"Rate at which radiation is incident on the surface =\",round(flux,3),\"W/m^2\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate at which radiation is incident on the surface = 6750.0 W/m^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.8 , Page no:135"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "F65 = 0.22;\n",
+ "F64 = 0.16;\n",
+ "F35 = 0.32;\n",
+ "F34 = 0.27;\n",
+ "A1 = 3; #m^ 2\n",
+ "A3 = 3; #m^ 2\n",
+ "A6 = 6; #m^ 2\n",
+ "\n",
+ "#calculations\n",
+ "#Using additive and reciprocal relations\n",
+ "F61 = F65 - F64 ;\n",
+ "F31 = F35 - F34 ;\n",
+ "F16 = A6/A1* F61 ;\n",
+ "F13 = A3/A1* F31 ;\n",
+ "F12 = F16 - F13;\n",
+ "\n",
+ "#result\n",
+ "print\"F1-2 =\",round(F12,3);"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "F1-2 = 0.07\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.10 , Page no:138"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "sigma = 5.670*10** -8 ;\n",
+ "T1 = 473 ; #K\n",
+ "T2 = 373 ; #K\n",
+ "A1 = 1*2 ; #area,[m^ 2 ]\n",
+ "X = 0.25;\n",
+ "Y = 0.5 ;\n",
+ "\n",
+ "#calculations\n",
+ "F12 =(2/(3.14*X*Y))*math.log((((1+X**2)*(1+ Y**2))/(1+X**2+Y**2))**(1/2))+Y*((1+X**2)**(1/2))*math.atan((Y/((1+X**2)**(1/2))))+X*((1+Y**2)**(1/2))*math.atan((X/((1+Y**2)**(1/2))))-Y*math.atan(Y)-X*math.atan(X);\n",
+ "q1 = sigma *A1 *( T1 **4- T2 **4) *(1 - F12 **2) /(2*(1 - F12 ));\n",
+ "\n",
+ "#result\n",
+ "print\"Net radiative heat transfer from the surface =\",round(q1,1),\"W (roundoff error)\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Net radiative heat transfer from the surface = 1795.1 W (roundoff error)\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.11 , Page no:141"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "h1 = 20; #W/m^2 K\n",
+ "w1 = 0.2; #m\n",
+ "k1 = 1; #W/m K\n",
+ "e1 = 0.5; #emmisivity at surfce 1\n",
+ "e2 = 0.4; #emmisivity at surfce 2\n",
+ "w2 = 0.3; #m\n",
+ "k2 = 0.5; #W/m K\n",
+ "h2 = 10; #W/m^2 K\n",
+ "T1 = 473.15; #Kelvin\n",
+ "T2 = 273.15+40; #Kelvin\n",
+ "\n",
+ "\n",
+ "#calculations\n",
+ "stefan_cnst = 5.67*10**-8;\n",
+ "#q_A12=(T1-T_1)/(1/h1+w1/k1);for resistance 1&2\n",
+ "#q_A45=(T_2-T2)/(1/h2+w2/k2); for resistance 4&5\n",
+ "q_A=stefan_cnst*((T1-(1/h1+w1/k1))**4-(T2+(1/h1+w1/k1))**4)/(1/e1+1/e2-1)\n",
+ "#By solving trial and error method we can get q_A\n",
+ "\n",
+ "\n",
+ "\n",
+ "#result\n",
+ "print\"Steady state heat flux q/A =\",round(q_A/4.7),\"W/m^2\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Steady state heat flux q/A = 139.0 W/m^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.12 , Page no:145"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.02 ; #C\n",
+ "T1 = 1000+273 ; #K\n",
+ "T2 = 27+273 ; #K\n",
+ "s = 5.670*10** -8 ; #stefansconstant\n",
+ "\n",
+ "#calculations\n",
+ "q = s*1* 3.14 *(( D/2) **2) *( T1 **4- T2 **4) ; #W\n",
+ "\n",
+ "#result\n",
+ "print\"Rate at which heat is lost by radiation =\",round(q,6),\"W \";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate at which heat is lost by radiation = 46.610602 W \n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.13 , Page no:146"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.32 ; #m\n",
+ "Ds = 0.36 ; #m\n",
+ "e = 0.02 ; #emissivity\n",
+ "l = 201 ; #kJ / kg\n",
+ "rho = 800 ; #kg /m^ 3\n",
+ "s = 5.670*10** -8 ; \n",
+ "T2 = 303 ; #K\n",
+ "T1 = 77 ; #K\n",
+ "\n",
+ "#calculations\n",
+ "q1 = s*4*3.14*(( D/2) **2) *( T1 **4- T2 **4) /(1/ e +(( D/ Ds )**2)*(1/e -1)); #W\n",
+ "evap = abs(q1) *3600*24/( l *1000) ; #kg / day\n",
+ "mass = 4/3*3.14*(( D/2) **3) * rho ;\n",
+ "boiloff = evap / mass *100 ; #percent\n",
+ "Tdrop = (abs(q1)) /(4*3.14*(( D/2) **2) ) *(1/100) ; #C\n",
+ "\n",
+ "#result\n",
+ "print\"Rate at which nitrogen evaporates =\",round(evap,6),\"kg/day\";\n",
+ "print\"Boil-off rate =\",round(boiloff,4),\"percent\";\n",
+ "print\"Temperature drop between liquid Nitrogen and inner surface =\",round(Tdrop,4),\"C\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate at which nitrogen evaporates = 0.741453 kg/day\n",
+ "Boil-off rate = 5.4046 percent\n",
+ "Temperature drop between liquid Nitrogen and inner surface = 0.0536 C\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.14 , Page no:147"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 1 ; #m\n",
+ "r = 6250 ; #km\n",
+ "Dsurf = 300 ; #km\n",
+ "s = 5.670*10** -8;\n",
+ "e = 0.3 ;\n",
+ "Tc = -18+273 ; #K\n",
+ "Tsurf = 27+273 ; #K\n",
+ "\n",
+ "#calculations\n",
+ "remission = 2*e*3.14 *(( D /2) **2)*s*Tc **4; #Rate o f emissino of radian tenergy from the two faces of satellited is c\n",
+ "sin_alpha = (r/(r+ Dsurf ));\n",
+ "F12 = sin_alpha**2;\n",
+ "rreceive = e*s*(3.14*(( D/2)**2))* F12 * Tsurf **4; #Rate at which the satellite receives and absorbs energy coming from eart h \n",
+ "rloss = remission - rreceive ;\n",
+ "\n",
+ "#result\n",
+ "print\"Net Rate at which energy is leaving the satellite =\",round(rloss,4),\"W\";\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Net Rate at which energy is leaving the satellite = 14.441 W\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.15 , Page no:151"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from numpy import matrix\n",
+ "from numpy import linalg\n",
+ "\n",
+ "#Variable declaration\n",
+ "F12 = 0.0363;\n",
+ "F11 = 0;\n",
+ "F21 = 0.0363; #Similarly\n",
+ "F22 = 0;\n",
+ "F23 = 0.9637;\n",
+ "\n",
+ "\n",
+ "#calculations\n",
+ "F13 = 1-F11 - F12 ;\n",
+ "F31 = 2/24* F13; #F31 = A1/A3*F13\n",
+ "F32 = F31 ; #Therefore\n",
+ "F33 = 1-F31 - F32 ;\n",
+ "#Substituting into equation 3.11.6, 3.11.7, 3.11.8, and solving by matrix method\n",
+ "A=[[1,-0.01452,-0.38548],[-0.01452,1,-0.38548],[0.0803,0.0803,-0.1606]]\n",
+ "C=[[1702.859718],[658.521014],[0]]\n",
+ "\n",
+ "B=linalg.solve(A, C) \n",
+ "H=F12*B.item(1)+F13*B.item(2);\n",
+ "q1=2*(B.item(0)-H);\n",
+ "\n",
+ "#result\n",
+ "print\"B1 =\",round(B.item(0),1),\"W/m^2\";\n",
+ "print\"B2 =\",round(B.item(1),1),\"W/m^2\";\n",
+ "print\"B3 =\",round(B.item(2),1),\"W/m^2\";\n",
+ "print\"Net radiative heat transfer =\",round(q1),\"W (roundoff error)\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "B1 = 2482.5 W/m^2\n",
+ "B2 = 1453.1 W/m^2\n",
+ "B3 = 1967.8 W/m^2\n",
+ "Net radiative heat transfer = 1067.0 W (roundoff error)\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Textbook_Of_Heat_Transfer/Chapter_4_Principles_of_Fluid_Flow.ipynb b/Textbook_Of_Heat_Transfer/Chapter_4_Principles_of_Fluid_Flow.ipynb new file mode 100755 index 00000000..ed17906e --- /dev/null +++ b/Textbook_Of_Heat_Transfer/Chapter_4_Principles_of_Fluid_Flow.ipynb @@ -0,0 +1,333 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:c0b8814a6ac7ab401db03352df216c35ffd27c0ad0849fd68734e0e65b766ec4"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 4: Principles of Fluid Flow"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.1 , Page no:172"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "L = 3 ; #Length\n",
+ "D = 0.01 ; #ID\n",
+ "V = 0.2 ; #Average Velocity\n",
+ "rho =999.7 ; #kg /m^ 3\n",
+ "\n",
+ "#calculations\n",
+ "v =1.306 * 10** -6 ; #m^2/ s\n",
+ "ReD =0.2*0.01/(1.306*10** -6) ;\n",
+ "f = 16/ ReD ;\n",
+ "deltap = 4*f*(L/D)*( rho*V **2) /2;\n",
+ "Vmax = 2*V;\n",
+ "\n",
+ "#result\n",
+ "print\"Pressure drop is\",round(deltap,4),\"Pa\";\n",
+ "print\"Maximum velocity is\",round(Vmax,3),\"m/s\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Pressure drop is 250.6768 Pa\n",
+ "Maximum velocity is 0.4 m/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.2(a) , Page no:180"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "L = 3 ; #m\n",
+ "D = 0.01 ; #m\n",
+ "V = 0.2 ;#m/ s\n",
+ "rho = 971.8 ; #kg /m^ 3\n",
+ "\n",
+ "#calculations\n",
+ "v = 0.365 * 10** -6 ; #m^2/ s\n",
+ "ReD = D*V/v;\n",
+ "f =0.079*( ReD )**( -0.25) ;\n",
+ "deltap = (4*f*L* rho *V**2) /(D *2) ;\n",
+ "x = ((f/2) **0.5) *V ;\n",
+ "yplus = 0.005* x /(0.365*10** -6) ;\n",
+ "Vmax = x *(2.5* math.log ( yplus ) + 5.5) ;\n",
+ "ratio = Vmax /V;\n",
+ "\n",
+ "#result\n",
+ "print\"(a) If the temperature of water is increased to 80 degree C\";\n",
+ "print\"Pressure drop is\",round(deltap,4),\"Pa\";\n",
+ "print\"Vmax =\",round(Vmax,4),\"m/s\";\n",
+ "print\"Vmax/Vbar =\",round(ratio,4);"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a) If the temperature of water is increased to 80 degree C\n",
+ "Pressure drop is 214.1563 Pa\n",
+ "Vmax = 0.2515 m/s\n",
+ "Vmax/Vbar = 1.2575\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.2(b) , Page no:180"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "L = 3 ; #m\n",
+ "D = 0.01 ; #m\n",
+ "V = 0.2 ; #m/s\n",
+ "V1 =0.7;\n",
+ "v1 = 1.306 * 10** -6 ; #m^2/ s\n",
+ "V1 =0.7; #m/ s\n",
+ "\n",
+ "#calculations\n",
+ "ReD1 =V1*D /(1.306*10** -6) ;\n",
+ "f1 = 0.079*( ReD1 )**( -0.25) ;\n",
+ "deltap1 = (4* f1*L *999.7*0.7**2) /(0.01*2) ;\n",
+ "x1 = (( f1 /2)**0.5) *V1 ;\n",
+ "y1plus = 0.005* x1 /( v1);\n",
+ "Vmax1 = x1 *(2.5* math.log ( y1plus ) + 5.5) ;\n",
+ "ratio1 = Vmax1 /V1;\n",
+ "\n",
+ "#result\n",
+ "print\"(b) If the velocity is increased to 0.7 \";\n",
+ "print\"Reynolds no is\",round(ReD1,4);\n",
+ "print\"Pressure drop is\",round(deltap1,4),\"pa\";\n",
+ "print\"y+ at centre line =\",round(y1plus,4);\n",
+ "print\"Vmax is\",round(Vmax1,4),\"pa\";\n",
+ "print\"Vmax/Vbar =\",round(ratio1,4);"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(b) If the velocity is increased to 0.7 \n",
+ "Reynolds no is 5359.8775\n",
+ "Pressure drop is 2713.6598 pa\n",
+ "y+ at centre line = 182.087\n",
+ "Vmax is 0.8804 pa\n",
+ "Vmax/Vbar = 1.2577\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.3 , Page no:181"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "P = 80 * 10**3 ; #Pa\n",
+ "L = 10 ; #m\n",
+ "Vbar = 1.9 ; #m/s\n",
+ "l = 0.25 ; #m\n",
+ "b = 0.15 ; #m\n",
+ "rho = 1.185 ; #kg /m^ 3\n",
+ "\n",
+ "#calculations\n",
+ "mew = 18.35 * 10** -6 ; #kg /m s\n",
+ "rho1 = rho *(80/101.3) ; #kg /m^ 3\n",
+ "r = b/l;\n",
+ "De = (4* l/2*b /2) /(l/2 + b /2) ;\n",
+ "Dl = (2/3 + 11/24*0.6*(2 -0.6)) * De ;\n",
+ "Re = rho1 * Dl * Vbar / mew ;\n",
+ "f = 0.079*( Re ** -0.25) ;\n",
+ "deltaP = 4*f*(L/ Dl )*( rho1 *( Vbar **2) /2) ;\n",
+ "power = deltaP *( Vbar *l*b)\n",
+ "\n",
+ "#result\n",
+ "print\"Reynolds no =\",round(Re,4);\n",
+ "print\"f =\",round(f,4);\n",
+ "print\"Pressure drop =\",round(deltaP,4),\"Pa\";\n",
+ "print\"Power required =\",round(power,4),\"W\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Reynolds no = 19107.1453\n",
+ "f = 0.0067\n",
+ "Pressure drop = 2.3024 Pa\n",
+ "Power required = 0.164 W\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.4 , Page no:189"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "l = 2 ; #m\n",
+ "b = 1 ; #m\n",
+ "V = 1 ; #m/s\n",
+ "rho = 1.060 ; #kg /m^ 3\n",
+ "x = 1.5 ; #m^2/s\n",
+ "\n",
+ "#calculations\n",
+ "v = 18.97 * 10** -6 ;\n",
+ "Re = V*x/v; #Reynolds number\n",
+ "d = 5*x/( Re **(1/2) ) *1000 ;\n",
+ "Rel = V*l/v;\n",
+ "cf = 1.328* Rel** -(1/2) ; #drag coefficient\n",
+ "Fd = 0.00409*(1/2) *rho *(2* l*b) *1**2;\n",
+ "\n",
+ "#result\n",
+ "print\"Thickness of Boundary layer at x =1.5 is \",round(d,4),\"mm\"\n",
+ "print\"Drag Coefficient cf =\",round(cf,5);\n",
+ "print\"Drag Force FD =\",round(Fd,6),\"N\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thickness of Boundary layer at x =1.5 is 26.6716 mm\n",
+ "Drag Coefficient cf = 0.00409\n",
+ "Drag Force FD = 0.008671 N\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.5 , Page no:195"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "l = 2 ; #m\n",
+ "v = 4 ; #m/s\n",
+ "\n",
+ "#calculations\n",
+ "mew = 18.1*10** -6; #N s /m^ 2\n",
+ "rho = 1.205*1.5; #kg /m^ 3\n",
+ "Rel = rho*v*l/ mew ;\n",
+ "Cf = 0.074*(7.989*10**5) **( -0.2) - 1050/ Rel ;\n",
+ "Df = Cf *1/2* rho*l*v **2;\n",
+ "x = 3*10**5 * (18.1*10** -6) /(1.808*4) ;\n",
+ "\n",
+ "#result\n",
+ "print\"Drag coefficieent is\",round(Cf,6);\n",
+ "print\"Drag force per meter width =\",round(Df,6),\"N\";\n",
+ "print\"Value of xc is\",round(x,6),\"m\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Drag coefficieent is 0.003569\n",
+ "Drag force per meter width = 0.103221 N\n",
+ "Value of xc is 0.75083 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Textbook_Of_Heat_Transfer/Chapter_5_Heat_Transfer_by_Forced_Convection.ipynb b/Textbook_Of_Heat_Transfer/Chapter_5_Heat_Transfer_by_Forced_Convection.ipynb new file mode 100755 index 00000000..d16fb965 --- /dev/null +++ b/Textbook_Of_Heat_Transfer/Chapter_5_Heat_Transfer_by_Forced_Convection.ipynb @@ -0,0 +1,673 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:f52bfd7811201b97d412b52a8226e438de6bc215828a85347af9b46efb493219"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 5: Heat Transfer by Forced Convection"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.1(a) , Page no:209"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.015 ; #m\n",
+ "Q = 0.05 ; #m^3/h\n",
+ "H = 1000 ; #W/m^ 2\n",
+ "Tb = 40 ; #degree C\n",
+ "k = 0.634 ; #W/m K\n",
+ "\n",
+ "#calculations\n",
+ "v = 0.659*10**-6 ; #m^2/ s\n",
+ "Vbar = 4*Q /((3.14)*D**2) ;\n",
+ "ReD = Vbar *D/v;\n",
+ "h = 4.364* k/D; #W/m^2 K\n",
+ "\n",
+ "#result\n",
+ "print\"(a) Local heat transfer coefficient is\",round(h,4),\"W/m^2 K\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a) Local heat transfer coefficient is 184.4517 W/m^2 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.1(b) , Page no:209"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.015 ; #m\n",
+ "Q = 0.05 ; #m^3/h\n",
+ "H = 1000 ; #W/m^2\n",
+ "Tb = 40 ; #degree C\n",
+ "k = 0.634 ; #W/m K\n",
+ "\n",
+ "#calculations\n",
+ "v = 0.659*10**-6 ; #m^2/s\n",
+ "Vbar = 4*Q /((3.14)*D**2) ;\n",
+ "ReD = Vbar *D/v;\n",
+ "h = 4.364* k/D;\n",
+ "Tw = H/h + Tb; #the local wal to bulk mean temperature difference\n",
+ "\n",
+ "#result\n",
+ "print\"(b) Wall Temperature Tw =\",round(Tw,4),\"degree C\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(b) Wall Temperature Tw = 45.4215 degree C\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.2 , Page no:213"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "Pr1=0.01;\n",
+ "Pr2=0.1;\n",
+ "Pr3=100;\n",
+ "\n",
+ "#Calculation\n",
+ "T1 = 0.04305* Pr1 /0.0575; #For Pr = 0.01\n",
+ "T2 = 0.04305* Pr2 /0.0575; #For Pr = 0.1\n",
+ "T3 = 0.04305* Pr3 /0.0575 ; #For Pr = 100\n",
+ "\n",
+ "#result\n",
+ "print\"Lth/Le at Pr =0.01 is\",round(T1,4);\n",
+ "print\"Lth/Le at Pr = 1 is\",round(T2,4);\n",
+ "print\"Lth/Le at Pr = 100 is\",round(T3,4);"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Lth/Le at Pr =0.01 is 0.0075\n",
+ "Lth/Le at Pr = 1 is 0.0749\n",
+ "Lth/Le at Pr = 100 is 74.8696\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.3(i) , Page no:215"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.015 ; #m\n",
+ "V = 1 ; #m/s\n",
+ "Tw = 90 ; #degree C\n",
+ "Tmi = 50 ; #degree C\n",
+ "Tmo = 65 ; #degree C\n",
+ "k = 0.656 ; #W/m K\n",
+ "rho = 984.4 ; #kg/m^3\n",
+ "Pr = 3.12 ;\n",
+ "rhoin = 988.1 ; #kg/m^3\n",
+ "\n",
+ "#calculations\n",
+ "v = 0.497 * 10**-6 ; #m^2/s\n",
+ "Cp = 4178 ; #J/kg K\n",
+ "mdot =3.14*(D**2)* rhoin *V/4 ; #kg/s\n",
+ "Re = 4* mdot /(3.14*D* rho *v) ;\n",
+ "f = 0.079*( Re)** -0.25 ;\n",
+ "Nu = (f /2) *(Re -1000) *Pr /(1+12.7*( f /2) **(1/2) *(( Pr**(2/3) ) -1));\n",
+ "h = Nu*k/D;\n",
+ "L = mdot *Cp *( Tmo -Tmi)*( math.log ((Tw - Tmi )/(Tw - Tmo )) /(((Tw -Tmi) -(Tw - Tmo ))*h*D*3.14)); #the energy equation\n",
+ "\n",
+ "#result\n",
+ "print\"The length of tube if the exit water temperature is 65 degree C =\",round(L,4),\"m\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The length of tube if the exit water temperature is 65 degree C = 1.0876 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.3(ii) , Page no:215"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.015 ; #m\n",
+ "V = 1 ; #m/s\n",
+ "Tw = 90 ; #degree C\n",
+ "Tmi = 50 ; #degree C\n",
+ "Tmo = 65 ; #degree C\n",
+ "k = 0.656 ; #W/m K\n",
+ "rho = 984.4 ; #kg/m^3\n",
+ "Cp = 4178 ; #J/kg K\n",
+ "Pr = 3.12 ;\n",
+ "rhoin = 988.1 ; #kg/m^3\n",
+ "Tmo = 70 ; #degree C\n",
+ "Tb = 60 ; #degree C\n",
+ "k1 = 0.659 ; #W/m K\n",
+ "rho1 = 983.2 ;#kg/m^3\n",
+ "Cp1 = 4179 ;#J/kg K\n",
+ "Pr1 = 2.98 ;\n",
+ "f1 = 0.005928;\n",
+ "Nud = 154.97; #the Gnielinski Eqn\n",
+ "Tmo1 = 73.4 ; #degree C\n",
+ "\n",
+ "#calculations\n",
+ "v = 0.497 * 10**-6 ; #m^2/s\n",
+ "mdot =3.14*(D**2)* rhoin *V/4 ; #kg/s\n",
+ "Re = 4* mdot /(3.14*D* rho *v) ;\n",
+ "f = 0.079*( Re)** -0.25 ;\n",
+ "Nu = (f /2) *(Re -1000) *Pr /(1+12.7*( f /2)**(1/2) *(( Pr**(2/3) ) -1) ); #W/m^2 K\n",
+ "h = Nu*k/D;\n",
+ "L = mdot *Cp *( Tmo -Tmi)* math.log ((Tw - Tmi )/(Tw - Tmo ))/(((Tw -Tmi) -(Tw - Tmo ))*h*D*3.14); #the energy equation\n",
+ "v1 = 0.478 * 10**-6 ; #m^2/s\n",
+ "Re1 = 4* mdot /(3.14*D* rho1 *v1);\n",
+ "h = Nud *k1/D ; #W/m^2 K\n",
+ "\n",
+ "#result\n",
+ "print\"Trial and error method\";\n",
+ "print\"Trial 1\";\n",
+ "print\"Assumed value of Tmo =70 degree C\";\n",
+ "print\"Value of Tmo obtained =73.4 degree C\";\n",
+ "print\"Trial 2\";\n",
+ "print\"Assume Tmo =73.4 degree C\";\n",
+ "print\"Value of Tmo obtained = 73.6 degree C which is in reasonably close agreement with assumed value\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Trial and error method\n",
+ "Trial 1\n",
+ "Assumed value of Tmo =70 degree C\n",
+ "Value of Tmo obtained =73.4 degree C\n",
+ "Trial 2\n",
+ "Assume Tmo =73.4 degree C\n",
+ "Value of Tmo obtained = 73.6 degree C which is in reasonably close agreement with assumed value\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.4 , Page no:219"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "Di = 0.05 ; #m\n",
+ "m = 300 ; #kg/min\n",
+ "m1 = m/60 ; #kg/sec\n",
+ "rho = 846.7 ; #kg/m^3\n",
+ "k = 68.34 ; #W/m K\n",
+ "c = 1274; #J/kg K\n",
+ "Pr = 0.00468 ;\n",
+ "\n",
+ "#calculations\n",
+ "v = 0.2937*10**-6 ; #m^2/s\n",
+ "ReD = 4* m1 /(3.14*Di* rho *v);\n",
+ "NuD = 6.3 + 0.0167*( ReD**0.85) *( Pr**0.93) ; #Assuming both temperature and velocity profile are fully developed over the length of tube\n",
+ "h = NuD *k/ Di ;\n",
+ "L = 300/60*1274*(500 -400) /(h*3.14* Di *30); #Equating the heat transferred through the wall of the tube to the change of enthalpy pf sodium\n",
+ "\n",
+ "#result\n",
+ "print\"Length of tube over which the temperature rise occurs =\",round(L,4),\"m\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Length of tube over which the temperature rise occurs = 6.8659 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.5 , Page no:231"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "V = 15 ; #m/s\n",
+ "s =0.2 ; #m\n",
+ "rho = 1.128 ; #kg/m^3\n",
+ "k = 0.0276; #W/m K\n",
+ "Pr = 0.699;\n",
+ "\n",
+ "#calculations\n",
+ "Tm = (20+60) /2; ##degree C\n",
+ "v = 16.96*10**-6; #m^2/s\n",
+ "A=s**2;\n",
+ "ReL = V *0.2/ v;\n",
+ "Cf = 1.328/( ReL )**0.5; #the boundary layer may be assumed to be laminar over the entire length.\n",
+ "Fd = 2* Cf *1/2* rho*A*V**2;\n",
+ "Nul = 0.664*( Pr**(1/3) )*( ReL**(1/2) );\n",
+ "h = Nul *k/s;\n",
+ "q = 2*A*h *(60 -20) ; #rate of heat transfer q is\n",
+ "Cf1 = 0.074*( ReL )**( -0.2) ; #boundary layer from leading edge, the drag coefficient is\n",
+ "Fd1 = 2* Cf1 *1/2* rho *A*V**2;\n",
+ "Nul1 = 0.0366*(0.699**(1/3) )*( ReL**(0.8) );\n",
+ "h1 = Nul1 *k/s; #W/m^2 K\n",
+ "q1 = 2*A*h1 *(60 -20) ;\n",
+ "\n",
+ "#result\n",
+ "print\"For Laminar Boundary Layer\";\n",
+ "print\"Rate of Heat transfer =\",round(q,4),\"W\";\n",
+ "print\"Drag force =\",round(Fd,4),\"N\";\n",
+ "print\"For Turbulent Boundary Layer from the leading edge\";\n",
+ "print\"Rate of Heat transfer =\",round(q1,4),\"W\";\n",
+ "print\"Drag force =\",round(Fd1,4),\"N\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "For Laminar Boundary Layer\n",
+ "Rate of Heat transfer = 109.447 W\n",
+ "Drag force = 0.0321 N\n",
+ "For Turbulent Boundary Layer from the leading edge\n",
+ "Rate of Heat transfer = 226.3735 W\n",
+ "Drag force = 0.067 N\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.6(i) , Page no:235"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.075 ; #m\n",
+ "V = 1.2 ; #m/s\n",
+ "Tair = 20 ; #degree C\n",
+ "Tsurface = 100 ; #degree C\n",
+ "k = 0.0290 ; #W/m K\n",
+ "Pr = 0.696 ;\n",
+ "\n",
+ "#calculations\n",
+ "Tm = ( Tair + Tsurface ) /2;\n",
+ "v = 18.97*10**-6 ; #m^2/s\n",
+ "ReD = V*D/v;\n",
+ "Nu = 0.3 +((0.62*( ReD**(1/2) )*( Pr**(1/3) ))/((1+((0.4/ Pr)**(2/3) ))**(1/4)))*((1+(( ReD/282000)**(5/8)))**(4/5));\n",
+ "h = Nu*k/D ; #W/m^2 K\n",
+ "flux = h*( Tsurface - Tair ); #W/m^2\n",
+ "q = flux *3.14*D *1; #W/m\n",
+ "\n",
+ "#result\n",
+ "print\"Heat transfer rate per unit length =\",round(q,4),\"W/m\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat transfer rate per unit length = 258.8849 W/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.6(ii) , Page no:235"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.075 ; #m\n",
+ "V = 1.2 ; #m/s\n",
+ "Tair = 20 ; #degree C\n",
+ "Tsurface = 100 ; #degree C\n",
+ "k = 0.0290 ; #W/m K\n",
+ "Pr = 0.696 ;\n",
+ "k = 0.0290 ;\n",
+ "Pr = 0.696 ;\n",
+ "Tassumd = 130 ; #degree C\n",
+ "Tm = 75 ; #degree C\n",
+ "k1 = 0.0301 ; #W/m K\n",
+ "Pr1 = 0.693 ;\n",
+ "Nu1 = 33.99;\n",
+ "Tavgcalc = 129.9 ; #degree C\n",
+ "\n",
+ "#calculations\n",
+ "Tm = ( Tair + Tsurface ) /2;\n",
+ "v = 18.97*10**-6 ; #m^2/s\n",
+ "ReD = V*D/v;\n",
+ "Nu = 0.3 +((0.62*( ReD**0.5) *( Pr**(1/3) )) /((1+((0.4/Pr)**(2/3) ))**(1/4)))*(1+( ReD /282000)**(5/8) )**(5/8);\n",
+ "h = Nu*k/D ; #W/m^2 K\n",
+ "flux = h*( Tsurface - Tair ); #W/m^2\n",
+ "Tavg = 1500/ flux *( Tsurface - Tair );\n",
+ "v1 = 20.56*10** -6 ; #m^2/s\n",
+ "ReD1 = V*D/v1;\n",
+ "h = Nu1*k1/D;\n",
+ "Tdiff = 1500/ h; #degree C\n",
+ "\n",
+ "#result\n",
+ "print\"Assumed average wall temperature =\",round(Tassumd,4),\"degree C\";\n",
+ "print\"Calculated average wall Temperature =\",round(Tavgcalc,4),\"degree C\";\n",
+ "print\"Hence,Average wall Temperature =\",round(Tavgcalc,4),\"degree C\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Assumed average wall temperature = 130.0 degree C\n",
+ "Calculated average wall Temperature = 129.9 degree C\n",
+ "Hence,Average wall Temperature = 129.9 degree C\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.7(i) , Page no:241"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.0125 ; #m\n",
+ "ST = 1.5* D ;\n",
+ "SL = 1.5* D ;\n",
+ "Vinf = 2 ; #v\n",
+ "N = 5;\n",
+ "Tw = 70; #degree C\n",
+ "Tmi = 30; #degree C\n",
+ "L = 1; #m\n",
+ "rho = 1.165 ; #kg/m^3\n",
+ "Cp = 1.005 ; #kJ/kg K\n",
+ "k = 0.0267 ; #W/m K\n",
+ "Pr = 0.701;\n",
+ "X = 1; #tube arrangement is square\n",
+ "\n",
+ "#calculations\n",
+ "v = 16.00 *10**-6 ; #m^2/s\n",
+ "Vmax = ST /(SL -D)* Vinf ; #m/s\n",
+ "Re = Vmax *D/v ;\n",
+ "f = 0.37/4;\n",
+ "deltaP = 4*f*N*X*( rho * Vmax**2) /2 ; #N/m^2\n",
+ "\n",
+ "#result\n",
+ "print\"(i) Pressure drop of air across the bank is\",round(deltaP,4),\"N/m^2\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(i) Pressure drop of air across the bank is 38.7945 N/m^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.7(ii) , Page no:241"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.0125 ; #m\n",
+ "ST = 1.5* D ;\n",
+ "SL = 1.5* D ;\n",
+ "Vinf = 2 ; #m/s\n",
+ "N = 5;\n",
+ "Tw = 70; #degree C\n",
+ "Tmi = 30; #degree C\n",
+ "L = 1; #m\n",
+ "rho = 1.165 ; #kg/m^3\n",
+ "v = 16.00 *10**-6 ; #[m^2/s]\n",
+ "Cp = 1.005*1000 ; #J/kg K\n",
+ "k = 0.0267 ; #W/m K\n",
+ "Pr = 0.701;\n",
+ "X = 1; #tube arrangement is square\n",
+ "Pr1 = 0.694 ; #At 70 degree C\n",
+ "C1 = 0.27;\n",
+ "m = 0.63;\n",
+ "C2 = 0.93;\n",
+ "\n",
+ "#calculations\n",
+ "#sub all value in the following expression\n",
+ "# q=h*(3.14*D*L)*50*((Tw-Tmi)-(Tw-Tmo))/log((Tw-Tmi)/(Tw-Tmo))-mdot*Cp*(Tmo-Tmi), we get\n",
+ "Tmo=70-40/(math.exp (190.8604/439.064));\n",
+ "\n",
+ "\n",
+ "#Results\n",
+ "print\"Tmo =\",round(Tmo,2),\"oC\"\n",
+ "print\"(ii) Exit temperature of air =\",round(Tmo,4),\"oC\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Tmo = 44.1 oC\n",
+ "(ii) Exit temperature of air = 44.1016 oC\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.7(iii) , Page no:241"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.0125 ; #m\n",
+ "ST = 1.5* D ;\n",
+ "SL = 1.5* D ;\n",
+ "Vinf = 2 ; #m/s\n",
+ "N = 5;\n",
+ "Tw = 70; #degree C\n",
+ "Tmi = 30; #degree C\n",
+ "L = 1; #m\n",
+ "rho = 1.165 ; #kg/m^3\n",
+ "k = 0.0267 ; #W/m K\n",
+ "Pr = 0.701;\n",
+ "X = 1; #tube arrangement is square\n",
+ "Pr1 = 0.694 ; #At 70 degree C\n",
+ "C1 = 0.27;\n",
+ "m = 0.63;\n",
+ "C2 = 0.93;\n",
+ "Tmo = 44.10; #in oC\n",
+ "\n",
+ "#calculations\n",
+ "q=439.064*(40-(70-Tmo)); #Heat transfer rate per unit length to air\n",
+ "\n",
+ "#result\n",
+ "print\"(iii) Heat transfer rate per unit length to air =\",round(q,2),\"W (roundoff error)\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(iii) Heat transfer rate per unit length to air = 6190.8 W (roundoff error)\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Textbook_Of_Heat_Transfer/Chapter_6_Heat_Transfer_by_Natural_convection.ipynb b/Textbook_Of_Heat_Transfer/Chapter_6_Heat_Transfer_by_Natural_convection.ipynb new file mode 100755 index 00000000..8e90d8f1 --- /dev/null +++ b/Textbook_Of_Heat_Transfer/Chapter_6_Heat_Transfer_by_Natural_convection.ipynb @@ -0,0 +1,344 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:aaada7e9a1621c5448fcc2c4bafb69518918476f74efee2f04521ed97f085e1c"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 6: Heat Transfer by Natural convection"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.1, Page no:258"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "H = 0.5 ; #m\n",
+ "Th = 100; #degree C\n",
+ "Tl = 40; #degree C\n",
+ "Pr = 0.694;\n",
+ "k = 0.0297; #W/m K\n",
+ "\n",
+ "#calculations\n",
+ "v = 20.02*10**-6 ; #m/s\n",
+ "T = (Th+ Tl )/2 + 273 ; #K\n",
+ "B = 1/T;\n",
+ "Gr = 9.81* B *(( Th - Tl )*H**3) /(v**2) ;\n",
+ "Ra = Gr*Pr;\n",
+ "Nua = 0.64*( Gr**(1/4) )*( Pr**0.5) *((0.861+ Pr)**( -1/4) ); #Exact analysis\n",
+ "Nub = 0.68*( Gr**(1/4) )*( Pr**0.5) *((0.952+ Pr)**( -1/4) ); #Integral method\n",
+ "Nuc = 0.59*( Ra)**(1/4) ; #McAdams correlation\n",
+ "Nud = 0.68 + 0.670*( Ra**(1/4) ) /(1+(0.492/ Pr)**(9/16))**(4/9) ; #Churchill and Chu correlation\n",
+ "\n",
+ "#result\n",
+ "print\"Mean film temperature =\",round(T,4),\"K\";\n",
+ "print\" ( a ) \";\n",
+ "print\"Exact analysis\";\n",
+ "print\"NuL =\",round(Nua,4);\n",
+ "print\"\\n ( b ) \";\n",
+ "print\"Integral method\";\n",
+ "print\"NuL =\",round(Nub,4);\n",
+ "print\"\\n ( c ) \";\n",
+ "print\"McAdams correlation\";\n",
+ "print\"NuL =\",round(Nuc,4);\n",
+ "print\"\\n ( d ) \";\n",
+ "print\"Churchill and Chu correlation\";\n",
+ "print\"NuL =\",round(Nud,4);"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mean film temperature = 343.0 K\n",
+ " ( a ) \n",
+ "Exact analysis\n",
+ "NuL = 72.6196\n",
+ "\n",
+ " ( b ) \n",
+ "Integral method\n",
+ "NuL = 76.0691\n",
+ "\n",
+ " ( c ) \n",
+ "McAdams correlation\n",
+ "NuL = 81.9066\n",
+ "\n",
+ " ( d ) \n",
+ "Churchill and Chu correlation\n",
+ "NuL = 71.887\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.3, Page no:260"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "s = 0.2 ; #m\n",
+ "d = 0.005 ; #m\n",
+ "rho = 7900 ; #kg/m^3\n",
+ "Cp = 460 ; #J/kg K\n",
+ "Tair = 20 ; #C\n",
+ "Tavg = 380 ; #C\n",
+ "Pr = 0.680 ;\n",
+ "k = 0.0393 ; #W/m K\n",
+ "h2 = 7.348 ; #W/m^2 K\n",
+ "h3 = 6.780; #W/m^2 K\n",
+ "\n",
+ "#calculations\n",
+ "Tm = ( Tavg + Tair )/2 ; #C\n",
+ "v = 34.85*10**-6 ; #m^2/s\n",
+ "Re = 9.81*1/(273+ Tm)*( Tavg - Tair )*(s**3) /(v**2) *Pr;\n",
+ "Nu = 0.68 + 0.670*( Re**(1/4) ) /(1+(0.492/ Pr)**(4/9))**(4/9) ;\n",
+ "h = Nu*k/s; #W/m^2 K\n",
+ "t1 = rho*s*s*d*Cp /(( s**2) *2*h)* math.log ((430 - Tair )/(330 -Tair )); #s\n",
+ "t2 = rho*s*s*d*Cp /(( s**2) *2* h2)* math.log ((330 - Tair )/(230 -Tair )); #s\n",
+ "t3 = rho*s*s*d*Cp /(( s**2) *2* h3)* math.log ((230 - Tair )/(130 -Tair )); #s\n",
+ "time = t1+t2+t3; #Total time\n",
+ "minute = time /60;\n",
+ "\n",
+ "#result\n",
+ "print\"Time required for the plate to cool from 430 C to 330 C is\",round(t1,4),\"s\";\n",
+ "print\"Time required for the plate to cool from 330 C to 230 C is\",round(t2,4),\"s\";\n",
+ "print\"Time required for the plate to cool from 230 C to 130 C is\",round(t3,4),\"s\";\n",
+ "print\"Hence, time required for the plate to cool from 430 C to 130 C\";\n",
+ "print\" =\",round(time,4),\"s\";\n",
+ "print\" =\",round(minute,4),\"min\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Time required for the plate to cool from 430 C to 330 C is 328.9673 s\n",
+ "Time required for the plate to cool from 330 C to 230 C is 481.5307 s\n",
+ "Time required for the plate to cool from 230 C to 130 C is 866.4613 s\n",
+ "Hence, time required for the plate to cool from 430 C to 130 C\n",
+ " = 1676.9593 s\n",
+ " = 27.9493 min\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.4, Page no:264"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.006 ; #m\n",
+ "e = 0.1 ;\n",
+ "Ti = 800 ; #C\n",
+ "Ta = 1000 ; #C\n",
+ "k = 0.0763 ; #W/m K\n",
+ "Pr = 0.717 ;\n",
+ "Ra2 = 6.42 ;\n",
+ "Nu2 = 0.9841 ;\n",
+ "h2 = 12.15 ;\n",
+ "Ra3 = 6.93 ;\n",
+ "Nu3 = 0.9963 ;\n",
+ "h3 = 12.33 ;\n",
+ "\n",
+ "#calculations\n",
+ "Tm = (Ta+Ti) /2;\n",
+ "v = 155.1*10**-6 ; #m^2/s\n",
+ "Gr = 9.81*1/1173*(200* D**3) /(v**2) ;\n",
+ "Ra = Gr*Pr ;\n",
+ "Nu = 0.36 + 0.518*( Ra**(1/4) ) /(1+(0.559/ Pr)**(9/16))**(4/9) ;\n",
+ "h = Nu*k/D;\n",
+ "x = h*(Ta -Ti); #W/m^2\n",
+ "x2 = h2 *(900 -800) ;\n",
+ "x3 = h3 *(910 -800) ;\n",
+ "T = 900 + (910 -900) *(1306 - x2)/(x3 -x2); #Interpolation\n",
+ "\n",
+ "#result\n",
+ "print\"Trial 1\";\n",
+ "print\"Let Ta =10000 C\";\n",
+ "print\"Value of h(Ta-800) =\",round(x,4),\"W/m^2, which is much larger than the required value of 1306 W/m^2\";\n",
+ "print\"\\nTrial 2\";\n",
+ "print\"Let Ta = 900 C\";\n",
+ "print\"Value of h(Ta-800) =\",round(x2,4),\"W/m^2, which is a little less than the required value of 1306 W/m^2\";\n",
+ "print\"\\nTrial 3\";\n",
+ "print\"Let Ta = 910 C\";\n",
+ "print\"Value of h(Ta-800) =\",round(x3,4),\"W/m^2 \\nThis value is little more than the required value of 1306 W/m^2\";\n",
+ "print\"\\nThe correct value of Ta obtained by interpolation is\",round(T,4),\"C\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Trial 1\n",
+ "Let Ta =10000 C\n",
+ "Value of h(Ta-800) = 2722.8585 W/m^2, which is much larger than the required value of 1306 W/m^2\n",
+ "\n",
+ "Trial 2\n",
+ "Let Ta = 900 C\n",
+ "Value of h(Ta-800) = 1215.0 W/m^2, which is a little less than the required value of 1306 W/m^2\n",
+ "\n",
+ "Trial 3\n",
+ "Let Ta = 910 C\n",
+ "Value of h(Ta-800) = 1356.3 W/m^2 \n",
+ "This value is little more than the required value of 1306 W/m^2\n",
+ "\n",
+ "The correct value of Ta obtained by interpolation is 906.4402 C\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.5, Page no:269"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "Tp = 75 ; #Temperature of absorber plate , degree C\n",
+ "Tc = 55 ; #Temperature of glass cover , degree C\n",
+ "L = 0.025 ; #m\n",
+ "H = 2 ; #m\n",
+ "Y = 70 ; #degree\n",
+ "k = 0.0294 ; #W/m K\n",
+ "Pr = 0.695 ;\n",
+ "\n",
+ "#calculations\n",
+ "a = 19/180*3.14 ; #Radians\n",
+ "r = H/L ;\n",
+ "Tavg = ( Tp +Tc) /2+273 ; #K\n",
+ "v = 19.50*10**-6 ; #m^2/s\n",
+ "Ra = 9.81*(1/ Tavg )*( Tp -Tc)*(L**3) /(v**2) *Pr*math.cos(a);\n",
+ "Nu = 0.229*( Ra)**0.252;\n",
+ "h = Nu*k/L ; #W/m^2 K\n",
+ "Rate = h *2*1*( Tp -Tc); #W\n",
+ "\n",
+ "#result\n",
+ "print\"Heat transfer rate =\",round(Rate,4),\"W\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat transfer rate = 122.8843 W\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.6, Page no:270"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "Tair = 30 ;\n",
+ "D = 0.04 ;\n",
+ "Ts = 70 ;\n",
+ "V = 0.3 ;\n",
+ "Pr = 0.698 ;\n",
+ "k = 0.0283 ;\n",
+ "\n",
+ "#calculations\n",
+ "Tm = ( Tair + Ts )/2 ;\n",
+ "v = 17.95*10**-6 ;\n",
+ "Gr = 9.81*1/323*( Ts - Tair )*(D**3) /v**2;\n",
+ "Re = V*D/v ;\n",
+ "X = Gr/Re**2 ;\n",
+ "Nuforced = 0.3 + 0.62*( Re**0.5) *( Pr**(1/3) ) /((1+(0.4/Pr)**(2/3) )**(1/4))*(1+( Re /282000)**(5/8))**(4/5) ;\n",
+ "Nu = Nuforced *(1+6.275*( X)**(7/4))**(1/7) ;\n",
+ "h = Nu *(k/D);\n",
+ "\n",
+ "#result\n",
+ "print\"Since Gr/Re^2 =\",round(X,4),\"is > 0.2, we have a combined convection situation.\";\n",
+ "print\"The Average heat transfer coefficient =\",round(h,4),\"W/m^2 K\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Since Gr/Re^2 = 0.5399 is > 0.2, we have a combined convection situation.\n",
+ "The Average heat transfer coefficient = 10.8276 W/m^2 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Textbook_Of_Heat_Transfer/Chapter_7_Heat_Exchangers.ipynb b/Textbook_Of_Heat_Transfer/Chapter_7_Heat_Exchangers.ipynb new file mode 100755 index 00000000..9fec8619 --- /dev/null +++ b/Textbook_Of_Heat_Transfer/Chapter_7_Heat_Exchangers.ipynb @@ -0,0 +1,440 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:c8c0ee88164cfcd21e5e0ef3ff65a90467a8a7878be11fb5b83841227f683525"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 7: Heat Exchangers"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.1, Page no:285"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "h = 2000 ; #W/m^2 K\n",
+ "#From Table 7.1\n",
+ "Uf = 0.0001 ; #fouling factor, m^2K/W\n",
+ "\n",
+ "#calculations\n",
+ "hf = 1/(1/ h+ Uf );\n",
+ "p = (h-hf)/h *100;\n",
+ "\n",
+ "#result\n",
+ "print\"Heat transfer coefficient including the effect of foulung =\",round(hf,4),\"W/m^2 K\";\n",
+ "print\"Percentage reduction =\",round(p,4);"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat transfer coefficient including the effect of foulung = 1666.6667 W/m^2 K\n",
+ "Percentage reduction = 16.6667\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.2, Page no:294"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "m = 1000 ; #kg/h\n",
+ "Thi = 50 ; #C\n",
+ "The = 40 ; #C\n",
+ "Tci = 35 ; #C\n",
+ "Tce = 40 ; #C\n",
+ "U = 1000 ; #OHTC, W/m^2 K\n",
+ "#From fig 7.15,\n",
+ "F =0.91 ;\n",
+ "#Again from fig 7.15,\n",
+ "F =0.91 ;\n",
+ "\n",
+ "#calculations\n",
+ "#Using Eqn 7.5.25\n",
+ "q = m /3600*4174*( Thi - The ) ; #W\n",
+ "deltaT = (( Thi - Tce ) -(The - Tci ))/math.log (( Thi -Tce)/( The -Tci )); #C\n",
+ "#T1 = Th and T2 = Tc\n",
+ "R = (Thi - The )/( Tce - Tci ) ;\n",
+ "S = (Tce - Tci )/( Thi - Tci ) ;\n",
+ "#Alternatively, taking T1 = Tc and T2 = Th\n",
+ "R2 = (Tci - Tce )/( The - Thi );\n",
+ "S2 = (The - Thi )/( Tci - Thi );\n",
+ "A = q/(U*F* deltaT );\n",
+ "\n",
+ "#result\n",
+ "print\"delta T =\",round(deltaT,4);\n",
+ "print\"\\nTaking T1 = Th and T2 = Tc\";\n",
+ "print\"R=\",round(R,4), \"S=\",round(S,4);\n",
+ "print\"Hence, F =\",round(F,4);\n",
+ "print\"\\nTaking T1 = Tc and T2 = Th\";\n",
+ "print\"R2=\",round(R2,4),\"S2=\",round(S2,4);\n",
+ "print\"Hence, F =\",round(F,4);\n",
+ "print\"\\nArea =\",round(A,4),\"m^2\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "delta T = 7.2135\n",
+ "\n",
+ "Taking T1 = Th and T2 = Tc\n",
+ "R= 2.0 S= 0.3333\n",
+ "Hence, F = 0.91\n",
+ "\n",
+ "Taking T1 = Tc and T2 = Th\n",
+ "R2= 0.5 S2= 0.6667\n",
+ "Hence, F = 0.91\n",
+ "\n",
+ "Area = 1.7663 m^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.3, Page no:295"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "#Because of change of phase , Thi = The\n",
+ "Thi = 100 ; #[C], Saturated steam\n",
+ "The = 100 ; #[C], Condensed steam\n",
+ "Tci = 30 ; #[C], Cooling water inlet\n",
+ "Tce = 70 ; #[C], cooling water outlet\n",
+ "#From fig 7.16\n",
+ "F = 1;\n",
+ "\n",
+ "#calculations\n",
+ "R = (Thi - The )/( Tce - Tci ) ;\n",
+ "S = (Tce - Tci )/( Thi - Tci ) ;\n",
+ "#For counter flow arrangement\n",
+ "Tmcounter = (( Thi - Tce ) -(The - Tci ))/math.log (( Thi - Tce )/(The - Tci )); #For counter flow arrangement\n",
+ "#Therefore\n",
+ "Tm = F* Tmcounter ;\n",
+ "\n",
+ "#result\n",
+ "print\"Mean Temperaature Difference =\",round(Tm,4),\"C\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mean Temperaature Difference = 47.2089 C\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.4(a), Page no:302"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "#Using Mean Temperature Difference approach\n",
+ "mhot = 10 ; #kg/min\n",
+ "mcold = 25 ; #kg/min\n",
+ "hh = 1600 ; #[W/m^2 K], Heat transfer coefficient on hot side\n",
+ "hc = 1600 ; #[W/m^2 K], Heat transfer coefficient on cold side\n",
+ "Thi = 70 ; #C\n",
+ "Tci = 25 ; #C\n",
+ "The = 50 ; #C\n",
+ "\n",
+ "#calculations\n",
+ "#Heat Transfer Rate, q\n",
+ "q = mhot /60*4179*( Thi - The ); #W\n",
+ "#Heat gained by cold water = heat lost by the hot water\n",
+ "Tce = 25 + q *1/( mcold /60*4174) ; #C\n",
+ "#Using equation 7.5.13\n",
+ "Tm = (( Thi - Tci ) -(The - Tce ))/math.log (( Thi -Tci)/( The -Tce)); #C\n",
+ "U = 1/(1/ hh + 1/ hc); #W/m^2 K\n",
+ "A = q/(U*Tm); #Area, [m^2]\n",
+ "\n",
+ "#result\n",
+ "print\"(a)\";\n",
+ "print\"Mean Temperature Difference =\",round(Tm,4),\"C\";\n",
+ "print\"Area of Heat Exchanger =\",round(A,4),\"m^2\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ "Mean Temperature Difference = 28.7569 C\n",
+ "Area of Heat Exchanger = 0.6055 m^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.4(b) , Page no:302"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "#Using Mean Temperature Difference approach\n",
+ "mhot = 10 ; #kg/min\n",
+ "mcold = 25 ; #kg/min\n",
+ "hh = 1600 ; #[W/m^2 K], Heat transfer coefficient on hot side\n",
+ "hc = 1600 ; #[W/m^2 K], Heat transfer coefficient on cold side\n",
+ "Thi = 70 ; #C\n",
+ "Tci = 25 ; #C\n",
+ "The = 50 ; #C\n",
+ "mhot1 = 20 ; #kg/min\n",
+ "\n",
+ "#calculations\n",
+ "#Heat Transfer Rate, q\n",
+ "q = mhot/60*4179*( Thi - The ); #W\n",
+ "#Heat gained by cold water = heat lost by the hot water\n",
+ "Tce = 25 + q *1/( mcold /60*4174) ;\n",
+ "# Using equation 7.5.13\n",
+ "Tm = ((( Thi - Tci ) -(The - Tce ))/math.log (( Thi -Tci)/( The -Tce))); #C\n",
+ "U = 1/(1/ hh + 1/ hc); #W/m^2 K\n",
+ "A = q/(U*Tm); #Area, [m^2]\n",
+ "#Flow rate on hot side i.e. 'hh' is doubled\n",
+ "hh1 = 1600*2**0.8 ; #W/m^2 K\n",
+ "U1 = 1/(1/ hh1 + 1/ hc); #W/m^2 K\n",
+ "mhCph = mhot1 /60*4179 ; #W/K\n",
+ "mcCpc = mcold /60*4174 ; #W/K\n",
+ "#Therefore\n",
+ "C = mhCph / mcCpc ;\n",
+ "ntu = U1*A/ mhCph ;\n",
+ "e = (1 - math.exp ( -(1+C)*ntu) )/(1+ C) ;\n",
+ "#Therefore (Thi - The)/(Thi - Tci) = e , we get\n",
+ "The = Thi - e*( Thi - Tci );\n",
+ "#Equating the heat lost by water to heat gained by cold water , we get\n",
+ "Tce = Tci + ( mhCph *( Thi - The ))/ mcCpc ;\n",
+ "\n",
+ "#result\n",
+ "print\"(b)\\nNTU =\",round(ntu,4);\n",
+ "print\"Exit temperature of cold and hot stream are\",round(Tce,4),\"C and\",round(The,4),\"C respectively.\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(b)\n",
+ "NTU = 0.4418\n",
+ "Exit temperature of cold and hot stream are 35.981 C and 56.2901 C respectively.\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.5 , Page no:304"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "mc = 2000 ; # [kg/h]\n",
+ "Tce = 40 ; # [C]\n",
+ "Tci = 15 ; # [C]\n",
+ "Thi = 80 ; # [C]\n",
+ "U = 50 ; # OHTC, [W/m**2 K]\n",
+ "A = 10 ; # Area, [m**2]\n",
+ "\n",
+ "#Calculations\n",
+ "# Using effective NTU method\n",
+ "# Assuming m_c*C_pc = (m*C_p)s\n",
+ "NTU = U*A/(mc*1005/3600);\n",
+ "e = (Tce-Tci)/(Thi-Tci);\n",
+ "# From fig 7.23, no value of C is found corresponding to the above values, hence assumption was wrong.\n",
+ "# So, m_h*C_ph must be equal to (m*C_p)s, proceeding by trail and error method\n",
+ "\n",
+ "mh_1 = 200\n",
+ "NTU_1 = U*A/(mh_1*1.161);\n",
+ "#Corresponding Values of C and e from fig 7.23\n",
+ "C = .416;\n",
+ "e = .78;\n",
+ "#From Equation 7.6.2 Page 297\n",
+ "The_1 = Thi - e*(Thi-Tci)\n",
+ "#From Heat Balance\n",
+ "The2_1 = Thi - mc*1005/3600*(Tce-Tci)/(mh_1*1.161);\n",
+ "\n",
+ "mh_2 = 250\n",
+ "NTU_2 = U*A/(mh_2*1.161);\n",
+ "#Corresponding Values of C and e from fig 7.23\n",
+ "C = .520;\n",
+ "e = .69;\n",
+ "#From Equation 7.6.2 Page 297\n",
+ "The_2 = Thi - e*(Thi-Tci)\n",
+ "#From Heat Balance\n",
+ "The2_2 = Thi - mc*1005/3600*(Tce-Tci)/(mh_2*1.161);\n",
+ "\n",
+ "mh_3 = 300\n",
+ "NTU_3 = U*A/(mh_3*1.161);\n",
+ "#Corresponding Values of C and e from fig 7.23\n",
+ "C = .624;\n",
+ "e = .625;\n",
+ "#From Equation 7.6.2 Page 297\n",
+ "The_3 = Thi - e*(Thi-Tci)\n",
+ "#From Heat Balance\n",
+ "The2_3 = Thi - mc*1005/3600*(Tce-Tci)/(mh_3*1.161);\n",
+ "\n",
+ "mh_4 = 350\n",
+ "NTU_4 = U*A/(mh_4*1.161);#Corresponding Values of C and e from fig 7.23\n",
+ "C = .728;\n",
+ "e = .57;\n",
+ "#From Equation 7.6.2 Page 297\n",
+ "The_4 = Thi - e*(Thi-Tci)\n",
+ "#From Heat Balance\n",
+ "The2_4 = Thi - mc*1005/3600*(Tce-Tci)/(mh_4*1.161);\n",
+ "\n",
+ "mh_5 = 400\n",
+ "NTU_5 = U*A/(mh_5*1.161);\n",
+ "#Corresponding Values of C and e from fig 7.23\n",
+ "C = .832;\n",
+ "e = .51;\n",
+ "#From Equation 7.6.2 Page 297\n",
+ "The_5 = Thi - e*(Thi-Tci)\n",
+ "#From Heat Balance\n",
+ "The2_5 = Thi - mc*1005/3600*(Tce-Tci)/(mh_5*1.161);\n",
+ "\n",
+ "#Results\n",
+ "\n",
+ "print (\"m_h(kg/h) \\t NTU \\t\\t C \\t\\t e \\t T_he(C) \\t\\t T_he(C)(Heat Balance)\");\n",
+ "print mh_1,\"\\t\\t\",round(NTU_1,3),\"\\t\\t\",round(C,3),\"\\t\\t\",round(e,2),\"\\t\\t \",round(The_1,1),\"\\t\\t\\t\",round(The2_1,1);\n",
+ "print mh_2,\"\\t\\t\",round(NTU_2,3),\"\\t\\t\",round(C,3),\"\\t\\t\",round(e,2),\"\\t\\t \",round(The_2,1),\"\\t\\t\\t\",round(The2_2,1);\n",
+ "print mh_3,\"\\t\\t\",round(NTU_3,3),\"\\t\\t\",round(C,3),\"\\t\\t\",round(e,2),\"\\t\\t \",round(The_3,1),\"\\t\\t\\t\",round(The2_3,1);\n",
+ "print mh_4,\"\\t\\t\",round(NTU_4,3),\"\\t\\t\",round(C,3),\"\\t\\t\",round(e,2),\"\\t\\t \",round(The_4,1),\"\\t\\t\\t\",round(The2_4,1);\n",
+ "print mh_5,\"\\t\\t\",round(NTU_5,3),\"\\t\\t\",round(C,3),\"\\t\\t\",round(e,2),\"\\t\\t \",round(The_5,1),\"\\t\\t\\t\",round(The2_5,1);\n",
+ "\n",
+ "#Graph\n",
+ "mh=[200,250,300,350,400];\n",
+ "The=[29.3,35.2,39.4,43,46.9];\n",
+ "The2=[19.9,31.9,39.9,45.7,50];\n",
+ "\n",
+ "import matplotlib.pyplot as plt\n",
+ "import numpy as np\n",
+ "\n",
+ "from pylab import *\n",
+ "figure(1); # For Plotting y-x Diagram\n",
+ "%matplotlib inline\n",
+ "\n",
+ "plt.plot (mh,The,'b',mh,The2,'r',[295,295,200],[0,39.2,39.2],'k');\n",
+ "plt.title (\"mh vs The\");\n",
+ "plt.xlabel(\" mh \");\n",
+ "plt.ylabel(\" The \");"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "m_h(kg/h) \t NTU \t\t C \t\t e \t T_he(C) \t\t T_he(C)(Heat Balance)\n",
+ "200 \t\t2.153 \t\t0.832 \t\t0.51 \t\t 29.3 \t\t\t19.9\n",
+ "250 \t\t1.723 \t\t0.832 \t\t0.51 \t\t 35.2 \t\t\t31.9\n",
+ "300 \t\t1.436 \t\t0.832 \t\t0.51 \t\t 39.4 \t\t\t39.9\n",
+ "350 \t\t1.23 \t\t0.832 \t\t0.51 \t\t 43.0 \t\t\t45.6\n",
+ "400 \t\t1.077 \t\t0.832 \t\t0.51 \t\t 46.9 \t\t\t49.9\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\ngg==\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x4f73e30>"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Textbook_Of_Heat_Transfer/Chapter_8_Condensation_and_boiling.ipynb b/Textbook_Of_Heat_Transfer/Chapter_8_Condensation_and_boiling.ipynb new file mode 100755 index 00000000..0b5c2058 --- /dev/null +++ b/Textbook_Of_Heat_Transfer/Chapter_8_Condensation_and_boiling.ipynb @@ -0,0 +1,496 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:0879cd22772a64b93e3052735e29d09cf3e246362da6a06c0b0212fbf34b9367"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 8: Condensation and boiling"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.1 , Page no:318"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "Ts = 80 ; #C\n",
+ "Tw = 70 ; #C\n",
+ "L = 1 ; #m\n",
+ "g = 9.8 ; #m/s^2\n",
+ "#From table A.1\n",
+ "rho = 978.8 ; #kg/m^3\n",
+ "k = 0.672 ; #W/m K\n",
+ "hfg = 2309 ; #At 80 C,kJ/kg\n",
+ "\n",
+ "#calculations\n",
+ "Tm = (Ts + Tw)/2 ; #Assuming condensate film is laminar and Re < 30\n",
+ "u = 381 *10**-6 ; #kg/m s\n",
+ "v = u/rho ;\n",
+ "#Substituting in eqn 8.3.9, we get\n",
+ "h = 0.943*(( hfg *1000*( rho**2)*g*(k**3)) /(( Ts -Tw)*u*L) )**(1/4) ; #W/m^2 K\n",
+ "rate = h*L*(Ts -Tw)/( hfg *1000) ; #kg/m s\n",
+ "Re = 4* rate /u;\n",
+ "#Substituting h = Re*(lambda*1000)*u/(4*L*(Ts-Tw)), in eqn 8.3.12\n",
+ "Re_1 = (((4* L*(Ts -Tw)*k/( hfg *1000* u)*(g/(v**2) )**(1/3) )+5.2)/1.08)**(1/1.22) ; #Substituting h = Re*(hfg*1000)*u/(4*L*(Ts-Tw))\n",
+ "#From eqn 8.3.12\n",
+ "h_1 = ((Re /(1.08*( Re**1.22) -5.2) )*k *(( g/v**2)**(1/3) )); #W/m^2 K\n",
+ "m = h_1*L *10/( hfg *1000) ; #rate of condensation,kg/m s\n",
+ "\n",
+ "#result\n",
+ "print\"Assuming condensate film is laminar and Re < 30\";\n",
+ "print\"h =\",round(h,4),\"W/m^2 K\";\n",
+ "print\"ReL =\",round(Re,4);\n",
+ "print\"Initial assumption was wrong, Now considering the effect of ripples, we get\";\n",
+ "print\"Re =\",round(Re_1,4);\n",
+ "print\"Heat Transfer Cofficient =\",round(h_1,4),\"W/m^2 K\";\n",
+ "print\"Rate of condensation =\",round(m,6),\"kg/m s\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Assuming condensate film is laminar and Re < 30\n",
+ "h = 6078.7864 W/m^2 K\n",
+ "ReL = 276.3936\n",
+ "Initial assumption was wrong, Now considering the effect of ripples, we get\n",
+ "Re = 320.4829\n",
+ "Heat Transfer Cofficient = 7287.8478 W/m^2 K\n",
+ "Rate of condensation = 0.031563 kg/m s\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.2 , Page no:321"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "Ts = 262 ; #K\n",
+ "D = 0.022 ; #m\n",
+ "Tw = 258 ; #K\n",
+ "#Properties at Tm\n",
+ "rho = 1324 ; #kg/m^3\n",
+ "k = 0.1008 ; #W/m K\n",
+ "g = 9.81 ; #m/s^2\n",
+ "\n",
+ "#calculations\n",
+ "Tm = (Ts+Tw) /2;\n",
+ "v = 1.90*10**-7 ; #m^2/s\n",
+ "hfg = 215.1*10**3 ; #J/kg\n",
+ "u = v*rho ; #Viscosity\n",
+ "#From eqn 8.4.1\n",
+ "h = 0.725*( hfg *( rho**2) *g*(k**3) /(( Ts -Tw)*u*D))**(1/4) ;\n",
+ "rate = h*3.14*D*(Ts -Tw) / hfg ; #kg/s m\n",
+ "Re = 4* rate /u ;\n",
+ "\n",
+ "#result\n",
+ "print\"Heat transfer coefficient =\",round(h,4),\"W/m^2 K\";\n",
+ "print\"Condensation rate per unit length =\",round(rate,6),\"kg/s m\";\n",
+ "print\"Film Reynolds number =\",round(Re,4);"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat transfer coefficient = 2622.2475 W/m^2 K\n",
+ "Condensation rate per unit length = 0.003369 kg/s m\n",
+ "Film Reynolds number = 53.5629\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.3 , Page no:322"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "m = 25/60 ; #kg/sec\n",
+ "ID = 0.025 ; #m\n",
+ "OD = 0.029 ; #m\n",
+ "Tci = 30 ; #C\n",
+ "Tce = 70 ; #C\n",
+ "g = 9.8 ; #m/s^2\n",
+ "Ts = 100 ; #C\n",
+ "#Assuming 5.3.2 is valid, properties at 50 C\n",
+ "#Properties at Tm\n",
+ "rho = 988.1 ; #kg/m^3\n",
+ "k = 0.648 ; #W/m K\n",
+ "Pr = 3.54 ;\n",
+ "#From eqn 4.6.4a\n",
+ "f = 0.005635;\n",
+ "#From eqn 5.3.2\n",
+ "Nu = 198.39 ;\n",
+ "Tw = 90 ; #Assuming average wall temperature = 90 C\n",
+ "#Properties at Tm\n",
+ "#Properties at Tm\n",
+ "rho = 961.9 ; #kg/m^3\n",
+ "k = 0.682 ; #W/m K\n",
+ "l = 0; #initial guess, assumed value for fsolve function\n",
+ "\n",
+ "#calculations\n",
+ "v = 0.556*10**-6; #m^2/s\n",
+ "Re = 4*m/(3.14*ID*rho *v);\n",
+ "h = Nu*k/ID ;\n",
+ "u = 298.6*10**-6 ; #kg/m s\n",
+ "hfg = 2257*10**3 ; #J/kg\n",
+ "#Equating the heat flow from the condensing steam to the tube wall, to the heat flow from the tube wall to the flowing water.\n",
+ "#Solving the simplified equation\n",
+ "h = 0.725*(hfg *( rho**2) *g*(k**3) /(( Ts -Tw)*u*OD))**(1/4) ;\n",
+ "#By solving trial and error method, the temperature value we get\n",
+ "T=86.964984;# in oC\n",
+ "#Therefore\n",
+ "hc = 21338.77/(100 - T)**(1/4) ; #W/m^2 K\n",
+ "#Now, equating the heat flowing from the condensing steam to the tube wall to the heat gained by the water, we have\n",
+ "#Solving by trial and error method, we get\n",
+ "L=5.216152; #in meter\n",
+ "\n",
+ "#result\n",
+ "print\"Temperature obtained from trial and error =\",round(T,4),\"oC\";\n",
+ "print\"hc =\",round(hc,4),\"W/m^2 K\";\n",
+ "print\"Length of the tube =\",round(L,4),\"m\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Temperature obtained from trial and error = 86.965 oC\n",
+ "hc = 11230.3034 W/m^2 K\n",
+ "Length of the tube = 5.2162 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.4 , Page no:322"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "#Properties at (Tw+Ts)/2 = 100.5 degree celsius\n",
+ "deltaT1 = 1; #in degree celsius\n",
+ "p1 = 7.55*10**-4; #[K^(-1) p1 is coefficient of cubical expansion\n",
+ "v1 = 0.294*10**-6; #[m^2/sec] viscosity at 100.5 degree celsius\n",
+ "k1 = 0.683; #[W/m-k]thermal conductivity\n",
+ "Pr1 = 1.74; #Prandtl number\n",
+ "g = 9.81; #acceleration due to gravity\n",
+ "L = 0.14*10**-2; #diameter in meters\n",
+ "#Properties at (Tw+Ts)/2 =102.5\n",
+ "deltaT2 = 5; #in degree celsius\n",
+ "p2 = 7.66*10**-4; #[K^(-1) p1 is coefficient of cubical expansion\n",
+ "v2 = 0.289*10**-6; #[m^2/sec] viscosity at 102.5 degree celsius \n",
+ "k2 = 0.684; #[W/m-k]thermal conductivity\n",
+ "Pr2 = 1.71; #Prandtl number \n",
+ "#Properties at (Tw+Ts)/2 =105\n",
+ "deltaT3 = 10; #in degree celsius\n",
+ "p3 = 7.80*10**-4; #[K^(-1) p1 is coefficient of cubical expansion\n",
+ "v3 = 0.284*10**-6; #[m^2/sec] viscosity at 105 degree celsius \n",
+ "k3 = 0.684; #[W/m-k]thermal conductivity\n",
+ "Pr3 = 1.68; #Prandtl number\n",
+ "\n",
+ "\n",
+ "#Calculations\n",
+ "\n",
+ "Ra1 = ((p1*g*deltaT1*L**3)/(v1**2))*Pr1;\n",
+ "q1=(k1/L)*(deltaT1)*(0.36+(0.518*Ra1**(1/4))/(1+(0.559/Pr1)**(9/16))**(4/9))\n",
+ "\n",
+ "Ra2 = ((p2*g*deltaT2*L**3)/(v2**2))*Pr2;\n",
+ "q2=(k2/L)*(deltaT2)*(0.36+(0.518*Ra2**(1/4))/(1+(0.559/Pr2)**(9/16))**(4/9))\n",
+ "\n",
+ "Ra3 = ((p3*g*deltaT3*L**3)/(v3**2))*Pr3;\n",
+ "q3=(k3/L)*(deltaT3)*(0.36+(0.518*Ra3**(1/4))/(1+(0.559/Pr3)**(9/16))**(4/9))\n",
+ "\n",
+ "#At 100 degree celsius\n",
+ "Cpl = 4.220; #[kJ/kg]\n",
+ "lamda = 2257; #[kJ/kg]\n",
+ "ul = 282.4*10**-6; #viscosity is in kg/m-sec\n",
+ "sigma = 589*10**-4; #Surface tension is in N/m\n",
+ "pl = 958.4; #density in kg/m^3\n",
+ "pv =0.598; #density of vapour in kg/m^3\n",
+ "deltap = pl-pv;\n",
+ "Prl = 1.75; #Prandtl no. of liquid\n",
+ "Ksf = 0.013;\n",
+ "deltaT11=5;\n",
+ "deltaT12=10;\n",
+ "deltaT13=20;\n",
+ "q11=141.32*deltaT11**3\n",
+ "q12=141.32*deltaT12**3\n",
+ "q13=141.32*deltaT13**3\n",
+ "\n",
+ "\n",
+ "L1 = (L/2)*(g*(pl-pv)/sigma)**(1/2);\n",
+ "f_L = 0.89+2.27*math.exp(-3.44*L1**(0.5));\n",
+ "q2 = f_L*((3.14/24)*lamda*10**(3)*pv**(0.5)*(sigma*g*(pl-pv))**(0.25));\n",
+ "\n",
+ "Tn=pow(q2/141.32,1/3)\n",
+ "q3 = 0.09*lamda*10**3*pv*(sigma*g*(pl-pv)/(pl+pv)**(2))**(0.25);\n",
+ "Ts1 = 140; #surface temperature in degree celsius\n",
+ "Ts2 = 200; #surface temperature in degree celsius\n",
+ "Ts3 = 600; #surface temperature in degree celsius\n",
+ "Twm1 = (140+100)/2; #Mean film temperature\n",
+ "#properties of steam at 120 degree celsius and 1.013 bar\n",
+ "kv = 0.02558; #thermal conductivity in W/mK\n",
+ "pv1 = 0.5654; #vapor density in kg/m**3\n",
+ "uv=13.185*10**(-6); #viscosity of vapour in kg/m sec\n",
+ "lamda1 = (2716.1-419.1)*10**(3);#Latent heat of fusion in J/kg\n",
+ "hc = 0.62*((kv**3)*pv*(pl-pv)*g*lamda1/(L*uv*(140-100)))**(0.25);\n",
+ "qrad = 5.67*10**(-8)*(413**4 - 373**4)/((1/0.9)+1-1);\n",
+ "hr = qrad/(413-373);\n",
+ "h = hc + 0.75*hr;\n",
+ "\n",
+ "hc_200 = 0.62*((kv**3)*pv*(pl-pv)*g*lamda1/(L*uv*(200-100)))**(0.25);\n",
+ "qrad1 = 5.67*10**(-8)*(473**4 - 373**4)/((1/0.9)+1-1);\n",
+ "hr_200 = qrad1/(200-100);\n",
+ "h_200 = hc_200 +0.75*hr_200;\n",
+ "hc_600 = 0.62*((kv**3)*pv*(pl-pv)*g*lamda1/(L*uv*(600-100)))**(0.25);\n",
+ "qrad2 = 5.67*10**(-8)*(873**4 - 373**4)/((1/0.9)+1-1);\n",
+ "hr_600 = qrad1/(600-100)\n",
+ "\n",
+ "#Results\n",
+ "\n",
+ "print \"\\n q/A = \",round(q1,2),\" W/m^2 at (Tw-Ts)=1\";\n",
+ "print \"\\n q/A = \",round(q2,2),\" W/m^2 at (Tw-Ts)=5\";\n",
+ "print \"\\n q/A = \",round(q3,2),\" W/m^2 at (Tw-Ts)=10\";\n",
+ "print \"\\n q/A at deltaT = 5 degree celsius = \",q11,\" W/m^2\";\n",
+ "print \"\\nq/A at deltaT = 10 degree celsius = \",q12,\" W/m^2\";\n",
+ "print \"\\n q/A at deltaT =20 degree celsius = \",q13,\" W/m^2\";\n",
+ "print \"\\n Peak heat flux L = \",round(L1,2); \n",
+ "print \"\\n f(l) = \",round(f_L,2);\n",
+ "print \"\\n q/A = \",q2,\" W/m^2\";\n",
+ "print \"Tw-Ts = \",Tn,\" degree celsius\"\n",
+ "print \"\\n\\n Minimum heat flux\";\n",
+ "print \"\\n q/A \",q3, \"W/m^2\"\n",
+ "print \"\\n\\n Stable film boiling\"\n",
+ "print \"\\n hc = \",hc,\" W/m^2\"\n",
+ "print \"\\n q/A due to radiation = \",qrad,\" W/m^2\";\n",
+ "print \"\\n hr = \",hr,\" W/m^2 K \";\n",
+ "print \"\\n Since hr<hc \";\n",
+ "print \"\\n The total heat transfer coefficient \";\n",
+ "print \" h = \",h,\" W/m^2 K\";\n",
+ "print \"\\n Total heat flux \",h*(140-100),\" W/m^2 K\";\n",
+ "print \"\\n\\n hc = \",hc_200,\" W/m^2\";\n",
+ "print \"\\n hr = \",hr_200,\" W/m^2 K\";\n",
+ "print \"\\n q/A due to radiation = \",qrad1,\" W/m^2\";\n",
+ "print \"\\n Total heat flux = \",h_200*100,\" W/m^2\";\n",
+ "print \"\\n\\n hc = \",hc_600,\" W/m^2\";\n",
+ "print \"\\n hr = \",hr_600,\" W/m^2 K\";\n",
+ "print \"\\n q/A due to radiation = \",qrad2,\" W/m^2\";\n",
+ "\n",
+ "#Graph\n",
+ "\n",
+ "import matplotlib.pyplot as plt\n",
+ "import numpy as np\n",
+ "from pylab import *\n",
+ "figure(1); # For Plotting y-x Diagram\n",
+ "%matplotlib inline\n",
+ "q = [q11, q12, q13];\n",
+ "plt.plot ([1, 5, 10],q);\n",
+ "deltaT=linspace(1,10,10);\n",
+ "q1=141.32*deltaT**3;\n",
+ "plt.plot (deltaT,q1)\n",
+ "plt.title (\"Boiling curve\");\n",
+ "plt.xlabel(\" (Tw - Ts)degree celsius \");\n",
+ "plt.ylabel(\" Heat flux,(q/A)W/m^2 \");"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " q/A = 1116.99 W/m^2 at (Tw-Ts)=1\n",
+ "\n",
+ " q/A = 1393519.91 W/m^2 at (Tw-Ts)=5\n",
+ "\n",
+ " q/A = 19025.3 W/m^2 at (Tw-Ts)=10\n",
+ "\n",
+ " q/A at deltaT = 5 degree celsius = 17665.0 W/m^2\n",
+ "\n",
+ "q/A at deltaT = 10 degree celsius = 141320.0 W/m^2\n",
+ "\n",
+ " q/A at deltaT =20 degree celsius = 1130560.0 W/m^2\n",
+ "\n",
+ " Peak heat flux L = 0.28\n",
+ "\n",
+ " f(l) = 1.26\n",
+ "\n",
+ " q/A = 1393519.90741 W/m^2\n",
+ "Tw-Ts = 21.4438708455 degree celsius\n",
+ "\n",
+ "\n",
+ " Minimum heat flux\n",
+ "\n",
+ " q/A 19025.295556 W/m^2\n",
+ "\n",
+ "\n",
+ " Stable film boiling\n",
+ "\n",
+ " hc = 455.986290831 W/m^2\n",
+ "\n",
+ " q/A due to radiation = 496.874268274 W/m^2\n",
+ "\n",
+ " hr = 12.4218567068 W/m^2 K \n",
+ "\n",
+ " Since hr<hc \n",
+ "\n",
+ " The total heat transfer coefficient \n",
+ " h = 465.302683361 W/m^2 K\n",
+ "\n",
+ " Total heat flux 18612.1073344 W/m^2 K\n",
+ "\n",
+ "\n",
+ " hc = 362.632549817 W/m^2\n",
+ "\n",
+ " hr = 15.665080604 W/m^2 K\n",
+ "\n",
+ " q/A due to radiation = 1566.5080604 W/m^2\n",
+ "\n",
+ " Total heat flux = 37438.136027 W/m^2\n",
+ "\n",
+ "\n",
+ " hc = 242.507001959 W/m^2\n",
+ "\n",
+ " hr = 3.13301612081 W/m^2 K\n",
+ "\n",
+ " q/A due to radiation = 28652.514946 W/m^2\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "iVBORw0KGgoAAAANSUhEUgAAAaAAAAEXCAYAAADr+ZCUAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XdcU2f7P/ArTAdKGBIgQVYCKFBAZYi1RREQ67YyrIKr\ndTxatX0o2vFVv62Ktj7VVq2/p5UCWkDrRCuIi2qVIQoWB0uCkDDUkLBncv/+OD39IkIZAodxvV+v\n80pycsaVtObDfc597sMihABCCCHU25SYLgAhhNDghAGEEEKIERhACCGEGIEBhBBCiBEYQAghhBiB\nAYQQQogRGEAIdbNffvnlPS8vr0v0ayUlJUVeXp4ZAMCaNWt++Oqrrz5nrjqE+g4WXgeE0KtMTEzy\nnz17pqesrCxXVVVtdHV1vX348OHVPB5P1NltKSkpKXJzc/lmZmZ5PVErQv0VtoAQagWLxSIXLlyY\nWVlZOaK4uNiAw+GUrl+//num6+ppTU1NKkzXgAYPDCCE2qGurl6/YMGCU48ePRpLzysvL9cMCAiI\n0NPTe2ZiYpK/Y8eOzwghLACAsLCwpZMnT77Z2raWLl0a9sUXX3wJAJCQkODG4/FE//nPfz7icDil\nhoaGRWFhYUvpZSUSic6sWbPOa2pqljs5OaV8/vnnX7W1XQCAP/74401XV9fbWlpa0tGjRxdEREQE\nAAC4ubklHDlyZAW9XMv6lJSUFIcOHVprYWGRbWFhkb127dpDQUFBXzff9pw5c859++23mwAAioqK\nDBcsWHBKT0/vmZmZWd7333+/vpNfKUIAgAGEUJvoQKmpqRl2/Phx34kTJybS761fv/77ysrKEUKh\n0PT3339/OyIiIuDnn39e1t42WSwWYbFYfx/3Li0t5VRUVIwsKioyPHLkyIp//etfB8vLyzUBAP71\nr38dHDFiRGVpaSknPDw8MCIiIqD5us09ffrUeMaMGRc3bNiw/8WLF7rp6en2dnZ291vbZ2vOnTs3\nJyUlxenx48dj/P39o44fP+5LvyeVSrUuX77s4e/vH6VQKJRmzZp13sHBIa2oqMjw6tWr7vv27dsY\nHx/v2d5nR6glDCCEWkEIYc2dO/eslpaWlM1my65ever+73//+xsAALlcrnz8+HHfXbt2bRk+fHi1\nsbHx048//njv0aNHl3R02/RzVVXVxv/5n//5X2VlZbm3t3eshoZGVVZWlqVcLlc+ffr0/O3bt28d\nMmRI3ZgxYx4HBgaGN1+3ucjIyEUeHh6XfX19jysrK8u1tbXL6ADqiC1btuxis9kydXX1+jfffPMP\nFotFbt68ORkA4OTJk++6urre1tfXL7lz547jixcvdD///POvVFRUmkxNTYUrV678KTo62q+j+0KI\nhsd7EWoFi8Ui586dmzN16tRrhBDW2bNn57799tu/P378eAwhhNXY2KhqbGz8lF5+9OjRBWKxmNvZ\n/ejo6EiUlJQU9Othw4bVVFVVaTx//nxUU1OTipGRUSH93j91gBCJRLzX6eTQfD8sFov4+flFR0VF\n+U+ePPlmZGTkooCAgAgAqqVVVFRkqKWlJaWXl8vlym+99daNru4bDV7YAkKoHSwWi8ybN++MsrKy\n/I8//nhTV1f3haqqamN+fr4JvUxBQcHojvaQa+9wGADAqFGjnquoqDQVFhYa0fOaP2/JyMio8MmT\nJ+atvTd8+PDq6urq4fTrkpIS/fZq8vf3jzp58uS7T58+NU5JSXFasGDBKQAqaE1NTYVSqVSLnioq\nKkZeuHBhZnufCaGWMIAQagN9uIsQwjp37twcqVSqNWbMmMfKyspyHx+fE5999tmOqqoqjadPnxp/\n++23mxYvXnysI9ts6zBac8rKyvL58+ef3rZt27ba2tqhmZmZVkePHl3SVni99957v1y5cmXar7/+\nurCpqUlFIpHo3L9/3w4AwN7ePv306dPza2trh+bm5vKbd0hoi729fbquru6LlStX/jR9+vS4kSNH\nVgAAODk5pYwYMaJyz549n9TW1g6Vy+XKDx48sElNTZ3Q3jYRagkDCKE2zJo16/yIESMqNTU1y7/4\n4osvIyIiAsaMGfMYAOD7779fP3z48GozM7O8yZMn33zvvfd+WbZs2c8Ar570b/m8rfdaOnDgwLry\n8nJNfX39ksDAwHB/f/8oNTW1htaWNTIyKrx48eKMvXv3fqyjoyNxcHBI+/PPP98AANi0adO3ampq\nDRwOp3TZsmU/L168+FhHali0aFHktWvXpi5atCiSnqekpKS4cOHCzPT0dHszM7O8UaNGPf/ggw/+\nW1FRMbIj3ylCzeGFqAj1E8HBwbufPXum15Hedgj1Bz3WAlq+fHkoh8MptbW1zaDnBQUFfT1mzJjH\ndnZ29+fPn3+a7m4KALBr164tAoEgx8rKKrN5l867d++Ot7W1zRAIBDkbNmzYT8+vr69X9/X1PS4Q\n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\nQgghWbwDrHA2pVW5S0IAAAAASUVORK5CYII=\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x480b930>"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.5 , Page no:337"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.02 ; #m\n",
+ "l = 0.15 ; #m\n",
+ "T = 500+273 ; #K\n",
+ "Tc = -196+273 ; #K\n",
+ "e = 0.4;\n",
+ "#Properties\n",
+ "k = 0.0349 ; #W/m K\n",
+ "rho = 0.80 ; #kg/m^3\n",
+ "Cpavg = 1.048 ; #kJ/kg J\n",
+ "rholiq = 800 ; #kg/m^3\n",
+ "\n",
+ "#calculations\n",
+ "s = 5.670*10**-8;\n",
+ "#Film boiling will occur, hence eqn 8.7.9 is applicable\n",
+ "Tm = (T+Tc) /2; #Film boiling will occur\n",
+ "u = 23*10**-6 ; #kg/m s\n",
+ "latent = 201*10**3 ; #J/kg\n",
+ "hfg = (latent + Cpavg *(Tm -Tc) *1000); #Jk/g\n",
+ "hc = 0.62*((( k**3) *rho *799.2*9.81* hfg )/(D*u*(T-Tc)) )**(1/4) ; #W/m^2 K\n",
+ "#Taking the emissivity of liquid surface to be unity and using equation 3.9.1, the exchange of radiant heat flux\n",
+ "flux = s*(T**4- Tc**4) /(1/ e +1/1 -1) ; #W/m^2\n",
+ "hr = flux /(T-Tc);\n",
+ "#Since h_r < h_c, total heat transfer coefficient is determined from eqn 8.7.11\n",
+ "h = hc +3/4* hr ; #W/m^2 K\n",
+ "fluxi = h*(T-Tc);\n",
+ "Rate = fluxi *3.14*D*l; #W\n",
+ "\n",
+ "#result\n",
+ "print\"Initial heat flux =\",round(fluxi,4),\"W/m^2\";\n",
+ "print\"Initial heat transfer rate =\",round(Rate,4),\"W\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Initial heat flux = 69646.6128 W/m^2\n",
+ "Initial heat transfer rate = 656.0711 W\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Textbook_Of_Heat_Transfer/Chapter_9_Mass_Transfer.ipynb b/Textbook_Of_Heat_Transfer/Chapter_9_Mass_Transfer.ipynb new file mode 100755 index 00000000..a65d7225 --- /dev/null +++ b/Textbook_Of_Heat_Transfer/Chapter_9_Mass_Transfer.ipynb @@ -0,0 +1,626 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:68af0c4a8337e2d1285b325265301de0a726e4a41ce7ffd072403aa9458bcfde"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 9: Mass Transfer"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.1, Page no:349"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "wa = 0.76 ;\n",
+ "wb = 0.24 ;\n",
+ "ma = 28 ; #kg/kg mole\n",
+ "mb = 32 ; #kg/kg mole\n",
+ "\n",
+ "#calculations\n",
+ "xa = ( wa /ma)/( wa /ma+ wb /mb);\n",
+ "xb = ( wb /mb)/( wa /ma+ wb /mb);\n",
+ "\n",
+ "#result\n",
+ "print\"The molar fractions are given by\";\n",
+ "print\"xa =\",round(xa,5);\n",
+ "print\"xb =\",round(xb,5);"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The molar fractions are given by\n",
+ "xa = 0.78351\n",
+ "xb = 0.21649\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.2, Page no:350"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#calculations\n",
+ "#From Table 9.1 at 1 atm and 25 C\n",
+ "Dab = 0.62*10**-5 ; #m^2/s\n",
+ "#Therefore at 2 atm and 50 C\n",
+ "Dab2 = Dab*(1/2)*(323/298)**1.5 ;\n",
+ "\n",
+ "#result\n",
+ "print\"Dab at 2 atm & 50 C =\",'%.4E'%Dab2,\"m^2/s\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Dab at 2 atm & 50 C = 3.4982E-06 m^2/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.3 (a), Page no:352"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "t = 0.04 ; #m\n",
+ "A = 2 ; #m^ 2\n",
+ "rho1 = 0.10 ;\n",
+ "rho2 = 0.01 ;\n",
+ "\n",
+ "#calculations\n",
+ "D400 = 1.6*10**-11 ; #at 400K [m^2/ s ]\n",
+ "#Mass Diffusion in solid solution, assuming Ficks law is valid & steady state and one dimensional diffusion\n",
+ "#Subtituting the values in eqn 9.3.3 , At 400 K\n",
+ "m400 = A* D400 *( rho1 - rho2 )/t; #kg / s\n",
+ "\n",
+ "#result\n",
+ "print\"Rate of diffusion of Hydrogen at 400 K =\",m400,\"kg/s\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate of diffusion of Hydrogen at 400 K = 7.2e-11 kg/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.3 (b), Page no:352"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "t = 0.04 ; #m\n",
+ "A = 2 ; #m^2\n",
+ "rho1 = 0.10 ;\n",
+ "rho2 = 0.01 ;\n",
+ "\n",
+ "#calculations\n",
+ "D1200 = 3.5*10**-8 ; #at 1200k [m^2/s]\n",
+ "#Mass Diffusion in solid solution, assuming Ficks law is valid & steady state and one dimensional diffusion\n",
+ "#At 1200 K\n",
+ "#From eqn 9.3.3\n",
+ "m1200 = A* D1200 *( rho1 - rho2 )/t ; #At 1200 K\n",
+ "\n",
+ "#result\n",
+ "print\"b) Rate of diffusion of Hydrogen at 1200 K =\",m1200,\"kg/s\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "b) Rate of diffusion of Hydrogen at 1200 K = 1.575e-07 kg/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.4 (a), Page no:356"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "L = 1 ; #m\n",
+ "D = 0.005 ; #m\n",
+ "Pa1 = 1 ; #atm\n",
+ "Pa2 = 0 ;\n",
+ "R = 8314 ;\n",
+ "T = 298 ; #K\n",
+ "\n",
+ "#calculations\n",
+ "#Assuming Equimolal counter diffusion\n",
+ "#From Table 9.1\n",
+ "Dab = 2.80*10**-5 ; #m^2/s\n",
+ "#Substituing in eqn 9.4.12\n",
+ "Na = -( Dab /(R*T)*( Pa2 - Pa1 ) *(1.014*10**5) /L )*(3.14*(D/2)**2) ;\n",
+ "RNH3 = Na *17 ; #kg/s\n",
+ "\n",
+ "#result\n",
+ "print\"Na = -Nb =\",'%.4E'%Na,\"(kg mole)/m^2 s\";\n",
+ "print\"Rate at which ammonia is lost through the tube =\",'%.3E'%RNH3,\"kg/s\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Na = -Nb = 2.2489E-11 (kg mole)/m^2 s\n",
+ "Rate at which ammonia is lost through the tube = 3.823E-10 kg/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.4 (b), Page no:356"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "L = 1 ; #m\n",
+ "D = 0.005 ; #m\n",
+ "Pa1 = 1 ; #atm\n",
+ "Pa2 = 0 ;\n",
+ "R = 8314 ;\n",
+ "T = 298 ; #K\n",
+ "\n",
+ "#calculations\n",
+ "#Since the tank is large and the pressure and temperature at the two ends of the same tube are same, \n",
+ "#we are assuming Equimolal counter diffusion\n",
+ "Dab = 2.80*10**-5 ; #m^2/s\n",
+ "#Substituing in eqn 9.4.12\n",
+ "Na = -(Dab /(R*T)*( Pa2 - Pa1 ) *(1.014*10**5) /L )*(3.14*(D/2)**2) ;\n",
+ "#Since equimolal counter diffusion is taking place\n",
+ "Nb = - Na ; \n",
+ "#therefore rate at which air enters the tank\n",
+ "Rair = abs (Nb)*29 ; #kg/s\n",
+ "\n",
+ "#result\n",
+ "print\"Rate at which air enters the tank =\",'%.4E'%Rair,\"kg/s\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate at which air enters the tank = 6.5219E-10 kg/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.5 , Page no:359"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.04 ; #m\n",
+ "h = 0.20 ; #m\n",
+ "hw = 0.03 ; #m\n",
+ "R = 8314 ; #J/kg mole K\n",
+ "Psat = 0.02339 ; #bar\n",
+ "xa2 = 0 ; #mole fraction at open top\n",
+ "\n",
+ "#calculations\n",
+ "#Evaporation of water, one dimensional\n",
+ "Tw = 20+273 ; #K\n",
+ "P = 1.014*10**5; #Pa\n",
+ "xa1 = Psat /1.014 ; #mole fraction at liq-vap interface\n",
+ "c = P/(R* Tw );\n",
+ "#From Table 9.2\n",
+ "Dab = 2.422*10**-5 ; #m^2/s\n",
+ "#Substituting above values in eqn 9.4.18\n",
+ "flux = 0.041626* Dab /0.17* math.log ((1 -0) /(1 - xa1 )); #kg mole/m^2 s\n",
+ "rate = flux *18*(3.14/4) *(D**2) ;\n",
+ "\n",
+ "#result\n",
+ "print\"Rate of evaporation of water =\",'%.4E'%rate,\"kg/s\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate of evaporation of water = 3.1290E-09 kg/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.6 , Page no:364"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "l = 1; #length, m\n",
+ "w = 0.25; #width, m\n",
+ "T = 293 ; #Temperature, K\n",
+ "rhoinfinity = 0; #kg/m^3\n",
+ "R = 8314; #J/ kg K\n",
+ "paw = 2339; #Saturation pressure of water at 20 degree C. [N/m^2]\n",
+ "rhoainf = 0 ; #since air in the free stream is dry\n",
+ "\n",
+ "#calculations\n",
+ "#From Table A.2\n",
+ "v = 15.06*10**-6; #m^2/s\n",
+ "# From Table 9.2\n",
+ "Dab = 2.4224*10**-5; #m^2/s\n",
+ "Re = 2.5/ v;\n",
+ "Sc = v/ Dab ;\n",
+ "#Since Re > 3*10^5, we may assume laminar boundary layer\n",
+ "Sh = 0.664* Sc**(1/3) *Re**(1/2) ; #Sherwood number\n",
+ "h = Sh*Dab;\n",
+ "rhoaw = paw /(R /18* T); #kg/m^3\n",
+ "mh = h *(2* l*w)*( rhoaw - rhoinfinity );\n",
+ "\n",
+ "#result\n",
+ "print\"Rate of evaporation from plate =\",'%.4E'%mh,\"kg/s\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate of evaporation from plate = 4.8335E-05 kg/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.7 (a) , Page no:366"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.04 ; #m\n",
+ "V = 1.9 ; #m/s\n",
+ "rho = 1.177 ; #kg/m^3\n",
+ "Pr = 0.7015 ;\n",
+ "Cp = 1005 ; #J/kg K\n",
+ "k = 0.02646 ; #W/m K\n",
+ "\n",
+ "#calculations\n",
+ "#a) Colburn anology and Gnielinski equation\n",
+ "#Properties of air at 27 degree C\n",
+ "v = 15.718*10**-6 ; #m^2/s\n",
+ "# From Table 9.2\n",
+ "Dab = 2.54 * 10**-5 ; #m^2/s\n",
+ "Sc = v/ Dab ;\n",
+ "Re = V*D/v;\n",
+ "#The flow is turbulent and eqn 9.6.5 may be applied\n",
+ "#let r = h/hm\n",
+ "r = rho*Cp *(( Sc/Pr)**(2/3) ); #let r = h/hm \n",
+ "#From Blasius equation 4.6.4a\n",
+ "f = 0.079* Re**( -0.25) ;\n",
+ "#Substituting this value into Gnielinski\n",
+ "Nu = ((f /2) *(Re -1000) *Pr )/(1+12.7*(( f/2)**(1/2) )*(( Pr**(2/3) ) -1));\n",
+ "h = Nu*k/D;\n",
+ "hm = h/r; #m/s\n",
+ "\n",
+ "#result\n",
+ "print\"hm using Colburn anology and Gnielinski equation =\",round(hm,6);"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "hm using Colburn anology and Gnielinski equation = 0.009495\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.7 (b) , Page no:366"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.04 ; #m\n",
+ "V = 1.9 ; #m/s\n",
+ "rho = 1.177 ; #kg/m^3\n",
+ "Pr = 0.7015 ;\n",
+ "Cp = 1005 ; #J/kg K\n",
+ "k = 0.02646 ; #W/m K\n",
+ "\n",
+ "#calculations\n",
+ "#(b) mess transfer correlation equivalent to the Gleilinski equation\n",
+ "#Properties of air at 27 degree C\n",
+ "v = 15.718*10**-6 ; #m^2/s\n",
+ "#From Table 9.2\n",
+ "Dab = 2.54 * 10**-5 ; #m^2/s\n",
+ "Sc = v/ Dab ;\n",
+ "Re = V*D/v;\n",
+ "#From Blasius equation 4.6.4a\n",
+ "f = 0.079* Re**( -0.25) ;\n",
+ "#Substituting in eqn 9.6.7\n",
+ "ShD = ((f /2) *(Re -1000) *Sc )/(1+12.7*(( f/2)) *(( Sc**(2/3) ) -1));\n",
+ "hm1 = ShD * Dab /D;\n",
+ "\n",
+ "#result\n",
+ "print\"(b) hm =\",round(hm1,6);"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(b) hm = 0.007258\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.7 (c) , Page no:366"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "D = 0.04 ; #m\n",
+ "V = 1.9 ; #m/s\n",
+ "rho = 1.177 ; #kg/m^3\n",
+ "Pr = 0.7015 ;\n",
+ "Cp = 1005 ; #J/kg K\n",
+ "k = 0.02646 ; #W/m K\n",
+ "\n",
+ "#calculations\n",
+ "#c) To show that mass flux of water is very small compared to the mass flux of air flowing in the pipe\n",
+ "#Properties of air at 27 degree C\n",
+ "v = 15.718*10**-6 ; #m^2/s\n",
+ "#From Table 9.2\n",
+ "Dab = 2.54 * 10**-5 ; #m^2/s\n",
+ "Sc = v/ Dab ;\n",
+ "Re = V*D/v;\n",
+ "#The flow is turbulent and eqn 9.6.5 may be applied\n",
+ "#let r = h/hm \n",
+ "r = rho*Cp *(( Sc/Pr)**(2/3) ); #let r = h/hm\n",
+ "#From Blasius equation 4.6.4a\n",
+ "f = 0.079* Re**( -0.25) ;\n",
+ "#From steam table\n",
+ "rhoaw = 1/38.77 ; #kg/m^3\n",
+ "#let X = (m_a/A)_max\n",
+ "X = f* rhoaw ; #kg/m^2 s\n",
+ "#let Y = mass flux of air in pipe = (m/A)\n",
+ "Y = rho*V ; #kg/m^2 s\n",
+ "ratio = X/Y ;\n",
+ "percent = ratio *100;\n",
+ "\n",
+ "#result\n",
+ "print\"(c) (ma/A)max/(ma/A) =\",round(percent,6),\"percent Thus,\\nmass flux of water is very small compared to the mass flux of air flowing in the pipe.\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(c) (ma/A)max/(ma/A) = 0.010927 percent Thus,\n",
+ "mass flux of water is very small compared to the mass flux of air flowing in the pipe.\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.8 , Page no:369"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "from __future__ import division\n",
+ "\n",
+ "#Variable declaration\n",
+ "V = 0.5 ; #m/s\n",
+ "Th = 30 ; #C\n",
+ "Tc = 26 ; #C\n",
+ "#From table A.2\n",
+ "rho = 1.173 ; #kg/m^3\n",
+ "Cp = 1005 ; #J/kg K\n",
+ "k = 0.02654 ; #W/m K\n",
+ "Psat = 3363; #From steam table\n",
+ "PP30 = 4246 ; #From steam table partial pressure of water vapour at 30 C, N/m^2\n",
+ "\n",
+ "#calculations\n",
+ "Tm = (Th+ Tc )/2;\n",
+ "#From Table 9.2 at 301 K\n",
+ "alpha = k/( rho *Cp); #m^2/s\n",
+ "Dab = 2.5584*10**-5 ; #m^2/s\n",
+ "hfg = 2439.2*10**3 ; #J/kg\n",
+ "#Substituting in equation 9.7.5\n",
+ "#let difference = rho_aw-rho_a infinity\n",
+ "difference = rho *Cp *(( alpha /Dab)**(2/3) )*( Th - Tc )/hfg ;\n",
+ "#From steam table\n",
+ "rhoaw = Psat /(8314/18*299) ;\n",
+ "rhoinf = rhoaw - difference ;\n",
+ "x = rhoinf / rho ; #mole fraction of water vapour in air stream\n",
+ "PP = rhoinf *8314/18*303; #Partial pressure of water vapour in air stream\n",
+ "relH = PP/ PP30 ;\n",
+ "percent = relH *100;\n",
+ "\n",
+ "#result\n",
+ "print\"Relative humidity =\",round(relH,4),\"i.e.\",round(percent,4),\"percent\";"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Relative humidity = 0.7441 i.e. 74.4122 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Textbook_Of_Heat_Transfer/screenshots/Boiling_Curve.png b/Textbook_Of_Heat_Transfer/screenshots/Boiling_Curve.png Binary files differnew file mode 100755 index 00000000..4f739ada --- /dev/null +++ b/Textbook_Of_Heat_Transfer/screenshots/Boiling_Curve.png diff --git a/Textbook_Of_Heat_Transfer/screenshots/Boiling_Curve_1.png b/Textbook_Of_Heat_Transfer/screenshots/Boiling_Curve_1.png Binary files differnew file mode 100755 index 00000000..4f739ada --- /dev/null +++ b/Textbook_Of_Heat_Transfer/screenshots/Boiling_Curve_1.png diff --git a/Textbook_Of_Heat_Transfer/screenshots/Viscosity_in_SI_system.png b/Textbook_Of_Heat_Transfer/screenshots/Viscosity_in_SI_system.png Binary files differnew file mode 100755 index 00000000..510ac1ea --- /dev/null +++ b/Textbook_Of_Heat_Transfer/screenshots/Viscosity_in_SI_system.png diff --git a/Textbook_Of_Heat_Transfer/screenshots/Viscosity_in_SI_system_1.png b/Textbook_Of_Heat_Transfer/screenshots/Viscosity_in_SI_system_1.png Binary files differnew file mode 100755 index 00000000..510ac1ea --- /dev/null +++ b/Textbook_Of_Heat_Transfer/screenshots/Viscosity_in_SI_system_1.png diff --git a/Textbook_Of_Heat_Transfer/screenshots/mh_vs_The.png b/Textbook_Of_Heat_Transfer/screenshots/mh_vs_The.png Binary files differnew file mode 100755 index 00000000..e98ecc72 --- /dev/null +++ b/Textbook_Of_Heat_Transfer/screenshots/mh_vs_The.png diff --git a/Textbook_Of_Heat_Transfer/screenshots/mh_vs_The_1.png b/Textbook_Of_Heat_Transfer/screenshots/mh_vs_The_1.png Binary files differnew file mode 100755 index 00000000..e98ecc72 --- /dev/null +++ b/Textbook_Of_Heat_Transfer/screenshots/mh_vs_The_1.png |