diff options
56 files changed, 20792 insertions, 0 deletions
diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter1.ipynb b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter1.ipynb new file mode 100644 index 00000000..b36f371b --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter1.ipynb @@ -0,0 +1,527 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "# Chapter 01:Fundamental concepts" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.1:pg- 4" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 1, Example 1\n", + "The steady state heat transfer rate per unit area through the thick slab is given by q=k(T1-T2)/L in W/m**2 \n", + "q= 50.0\n" + ] + } + ], + "source": [ + "print\"Introduction to heat transfer by S.K.Som, Chapter 1, Example 1\"\n", + "#The temprature of two faces of the slabs are T1=40°C & T2=20°C \n", + "#The thickness of the slab(L) is 80mm or .08m\n", + "#The thermal conductivity(k)of the material is .20 W/(m*K)\n", + "T1=40;\n", + "T2=20;\n", + "L=.08;\n", + "k=.20;\n", + "#The steady state heat transfer rate per unit area through the thick slab is given by q=k(T1-T2)/L\n", + "print\"The steady state heat transfer rate per unit area through the thick slab is given by q=k(T1-T2)/L in W/m**2 \"\n", + "q=k*(T1-T2)/L\n", + "print\"q=\",q" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.2:pg- 4" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 1, Example 2\n", + "The thickness of masonry wall is Lm in m\n", + "Lm= 0.5\n" + ] + } + ], + "source": [ + "\n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 1, Example 2\"\n", + "#The thermal conductivity(km)of masonry wall is .8 W/(mK)\n", + "#The thermal conductivity(kc)of composite wall is .2 W/(mK)\n", + "#The thickness of composite wall(Lc) is 100 mm or .1 m\n", + "km=.8;\n", + "kc=.2;\n", + "Lc=.1;\n", + "#The thickness of masonry wall(Lm) is to be found. \n", + "#The steady state heat flow(qm)through masonry wall is km(T1-T2)/L\n", + "# The steady state heat flow(qc)through composite wall is kc(T1-T2)/L\n", + "#As the steady rate of heat flow through masonry wall is 80% that through composite wall and both the wall have same surface area and same temp. difference so qm/qc=0.8=(km/kc)*(Lc/Lm)\n", + "#The thickness of masonry wall is Lm.\n", + "print\"The thickness of masonry wall is Lm in m\"\n", + "Lm=(km/kc)*(Lc/(0.8))\n", + "print\"Lm=\",Lm\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.4:pg-8" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 1, Example 4\n", + "The rate of heat transfer per unit area q=hbr*(Tinf-Ts) in W/m**2\n", + "q= 16000\n" + ] + } + ], + "source": [ + "\n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 1, Example 4\"\n", + "#The average forced convective heat transfer coefficient(hbr) is 200 W/( m**2 °C)\n", + "#The fluid temprature(Tinf) upstream of the cold surface is 100°C\n", + "#The surface temprature(Ts) is 20°C\n", + "hbr=200;\n", + "Tinf=100;\n", + "Ts=20;\n", + "#The rate of heat transfer per unit area is q\n", + "print\"The rate of heat transfer per unit area q=hbr*(Tinf-Ts) in W/m**2\"\n", + "q=hbr*(Tinf-Ts)\n", + "print\"q=\",q" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.5:pg-9" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 1, Example 5\n", + "The heat exchanger surface area(A)in m**2 required for 20 MJ/h of heating is \n", + "A= 0\n" + ] + } + ], + "source": [ + "\n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 1, Example 5\"\n", + "#The average heat transfer coefficient(hbr) is 800 W/(m**2°C)\n", + "#The surface temprature of heat exchanger is 75°C and air temprature is 25°C so deltaT=(75-25)\n", + "#The amount of heat exchanged(Q) is 20 MJ/h\n", + "#The heat exchanger surface area(A) is given by A=Q/(hbr*∆T)\n", + "hbr=800;\n", + "deltaT=(75-25);\n", + "Q=20;\n", + "print\"The heat exchanger surface area(A)in m**2 required for 20 MJ/h of heating is \"\n", + "A = (Q*10**6)/(3600*hbr*deltaT)\n", + "print\"A=\",A" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.6:pg-9" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 1, Example 6\n", + "The rate of heat transfer from the plate is given by Q=hbr*A*(Ts-Tinf)\n", + "Q= 16000.0\n", + "The rate of heat transfer can also be written in the form of Q=m*cp*|dT/dt| from an energy balance.\n", + "Q= 16000.0\n", + "Equating the above two equations we get hbr=(m*cp*|dT/dt|)/(A*(Ts-Tinf)) in W/(m**2°C)\n", + "hbr= 11.2\n" + ] + } + ], + "source": [ + "\n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 1, Example 6\"\n", + "#The temprature of the plate(Ts) is 225°C\n", + "#The ambient temprature (Tinf) is 25°C\n", + "#The change in plate temprature with time is dT/dt=-.02K/s\n", + "#The plate area (A)=.1m**2 , mass(m)= 4Kg and specific heat(cp)=2.8KJ/(Kg*K)\n", + "#The average free convective heat coefficient(hbr) is to be found\n", + "Ts=225;\n", + "Tinf=25;\n", + "#|dT/dt|=0.2,because it is modulus function and it converts negative values to positive value.\n", + "#Let |dT/dt|=X\n", + "X=0.02;\n", + "A=.1;\n", + "m=4;\n", + "cp=2.8;\n", + "print\"The rate of heat transfer from the plate is given by Q=hbr*A*(Ts-Tinf)\"\n", + "Q=hbr*A*(Ts-Tinf)\n", + "print\"Q=\",Q\n", + "print\"The rate of heat transfer can also be written in the form of Q=m*cp*|dT/dt| from an energy balance.\"\n", + "print\"Q=\",Q\n", + "print\"Equating the above two equations we get hbr=(m*cp*|dT/dt|)/(A*(Ts-Tinf)) in W/(m**2°C)\"\n", + "hbr=(m*cp*10**3*X)/(A*(Ts-Tinf))\n", + "print\"hbr=\",hbr\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.7:pg-10" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 1, Example 7\n", + "The heat flux per square meter is given by E/A=emi*sigma*T**4 in W/m**2\n", + "F= 556.4411381\n" + ] + } + ], + "source": [ + "\n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 1, Example 7\"\n", + "#The temprature(T) of brick wall after sunset is 50°C\n", + "#The emissity value(emi)=0.9\n", + "#The radiant heat flux per square meter =E/A Where E is radiant heat energy and A is area of brick wall.\n", + "#The stefan-Boltzman constant(sigma)=5.6697*10**-8 W/(m**2*K**4).\n", + "T=50;\n", + "emi=.9;\n", + "sigma=5.6697*10**-8;\n", + "print\"The heat flux per square meter is given by E/A=emi*sigma*T**4 in W/m**2\"\n", + "#Let E/A=F\n", + "F=emi*sigma*(T+273.15)**4\n", + "print\"F=\",F" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.8:pg-11" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 1, Example 8\n", + "The emitted radiant energy per unit surface area is given by Eb/A=sigma*T**4 in W/m**2\n", + "F= 618.267931222\n" + ] + } + ], + "source": [ + "\n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 1, Example 8\"\n", + "#The temprature(T) of asphalt pavement = 50°C\n", + "#The stefan-Boltzman constant(sigma)=5.6697*10**-8 W/(m**2*K**4).\n", + "T=50;\n", + "sigma=5.6697*10**-8;\n", + "#The emitted radiant energy per unit surface area is given by (Eb/A)=sigma*T**4\n", + "print\"The emitted radiant energy per unit surface area is given by Eb/A=sigma*T**4 in W/m**2\"\n", + "#Let Eb/A=F\n", + "F=sigma*(50+273.15)**4\n", + "print\"F=\",F\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.9:pg-12" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 1, Example 9\n", + "The rate of heat transfer per unit surface area of wall is given by Q/A=(Ta-Tb)/((1/hbr1*A)+(L/(k*A))+(1/hbr2*A))in W/m**2\n", + "F= 213.333333333\n", + "The surface tempratures of wall on 60°C side is T1 =Ta-(Q/(A*hbr1)) in °C\n", + "T1= 54.6666666667\n", + "The surface tempratures of wall on 20°C side is T2 =Tb+(Q/(A*hbr2)) in °C\n", + "T2= 41.3333333333\n" + ] + } + ], + "source": [ + "\n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 1, Example 9\"\n", + "#The Thickness(L) of wall= 150 mm or 0.15 m.\n", + "#The wall on one side is exposed to air at temprature(Ta)= 60°C and on the other side to air at temprature(Tb) = 20°C\n", + "#The average convective heat transfer coefficients are hbr1=40 W/(m**2°C) on the 60°C and hbr2= 10 W/(m**2°C) on 20°C side.\n", + "#The thermal conductivity(k)=.8 W/(m°C)\n", + "L=0.15;\n", + "Ta=60;\n", + "Tb=20;\n", + "hbr1=40;\n", + "hbr2=10;\n", + "k=0.8;\n", + "#Area(A=1 m**2 )since unit surface area is required.\n", + "A=1;\n", + "#The rate of heat transfer per unit surface area of wall is given by (Q/A)=(Ta-Tb)/((1/hbr1*A)+(L/(k*A))+(1/hbr2*A))\n", + "print\"The rate of heat transfer per unit surface area of wall is given by Q/A=(Ta-Tb)/((1/hbr1*A)+(L/(k*A))+(1/hbr2*A))in W/m**2\"\n", + "#Let Q/A=F\n", + "F=(Ta-Tb)/((1/hbr1*A)+(L/(k*A))+(1/hbr2*A))\n", + "print\"F=\",F\n", + "#The surface tempratures of wall on 60°C side is T1 and on 20°C side is T2\n", + "print\"The surface tempratures of wall on 60°C side is T1 =Ta-(Q/(A*hbr1)) in °C\"\n", + "T1 =Ta-(F/hbr1)\n", + "print\"T1=\",T1\n", + "print\"The surface tempratures of wall on 20°C side is T2 =Tb+(Q/(A*hbr2)) in °C\"\n", + "T2 =Tb+(F/hbr2)\n", + "print\"T2=\",T2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.10:pg-13" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Introduction to heat transfer by S.K.Som, Chapter 1, Example 10\n", + "Heat transfer from the outer surface takes place only by radiation is given by Q/A=F1=emi*sigma*(T2**4-T0**4)in W/m**2 for different values of tempratures in K\n", + "heat transfer from the outer surface can also be written as Q/A=F2=(Ti-To)/((1/hbri)+(L/k)+(1/hr)) in W/m**2 at different tempratures in K\n", + "The values of temprature that are considered are <298 K\n", + "Satisfactory solutions for Temprature in K is\n", + "T2= 292.5\n", + "Approximate Rate of Heat Transfer in W/m**2 is\n", + "F1= 332.029390022\n", + "F2= 332.132667923\n" + ] + } + ], + "source": [ + "\n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 1, Example 10\"\n", + "#The spacecraft panel has thickness(L)=.01 m\n", + "#The spacecraft has inner temprature (Ti)=298 K\n", + "#The spacecraft has outer temprature(T2)\n", + "#The panel is exposed to deep space where temprature(To)= 0K\n", + "#The material has Thermal conductivity(k)= 5.0 W/(m*K)\n", + "#The emissivity(emi)=0.8\n", + "#The inner surface of the panel is exposed to airflow resulting in an average heat transfer coefficient(hbri)=70 W/(m**2*K)\n", + "L=0.01;\n", + "Ti=298.0;\n", + "To=0.0;\n", + "k=5.0;\n", + "emi=0.8;\n", + "hbri=70.0;\n", + "#The stefan Boltzman constant(sigma)= 5.67*10**-8 W/(m**2/K**4)\n", + "sigma=5.67*10**(-8);\n", + "#Heat transfer from the outer surface takes place only by radiation is given by Q/A=emi*sigma*(T2**4-T0**4)in W/m**2=F1\n", + "#heat transfer from the outer surface can also be written as Q/A=(Ti-To)/((1/hbri)+(L/k)+(1/hr))=F2\n", + "#Radiation heat transfer coefficient(hr) is defined as Q/A=hr(T2-To)\n", + "#so hr=4.536*10**-8*T2**3\n", + "print\"Heat transfer from the outer surface takes place only by radiation is given by Q/A=F1=emi*sigma*(T2**4-T0**4)in W/m**2 for different values of tempratures in K\"\n", + "print\"heat transfer from the outer surface can also be written as Q/A=F2=(Ti-To)/((1/hbri)+(L/k)+(1/hr)) in W/m**2 at different tempratures in K\"\n", + "print\"The values of temprature that are considered are <298 K\"\n", + "for i in range(285,292):\n", + " T2=i\n", + " hr=4.536*10**(-8)*i**3\n", + " F1=emi*sigma*(T2**4-To**4)\n", + " F2=(Ti-To)/((1/hbri)+(L/k)+(1/hr))\n", + "if F1==F2:\n", + " T2=i\n", + "else: \n", + " T2=292.5\n", + " hr=4.536*10**(-8)*T2**3\n", + " F1=emi*sigma*(T2**4-To**4)\n", + " F2=(Ti-To)/((1/hbri)+(L/k)+(1/hr))\n", + "print\"Satisfactory solutions for Temprature in K is\"\n", + "print\"T2=\",T2\n", + "print\"Approximate Rate of Heat Transfer in W/m**2 is\"\n", + "print\"F1=\",F1\n", + "print\"F2=\",F2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.11:pg-15" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 1, Example 11\n", + "L= 1\n", + "A= 0.251327412287\n", + "The total heat loss by The pipe per unit length is given by Q/L=hbr*A*(T1-T2)+sigma*emi*A*(T1**4-T2**4) in W/m\n", + "F= 121.586773684\n" + ] + } + ], + "source": [ + "\n", + "import math \n", + "\n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 1, Example 11\"\n", + "#The horizontal steel pipe has outer diameter(D)=80 mm or.08 m\n", + "#The pipe is maintained at a temprature(T1)=60°C where the air and wall temprature(T2)=20 °C \n", + "#The average free convective heat transfer coefficient(hbr)=6.5 W/(m**2/K) b/w the outer surface of the pipe and air\n", + "D=.08;\n", + "T1=60;\n", + "T2=20;\n", + "hbr=6.5;\n", + "#Length(L=1) since per unit length is considered\n", + "L=1;\n", + "#The surface area of pipe is given by A=(math.pi*D*L)\n", + "print\"L=\",L\n", + "A=(math.pi*D*L);\n", + "#The surface emissivity(emi) of steel = 0.8\n", + "#The stefan -Boltzman constant(sigma)= 5.7*10**-8 W/(m**2*K**4)\n", + "print\"A=\",A\n", + "sigma=5.67*10**-8;\n", + "emi=.8;\n", + "#The total heat loss by The pipe per unit length is given by Q/L=hbr*A*(T1-T2)+sigma*emi*A*(T1**4-T2**4)\n", + "print\"The total heat loss by The pipe per unit length is given by Q/L=hbr*A*(T1-T2)+sigma*emi*A*(T1**4-T2**4) in W/m\"\n", + "#Let Q/L=F\n", + "F=hbr*A*((T1+273.15)-(T2+273.15))+sigma*emi*A*((T1+273.15)**4-(T2+273.15)**4)\n", + "print\"F=\",F\n", + "\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter10.ipynb b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter10.ipynb new file mode 100644 index 00000000..95f29d79 --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter10.ipynb @@ -0,0 +1,751 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "# Chapter 10:Principles of heat exchangers" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex10.1:pg-415" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 10, Example 1\n", + "The rate of heat transfer from water is given by Q=mdot*cp*(T3-T4) in W\n", + "Q= 11286.0\n", + "(a) For a parallel flow arrangement\n", + "LMTD is given by (deltaT2-deltaT1)/(ln(deltaT2/deltaT1)) in °C \n", + "LMTD= 35.4699026617\n", + "Area(A)=Q/(U*LMTD) in m**2\n", + "A= 0.397731567932\n", + "(b)For counterflow arrangement\n", + "LMTD=(deltaT2-deltaT1)/(ln(deltaT2/deltaT1))in°C \n", + "LMTD= 36.3143018164\n", + "Area(A)=Q/(U*LMTD) in m**2\n", + "A= 0.38848330532\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 10, Example 1\"\n", + "#A brine solution is heated from temprature ,T1=8°C to temprature,T2=14°C in a double pipe heat exchanger.\n", + "T1=8.0;\n", + "T2=14.0;\n", + "#Water entering at temprature T3=55°C and leaving at temprature,T4=40°C at the mass flow rate of (mdot)=0.18kg/s\n", + "mdot=0.18;\n", + "T3=55.0;\n", + "T4=40.0;\n", + "#Specific heat (cp) of water =4.18kJ/(kg*K)\n", + "cp=4.18*10**3;\n", + "#overall heat transfer coefficient(U)=800 W/(m**2*K)\n", + "U=800.0;\n", + "#The rate of heat transfer from water is given by Q=mdot*cp*(T3-T4)\n", + "print\"The rate of heat transfer from water is given by Q=mdot*cp*(T3-T4) in W\"\n", + "Q=mdot*cp*(T3-T4)\n", + "print\"Q=\",Q\n", + "print\"(a) For a parallel flow arrangement\"\n", + "#For a parallel flow arrangement deltaT1=T3-T1 and deltaT2=T4-T2. \n", + "deltaT1=T3-T1;#deltaT1 is temprature difference \n", + "deltaT2=T4-T2;#deltaT2 is temprature difference \n", + "#LMTD(math.log mean temprature difference) is defined as (deltaT2-deltaT1)/(ln(deltaT2/deltaT1)) for both parallel and counter flow.\n", + "print\"LMTD is given by (deltaT2-deltaT1)/(ln(deltaT2/deltaT1)) in °C \"\n", + "#let X=math.log10((deltaT2/deltaT1)) and Y=math.log10(2.718281)\n", + "X=math.log10((deltaT2/deltaT1));\n", + "Y=math.log10(2.718281);\n", + "#ln=(ln(deltaT2/deltaT1))\n", + "ln=X/Y;\n", + "LMTD=(deltaT2-deltaT1)/ln\n", + "print\"LMTD=\",LMTD\n", + "#Area(A)=Q/(U*LMTD) in m**2\n", + "print\"Area(A)=Q/(U*LMTD) in m**2\"\n", + "A=Q/(U*LMTD)\n", + "print\"A=\",A\n", + "print\"(b)For counterflow arrangement\"\n", + "deltaT1=T3-T2;\n", + "deltaT2=T4-T1;\n", + "print\"LMTD=(deltaT2-deltaT1)/(ln(deltaT2/deltaT1))in°C \"\n", + "X=math.log10((deltaT2/deltaT1));\n", + "Y=math.log10(2.718281);\n", + "ln=X/Y;\n", + "LMTD=(deltaT2-deltaT1)/ln\n", + "print\"LMTD=\",LMTD\n", + "print\"Area(A)=Q/(U*LMTD) in m**2\"\n", + "A=Q/(U*LMTD)\n", + "print\"A=\",A\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex10.2:pg-416" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 10, Example 2\n", + "The inlet temprature(Tc1) of cold oil in °C \n", + "Tc1= 55.0948103792\n", + "The rate of heat transfer Q=mdoth*ch*(Th1-Th2) in W\n", + "Q= 190190.0\n", + "LMTD is given by (deltaT2-deltaT1)/(ln(deltaT2/deltaT1)) in °C \n", + "LMTD= 28.996452611\n", + "Area(A)=Q/(U*LMTD) in m**2\n", + "A= 10.0908895279\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 10, Example 2\"\n", + "#Hot oil(specific heat,ch=2.09kJ/(kg*K)) flows through counter flow heat excahnger at the mass flow rate of mdoth=(0.7kg/s)\n", + "ch=2.09*10**3;\n", + "mdoth=0.7;\n", + "#overall heat transfer coefficient(U)=650 W/(m**2*K)\n", + "U=650;\n", + "#It enters at temprature,Th1=200°C and leaves at temprature,Th2=70°C \n", + "Th1=200;\n", + "Th2=70;\n", + "#Cold oil(specific heat,cc=1.67kJ/(kg*K) exits at temprature,Tc2=150°C at the mass flow rate of mdotc=(1.2kg/s)\n", + "mdotc=1.2;\n", + "cc=1.67*10**3;\n", + "Tc2=150;\n", + "#The unknown inlet temprature(Tc1) of cold oil may be found from energy balance mdotc*(Tc2-Tc1)=mdoth*(Th2-Th1)\n", + "print\"The inlet temprature(Tc1) of cold oil in °C \"\n", + "Tc1=Tc2-((mdoth*ch)/(mdotc*cc))*(Th1-Th2)\n", + "print\"Tc1=\",Tc1\n", + "#The rate of heat transfer can be calculate as Q=mdoth*ch*(Th1-Th2)\n", + "print\"The rate of heat transfer Q=mdoth*ch*(Th1-Th2) in W\"\n", + "Q=mdoth*ch*(Th1-Th2)\n", + "deltaT1=Th1-Tc2;\n", + "print\"Q=\",Q\n", + "#deltaT1 is temprature difference between hot oil inlet temprature and cold oil exit temprature\n", + "deltaT2=Th2-Tc1;\n", + "#deltaT2 is temprature difference between hot oil exit temprature and cold oil inlet temprature\n", + "#LMTD(math.log mean temprature difference) is defined as (deltaT2-deltaT1)/(ln(deltaT2/deltaT1)) for counter flow.\n", + "print\"LMTD is given by (deltaT2-deltaT1)/(ln(deltaT2/deltaT1)) in °C \"\n", + "#let X=log10((deltaT2/deltaT1)) and Y=log10(2.718281)\n", + "X=math.log10((deltaT2/deltaT1));\n", + "Y=math.log10(2.718281);\n", + "#ln=(ln(deltaT2/deltaT1))\n", + "ln=X/Y;\n", + "LMTD=(deltaT2-deltaT1)/ln\n", + "print\"LMTD=\",LMTD\n", + "#Area(A)=Q/(U*LMTD) in m**2\n", + "print\"Area(A)=Q/(U*LMTD) in m**2\"\n", + "A=Q/(U*LMTD)\n", + "print\"A=\",A\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex10.3:pg-417" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 10, Example 3\n", + "The outlet temprature(Tho) of oil in °C \n", + "Tho= 70.6666666667\n", + "For a counterflow heat exchanger\n", + "deltaT1= 10\n", + "deltaT2= 20.6666666667\n", + "LMTD is given by (deltaT2-deltaT1)/(ln(deltaT2/deltaT1)) in °C \n", + "LMTD= 14.6936488511\n", + "dimensionless parameters P and R are\n", + "P= 0\n", + "R= 0.733333333333\n", + "correction factor(F) for the cross flow arrangement as obtained from graph of F vs Single Pass flow with fluids unmixed\n", + "Q= 167200.0\n", + "overall heat transfer coefficient(U)=Q/(A*F*LMTD)in W/(m**2*K)\n", + "U= 758.604399737\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 10, Example 3\"\n", + "#A cross flow heat exchanger with both fluids unmixed is used to heat water((specific heat,cc=4.18kJ/(kg*K)) from temprature Tci=50°C to Tco=90°C \n", + "#flowing at the mass flow rate of (mdotc)=1kg/s\n", + "Tci=50;\n", + "Tco=90;\n", + "cc=4.18*10**3;\n", + "mdotc=1;\n", + "#The hot engine oil has (specific heat,ch=1.9kJ/(kg*K)) flowing at the mass flow rate of mdoth=3kg/s enters at temprature Thi=100°C\n", + "mdoth=3;\n", + "Thi=100;\n", + "ch=1.9*10**3;\n", + "#The unknown outlet temprature(Tho) of oil may be found from energy balance mdotc*(Tco-Tci)=mdoth*(Tho-Thi)\n", + "print\"The outlet temprature(Tho) of oil in °C \"\n", + "Tho=Thi-((mdotc*cc)/(mdoth*ch))*(Tco-Tci)\n", + "print\"Tho=\",Tho\n", + "print\"For a counterflow heat exchanger\"\n", + "deltaT1=Thi-Tco;#deltaT1 is temprature difference \n", + "deltaT2=Tho-Tci;#deltaT2 is temprature difference \n", + "print\"deltaT1=\",deltaT1\n", + "print\"deltaT2=\",deltaT2\n", + "#LMTD(math.log mean temprature difference) is defined as (deltaT2-deltaT1)/(ln(deltaT2/deltaT1)) for counter flow.\n", + "print\"LMTD is given by (deltaT2-deltaT1)/(ln(deltaT2/deltaT1)) in °C \"\n", + "#let X=log10((deltaT2/deltaT1)) and Y=log10(2.718281)\n", + "X=math.log10((deltaT2/deltaT1));\n", + "Y=math.log10(2.718281);\n", + "ln=X/Y;\n", + "LMTD=(deltaT2-deltaT1)/ln\n", + "print\"LMTD=\",LMTD\n", + "#Area(A)=20m**2\n", + "A=20;\n", + "#We have to employ correction factor(F) for the cross flow arrangement.\n", + "#We evaluate dimensionless parameters P=(Tco-Tci)/(Thi-Tco) and R=(Thi-Tho)/(Tco-Tci).\n", + "print\"dimensionless parameters P and R are\"\n", + "P=(Tco-Tci)/(Thi-Tci)\n", + "R=(Thi-Tho)/(Tco-Tci)\n", + "print\"P=\",P\n", + "print\"R=\",R\n", + "print\"correction factor(F) for the cross flow arrangement as obtained from graph of F vs Single Pass flow with fluids unmixed\"\n", + "F=0.75\n", + "#The rate of heat transfer can be calculate as Q=mdoth*ch*(Th1-Th2)\n", + "Q=mdotc*cc*(Tco-Tci);\n", + "print\"Q=\",Q\n", + "#overall heat transfer coefficient(U)=Q/(A*F*LMTD)\n", + "print\"overall heat transfer coefficient(U)=Q/(A*F*LMTD)in W/(m**2*K)\"\n", + "U=Q/(A*F*LMTD)\n", + "print\"U=\",U\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex10.5:pg-419" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 10, Example 5\n", + "(a)Applying LMTD method\n", + "The rate of heat transfer Q=mdotw*cpw*(Tout-Tin) in W\n", + "Q= 300960.0\n", + "The unknown outlet temprature(Thout) of geothermal fluid in °C \n", + "Thout= 125.085846868\n", + "LMTD is given by (deltaT2-deltaT1)/(ln(deltaT2/deltaT1)) in °C \n", + "LMTD= 81.903612671\n", + "Area(A)=Q/(U*LMTD) in m**2\n", + "A= 6.12427197827\n", + "To provide this surface area ,The length(L) of the tube required is given by L=A/(pi*D) in m\n", + "L= 129.961087757\n", + "(b)Applying NTU method\n", + "The heat capacity rates are defined as Ch=mdoth*cph and Cc=mdotw*cpw in KW/°C\n", + "Ch= 8.62\n", + "Cc= 5.016\n", + "C=Cmin/Cmax\n", + "C= 0.581902552204\n", + "Heat transfer effectiveness is defined as eff=Q/(Cmin*(Thin-Tin))\n", + "eff= 0.461538461538\n", + "NTU is determined by NTU=(1/(C-1))*ln((eff-1)/(eff*C-1))\n", + "NTU= 0.732568418453\n", + "Area(A)=(NTU*Cmin)/U in m**2\n", + "A= 6.12427197827\n", + "To provide this surface area ,The length(L) of the tube required is given by L=A/(pi*D) in m\n", + "Hence same result is obtained for both methods\n", + "L= 129.961087757\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 10, Example 5\"\n", + "#Water is heated from temprature ,Tin=30°C to Tout=90°C in a counter flow double pipe heat exchanger.\n", + "Tin=30;\n", + "Tout=90;\n", + "#Water flows at a mass flow rate of mdotw=1.2kg/s\n", + "mdotw=1.2;\n", + "#The heating is accomplished by a geothermal fluid which enters the heat exchanger at temprature ,Thin=160°C at the mass flow rate of mdoth=2kg/s\n", + "mdoth=2;\n", + "Thin=160;\n", + "#The inner tube is thin walled having diameter(D)=15mm or 0.015m\n", + "D=0.015;\n", + "#overall heat transfer coefficient(U)=600 W/(m**2*K)\n", + "U=600;\n", + "#The specific heat of water and geothermal fluid is (cpw=4.18kJ/(kg*K))and(cph=4.31kJ/(kg*K)) respectively\n", + "cpw=4.18*10**3;\n", + "cph=4.31*10**3;\n", + "#The rate of heat transfer in heat exchanger can be calculate as Q=mdotw*cpw*(Tout-Tin)\n", + "print\"(a)Applying LMTD method\"\n", + "print\"The rate of heat transfer Q=mdotw*cpw*(Tout-Tin) in W\"\n", + "Q=mdotw*cpw*(Tout-Tin)\n", + "print\"Q=\",Q\n", + "#The unknown outlet temprature(Thout) of geothermal fluid may be found from energy balance mdotw*cpw*(Tout-Tin)=mdoth*cph*(Thin-Thout)\n", + "print\"The unknown outlet temprature(Thout) of geothermal fluid in °C \"\n", + "Thout=Thin-Q/(mdoth*cph)\n", + "print\"Thout=\",Thout\n", + "deltaT1=Thin-Tout;#Temprature difference between inlet temprature of hot fluid and outlet temprature of cold fluid\n", + "deltaT2=Thout-Tin;#Temprature difference between outlet temprature of hot fluid and inlet temprature of cold fluid\n", + "#LMTD is defined as (deltaT2-deltaT1)/(ln(deltaT2/deltaT1)) for counter flow.\n", + "print\"LMTD is given by (deltaT2-deltaT1)/(ln(deltaT2/deltaT1)) in °C \"\n", + "#let X=math.log10((deltaT2/deltaT1))and Y=math.log10(2.718281)\n", + "X=math.log10((deltaT2/deltaT1));\n", + "Y=math.log10(2.718281);\n", + "ln=X/Y;\n", + "LMTD=(deltaT2-deltaT1)/ln\n", + "print\"LMTD=\",LMTD\n", + "#Area(A)=Q/(U*LMTD) in m**2\n", + "print\"Area(A)=Q/(U*LMTD) in m**2\"\n", + "A=Q/(U*LMTD)\n", + "print\"A=\",A\n", + "print\"To provide this surface area ,The length(L) of the tube required is given by L=A/(pi*D) in m\"\n", + "L=A/(math.pi*D)\n", + "print\"L=\",L\n", + "print\"(b)Applying NTU method\"\n", + "#The heat capacity rates are defined as Ch=mdoth*cph and Cc=mdotw*cw in KW/°C\n", + "print\"The heat capacity rates are defined as Ch=mdoth*cph and Cc=mdotw*cpw in KW/°C\"\n", + "Ch=(mdoth*cph)/1000\n", + "Cc=(mdotw*cpw)/1000\n", + "print\"Ch=\",Ch\n", + "print\"Cc=\",Cc\n", + "#So Cmin=Cc and Cmax=Ch\n", + "Cmin=Cc;\n", + "Cmax=Ch;\n", + "#C is defined as Cmin/Cmax\n", + "print\"C=Cmin/Cmax\"\n", + "C=Cmin/Cmax\n", + "print\"C=\",C\n", + "#Heat transfer effectiveness is (eff)\n", + "print\"Heat transfer effectiveness is defined as eff=Q/(Cmin*(Thin-Tin))\"\n", + "eff=(Q/1000)/(Cmin*(Thin-Tin))\n", + "print\"eff=\",eff\n", + "print\"NTU is determined by NTU=(1/(C-1))*ln((eff-1)/(eff*C-1))\"\n", + "#let X=math.log10((eff-1)/(eff*C-1)) and Y=math.log10(2.718281)\n", + "X=math.log10((eff-1)/(eff*C-1));\n", + "Y=math.log10(2.718281);\n", + "#ln=ln((eff-1)/(eff*C-1))\n", + "ln=X/Y;\n", + "#NTU is Number of transfer units\n", + "NTU=(1/(C-1))*ln\n", + "print\"NTU=\",NTU\n", + "#NTU =U*A/Cmin\n", + "print\"Area(A)=(NTU*Cmin)/U in m**2\"\n", + "A=(NTU*Cmin*1000)/U\n", + "print\"A=\",A\n", + "print\"To provide this surface area ,The length(L) of the tube required is given by L=A/(pi*D) in m\"\n", + "L=A/(math.pi*D)\n", + "print\"Hence same result is obtained for both methods\"\n", + "print\"L=\",L\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex10.6:pg-422" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 10, Example 6\n", + "NTU is defined as (U*A)/Cmin \n", + "NTU= 1.86170212766\n", + "Heat transfer effectiveness(eff) is defined as (1-e**(-NTU*(1-C))/(1-C*e**(-NTU*(1-C))\n", + "eff= 0.683715054322\n", + "The total heat transfer rate (Q)=eff*Cmin*(Thi-Tci) in kW\n", + "Q= 163.886498521\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 10, Example 6\"\n", + "#Water having specific heat,cw=4.18kJ/(kg*K) enters a counterflow double pipe heat exchanger at temprature,Tci=35°C flowing at the mass flow rate of mdotw=0.8 kg/s.\n", + "cw=4.18;\n", + "mdotw=0.8;\n", + "Tci=35;\n", + "#It is heated by oil having specific heat,co=1.88kJ/(kg*K) flowing at the mass flow rate of mdoto=1.5 kg/s from an inlet temprature(Thi) of 120°C.\n", + "co=1.88;\n", + "mdoto=1.5;\n", + "Thi=120;\n", + "#For an area(A) of 15m**2 and an overall heat transfer coefficient(U) of 350W/(m**2*K).\n", + "A=15;\n", + "U=350;\n", + "#Cwater and Co are heat capacities for water and oil respectively\n", + "#Cwater=mdotw*cw and Co=mdoto*co\n", + "Cwater=mdotw*cw;\n", + "Co=mdoto*co;\n", + "#C=Cmin/Cmax\n", + "Cmin=min(Cwater,Co);\n", + "Cmax=max(Cwater,Co);\n", + "C=Cmin/Cmax;\n", + "#NTU is number of transfer units\n", + "#NTU=(U*A)/Cmin\n", + "print\"NTU is defined as (U*A)/Cmin \"\n", + "NTU=(U*A)/(Cmin*1000)\n", + "print\"NTU=\",NTU\n", + "#Heat transfer effectiveness(eff) is defined as (1-e**(-NTU*(1-C))/(1-C*e**(-NTU*(1-C))\n", + "print\"Heat transfer effectiveness(eff) is defined as (1-e**(-NTU*(1-C))/(1-C*e**(-NTU*(1-C))\"\n", + "eff=(1-math.e**(-NTU*(1-C)))/(1-C*math.e**(-NTU*(1-C)))\n", + "print\"eff=\",eff\n", + "#Hence The total heat transfer rate (Q)=eff*Cmin*(Thi-Tci)in kW.\n", + "print\"The total heat transfer rate (Q)=eff*Cmin*(Thi-Tci) in kW\" \n", + "Q=eff*Cmin*(Thi-Tci)\n", + "print\"Q=\",Q\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex10.7:pg-424 " + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 10, Example 7\n", + "NTU is defined as (U*A)/Cmin \n", + "NTU= 5.44554455446\n", + "The effectiveness of heat exchanger is\n", + "eff= 9.98333889769\n", + "The total heat transfer rate(Q)=eff*Cmin*(Thi-Tci) in W\n", + "Q= 10587330.901\n", + "The exit temprature of air in °C \n", + "Tho= -923.250584257\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 10, Example 7\"\n", + "#Water enters a cross flow heat exchanger (both fluids unmixed) at temprature(Tci)=20°C amd flows at a mass flow rate of mdotw=7kg/s\n", + "Tci=20;\n", + "mdotw=7;\n", + "#The air flows at a mass flow rate of mdota=10kg/s from Temprature(Thi)=125°C \n", + "mdota=10;\n", + "Thi=125;\n", + "#The overall heat transfer coefficient(U)=220W/(m**2*K)and Area(A)=250m**2.\n", + "U=220;\n", + "A=250;\n", + "#The specific heat of air (cpa=1.01kJ/(kg*K)) and water is (cpw=4.18kJ/(kg*K))\n", + "cpa=1.01;\n", + "cpw=4.18;\n", + "#Cair and Cwater are heat capacities of air and water respectively\n", + "Cair=mdota*cpa;\n", + "Cwater=mdotw*cpw;\n", + "#C=Cmin/Cmax\n", + "Cmin=min(Cwater,Cair);\n", + "Cmax=max(Cwater,Cair);\n", + "C=Cmin/Cmax;\n", + "#NTU is number of transfer units\n", + "#NTU=(U*A)/Cmin\n", + "print\"NTU is defined as (U*A)/Cmin \"\n", + "NTU=(U*A)/(Cmin*1000)\n", + "print\"NTU=\",NTU\n", + "#To determine the effectiveness of heat exchanger we have to find out the suitable expression \n", + "#For this type of heat exchanger The effectiveness(eff)is determined by (1-e**((NTU**.22*(e**-(C*NTU**0.78)-1)/C)\n", + "print\"The effectiveness of heat exchanger is\"\n", + "eff=(1-math.e**((NTU**0.22))*(math.e**(-C*NTU**0.78)-1)/C)\n", + "print\"eff=\",eff\n", + "#Hence The total heat transfer rate(Q)=eff*Cmin*(Thi-Tci)in W.\n", + "print\"The total heat transfer rate(Q)=eff*Cmin*(Thi-Tci) in W\"\n", + "Q=eff*Cmin*1000*(Thi-Tci)\n", + "print\"Q=\",Q\n", + "#The exit temprature(Tho) of air is given by Thi-(Q/(mdota*cpa))\n", + "print\"The exit temprature of air in °C \"\n", + "Tho=Thi-(Q/(mdota*1000*cpa))#NOTE:-The answer slightly varies from the answer in book(i.e Tho=26°C) because the value of Q taken in book is approximated to 1*10**6W.\n", + "print\"Tho=\",Tho\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex10.8:pg-437" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 10, Example 8\n", + "(a)Considering a parallel flow arrangement \n", + "Tho= 50\n", + "The minimum flow rate required for the oil in kg/s\n", + "mdoth= 2.22340425532\n", + "(b)Theoretical question\n", + "If LMTD--->0,Then for a finite value of heat transfer rate U*A--->infinity.For a given finite length this implies value of U which is not possible.\n", + "(c)Let us consider a counter flow arrangement\n", + "The minimum flow rate required for the oil in kg/s\n", + "Ch= 2.78666666667\n", + "Cc= 8.36\n", + "Effectiveness of heat exchanger is \n", + "eff= 1.0\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 10, Example 8\"\n", + "#A double pipe heat exchanger of length(L)=0.30m is to be used to heat water(specific heat,cc=4.18kJ/(kg*K)) and mass flow rate(mdotw=2kg/s)\n", + "L=0.30;\n", + "cc=4.18;\n", + "mdotw=2;\n", + "#The water enters at temprature(Tci)=25°C and leaves at temprature(Tco)=50°C\n", + "#The flow rate of oil is mdoth\n", + "Tci=25;\n", + "Tco=50; \n", + "#The oil used as hot fluid has(specific heat,ch=1.88kJ/(kg*K)) and has inlet temprature(Thi)=100°C \n", + "ch=1.88;\n", + "Thi=100;\n", + "print\"(a)Considering a parallel flow arrangement \"\n", + "#For minimum value of mdoth\n", + "#The theoretical minimum value of outlet temprature of hot fluid(Tho) under this situation is equal to Tco\n", + "Tho=Tco;\n", + "print\"Tho=\",Tho\n", + "#The mass flow rate of oil is given by energy balance as mdoth=(mdotw*cpw*(Tco-Tci))/(cph*(Thi-Tho))\n", + "print\"The minimum flow rate required for the oil in kg/s\"\n", + "mdoth=(mdotw*cc*(Tco-Tci))/(ch*(Thi-Tho))\n", + "print\"mdoth=\",mdoth\n", + "print\"(b)Theoretical question\"\n", + "print\"If LMTD--->0,Then for a finite value of heat transfer rate U*A--->infinity.For a given finite length this implies value of U which is not possible.\"\n", + "print\"(c)Let us consider a counter flow arrangement\"\n", + "#In this case value of Tho=Tci.\n", + "Tho=Tci;\n", + "#The mass flow rate of oil is given by energy balance as mdoth=(mdotw*cpw*(Tco-Tci))/(cph*(Thi-Tho))\n", + "print\"The minimum flow rate required for the oil in kg/s\"\n", + "mdoth=(mdotw*cc*(Tco-Tci))/(ch*(Thi-Tci))\n", + "#Now Heat capacities are Ch=mdoth*ch and Cc=mdotw*cc\n", + "Ch=mdoth*ch; \n", + "Cc=mdotw*cc;\n", + "print\"Ch=\",Ch\n", + "print\"Cc=\",Cc\n", + "Cmin=min(Ch,Cc);#minimum heat capacity in Ch and Cc \n", + "#Effectiveness of heat exchanger is eff.\n", + "#Tho=Tci for this kind of arrangement\n", + "Tho=Tci;\n", + "print\"Effectiveness of heat exchanger is \"\n", + "eff=(mdoth*ch*(Thi-Tho))/(mdoth*ch*(Thi-Tci))\n", + "print\"eff=\",eff\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter11.ipynb b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter11.ipynb new file mode 100644 index 00000000..a46cced0 --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter11.ipynb @@ -0,0 +1,543 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "# Chapter 11:Radiation heat transfer" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.3:pg-445" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 11, Example 3\n", + "The view factors F13 and F31 between the surfaces 1 and 3 are \n", + "F13= 0.04\n", + "F31= 0.032\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 11, Example 3\"\n", + "print\"The view factors F13 and F31 between the surfaces 1 and 3 are \"\n", + "#Determine the view factors F13 and F31 between the surfaces 1 and 3.\n", + "#F1-2,3=F12+F13\n", + "#So F13=F1-2,3-F12\n", + "#Let F1-2,3=F123\n", + "#From Radiation Shape factor b/w two perpendicular rectangles with a commom edge table we get F12=.027,F1-2,3=0.31\n", + "F123=0.31;#View factor\n", + "F12=.27;#View factor\n", + "F13=F123-F12#View factor\n", + "print\"F13=\",F13\n", + "#A1,A2 and A3 are the emitting surface areas\n", + "#From reciprocity relation F31=(A1/A3)/F13\n", + "A1=2;\n", + "A3=2.5;\n", + "F31=(A1/A3)*F13\n", + "print\"F31=\",F31\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.4:pg-447" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 11, Example 4\n", + "F124= 0.04\n", + "F24= 0.06\n", + "The view factor F14=((F1,2-4*(A1+A2)))-A2*F24)/A2\n", + "F14= 0.02\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 11, Example 4\"\n", + "#Determine the view factors F14 for the composite surface .\n", + "#From the table of radiation shape factor b/w two perpendicular surfaces F1,2-3,4=0.14 and F1,2-3=0.1\n", + "#By subdivision of the recieving surfaces we get F1,2-4=F1,2-3,4-F1,2-3\n", + "#Let F1,2-4=F124 , F1,2-3,4=F1234 , F1,2-3=F123\n", + "F1234=0.14;#View factor\n", + "F123=0.1;#View factor\n", + "F124=F1234-F123;#View factor\n", + "print\"F124=\",F124\n", + "#Again from the table of radiation shape factor b/w two perpendicular surfaces F2-3,4=0.24 , F23=0.18\n", + "#Let F2-3,4=F234\n", + "F234=0.24;#View factor\n", + "F23=0.18;#View factor\n", + "#By subdivision of the recieving surfaces we get F24=F2-3,4-F23\n", + "F24=F234-F23;#view factor\n", + "print\"F24=\",F24\n", + "#A1 and A2 are the emitting surface areas.\n", + "A1=12;\n", + "A2=12;\n", + "#Now by subdivision of emitting surfaces F1,2-4=(1/(A1+A2))*(A1*F14+A2*F24)\n", + "#This implies F14=((F1,2-4*(A1+A2)))-A2*F24)/A2\n", + "print\"The view factor F14=((F1,2-4*(A1+A2)))-A2*F24)/A2\"\n", + "F14=((F124*(A1+A2))-(A2*F24))/A2\n", + "print\"F14=\",F14\n", + "\n", + "\n", + "\n", + " \n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.5:pg-453" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 11, Example 5\n", + "The view factors of cylindrical surface with respect to the base are\n", + "F13= 0.84\n", + "F31= 0.0\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 11, Example 5\"\n", + "#Consider a cylinder having length,L=2r determine the view factor of cylindrical surface with respect to the base.\n", + "#From the graph of radiation shape factor b/w parallel coaxial disks of equal diameter F12=0.16\n", + "F12=0.16;#View factor\n", + "#By the summation rule of an enclosure F11+F12+F13=1\n", + "#But F11=0(since the base surface is flat)\n", + "F11=0;#View factor\n", + "print\"The view factors of cylindrical surface with respect to the base are\"\n", + "F13=1-F12-F11#view factor\n", + "print\"F13=\",F13\n", + "#By making use of reciprocity theorem we have F31=(A1/A2)*F13\n", + "#A1 and A2 are emitting surface areas\n", + "#A1/A2=(pi*r**2)/(2*pi*r*2*r)=1/4\n", + "#Let A1/A2=A\n", + "A=1/4;\n", + "F31=(A)*F13\n", + "print\"F31=\",F31\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.6:pg-456" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 11, Example 6\n", + "The rate of heat transfer is given by Q=A1*F12*sigma*(T1**4-T2**4) in W\n", + "Q= -2918.916\n", + "Here minus sign indicates that the net heat transfer is from surface2 to surface1\n", + "The net rate of energy loss from the surface at 127°C if the surrounding other than the two surfaces act as black body at 0K in W\n", + "Q1= 2894.4216\n", + "The view factor of surface 1 with respect to surrounding is\n", + "F1s= 0.89\n", + "The net rate of energy loss from the surface at 127°C if the surrounding other than the two surfaces act as black body at 300K in W \n", + "Q1= 1055.04525\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 11, Example 6\"\n", + "#Two rectangles length,L=1.5m by breadth,B=3.0m are parallel and directly opposed.\n", + "L=1.5;\n", + "B=3;\n", + "#They are 3m apart\n", + "#Temprature(T1) of surface 1 is 127°C or 400K and temprature(T2) of surface 2 is 327°C or 600K \n", + "T1=400;\n", + "T2=600;\n", + "#Area (A) is the product of L and B\n", + "A1=L*B;\n", + "#Stefan -Boltzman constant(sigma)=5.67*10**-8 W/(m**2*K**4)\n", + "sigma=5.67*10**-8;\n", + "#From the graph of radiation shape factor b/w parallel rectangles F12=0.11\n", + "F12=0.11;#View factor\n", + "#The rate of heat transfer is given by Q=A1*F12*sigma*(T1**4-T2**4)\n", + "print\"The rate of heat transfer is given by Q=A1*F12*sigma*(T1**4-T2**4) in W\"\n", + "Q=A1*F12*sigma*(T1**4-T2**4)\n", + "print\"Q=\",Q\n", + "print\"Here minus sign indicates that the net heat transfer is from surface2 to surface1\"\n", + "#Surface1 recieves energy only from surface 2,since the surrounding is at 0K.\n", + "#Therefore Q1=A1*Eb1-A2*F21*Eb2\n", + "#This implies Q1 can also be written as A1*sigma*(T1**4-F12*T2**4)\n", + "#From reciprocity theorem F21=F12 (since A1=A2)\n", + "F21=F12;#view factor\n", + "print\"The net rate of energy loss from the surface at 127°C if the surrounding other than the two surfaces act as black body at 0K in W\" \n", + "Q1=A1*sigma*(T1**4-F12*T2**4)\n", + "print\"Q1=\",Q1\n", + "#In the case when surrounding is at temprature, Ts=300K ,the energy recieved from the surrounding by the surface 1 has to be considered.\n", + "Ts=300;\n", + "#Applying summation rule of view factors F11+F12+F1s=1\n", + "F11=0;#view factor\n", + "print\"The view factor of surface 1 with respect to surrounding is\"\n", + "F1s=1-F11-F12\n", + "print\"F1s=\",F1s\n", + "#subscript s denotes the surroundings\n", + "#Q1=A1*Eb1-A2*F21*Eb2-As*Fs1*Ebs\n", + "#With the help of reciprocity theorem A2*F21=A1*F12 , As*Fs1=A1*F1s\n", + "#Therefore we can write Q1=A1*sigma*(T1**4-F12*T2**4-F1s*Ts**4)\n", + "print\"The net rate of energy loss from the surface at 127°C if the surrounding other than the two surfaces act as black body at 300K in W \"\n", + "Q1=A1*sigma*(T1**4-F12*T2**4-F1s*Ts**4)\n", + "print\"Q1=\",Q1\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.7:pg-470" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 11, Example 7\n", + "The net rate of heat transfer per unit area is given Q/A=(sigma*(T1**4-T2**4))/((1/Æ1)+(1/Æ2)-1) in W\n", + "H= 1764.51561476\n", + "The net rate of heat transfer when the two surfaces are black is Q/A=sigma*(T1**4-T2**4) in W\n", + "H= 3276.95757027\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 11, Example 7\"\n", + "#Two parallel infinite surafces are maintained at tempratures T2=200°C or 473.15K and T1=300°C or 573.15K\n", + "T1=573.15;\n", + "T2=473.15;\n", + "#The emissivity(emi) is 0.7 for both the surfaces which are gray.\n", + "emi1=0.7;\n", + "emi2=0.7;\n", + "#stefan=boltzman constant(sigma)=5.67*10**-8W/(m**2*K**4)\n", + "sigma=5.67*10**-8;\n", + "#The net rate of heat transfer per unit area is given Q/A=(sigma*(T1**4-T2**4))/((1/Æ1)+(1/Æ2)-1)\n", + "#Let Q/A=H\n", + "print\"The net rate of heat transfer per unit area is given Q/A=(sigma*(T1**4-T2**4))/((1/Æ1)+(1/Æ2)-1) in W\"\n", + "H=(sigma*(T1**4-T2**4))/((1/emi1)+(1/emi2)-1)\n", + "print\"H=\",H\n", + "#When the two surfaces are black\n", + "#This implies emiisivity(emi)=1 for both surfaces\n", + "#So,The net rate of heat transfer when the two surfaces are black is Q/A=sigma*(T1**4-T2**4)\n", + "print\"The net rate of heat transfer when the two surfaces are black is Q/A=sigma*(T1**4-T2**4) in W\"\n", + "H=sigma*(T1**4-T2**4)\n", + "print\"H=\",H\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.8:pg-482" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 11, Example 8\n", + "The net rate of heat exchange between the spheres when the surfaces are black is Q=A1*sigma*(T1**4-T2**4) in W \n", + "Q= 779.311327631\n", + "The net rate of radiation exchange when one surface is gray and other is diffuse is given by Q1=(A1*sigma*(T1**4-T2**4))/((1/emi1)+(A1/A2)*(1/emi2-1)) in W\n", + "Q1= 346.360590058\n", + "The net rate of radiation exchange when outer surface is assumed to be black body i;e(emi2=1) in W\n", + "Q2= 389.655663816\n", + "Error(E) is given By ((Q2-Q1)/Q1)*100 in percentage\n", + "E= 12.5\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 11, Example 8\"\n", + "#Two concentric spheres of diameters D1=0.5m and D2=1m are separated by an air space.\n", + "#The surface tempratures are T1=400K and T2=300K\n", + "T1=400;\n", + "T2=300;\n", + "D1=0.5;\n", + "D2=1;\n", + "#A1 and A2 are the areas in m**2 of surface 1 and surface 2 respectively\n", + "A1=(math.pi*D1**2);\n", + "A2=(math.pi*D2**2);\n", + "#Stefan-Boltzman constant(sigma)=5.67*10**-8 W/(m**2*K**4)\n", + "sigma=5.67*10**-8;\n", + "#The emissivity is represented by emi \n", + "#The radiation heat exchange in case of two concentric sphere is given by Q=(A1*sigma*(T1**4-T2**4))/((1/emi1)+(A1/A2)*(1/emi2-1)) \n", + "#When the spheres are black emi1=emi2=1\n", + "emi1=1;\n", + "emi2=1;\n", + "#Hence Q=A1*sigma*(T1**4-T2**4)\n", + "print\"The net rate of heat exchange between the spheres when the surfaces are black is Q=A1*sigma*(T1**4-T2**4) in W \"\n", + "Q=A1*sigma*(T1**4-T2**4)\n", + "print\"Q=\",Q\n", + "#The net rate of radiation exchange when one surface is gray and other is diffuse having emi1=0.5 and emi2=0.5 \n", + "emi1=0.5;\n", + "emi2=0.5;\n", + "print\"The net rate of radiation exchange when one surface is gray and other is diffuse is given by Q1=(A1*sigma*(T1**4-T2**4))/((1/emi1)+(A1/A2)*(1/emi2-1)) in W\" \n", + "Q1=(A1*sigma*(T1**4-T2**4))/((1/emi1)+(A1/A2)*(1/emi2-1))\n", + "print\"Q1=\",Q1\n", + "#The net rate of radiation exchange when outer surface is assumed to be black body i;e(emi2=1)\n", + "emi2=1;#emissivity of outer surface\n", + "print\"The net rate of radiation exchange when outer surface is assumed to be black body i;e(emi2=1) in W\"\n", + "Q2=(A1*sigma*(T1**4-T2**4))/((1/emi1)+(A1/A2)*(1/emi2-1))\n", + "print\"Q2=\",Q2\n", + "print\"Error(E) is given By ((Q2-Q1)/Q1)*100 in percentage\"\n", + "E=((Q2-Q1)/Q1)*100\n", + "print\"E=\",E\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.10:pg-484" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 11, Example 10\n", + "F12= 0.5\n", + "Equivalent resistance of thermal network (R) is given by R1+((1/R12)+(1/(R13+R23)))**-1+R2\n", + "R= 2.09523809524\n", + "The radiation flux leaving the hot wall is Q/A=[sigma*(T1**4-T2**4)]/(A*R) in W/m**2\n", + "H= 26655.2740483\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 11, Example 10\"\n", + "#Given a furnace which can be approximated as an equuilateral triangle duct\n", + "#The hot wall is maintained at temprature (T1)=1000K and has emmisivity(emi1)=0.75\n", + "#The cold wall is at temprature(T2)=350K and has emmisivity(emi2)=0.7\n", + "T1=1000;\n", + "T2=350;\n", + "emi1=0.75;\n", + "emi2=0.7;\n", + "#Stefan-Boltzman constant(sigma)=5.67*10**-8 W/(m**2*K**4)\n", + "sigma=5.67*10**-8;\n", + "#The third wall is reradiating zone having Q3=0\n", + "#The radiation flux leaving the hot wall is Q/A=(sigma*(T1**4-T2**4))/(A*R)\n", + "#By summation rule F33+F31+F32=1\n", + "#F33=0(in consideration of surface to be plane)\n", + "#From symmetry F31=F32\n", + "F31=0.5;#View factors\n", + "F32=F31;#View factors\n", + "F33=0;#View factors\n", + "#From reciprocity theorem F13=F31 and F23=F32=0.5 (since A1=A2=A3=A)\n", + "F13=F31;#View factors\n", + "F23=F32;#View factors\n", + "#Again F11+F12+F13=1 from summation rule\n", + "F11=0;#View factors\n", + "F12=1-F13-F11;#View factors\n", + "print\"F12=\",F12\n", + "#R1,R2,R12,R13,R23 are the resistances\n", + "#R is equivalent resistance of thermal network is given by R1+((1/R12)+(1/(R13+R23)))**-1+R2\n", + "R1=(1-emi1)/(emi1);\n", + "R2=(1-emi2)/(emi2);\n", + "R12=1/(F12);\n", + "R13=1/(F13);\n", + "R23=1/(F23);\n", + "#R is equivalent resistance of thermal network \n", + "print\"Equivalent resistance of thermal network (R) is given by R1+((1/R12)+(1/(R13+R23)))**-1+R2\"\n", + "R=R1+((1/R12)+(1/(R13+R23)))**-1+R2\n", + "print\"R=\",R\n", + "#The radiation flux leaving the hot wall is Q/A.\n", + "print\"The radiation flux leaving the hot wall is Q/A=[sigma*(T1**4-T2**4)]/(A*R) in W/m**2\"\n", + "#Since A gets cancelled in the factor (A*R)\n", + "#So Q/A=(sigma*(T1**4-T2**4))/(R)\n", + "#Let Q/A=H\n", + "H=(sigma*(T1**4-T2**4))/(R)\n", + "print\"H=\",H\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter2.ipynb b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter2.ipynb new file mode 100644 index 00000000..ba64d857 --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter2.ipynb @@ -0,0 +1,1051 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "# Chapter 02:One dimensional steady-state heat conduction" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.1:pg-33" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 2, Example 1\n", + "The convective resistance Ro= 1/(ho*A) at the outer surface in KW**-1 is\n", + "Ro= 0.0666666666667\n", + "The conduction resistance Rs= Ls/(ks*A) of steel sheet in KW**-1 is\n", + "Rs= 8e-05\n", + "The conduction resistance Rg= Lg/(kg*A) of glass wool in KW**-1 is\n", + "Rg= 2.66666666667\n", + "The conduction resistance Rp= Lp/(kp*A) of plywood in KW**-1 is\n", + "Rp= 0.266666666667\n", + "The convective resistance Ri= 1/(hi*A) at the outer surface in KW**-1 is\n", + "Ri= 0.111111111111\n", + "The rate of heat flow Q=(To-Ti)/(Ro+Rs+Rg+Rp+Ri) in W is\n", + "Q= 12.5353919471\n", + "The temprature at the outer surface of wall is T1=To-(Q*Ro) in °C\n", + "T1= 23.1643072035\n", + "The temprature at the interface b/w steel sheet and glass wool is T2=T1-(Q*Rs) in°C\n", + "T2= 23.1633043722\n", + "The temprature at the interface b/w glass wool and plywood is T3=T2-(Q*Rg) in°C\n", + "T3= -10.2644074867\n", + "The temprature at the inner surface of wall is T4=T3-(Q*Rp)in °C\n", + "T4= -13.6071786725\n", + "Check for Ti(in °C)\n", + "The value is same as given in the problem\n", + "Ti= -15.0\n" + ] + } + ], + "source": [ + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 2, Example 1\"\n", + "#The length of steel sheet (Ls)=1.5 mm and thermal conductivity (ks)=25 W/(mK) at the outer surface.\n", + "Ls=1.5;\n", + "ks=25;\n", + "#The length of plywood (Lp)=10 mm and thermal conductivity (kp)= .05 W/(mK) at the inner surface.\n", + "Lp=10;\n", + "kp=.05;\n", + "#The length of glass wool (Lg)=20 mm and thermal conductivity (kg)= .01W/(mK) in between steel sheet and plywood.\n", + "Lg=20;\n", + "kg=.01;\n", + "#The temprature of van inside cold Enviroment is (Ti)= -15°C while the outside surface is exposed to a surrounding ambient temprature (To)=24°C \n", + "To=24;\n", + "Ti=-15;\n", + "#The average value of heat transfer coefficients at the inner and outside surfaces of the wall are hi=12 W/(m**2*K) and ho= 20 W/(m**2*K) \n", + "hi=12;\n", + "ho=20;\n", + "#The surface area of wall (A)= .75 m**2 \n", + "A=.75;\n", + "#The convective resistance is Ro= 1/(ho*A) at the outer surface\n", + "print\"The convective resistance Ro= 1/(ho*A) at the outer surface in KW**-1 is\"\n", + "Ro=1/(ho*A)\n", + "print\"Ro=\",Ro\n", + "#The conduction resistance is Rs= Ls/(ks*A) of steel sheet\n", + "print\"The conduction resistance Rs= Ls/(ks*A) of steel sheet in KW**-1 is\"\n", + "Rs=Ls*10**-3/(ks*A)\n", + "print\"Rs=\",Rs\n", + "#The conduction resistance is Rg= Lg/(kg*A) of glass wool\n", + "print\"The conduction resistance Rg= Lg/(kg*A) of glass wool in KW**-1 is\"\n", + "Rg= Lg*10**-3/(kg*A)\n", + "print\"Rg=\",Rg\n", + "#The conduction resistance is Rp= Lp/(kp*A) of plywood\n", + "print\"The conduction resistance Rp= Lp/(kp*A) of plywood in KW**-1 is\"\n", + "Rp= Lp*10**-3/(kp*A)\n", + "print\"Rp=\",Rp\n", + "#The convective resistance is Ri= 1/(hi*A) at the outer surface\n", + "print\"The convective resistance Ri= 1/(hi*A) at the outer surface in KW**-1 is\"\n", + "Ri= 1/(hi*A)\n", + "print\"Ri=\",Ri\n", + "#The rate of heat flow is Q=(To-Ti)/(Ro+Rs+Rg+Rp+Ri)\n", + "print\"The rate of heat flow Q=(To-Ti)/(Ro+Rs+Rg+Rp+Ri) in W is\"\n", + "Q=(To-Ti)/(Ro+Rs+Rg+Rp+Ri)\n", + "print\"Q=\",Q\n", + "#The tempraure at the outer surface of wall is T1.\n", + "#The temprature at the interface b/w steel sheet and glass wool is T2.\n", + "#The temprature at the interface b/w glass wool and plywood is T3.\n", + "#The tempraure at the inner surface of wall is T4.\n", + "print\"The temprature at the outer surface of wall is T1=To-(Q*Ro) in °C\"\n", + "T1=To-(Q*Ro)\n", + "print\"T1=\",T1\n", + "print\"The temprature at the interface b/w steel sheet and glass wool is T2=T1-(Q*Rs) in°C\"\n", + "T2=T1-(Q*Rs)\n", + "print\"T2=\",T2\n", + "print\"The temprature at the interface b/w glass wool and plywood is T3=T2-(Q*Rg) in°C\"\n", + "T3=T2-(Q*Rg)\n", + "print\"T3=\",T3\n", + "print\"The temprature at the inner surface of wall is T4=T3-(Q*Rp)in °C\"\n", + "T4=T3-(Q*Rp)\n", + "print\"T4=\",T4\n", + "#Check for Ti(Temprature inside the van)\n", + "print\"Check for Ti(in °C)\"\n", + "Ti=T4-(Q*Ri)\n", + "print\"The value is same as given in the problem\"\n", + "print\"Ti=\",Ti\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.2:pg-36" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 2, Example 2\n", + "The thickness of insulating material L=ki*(((Ti-To)/Q)-(Lb/kb)) in m\n", + "L= 0.056\n" + ] + } + ], + "source": [ + " \n", + "\n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 2, Example 2\"\n", + "#The Thickness of fire clay bricks (Lb)=.2 m\n", + "Lb=0.2;\n", + "#The thermal conductivity of fire clay bricks(kb)=1.0 W/(m*K)\n", + "kb=1;\n", + "#the Thicknes of insulating material is L\n", + "#The thermal conductivity of insulating material(ki)=.07 W/(m*K)\n", + "ki=.07;\n", + "#The furnace inner brick surface is at temprature Ti=1250 K\n", + "Ti=1250;\n", + "#The furnace outer brick surface is at temprature To=310 K\n", + "To=310;\n", + "#The maximum allowable heat transfer rate(Q) from wall = 900 W/m**2\n", + "Q=900;\n", + "#Q=(Ti-To)/((Lb/kb)+(L/ki)) so L=ki*(((Ti-To)/Q)-(Lb/kb))\n", + "print\"The thickness of insulating material L=ki*(((Ti-To)/Q)-(Lb/kb)) in m\"\n", + "L=ki*(((Ti-To)/Q)-(Lb/kb))\n", + "print\"L=\",L\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.4:pg-36" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 2, Example 4\n", + "Heat transfer per unit surface area through film qf=(To-Tinf)/((1/h)+(Lf/kf))in W/(m**2)\n", + "qf= 4000.0\n", + "Heat transfer per unit surface area through substrate qs=(To-T1/(Ls/ks)in W/(m**2)\n", + "qs= 1000.0\n", + "Heat flux qo=qs+qf in W/(m**2)\n", + "qo= 5000.0\n", + "If the film is not transparent and all of the radiant heat flux is absorbed at its upper surface then\n", + "Rate of heat conduction through the film and substrate q1=(To-T1)/(Ls/ks) in W/m**2\n", + "q1= 1000.0\n", + "The temprature of the top surface of the film T2=(q1*(Lf*10**-3/kf))+To in °C\n", + "T2= 70.0\n", + "Rate of convective heat transfer from the upper surface of film to air q2=h*(T2-Tinf)in W/m**2\n", + "q2= 1250.0\n", + "Heat flux qo=q1+q2 in W/m**2 \n", + "qo= 2250.0\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 2, Example 4\"\n", + "#To cure the bond at a temprature(To),a radiant source used to provide a heat flux qo W/m**2 \n", + "#The back of the substrate is maintained at a temprature T1\n", + "#The film is exposed to air at a temprature (Tinf)\n", + "#the convective heat transfer coefficient is h.\n", + "#Given To=60°C,Tinf=20°C,h=25 W/(m**K)and T1=30°C\n", + "To=60;\n", + "Tinf=20;\n", + "h=25;\n", + "T1=30;\n", + "#Ls is the thickness of substrate and Lf is thickness of film in mm.\n", + "Ls=1.5;\n", + "Lf=.25;\n", + "#kf and ks are thermal conductivity of film and substrate respectively in W/(m*K)\n", + "kf=.025;\n", + "ks=.05;\n", + "#qo is Heat flux.\n", + "#qo=qf+qs where qf and qs are rate of heat transfer per unit surface area through the film and the substrate respectively.\n", + "print\"Heat transfer per unit surface area through film qf=(To-Tinf)/((1/h)+(Lf/kf))in W/(m**2)\"\n", + "qf=(To-Tinf)/((1/h)+(Lf*10**-3/kf))\n", + "print\"qf=\",qf\n", + "print\"Heat transfer per unit surface area through substrate qs=(To-T1/(Ls/ks)in W/(m**2)\"\n", + "qs=(To-T1)/(Ls*10**-3/ks)\n", + "print\"qs=\",qs\n", + "print\"Heat flux qo=qs+qf in W/(m**2)\"\n", + "qo=qs+qf\n", + "print\"qo=\",qo\n", + "#If the film is not transparent and all of the radiant heat flux is absorbed at its upper surface then qo=q1+q2\n", + "#q1 is rate of heat conduction through the film and substrate\n", + "#q2 is rate of convective heat transfer from the upper surface of film to air\n", + "print\"If the film is not transparent and all of the radiant heat flux is absorbed at its upper surface then\"\n", + "print\"Rate of heat conduction through the film and substrate q1=(To-T1)/(Ls/ks) in W/m**2\"\n", + "q1=(To-T1)/(Ls*10**-3/ks)\n", + "print\"q1=\",q1\n", + "#To determine q2 we need to find the temprature(T2) of the top surface \n", + "print\"The temprature of the top surface of the film T2=(q1*(Lf*10**-3/kf))+To in °C\"\n", + "T2=(q1*(Lf*10**-3/kf))+To\n", + "print\"T2=\",T2\n", + "print\"Rate of convective heat transfer from the upper surface of film to air q2=h*(T2-Tinf)in W/m**2\"\n", + "q2=h*(T2-Tinf)\n", + "print\"q2=\",q2\n", + "print\"Heat flux qo=q1+q2 in W/m**2 \"\n", + "qo=q1+q2\n", + "print\"qo=\",qo\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.6:pg-38" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Introduction to heat transfer by S.K.Som, Chapter 2, Example 6\n", + "(a)The expression for the temprature distribution in the plate T=160+2*10**3*(x-100*x**2)\n", + "(b)The maximum temprature occurs at x=5mm or 0.005m away from the left surface towards the right\n", + "The maximum temprature(Tmax) in °C is\n", + "Tmax= 165.0\n", + "(c(i))The rate of heat transfer at the left face in MW/m**2 is\n", + "Q= -1\n", + "The minus sign indicates that the heat flow in the negative direction\n", + "(c(ii))The rate of heat transfer at the right face in MW/m**2 is\n", + "Q= 1.2\n", + "The minus sign for (q/A)@x=0 and the plus sign for (q/A)@x=0.02 indicates that heat is lost from both the surfaces to surroundings\n", + "(c(iii))The rate of heat transfer at the centre in MW/m**2 is\n", + "Q= 0.4\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 2, Example 6\"\n", + "#The thickness of plate 20mm or .02m with uniform heat generation qg=80MW/m**3\n", + "#The thermal conductivity of wall(k)is 200W/m*K.\n", + "k=200;\n", + "#The left and right faces are kept at tempratures T=160°C and T=120°C respectively\n", + "#We start with the equation (d**2T/dx**2)+(qg/k)=0 or T=-(qg/2k)*x**2 +(c1*x)+c2 \n", + "#With qg=80*10**6W/m**3 and k=200W/(m*K)\n", + "#Applying boundary condition at x=0,T=160°C and x=0.02,T=120°C we get constant c2=160°C and c2=2000m**-1\n", + "#Hence T=160+2*10**3*(x-100*x**2)----->eq.1\n", + "print\"(a)The expression for the temprature distribution in the plate T=160+2*10**3*(x-100*x**2)\" \n", + "#For maximum temprature differentiating eq.1 with respect to x and equating it to zero...we get dT/dx=(2*10**3)-(4*10**5*x)=0,which gives x=0.005m=5mm\n", + "print\"(b)The maximum temprature occurs at x=5mm or 0.005m away from the left surface towards the right\"\n", + "x=0.005;\n", + "#The maximum temprature is Tmax\n", + "print\"The maximum temprature(Tmax) in °C is\"\n", + "Tmax=160+2*10**3*(x-100*x**2)\n", + "print\"Tmax=\",Tmax\n", + "#The rate of heat transfer(q/A) is given by -k*(dT/dx)\n", + "#Let dT/dx=X and (q/A)=Q\n", + "print\"(c(i))The rate of heat transfer at the left face in MW/m**2 is\"\n", + "#For left face x=0\n", + "x=0;\n", + "X=(2*10**3)-(4*10**5*x);\n", + "Q=-k*X/10**6\n", + "print\"Q=\",Q\n", + "print\"The minus sign indicates that the heat flow in the negative direction\"\n", + "print\"(c(ii))The rate of heat transfer at the right face in MW/m**2 is\"\n", + "#For right face x=0.02\n", + "x=0.02;\n", + "X=(2*10**3)-(4*10**5*x);\n", + "Q=-k*X/10**6\n", + "print\"Q=\",Q\n", + "#(q/A)@x=0 implies rate of heat transfer at the position where x=0. \n", + "print\"The minus sign for (q/A)@x=0 and the plus sign for (q/A)@x=0.02 indicates that heat is lost from both the surfaces to surroundings\"\n", + "print\"(c(iii))The rate of heat transfer at the centre in MW/m**2 is\"\n", + "#For centre x=0.01\n", + "x=0.01;\n", + "X=(2*10**3)-(4*10**5*x);\n", + "Q=-k*X/10**6\n", + "#A check for the above results can be made from an energy balance of the plate as |(q/A)|@x=0+|(q/A)|@x=0.02=qG*0.02\n", + "print\"Q=\",Q\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.9:pg- 48" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 2, Example 9\n", + "The critical thickness of insulation in metre is\n", + "X= 0.182340462632\n", + "The heat transfer rate Q per metre of tube length in W/m is \n", + "Q= 26.807459995\n", + "X= 0.559673817307\n", + "The heat transfer rate per metre of tube length Q in W/m is \n", + "Q= 28.1996765363\n", + "X= 1.79194526577\n", + "The heat transfer rate per metre of tube length Q in W/m is \n", + "Q= 21.1086798197\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 2, Example 9\"\n", + "#A thin walled copper tube of outside metal radius r=0.01m carries steam at temprature, T1=400K.It is inside a room where the surrounding air temprature is Tinf=300K.\n", + "T1=400;\n", + "Tinf=300;\n", + "r=0.01;\n", + "#The tube is insulated with magnesia insulation of an approximate thermal conductivity of k=0.07W/(m*K)\n", + "k=0.07;\n", + "#External convective Coefficient h=4W/(m**2*K)\n", + "h=4;\n", + "#Critical thickness(rc) is given by k/h\n", + "print\"The critical thickness of insulation in metre is\"\n", + "rc=k/h\n", + "#We use the rate of heat transfer per metre of tube length as Q=(Ti-Tinf)/((ln(r2/r1)/(2*math.pi*L*k))+(1/(h*2*math.pi*r2*L))) where length,L=1m\n", + "L=1;\n", + "#When 0.002m thick layer of insulation r1=0.01m,r2=0.01+0.002=0.012m\n", + "r1=0.01;#inner radius\n", + "r2=0.012;#outer radius\n", + "#Let ln(r2/r1)=X\n", + "X=math.log(r2/r1)/math.log(2.718);\n", + "print\"X=\",X\n", + "#The heat transfer rate per metre of tube length is Q\n", + "print\"The heat transfer rate Q per metre of tube length in W/m is \"\n", + "Q=(T1-Tinf)/(((X)/(2*math.pi*L*k))+(1/(h*2*math.pi*r2*L)))\n", + "print\"Q=\",Q\n", + "#When critical thickness of insulation r1=0.01m,r2=0.0175m\n", + "r2=0.0175;#outer radius\n", + "r1=0.01;#inner radius\n", + "#Let ln(r2/r1)=X\n", + "X=math.log(r2/r1)/math.log(2.718);\n", + "print\"X=\",X\n", + "#The heat transfer rate per metre of tube length is Q \n", + "print\"The heat transfer rate per metre of tube length Q in W/m is \"\n", + "Q=(T1-Tinf)/(((X)/(2*math.pi*L*k))+(1/(h*2*math.pi*r2*L)))\n", + "print\"Q=\",Q\n", + "#When there is a 0.05 m thick layer of insulation r1=0.01m,r2=.01+0.05=0.06m\n", + "r1=0.01;#inner radius\n", + "r2=0.06;#outer radius\n", + "#Let ln(r2/r1)=X\n", + "X=math.log(r2/r1)/math.log(2.718);\n", + "print\"X=\",X\n", + "#The heat transfer rate per metre of tube length is Q \n", + "print\"The heat transfer rate per metre of tube length Q in W/m is \"\n", + "Q=(T1-Tinf)/(((X)/(2*math.pi*L*k))+(1/(h*2*math.pi*r2*L)))\n", + "#It is important to note that Q increases by 5.2% when the insulation thickness increases from 0.002m to critical thickness. \n", + "#Addition of insulation beyond the critical thickness decreases the value of Q (The heat loss).\n", + "print\"Q=\",Q\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.10:pg-49" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 2, Example 10\n", + "the thickness of insulation in metre is\n", + "t= 0.019\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 2, Example 10\"\n", + "#A copper pipe having 35mm outer diameter(Do) and 30mm inner diameter(Di) carries liquid oxygen to the storage site of a space shuttle at temprature,T1=-182°C\n", + "#mass flow rate is ,mdot=0.06m**3/min. \n", + "Di=0.03;#in metre\n", + "Do=0.035;# in metre\n", + "T1=-182;\n", + "mdot=0.06;\n", + "#The ambient air is at temprature(Ta)=20°C and has a dew point(T3)=10°C.\n", + "Ta=20;\n", + "T3=10;\n", + "#The thermal conductivity(k) of insulating material is 0.02W/(m*k)\n", + "k=0.02;\n", + "#The convective heat transfer coefficient on the outside is h=17W/(m**2*K)\n", + "h=17;\n", + "#The thermal conductivity of copper kcu=400W/(m*K)\n", + "kcu=400;\n", + "#We can write Q=((Ta-T1)/(R1+R2+R3))=((Ta-T3)/(R3)),Rearranging we get ((R1+R2+R3)/(R3))=((Ta-T1)/(Ta-T3))--------eq.1\n", + "#The conduction Resistance of copper pipe(R1)=ln(0.035/0.03)/(2*math.pi*L*kcu)=3.85*10**-4/(2*math.pi*L)K/W\n", + "#The conduction resistance of insulating material (R2)=ln(r3/0.035)/(2*math.pi*L*k)=(1/(2*math.pi*L))((50*ln(r3/0.035)))K/W where r3 is the outer radius of insulation in metres.\n", + "#The convective resistance at the outer surface(R3)=1/(2*math.pi*L*h*r3)=(1/2*math.pi*L)*(mdot/r3)K/W\n", + "#Substituting the values in eq.1 we have 1+((50*ln(r3/0.035)+(3.85*10**-4))/(mdot/r3))=20-(-182)/(20-10)\n", + "#A rearrangement of the above equation gives r3*ln(r3)+3.35*r3=0.023\n", + "#The equation is solved by trial and error method which finally gives r3=0.054m\n", + "r3=0.054;#outer radius of insulation\n", + "#Therefore the thickness of insulation is given by t=r3-Do\n", + "print\"the thickness of insulation in metre is\"\n", + "t=r3-Do\n", + "print\"t=\",t\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.11:pg-52" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 2, Example 11\n", + "The rate of heat generation of thermal energy in W/m**3 is\n", + "qG= 407436654.315\n", + "The temprature of wire at the centre in K is \n", + "To= 656.631455962\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 2, Example 11\"\n", + "#An electrical resistance wire 2.5mm or 2.5*10**-3m in diameter(D) and L=0.5m long has a measured voltage drop of E=25V for a current flow of I=40A.\n", + "D=2.5*10**-3;\n", + "I=40;\n", + "E=25;\n", + "L=0.5;\n", + "ro=D/2;#ro is radius of wire\n", + "#The thermal conductivity(k) of wire material is 24W/(m*K) \n", + "k=24;\n", + "#The rate of generation of thermal energy per unit volume is given by qG=(E*I)/(L*math.pi*D**2/4)\n", + "print\"The rate of heat generation of thermal energy in W/m**3 is\"\n", + "qG=(E*I)/(L*math.pi*D**2/4)\n", + "print\"qG=\",qG\n", + "#The temprature at the centre is given by To=Tw+((qG*ro**2)/(4*k)) where Tw=650K is surface temprature \n", + "Tw=650;\n", + "print\"The temprature of wire at the centre in K is \"\n", + "To=Tw+((qG*ro**2)/(4*k))\n", + "#Note:The answer in the book is incorrect(value of D has been put instead of ro)\n", + "print\"To=\",To\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.12:pg-56" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 2, Example 12\n", + "The inner(A1) and outer surfaces(A2) areas of the tank in m**2 are\n", + "The convective resistance(Ri) at the inner surface in K/W is \n", + "Ri= 0.000159154943092\n", + "The conduction resistance(Rs)of the tank in K/W is\n", + "Rs= 0.0\n", + "The convective resistance(Roc) at the outer surface in K/W is\n", + "Roc= 0.00127323954474\n", + "The radiative heat transfer coefficient hr in W/(m**2*K) is\n", + "hr= 5.26265474661\n", + "Therefore the radiative resistance(Ror) at the outer surface in K/W is\n", + "Ror= 0.00241938642385\n", + "The equivalent resistance in K/W is\n", + "Ro= 0.000834218925785\n", + "The total resistance in K/W is\n", + "Rtotal= 0.000993373868877\n", + "The rate of heat transfer,Q in W is\n", + "Q= 20133.406592\n", + "The outer surface temprature in °C is\n", + "T2= 3.2043311804\n", + "which is sufficiently close to the assumption.So there is no need of further iteration\n", + "The total heat transfer(Qt) during a 24-hour period in KJ is\n", + "Qt= 1739526.32955\n", + "Therefore,the amount of ice(mice)in kG which melts during a 24 hour period is\n", + "mice= 5208.16266333\n" + ] + } + ], + "source": [ + "\n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 2, Example 12\"\n", + "#A spherical tank of internal diameter, Di=5m ,made of t=25mm thick stainless steel(thermal conductivity,k=15W/(m*K)),is used to store water at temprature(Ti)=0°C.Do is outer diameter\n", + "Di=5;\n", + "t=25;\n", + "Do=5+2*(t/1000);#in metre\n", + "k=15;\n", + "Ti=0;\n", + "#The tank is located in a room whose temprature is (To)=20°C.\n", + "To=20;\n", + "#Emmisivity is 1.\n", + "#The convection heat transfer coefficients at the inner and outer surfaces of the tank are hi=80W/(m**2*K) and ho=10W/(m**2*K)\n", + "hi=80;\n", + "ho=10;\n", + "#The heat of fusion of ice at atmospheric pressure is deltahf=334kJ/kg.The stefan-boltzman constant(sigma) is 5.67*10**-8W/m**2.\n", + "sigma=5.67*10**-8;\n", + "deltahf=334;\n", + "#The inner surface area is (A1) and outer surface area is (A2)of the tank\n", + "print\"The inner(A1) and outer surfaces(A2) areas of the tank in m**2 are\"\n", + "A1=math.pi*Di**2\n", + "A2=math.pi*Do**2\n", + "#The individual thermal resistances can be determined as\n", + "#The convective resistance is (Ri)\n", + "print\"The convective resistance(Ri) at the inner surface in K/W is \"\n", + "Ri=1/(hi*A1)\n", + "print\"Ri=\",Ri\n", + "#The conduction resistance is(Rs)\n", + "print\"The conduction resistance(Rs)of the tank in K/W is\"\n", + "Rs=(Do-Di)/(2*k*math.pi*Di*Do)\n", + "print\"Rs=\",Rs\n", + "#The convective resistance is(Roc)\n", + "print\"The convective resistance(Roc) at the outer surface in K/W is\"\n", + "Roc=1/(ho*A2)\n", + "print\"Roc=\",Roc\n", + "#The radiative resistance(Ror) at the outer surface is Ror=1/(A2*hr) \n", + "#The radiative heat transfer coefficient hr is determined by hr=sigma*(T2**2+293.15**2)*(T2+293.15)\n", + "#But we do not know the outer surface temprature T2 of the tank and hence we cannot determine the value of hr.\n", + "#Therfore we adopt an iterative procedure.We assume T2=4°C=277.15K.Putting the value in hr=sigma*(T2**2+293.15**2)*(T2+293.15) we get\n", + "T2=277.15;\n", + "print\"The radiative heat transfer coefficient hr in W/(m**2*K) is\"\n", + "hr=sigma*(T2**2+293.15**2)*(T2+293.15)\n", + "print\"hr=\",hr\n", + "print\"Therefore the radiative resistance(Ror) at the outer surface in K/W is\"\n", + "Ror=1/(A2*hr)\n", + "print\"Ror=\",Ror\n", + "#The two parallel resistances Roc and Ror can be replaced by an equivalent resistance Ro as X=(1/Ro)=(1/Roc)+(1/Ror)\n", + "print\"The equivalent resistance in K/W is\"\n", + "X=(1/Roc)+(1/Ror);\n", + "Ro=1/X\n", + "print\"Ro=\",Ro\n", + "#Now the resistance Ri,Rs and Ro are in series an hence the total resistance becomes Rtotal=Ri+Rs+Ro \n", + "print\"The total resistance in K/W is\"\n", + "Rtotal=Ri+Rs+Ro \n", + "print\"Rtotal=\",Rtotal\n", + "#The rate of heat transfer is given by Q=(To-Ti)/Rtotal\n", + "print\"The rate of heat transfer,Q in W is\"\n", + "Q=(To-Ti)/Rtotal\n", + "print\"Q=\",Q\n", + "#The outer surface(T2) is calculated as T2=To-Q*Ro\n", + "print\"The outer surface temprature in °C is\"\n", + "T2=To-Q*Ro\n", + "print\"T2=\",T2\n", + "print\"which is sufficiently close to the assumption.So there is no need of further iteration\"\n", + "#The total heat transfer is (Qt),during a 24-hour period\n", + "print\"The total heat transfer(Qt) during a 24-hour period in KJ is\"\n", + "Qt=Q*24*3600/1000\n", + "print\"Qt=\",Qt\n", + "#the amount of ice in kG which melts during a 24 hour period is (mice)\n", + "print\"Therefore,the amount of ice(mice)in kG which melts during a 24 hour period is\"\n", + "mice=Qt/deltahf\n", + "print\"mice=\",mice\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.13:pg-68" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 2, Example 13\n", + "P/A in m**-1 is\n", + "X= 400.0\n", + "m in m**-1 is\n", + "m= 3.28797974611\n", + "M in W/K is\n", + "M= 0.0955478103936\n", + "thetab in °C is \n", + "thetab= 100\n", + "Heat loss from rod in Watt, for different value of length(in m) is \n", + "Q= 0.705573384326\n", + "Q= 1.32655528327\n", + "Q= 2.53006298798\n", + "Q= 5.56299390901\n", + "Q= 8.29001416681\n", + "Q= 9.45769063154\n", + "Q= 9.52862252977\n", + "Q= 9.55478103936\n", + "For an infintely long rod heat loss in W is\n", + "We see that since k is large there is significant difference between the finite length and the infinte length cases\n", + "However when the length of the rod approaches 1m,the result become almost same.\n", + "Qinf= 9.55478103936\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 2, Example 13\"\n", + "#A very long,10mm diameter(D) copper rod(thermal conductivity,k=370W/(m*K))is exposed to an enviroment at temprature,Tinf=20°C.\n", + "D=0.01;\n", + "k=370;\n", + "Tinf=20;\n", + "#The base temprature of the radius maintained at Tb=120°C.\n", + "Tb=120;\n", + "#The heat transfer coefficient between the rod and the surrounding air is h=10W/(m*K**2)\n", + "h=10;\n", + "#The rate of heat transfer for all finite lengths will be given by P/A=(4*pi*D)/(pi*D**2)\n", + "#Let P/A=X\n", + "print\"P/A in m**-1 is\"\n", + "X=(4*math.pi*D)/(math.pi*D**2)\n", + "print\"X=\",X\n", + "#m is defined as ((h*p)/(k*A)]**0.5 \n", + "print\"m in m**-1 is\"\n", + "m=(h*X/k)**0.5\n", + "print\"m=\",m\n", + "#Let Y=h/(m*k)\n", + "Y=h/(m*k)\n", + "#Let M=(h*P*k*A)**0.5\n", + "P=(math.pi*D);#perimeter of the rod\n", + "A=(math.pi*D**2)/4;#Area of the rod\n", + "print\"M in W/K is\"\n", + "M=(h*P*k*A)**0.5\n", + "print\"M=\",M\n", + "#thetab is the parameter that defines the base temprature\n", + "print\"thetab in °C is \"\n", + "thetab=Tb-Tinf\n", + "print\"thetab=\",thetab\n", + "#Heat loss from the rod is defined as Q=(h*P*k*A)*thetab*(((h/m*k)+math.tanh(m*L)]/(1+(h/m*k)*math.tanh(m*L)]}\n", + "print\"Heat loss from rod in Watt, for different value of length(in m) is \"\n", + "L=0.02#Length of rod\n", + "Q=M*thetab*(((Y)+math.tanh(m*L))/(1+(Y)*math.tanh(m*L)))\n", + "print\"Q=\",Q\n", + "L=0.04#length of rod\n", + "Q=M*thetab*(((Y)+math.tanh(m*L))/(1+(Y)*math.tanh(m*L)))\n", + "print\"Q=\",Q\n", + "L=0.08#length of rod\n", + "Q=M*thetab*(((Y)+math.tanh(m*L))/(1+(Y)*math.tanh(m*L)))\n", + "print\"Q=\",Q\n", + "L=0.20#length of rod\n", + "Q=M*thetab*(((Y)+math.tanh(m*L))/(1+(Y)*math.tanh(m*L)))\n", + "print\"Q=\",Q\n", + "L=0.40#length of rod\n", + "Q=M*thetab*(((Y)+math.tanh(m*L))/(1+(Y)*math.tanh(m*L)))\n", + "print\"Q=\",Q\n", + "L=0.80#length of rod\n", + "Q=M*thetab*(((Y)+math.tanh(m*L))/(1+(Y)*math.tanh(m*L)))\n", + "print\"Q=\",Q\n", + "L=1.00#length of rod\n", + "Q=M*thetab*(((Y)+math.tanh(m*L))/(1+(Y)*math.tanh(m*L)))\n", + "print\"Q=\",Q\n", + "L=10.00#length of rod\n", + "Q=M*thetab*(((Y)+math.tanh(m*L))/(1+(Y)*math.tanh(m*L)))\n", + "print\"Q=\",Q\n", + "#For an infinitely long rod we use heat loss as ,Qinf=(h*P*k*A)**0.5*thetab\n", + "print\"For an infintely long rod heat loss in W is\"\n", + "Qinf=(h*P*k*A)**0.5*thetab\n", + "print\"We see that since k is large there is significant difference between the finite length and the infinte length cases\"\n", + "print\"However when the length of the rod approaches 1m,the result become almost same.\" \n", + "print\"Qinf=\",Qinf\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.14:pg-81" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 2, Example 14\n", + "The thermal conductivity of Rod B kB in W/(m*K) is \n", + "kB= 18.0\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 2, Example 14\"\n", + "#Considering two very long slender rods of the same diameter but of different materials.\n", + "#The base of each rod is maintained at 100°C while the surfaces of the rod are exposed to 20°C\n", + "#By traversing length of each rod with a thermocouple it was observed that tempratures of rod were equal at the position xA=0.15m and xB=0.075 from base.\n", + "xA=0.15;\n", + "xB=0.075;\n", + "#Thermal conductivity of rod A is known to be kA=72 W/(m*K)\n", + "kA=72;\n", + "#In case of a very long slender rod we use the tip boundary condition thetaL=0 as L--->infinity\n", + "#Therfore we can write for the locations where the tempratures are equal thetab*e**(-mA*xA)=thetab*e**(-mB*xB) or xA/xB=mB/mA,Again mB/mA=(kA/kB)**0.5\n", + "#So kB=kA*(xB/xA)**2\n", + "#The thermal conductivity of Rod B iskB\n", + "print\"The thermal conductivity of Rod B kB in W/(m*K) is \"\n", + "kB=kA*(xB/xA)**2\n", + "print\"kB=\",kB\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.15:pg-83" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 2, Example 15\n", + " perimeter of each fin in m is\n", + "P= 0.202\n", + "Cross sectional area of fin in m**2 is\n", + "A= 0.0001\n", + "M= 0.834805366538\n", + "m= 36.2958855016\n", + "Temprature parameter at fin base in K is\n", + "thetab= 100\n", + "Fixed temprature at fin tip in K is\n", + "thetaL= 50\n", + "Heat loss from the plate at 400K in W is\n", + "Qb= 13028.1662009\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 2, Example 15\"\n", + "#A stack that is b=300mm wide and l=100mm deep contains N=60 fins each of length L=12mm.\n", + "L=0.012;#in metre\n", + "b=0.3;#in metre\n", + "l=0.1;#in metre\n", + "N=60;\n", + "#The entire stack is made of aluminum which is everywhere t=1.0 mm thick.\n", + "t=0.001;#in metre\n", + "#The temprature limitations associated with electrical components are Tb=400K and TL=350K.\n", + "#Tb is base temprature and TL is end temprature\n", + "Tb=400;\n", + "TL=350; \n", + "#Given convection heat transfer coefficient(h=150W/(m**2*K)),Surrounding Temprature(Tinf=300K),thermal conductivity of aluminium(kaluminium=230W/(m*K))\n", + "h=150;\n", + "Tinf=300;\n", + "kal=230;\n", + "#Here both the ends of the fins are at fixed tempratures .Therefore we use M=(h*P*k*A)**0.5 and m=((h*P)/(k*A))**0.5,thetab=Tb-Tinf,thetaL=TL-Tinf\n", + "#from the given data perimeter of each fin is given by P= 2*(l+t)in m and area of each fin is A=t*l\n", + "print\" perimeter of each fin in m is\"\n", + "P= 2*(l+t)\n", + "print\"P=\",P\n", + "print\"Cross sectional area of fin in m**2 is\"\n", + "A=t*l\n", + "print\"A=\",A\n", + "#M is defined as (h*P*kal*A)**0.5 and m is defined as ((h*P)/(kal*A))**0.5\n", + "M=(h*P*kal*A)**0.5\n", + "m=((h*P)/(kal*A))**0.5\n", + "print\"M=\",M\n", + "print\"m=\",m\n", + "#thetab and thetaL are the parameters that define the fin tempratures at base and tip respectively.\n", + "print\"Temprature parameter at fin base in K is\"\n", + "thetab=Tb-Tinf\n", + "print\"thetab=\",thetab\n", + "print\"Fixed temprature at fin tip in K is\"\n", + "thetaL=TL-Tinf\n", + "print\"thetaL=\",thetaL\n", + "#Heat loss from the plate is Qb\n", + "print\"Heat loss from the plate at 400K in W is\"\n", + "Qb=(N*(h*P*kal*A)**0.5*thetab*((math.cosh(m*L)-(thetaL/thetab))/(math.sinh(m*L))))+(((l*b)-(N*A))*h*thetab)+(l*b*h*thetab)\n", + "print\"Qb=\",Qb\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter3.ipynb b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter3.ipynb new file mode 100644 index 00000000..55a11dc9 --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter3.ipynb @@ -0,0 +1,440 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "# Chapter 03:Multidimensional steady-state heat conduction" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.1:pg-92" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 3, Example 1\n", + "Temperature at the centre in Degree C is\n", + "T= 125.371641666\n" + ] + } + ], + "source": [ + "\n", + "\n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 3, Example 1\"\n", + "#Length and breadth is given as 1 unit (Gemoetry is Square)\n", + "L = 1;#length\n", + "#Problem can be divided into two modules\n", + "#Solution to module 1 is given by Eq. 3.21, considering the first three terms\n", + "#n is the looping parameter\n", + "#theta is the non dimensional temperature defined as ((T-100)/100) where T is actual temperature in degree Celcius.\n", + "#Initialising theta as zero\n", + "theta = 0;\n", + "for n in range(1,3):\n", + " theta = theta+((2/math.pi)*((math.sin((n*math.pi)/2)*math.sinh((n*math.pi)/2))*((-1)**(n+1)+1)))/(n*math.sinh(n*math.pi));\n", + " \n", + "#Solution to module 2 is given by Eq. 3.24, considering the first three terms\n", + "for n in range(1,3):\n", + " theta2 = theta+(((3*2)/math.pi)*((math.sin((n*math.pi)/2)*math.sinh((n*math.pi)/2))*((-1)**(n+1)+1)))/(n*math.sinh(n*math.pi));\n", + " \n", + "#Calculating value of temperature from the value of theta\n", + "#Temperature in degree celcius\n", + "print\"Temperature at the centre in Degree C is\"\n", + "T = theta*100+100\n", + "print\"T=\",T\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.2:pg-94" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Introduction to heat transfer by S.K.Som, Chapter 3, Example 2\n", + "Steady state non dimensional temperature is\n", + "theta=2*math.sinh(pi*y/a)*math.sin(pi*x/a)/(math.sinh(pi)) + math.sinh(pi*x/a)*math.sin(pi*y/a)/(math.sinh(pi))\n", + "theta= 0.597805223008\n", + "Temperature in K at centre point\n", + "T= 359.780522301\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 3, Example 2\"\n", + "#Temperature in K at four edges are given\n", + "#Theta is non dimensional temperature defined as ((T-300)/100) where T is actual temperature in K.\n", + "#Given length as well as the breadth of square plate is ''a''\n", + "#Problem can be divided into two modules\n", + "#Solution to module 1 is given by Eq. 3.23\n", + "#Solution of first module is non dimensional temperature theta1\n", + "#theta1=2*math.sinh(pi*y/a)*math.sin(pi*x/a)/(math.sinh(pi))\n", + "#Solution to module 2 is given by Eq. 3.24\n", + "#Solution of second module is non dimensional temperature theta2\n", + "#theta2=math.sinh(pi*x/a)*math.sin(pi*y/a)/(math.sinh(pi))\n", + "#Therefore\n", + "print\"Steady state non dimensional temperature is\"\n", + "print\"theta=2*math.sinh(pi*y/a)*math.sin(pi*x/a)/(math.sinh(pi)) + math.sinh(pi*x/a)*math.sin(pi*y/a)/(math.sinh(pi))\"\n", + "#At the centre, x coordinate and y coordinate in unit are\n", + "#x=a/2, y=a/2\n", + "#Non dimensional temperature at centre point\n", + "theta = (2*math.sinh(math.pi/2))/math.sinh(math.pi)+math.sinh(math.pi/2)/math.sinh(math.pi);\n", + "#Temperature in K at centre point\n", + "print\"theta=\",theta\n", + "print\"Temperature in K at centre point\"\n", + "T = theta*100+300\n", + "print\"T=\",T\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.3:pg-96" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 3, Example 3\n", + "Temperatures at nodal points in degree K\n", + "T1 in degree K\n", + "[ 398.67699539 155.83601706 66.53320567 119.43598224 79.06693359\n", + " 40.99573505 14.15266777 9.19140047]\n", + "T2 in degree K\n", + "[ 77.91800853 232.60510053 92.0706763 39.53346679 80.21585865\n", + " 48.72486726 19.11393507 11.30646706]\n", + "T3 in degree K\n", + "[ 33.26660284 92.0706763 237.56636783 20.49786753 48.72486726\n", + " 82.33092523 46.76647228 21.51623292]\n", + "T4 in degree K\n", + "[ 14.15266777 38.22787014 93.53294456 9.19140047 22.61293411\n", + " 43.03246584 124.91948821 27.99199234]\n", + "T5 in degree K\n", + "[-0. -0. -0. -0. -0. -0. -0. -0.]\n", + "T6 in degree K\n", + "[-0. -0. -0. -0. -0. -0. -0. -0.]\n", + "T7 in degree K\n", + "[ 95.65671512 227.3827139 384.21098442 77.62207329 214.83157803\n", + " 554.32152494 100.40908695 109.12176865]\n", + "T8 in degree K\n", + "[ 24.51040125 60.30115763 114.75324223 18.87022369 50.97049352\n", + " 124.71059274 74.64531291 166.55931761]\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + "import numpy\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 3, Example 3\"\n", + "#internodal distance in x direction in m\n", + "deltax = 1.0/4;\n", + "#internodal distance in y direction in m\n", + "deltay = 1.0/4;\n", + "#Air temperature in degree K\n", + "Tinfinity = 400;\n", + "#Heat transfer coefficient in W/(m**2*K)\n", + "h = 10;\n", + "#T1, T2, T3, T4, T5, T6, T7, T8 are nodal temperatures in degree K.\n", + "#T is the temperature matrix and is transpose of [T1 T2 T3 T4 T5 T6 T7 T8]\n", + "#using Nodal Equations, we have Coefficeint Matrix A as\n", + "A = [[-4,1,0,0,1,0,0,0],[1,-4,1,0,0,1,0,0],[0,1,-4,1,0,0,1,0],[2,0,0,0,-4,1,0,0],[0,2,0,0,1,-4,1,0],[0,0,2,0,0,1,-4,1],[0,0,2,-6,0,0,0,1],[0,0,0,2,0,0,2,-6]]#Coefficient matrix B\n", + "B = [[-1200],[-600],[-600],[-600],[0],[0],[-1400],[-800]]\n", + "\n", + "\n", + "#Therefore the temperature matrix is\n", + "T = numpy.linalg.inv(A)*B;\n", + "#Temperature at nodal points in degree K\n", + "print\"Temperatures at nodal points in degree K\"\n", + "print\"T1 in degree K\"\n", + "T1 = T[0]\n", + "print T1\n", + "print\"T2 in degree K\"\n", + "T2 = T[1]\n", + "print T2\n", + "print\"T3 in degree K\"\n", + "T3 = T[2]\n", + "print T3\n", + "print\"T4 in degree K\"\n", + "T4 = T[3]\n", + "print T4\n", + "print\"T5 in degree K\"\n", + "T5 = T[4]\n", + "print T5\n", + "print\"T6 in degree K\"\n", + "T6 = T[5]\n", + "print T6\n", + "print\"T7 in degree K\"\n", + "T7 = T[6]\n", + "print T7\n", + "print\"T8 in degree K\"\n", + "T8 = T[7]\n", + "print T8\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.5:pg-98" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 3, Example 5\n", + "Temperatures at nodal points in degree C\n", + "T2 in degree C\n", + "[ 1.83976243e-36 4.79441040e-01 3.66134997e-01 3.07581515e-01\n", + " 5.38080937e-01]\n", + "T3 in degree C\n", + "[ 1.46972670e-67 1.92742646e+00 1.47191880e+00 1.23652483e+00\n", + " 1.07886949e+00]\n", + "T4 in degree C\n", + "[ 4.52446173e-92 1.47191880e+00 3.54032873e+00 2.97414801e+00\n", + " 1.67320356e+00]\n", + "T5 in degree C\n", + "[ 6.50142301e-108 1.23652483e+000 2.97414801e+000 5.91733919e+000\n", + " 2.36010173e+000]\n", + "T6 in degree C\n", + "[ 2.06473580e-113 1.16395938e+000 2.79961015e+000 5.57008016e+000\n", + " 3.18199172e+000]\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + "import numpy\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 3, Example 5\"\n", + "#Thermal conductivity of aluminium in W/(m*K)\n", + "k = 200.0\n", + "#Diameter in m\n", + "d = 20*(10**(-3));\n", + "#Length of fin in m\n", + "L = 0.2;\n", + "#Wall temperature in degree C\n", + "Tw = 400.0;\n", + "#Air temperature in degree C\n", + "Tinfinity = 30;\n", + "#Heat transfer coefficient in W/(m**2*K)\n", + "h = 40.0;\n", + "#internodal distance in x direction in m\n", + "deltax = L/5;\n", + "#Node 1 temperature is equal to wall temperature in degree C\n", + "T1 = Tw;\n", + "#using Nodal Equations, we have Coefficeint Matrix A as\n", + "A = [[2.064,-1,0,0,0],[-1,2.064,-1,0,0],[0,-1,2.064,-1,0],[0,0,-1,2.064,-1],[0,0,0,-1,1.032]]\n", + "#Coefficient matrix B\n", + "B = [401.92,1.92,1.92,1.92,0.96]\n", + "#T2, T3, T4, T5, T6 are nodal temperature in degree C\n", + "#T is the temperature matrix and is transpose of [T2 T3 T4 T5 T6]\n", + "#Therefore the temperature matrix is\n", + "T = numpy.linalg.inv(A)**B;\n", + "#Temperature at nodal points in degree C\n", + "print\"Temperatures at nodal points in degree C\"\n", + "print\"T2 in degree C\"\n", + "T2 = T[0]\n", + "print T2\n", + "print\"T3 in degree C\"\n", + "T3 = T[1]\n", + "print T3\n", + "print\"T4 in degree C\"\n", + "T4 = T[2]\n", + "print T4\n", + "print\"T5 in degree C\"\n", + "T5 = T[3]\n", + "print T5\n", + "print\"T6 in degree C\"\n", + "T6 = T[4]\n", + "print T6\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.6:pg-104" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 3, Example 6\n", + "Temperatures at nodal points in degree C\n", + "T1 in degree C\n", + "[ -0. -0. -0. 186.04651163 1.86046512\n", + " 2.79069767 1.86046512 0.46511628 74.41860465]\n", + "T2 in degree C\n", + "[ -0. -0. -0. 74.41860465 1.69263965\n", + " 3.56988732 2.51738192 0.62934548 157.39630784]\n", + "T3 in degree C\n", + "[ -0. -0. -0. 83.72093023 3.88875569\n", + " 4.80220571 3.06401343 0.76600336 65.85950611]\n", + "T4 in degree C\n", + "[ -0. -0. -0. 55.81395349 2.45504675\n", + " 5.7444258 4.10453129 1.02613282 77.58331335]\n", + "T5 in degree C\n", + "[ -0. -0. -0. 37.20930233 1.77415488\n", + " 4.6199952 7.34116519 1.8352913 51.37856629]\n", + "T6 in degree C\n", + "[ -0. -0. -0. 37.20930233 8.78446416\n", + " 4.92927356 2.18652601 0.5466315 33.8527931 ]\n", + "T7 in degree C\n", + "[ -0. -0. -0. 27.90697674 2.46463678\n", + " 9.98561496 3.49556461 0.87389115 35.69887317]\n", + "T8 in degree C\n", + "[ -0. -0. -0. 18.60465116 1.09326301\n", + " 3.49556461 10.57779909 2.64444977 25.17381923]\n", + "T9 in degree C\n", + "[ -0. -0. -0. 9.30232558 0.5466315\n", + " 1.74778231 5.28889954 11.32222489 12.58690961]\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 3, Example 6\"\n", + "#Thermal conductivity of concrete in W/mK\n", + "k = 2;\n", + "#Length in m\n", + "L = 0.2;\n", + "#Breadth in m\n", + "b = 0.2;\n", + "#Depth in m\n", + "d = 0.2;\n", + "#Temperature of hot gas in chimney in degree C\n", + "Tg = 400;\n", + "#Air temperature in degree C\n", + "Tinfinity = 20;\n", + "#internodal distance in x direction in m\n", + "deltax = 0.1;\n", + "#internodal distance in y direction in m\n", + "deltay = 0.1;\n", + "#Heat transfer coefficient in W/(m**2*K)\n", + "h = 20;\n", + "#T1, T2, T3, T4, T5, T6, T7, T8, T9 are nodal temperatures in degree K.\n", + "#T is the temperature matrix and is transpose of [T1 T2 T3 T4 T5 T6 T7 T8 T9]\n", + "#using Nodal Equations, we have Coefficeint Matrix A as\n", + "A = numpy.array([[1,0,-4,2,0,1,0,0,0],[0,1,1,-4,1,0,1,0,0],[0,0,0,2,-4,0,0,2,0],[-3,1,1,0,0,0,0,0,0],[0,0,1,0,0,-3,1,0,0],[0,0,0,2,0,1,-6,1,0],[0,0,0,0,2,0,1,-6,1],[0,0,0,0,0,0,0,1,-2],[1,-4,0,2,0,0,0,0,0]]);\n", + "#Coefficient matrix B\n", + "B = numpy.array([0,0,0,-400,-20,-40,-40,-20,-400]);\n", + "#Therefore the temperature matrix is\n", + "T = numpy.linalg.inv(A)*B;\n", + "#Temperature at nodal points in degree C\n", + "print\"Temperatures at nodal points in degree C\"\n", + "print\"T1 in degree C\"\n", + "T1 = T[0]\n", + "print T1\n", + "print\"T2 in degree C\"\n", + "T2 = T[1]\n", + "print T2\n", + "print\"T3 in degree C\"\n", + "T3 = T[2]\n", + "print T3\n", + "print\"T4 in degree C\"\n", + "T4 = T[3]\n", + "print T4\n", + "print\"T5 in degree C\"\n", + "T5 = T[4]\n", + "print T5\n", + "print\"T6 in degree C\"\n", + "T6 = T[5]\n", + "print T6\n", + "print\"T7 in degree C\"\n", + "T7 = T[6]\n", + "print T7\n", + "print\"T8 in degree C\"\n", + "T8 = T[7]\n", + "print T8\n", + "print\"T9 in degree C\"\n", + "T9 = T[8]\n", + "print T9\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter4.ipynb b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter4.ipynb new file mode 100644 index 00000000..c6207f4b --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter4.ipynb @@ -0,0 +1,922 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "# Chapter 04:Unsteady conduction" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.1:pg-137" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 4, Example 1\n", + "Biot number is\n", + "Bi= 0.277777777778\n", + "Problem is not suitable for lumped parameter analysis\n" + ] + } + ], + "source": [ + " \n", + "\n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 4, Example 1\"\n", + "#Diameter of apple in m\n", + "d = 100*(10**(-3));\n", + "#radius in m\n", + "r = d/2;\n", + "#Thermal conductivity of apple in W/(m*K)\n", + "k = 0.6;\n", + "#Heat transfer coefficient in W/(m**2*°C)\n", + "h = 10;\n", + "#Caculating characteristic dimension in m\n", + "Lc = (((((4*math.pi)*r)*r)*r)/3)/(((4*math.pi)*r)*r);\n", + "#Biot number\n", + "print\"Biot number is\"\n", + "Bi = (h*Lc)/k\n", + "print\"Bi=\",Bi\n", + "if Bi<0.1:\n", + " print\"Problem is suitable for lumped parameter analysis\"\n", + "else:\n", + " print\"Problem is not suitable for lumped parameter analysis\"\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.2:pg-138 " + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 4, Example 2\n", + "Time constant in seconds is\n", + "tc= 8.0\n", + "Time required in seconds\n", + "t= 36.8413614879\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 4, Example 2\"\n", + "#Diameter of sphere in m\n", + "d = 1.5*(10**(-3));\n", + "#radius in m\n", + "r = d/2;\n", + "#Thermal conductivity of sphere in W/(m*°C)\n", + "k = 40.0;\n", + "#Density in kg/m**3\n", + "rho = 8000.0;\n", + "#Specific heat in J/(Kg*K)\n", + "c = 300.0;\n", + "#Heat transfer coefficient in W/(m**2*°C)\n", + "h = 75.0;\n", + "#Time constant in sec\n", + "tc = ((rho*c)*(((((4*math.pi)*r)*r)*r)/3))/((((h*4)*math.pi)*r)*r);\n", + "print\"Time constant in seconds is\"\n", + "print\"tc=\",tc\n", + "#Using eq. 4.4\n", + "#Given fraction is 0.01 (1 percent)\n", + "#Required time in sec\n", + "t = (-8)*math.log(0.01);\n", + "print\"Time required in seconds\"\n", + "print\"t=\",t\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.3:pg-138" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 4, Example 3\n", + "Maximum dimension in metre for lumped parameter analysis\n", + "a= 5.0\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 4, Example 3\"\n", + "#Heat transfer coefficient in W/(m**2*K)\n", + "h = 30;\n", + "#Thermal conductivity of sphere in W/(m*K)\n", + "k = 250;\n", + "#Biot number for lumped parameter analysis is 0.1\n", + "Bi = 0.1;\n", + "#Characteristic dimension of a cube is (a/6) where a is the side of cube in metre\n", + "#Maximum dimension in metre\n", + "a = ((6*k)*Bi)/h;\n", + "print\"Maximum dimension in metre for lumped parameter analysis\"\n", + "print\"a=\",a\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.4:pg-146" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 4, Example 4\n", + "Time required to cool milk in minutes\n", + "Energy required for cooling in KJ\n", + "E= -319.013666564\n" + ] + } + ], + "source": [ + " \n", + "from scipy.integrate import quad\n", + "import math\n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 4, Example 4\"\n", + "#Diameter of glass in m\n", + "d = 50*(10**(-3));\n", + "#radius in m\n", + "r = d/2;\n", + "#Height of milk in glass in m\n", + "H = 0.1;\n", + "#Initial temperature of milk in °C\n", + "T = 80.0;\n", + "#Cold water temperature in °C\n", + "Tf = 25.0;\n", + "#Heat transfer coefficient in W/(m**2*°C)\n", + "h = 100.0;\n", + "#Thermal conductivity of milk in W/(m*K)\n", + "k = 0.6;\n", + "#Density of milk in kg/m**3\n", + "rho = 900.0;\n", + "#Specific heat in J/(Kg*K)\n", + "c = 4.2*(10**3);\n", + "#Since the milk temperature is always maintained as constant.\n", + "#Therefore it can be assumed as lumped paramteter analysis.\n", + "#Time constant n seconds\n", + "tcs = (((((rho*c)*math.pi)*r)*r)*H)/(((h*math.pi)*d)*H);\n", + "#Time constant in minutes\n", + "tc = tcs/60;\n", + "#Calculating from eq. 4.3 time taken to cool milk from 80°C to 30°C\n", + "t = -tc*math.log((30.0-Tf)/(T-Tf));\n", + "print\"Time required to cool milk in minutes\"\n", + "t\n", + "#Energy transferred during cooling\n", + "E = (((h*math.pi)*d)*H)*quad(lambda t:(80.0-25.0)*math.e*(-t/472.5),0,60.0*t)[0];\n", + "print\"Energy required for cooling in KJ\"\n", + "E = E/1000.0\n", + "print \"E=\",E\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.5:pg-159" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 4, Example 5\n", + "Time required in hours\n", + "t= 7.5\n", + "Heat transfer rate in MJ\n", + "Q= 186.3\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 4, Example 5\"\n", + "#Thermal conductivity of wall in W/(m*K)\n", + "k = 0.6;\n", + "#Thermal diffusivity in m**2/s\n", + "alpha = 5*(10**(-7));\n", + "#Thickness in m\n", + "L = 0.15;\n", + "#Initial temperature in °C\n", + "Ti = 30;\n", + "#Temperature of hot gas in °C\n", + "Tinfinity = 780;\n", + "#Heat transfer coefficient in W/(m**2*K)\n", + "h = 20;\n", + "#Surface temperaute to be achieved in °C\n", + "To = 480;\n", + "#Dimensionless temperature ratio\n", + "z = (To-Tinfinity)/(Ti-Tinfinity);\n", + "#Biot number\n", + "Bi = (h*L)/k;\n", + "#For this value of (1/Bi) and dimensionless temp. ratio\n", + "#From Fig. 4.11 Fourier number is\n", + "Fo = 0.6;\n", + "#Time required in seconds\n", + "t = ((Fo*L)*L)/alpha;\n", + "print\"Time required in hours\"\n", + "t = t/3600\n", + "print\"t=\",t\n", + "#From fig. 4.13, for this Bi and Fo*Bi*Bi, we have ratio of heats as\n", + "#Q/Qi=0.69\n", + "#Heat transfer in J\n", + "Q = ((((0.69*k)*2)*L)*(Tinfinity-Ti))/alpha;\n", + "print\"Heat transfer rate in MJ\"\n", + "Q = Q/(10**6)\n", + "print\"Q=\",Q\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.6:pg-166" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 4, Example 6\n", + "Temperature at this distance in °C\n", + "T= 355.5\n", + "Heat transfer rate in MJ\n", + "Q= 100.0\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 4, Example 6\"\n", + "#Thickness of plate in m\n", + "L = 0.2;\n", + "#Initial temperature in °C\n", + "Ti = 530;\n", + "#Heat transfer coefficient in W/(m**2*K)\n", + "h = 500;\n", + "#Given distance in m\n", + "x = L-20*(10**(-3));\n", + "#Temperature of surrounding in °C\n", + "Tinfinity = 30;\n", + "#Given time in seconds\n", + "t = 225;\n", + "#Thermal conductivity of aluminium in W/(m*K)\n", + "k = 200;\n", + "#Thermal diffusivity in m**2/s\n", + "alpha = 8*(10**(-5));\n", + "#Biot number\n", + "Bi = (h*L)/k;\n", + "#Fourier number\n", + "Fo = (alpha*t)/(L*L);\n", + "#From fig. 4.11, at this Fo and (1/Bi), we have dimensionless temperature\n", + "#ratio to be 0.7\n", + "#From fig. 4.12 for this (1/Bi) and (x/L), we have another dimensionless\n", + "#temperature to be 0.93\n", + "#Temperature in °C\n", + "T = Tinfinity+(0.93*0.7)*(Ti-Tinfinity);\n", + "print\"Temperature at this distance in °C\"\n", + "print\"T=\",T\n", + "#From fig. 4.13, for this Bi and Fo*Bi*Bi, we have ratio of heats as\n", + "#Q/Qi=0.4\n", + "#Heat transfer in J\n", + "Q = (((0.4*k)*L)*(Ti-Tinfinity))/alpha;\n", + "print\"Heat transfer rate in MJ\"\n", + "Q = Q/(10**6)\n", + "print\"Q=\",Q\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.7:pg-171" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 4, Example 7\n", + "Temperature at this radius in °C\n", + "T= 300.0\n", + "Heat transfer rate per unit length in MJ/m\n", + "Q= 33.2639222145\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 4, Example 7\"\n", + "#Radius in m\n", + "ro = 0.15;\n", + "#Initial temperature in °C\n", + "Ti = 530;\n", + "#Temperature of surrounding in °C\n", + "Tinfinity = 30;\n", + "#Heat transfer coefficient in W/(m**2*K)\n", + "h = 380;\n", + "#Thermal conductivity of aluminium in W/(m*K)\n", + "k = 200;\n", + "#Thermal diffusivity in m**2/s\n", + "alpha = 8.5*(10**(-5));\n", + "#Given radius at which temperature has to be find out in m\n", + "r = 0.12;\n", + "#Given time in seconds\n", + "t = 265;\n", + "#Fourier number\n", + "Fo = (alpha*t)/(ro**2);\n", + "#Biot number\n", + "Bi = (h*ro)/k;\n", + "#From fig. 4.15, at this fourier number,Fo and (1/Bi), we have dimensionless temperature\n", + "#ratio to be 0.6\n", + "#From fig. 4.16 for this (1/Bi) and (r/ro), we have another dimensionless\n", + "#temperature to be 0.9\n", + "#Temperature in °C\n", + "T = Tinfinity+(0.9*0.6)*(Ti-Tinfinity);\n", + "print\"Temperature at this radius in °C\"\n", + "print\"T=\",T\n", + "#From fig. 4.17, for this Bi and Fo*Bi*Bi, we have ratio of heats as\n", + "#Q/Qi=0.4\n", + "#Heat transfer per metre in J/m\n", + "Q = (((((0.4*k)*math.pi)*ro)*ro)*(Ti-Tinfinity))/alpha;\n", + "print\"Heat transfer rate per unit length in MJ/m\"\n", + "Q = Q/(10**6)\n", + "print\"Q=\",Q\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.8:pg-174" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 4, Example 8\n", + "Time required in minutes\n", + "t= 4.16666666667\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + "\n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 4, Example 8\"\n", + "#Radius in m\n", + "ro = 0.05;\n", + "#Initial temperature in °C\n", + "Ti = 530;\n", + "#Temperature of surrounding in °C\n", + "Tinfinity = 30;\n", + "#Heat transfer coefficient in W/(m**2*K)\n", + "h = 500;\n", + "#Thermal conductivity of aluminium in W/(m*K)\n", + "k = 50;\n", + "#Thermal diffusivity in m**2/s\n", + "alpha = 1.5*(10**(-5));\n", + "#Required centre temperature to achieve in °C\n", + "To = 105;\n", + "#Dimensionless temperature\n", + "z = (To-Tinfinity)/(Ti-Tinfinity);\n", + "#Biot number\n", + "Bi = (h*ro)/k;\n", + "#For this value of (1/Bi) and dimensionless temp. ratio\n", + "#From Fig. 4.19 Fourier number is\n", + "Fo = 1.5;\n", + "#Time required in seconds\n", + "t = ((Fo*ro)*ro)/alpha;\n", + "print\"Time required in minutes\"\n", + "t = t/60\n", + "print\"t=\",t\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.9:pg-177" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 4, Example 9\n", + "Tempearture of bar in °C\n", + "T= 260.3\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 4, Example 9\"\n", + "#Thermal conductivity of aluminium in W/(m*K)\n", + "k = 198;\n", + "#Length in m\n", + "L = 0.18;\n", + "#Breadth in m\n", + "b = 0.104;\n", + "#Initial temperature in °C\n", + "Ti = 730;\n", + "#Temperature of surrounding in °C\n", + "Tinfinity = 30;\n", + "#Heat transfer coefficient in W/(m**2*K)\n", + "h = 1100;\n", + "#Thermal diffusivity in m**2/s\n", + "alpha = 8.1*(10**(-5));\n", + "#Given time in seconds\n", + "t = 100;\n", + "#Bar can be considered to be an intersection of two infinite plates of\n", + "#thickness L1 and L2 in m\n", + "L1 = L/2;\n", + "L2 = b/2;\n", + "#For plate 1\n", + "#Fourier number\n", + "Fo1 = (alpha*t)/(L1**2);\n", + "#Biot number\n", + "Bi1 = (h*L1)/k;\n", + "#From fig. 4.11, at this Fo and (1/Bi), we have dimensionless temperature\n", + "#ratio to be 0.7\n", + "#For plate 2\n", + "#Fourier number\n", + "Fo2 = (alpha*t)/(L2**2);\n", + "#Biot number\n", + "Bi2 = (h*L2)/k;\n", + "#From fig. 4.11, at this Fo and (1/Bi), we have dimensionless temperature\n", + "#ratio to be 0.47\n", + "#Therefore combined dimensionless temperature ratio is multiply of two\n", + "z = 0.47*0.7;\n", + "#Temperature in °C\n", + "T = Tinfinity+z*(Ti-Tinfinity);\n", + "print\"Tempearture of bar in °C\"\n", + "print\"T=\",T\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.10:pg-180" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 4, Example 10\n", + "The factor((To-Tinf)/(Ti-Tinf)) is \n", + "For plate 1\n", + "A= 0.85\n", + "For plate 2\n", + "B= 0.8\n", + "For plate 1\n", + "A= 0.83\n", + "For plate 2\n", + "B= 0.72\n", + "The calculated value is very close to the required value of 0.6.Hence the time required for the centre of the beam to reach 310°C is nearly 1200s or 20 minutes.\n", + "T= 0.5976\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 4, Example 10\"\n", + "#An iron beam of rectangular cross section of size length,L=300mm by breadth,B=200 mm is used in the construction of a building\n", + "#Initially the beam is at a uniform temprature(Ti) of 30°C.\n", + "#Due to an accidental fire,the beam is suddenly exposed to hot gases at temprature,Tinf=730°C,with a convective heat transfer coefficient(h) of 100 W/(m**2*K)\n", + "#To determine the time required for the centre plane of the beam to reach a temprature(To) of 310°C.\n", + "To=310;\n", + "Tinf=730;\n", + "Ti=30;\n", + "#Take thermal conductivity k=73W/(m*K) and thermal diffusivity of the beam alpha=2.034*10**-5m**2/s \n", + "alpha=2.034*10**-5; \n", + "k=73; \n", + "h=100; \n", + "#The rectangular iron beam can be considered as an intersection of an infinite plate 1 having thickness 2*L1=300mm and a second infinite plate 2 of thickness 2*L2=200mm \n", + "L1=0.15;#in metre\n", + "L2=0.10;#in metre\n", + "#Here the faactor X=((To-Tinf)/(Ti-Tinf))\n", + "print\"The factor((To-Tinf)/(Ti-Tinf)) is \"\n", + "X=((To-Tinf)/(Ti-Tinf))\n", + "#Therefore we can write 0.6=((To-Tinf)/(Ti-Tinf))plate 1 *((To-Tinf)/(Ti-Tinf))plate2\n", + "#A straight forward solution is not possible.We have to adopt an iterative method of solution \n", + "#At first ,a value of time(t) is assumed to determine the centre-line temprature of the beam.The value of t at which((To-Tinf)/(Ti-Tinf))beam =0.6 is satisfied\n", + "#Let us first assume time, t=900s\n", + "t=900;\n", + "print\"For plate 1\"\n", + "#For plate1 Biot number Bi1=h*L1/k \n", + "Bi1=h*L1/k \n", + "Y=1/Bi1\n", + "#Fourier number(Fo1) is\n", + "Fo1=alpha*t/L1**2\n", + "#At Fo=0.814 and (1/Bi)=4.87...We read from graphs A=((To-Tinf)/(Ti-Tinf))plate1= 0.85\n", + "A=0.85;\n", + "print\"A=\",A\n", + "print\"For plate 2\"\n", + "#For plate1 Biot number Bi2=h*L2/k \n", + "Bi2=h*L2/k \n", + "Y=1/Bi2\n", + "#Fourier number(Fo2) is\n", + "Fo2=alpha*t/L2**2\n", + "#At Fo=1.83 and (1/Bi)=7.3...We read from graphs B=((To-Tinf)/(Ti-Tinf))plate2= 0.8\n", + "B=0.8;\n", + "print\"B=\",B\n", + "#Therefore ((To-Tinf)/(Ti-Tinf))plate1*((To-Tinf)/(Ti-Tinf))plate2=A*B\n", + "T=A*B\n", + "#Since the calculated value of 0.68 is greater than the required value of 0.60 and Tinf>To>Ti,The assume dvalue of t is less.\n", + "#So let us take time,t=1200s for the second iteration\n", + "t=1200;\n", + "print\"For plate 1\"\n", + "#For plate1 Biot number Bi1=h*L1/k \n", + "Bi1=h*L1/k \n", + "Y=1/Bi1\n", + "#Fourier number (Fo1)\n", + "Fo1=alpha*t/L1**2\n", + "#At Fo=1.08 and (1/Bi)=4.87...We read from graphs A=((To-Tinf)/(Ti-Tinf))plate1= 0.83\n", + "A=0.83;\n", + "print\"A=\",A\n", + "print\"For plate 2\"\n", + "#For plate1 Biot number Bi2=h*L2/k \n", + "Bi2=h*L2/k \n", + "Y=1/Bi2\n", + "#Fourier number (Fo2)\n", + "Fo2=alpha*t/L2**2\n", + "#At Fo=2.44 and (1/Bi)=7.3...We read from graphs B=((To-Tinf)/(Ti-Tinf))plate2= 0.72\n", + "B=0.72;\n", + "print\"B=\",B\n", + "#Therefore ((To-Tinf)/(Ti-Tinf))plate1*((To-Tinf)/(Ti-Tinf))plate2=A*B\n", + "T=A*B\n", + "print\"The calculated value is very close to the required value of 0.6.Hence the time required for the centre of the beam to reach 310°C is nearly 1200s or 20 minutes.\" \n", + "print\"T=\",T\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.11:pg-182" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 4, Example 11\n", + "The time required for the temprature to reach 255°C at a depth of 80mm, in minutes is\n", + "T= 255\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 4, Example 11\"\n", + "#A large slab wrought-iron is at a uniform temprature of Ti=550°C.\n", + "#The temprature of one surface is suddenly changed to Tinf=50°C\n", + "Tinf=50;\n", + "Ti=550; \n", + "#For slab conductivity(k=60W/(m*K)),Thermal diffusivity(alpha=1.6*10**-5m**2/s)\n", + "#To calculate the time(t) required for the temprature to reach T=255°C at a depth of 80mm\n", + "k=60;\n", + "T=255;\n", + "alpha=1.6**10-5;\n", + "#Similarity parameter,eta=x/(2*(alpha*t)**0.5)=(10/t**0.5)\n", + "#((T-Tinf)/(Ti-Tinf))=erf(10/t**0.5)...where erf is the error function.\n", + "#Let ((T-Tinf)/(Ti-Tinf))=X\n", + "X=((T-Tinf)/(Ti-Tinf));\n", + "#This implies erf(10/t**0.5)=0.41\n", + "#We read from the table the value of eta(=10/t**0.5)=0.38....corresponding to erf(eta)=0.41\n", + "#Therefore 10/t**0.5=0.38...this implies t=(10/0.38)**2\n", + "print\"The time required for the temprature to reach 255°C at a depth of 80mm, in minutes is\"\n", + "t=(10/0.38)**2/60\n", + "print\"T=\",T\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.12:pg-186" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 4, Example 12\n", + "gaussian error function is \n", + "E= 0.998109069322\n", + "The temprature at a depth(x) of 100mm after a time(t) of 100 seconds,in °C is\n", + "T= -29851.5095103\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + "import scipy \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 4, Example 12\"\n", + "#A large block of nickel steel conductivity(k=20W/(m*K)),thermal diffusivity(alpha=0.518*10-5 m**2/s) is at uniform temprature(Ti) of 30°C.\n", + "Ti=30.0;\n", + "k=20.0;\n", + "alpha=0.518*10.0**-5.0;\n", + "#One surface of the block is suddenly exposed to a constant surface heat flux(qo) of 6MW/m**2.\n", + "qo=6*10**6;#in W/m**2\n", + "#To determine the temprature at a depth(x) of 100mm after a time(t) of 100 seconds.\n", + "t=100.0;\n", + "x=0.1;#in metre\n", + "#Similarity parameter,eta=x/(4*alpha*t)\n", + "eta=x/((4.0*alpha*t)**0.5)\n", + "#E is gaussian error function\n", + "print\"gaussian error function is \"\n", + "E=scipy.special.erf(eta)\n", + "print\"E=\",E\n", + "#The equation to determine temprature is T-Ti=((2*qo(alpha*t/math.pi)**0.5)/(k))*e**((-x**2)/(4*alpha*t))-((qo*x)/(k))*erf(x/(2.0*(alpha*t)**0.5))\n", + "#Above equation can also be written as T=Ti+((2*qo(alpha*t/math.pi)**0.5)/(k))*e**((-x**2)/(4*alpha*t))-((qo*x)/(k))*erf(x/(2.0*(alpha*t)**0.5))\n", + "print\"The temprature at a depth(x) of 100mm after a time(t) of 100 seconds,in °C is\"\n", + "T=Ti+((2*qo*(alpha*t/math.pi)**0.5)/(k))*math.e**((-x**2.0)/(4*alpha*t))-((qo*x)/(k))*scipy.special.erf(x/(2*(alpha*t)**0.5))\n", + "print\"T=\",T\n", + "#NOTE:The answer in the book is incorrect(Calculation mistake)\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.14:pg-187 " + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 4, Example 14\n", + "Temperature distribution after 25 mins in °C\n", + "[[ 2.29192547e+02 2.91925466e+00 1.11801242e+00 4.34782609e-01\n", + " 1.86335404e-01 6.21118012e-02]\n", + " [ 8.75776398e+01 8.75776398e+00 3.35403727e+00 1.30434783e+00\n", + " 5.59006211e-01 1.86335404e-01]\n", + " [ 3.35403727e+01 3.35403727e+00 8.94409938e+00 3.47826087e+00\n", + " 1.49068323e+00 4.96894410e-01]\n", + " [ 1.30434783e+01 1.30434783e+00 3.47826087e+00 9.13043478e+00\n", + " 3.91304348e+00 1.30434783e+00]\n", + " [ 5.59006211e+00 5.59006211e-01 1.49068323e+00 3.91304348e+00\n", + " 1.02484472e+01 3.41614907e+00]\n", + " [ 3.72670807e+00 3.72670807e-01 9.93788820e-01 2.60869565e+00\n", + " 6.83229814e+00 8.94409938e+00]]\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + "import numpy\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 4, Example 14\"\n", + "#Nodal distance Deltax in m\n", + "deltax = 0.1;\n", + "#Time in seconds\n", + "t = 25*60;\n", + "#timestep deltaT in seconds\n", + "deltaT = 500;\n", + "#Number of increment\n", + "n = t/deltaT;\n", + "#Temperature raised in °C\n", + "To = 580.0;\n", + "#Using Eq. 4.114 for interior grid points, table 4.8 for exterior node\n", + "#Using Eq. 4.125a to 4.125f are written in matrix form\n", + "#Coefficient matrix A is\n", + "A = [[-3,1,0,0,0,0],[1,-3,1,0,0,0],[0,1,-3,1,0,0],[0,0,1,-3,1,0],[0,0,0,1,-3,1],[0,0,0,0,2,-3]]\n", + "#Coefficient matrix B is\n", + "B = [-600,-20,-20,-20,-20,-20];\n", + "#Temperature matrix is transpose of [T2 T3 T4 T5 T6 T7] where\n", + "#T2 to T7 are temperature in °C\n", + "#From Eq. 4.126\n", + "#Temperature distribution after one time step\n", + "T = numpy.linalg.inv(A)*B;\n", + "\n", + " \n", + "print\"Temperature distribution after 25 mins in °C\"\n", + "print T\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter5.ipynb b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter5.ipynb new file mode 100644 index 00000000..d3fc7380 --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter5.ipynb @@ -0,0 +1,450 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "# Chapter 5:Convection" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.3:pg-206" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 5, Example 3\n", + "Reynolds number is\n", + "ReL= 55263.1578947\n", + "The average heat transfer coefficient over a length(L)= 1m ,in W/m**2 is\n", + "hbarL= 4.16\n", + "The rate of heat transfer in W/m of width is\n", + "Q= 332.8\n" + ] + } + ], + "source": [ + " \n", + "import math \n", + "from scipy.integrate import quad\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 5, Example 3\"\n", + "#Air at temprature (T1=20°C) and 1 atmospheric pressure flows over a flat plate with a free stream velocity(Uinf) of 1m/s.\n", + "Uinf=1;\n", + "T1=20;\n", + "#The length of plate is 1m and is heated over its entire length to a constant temprature of T2=100°C.\n", + "T2=100;\n", + "#For air at 20°C(The mean temprature of 100°C and 20°C),viscosity(mu=1.9*10**-5kg/(m*s)),density(rho=1.05kg/m**3),conductivity(k=0.03W/(m*K)),specific heat(cp=1.007kJ/(kg*K))\n", + "#Prandtl number is Pr=0.7\n", + "mu=1.9*10**-5;\n", + "rho=1.05;\n", + "k=0.03;\n", + "cp=1.007;\n", + "Pr=0.7;\n", + "#For laminar flow over a plate Nusselt number is Nux=0.332*Rex**0.5*Pr**(1/3)\n", + "#The boundary layer flow over a flat plate will be laminar if Reynolds number is Rex=(rho*Uinf*x)/mu<5*10**5\n", + "#First of all we have to check whether the flow is laminar or not.\n", + "#Let us check at x=1m\n", + "x=1.0;\n", + "print\"Reynolds number is\"\n", + "ReL=(rho*Uinf*x)/mu\n", + "print\"ReL=\",ReL\n", + "#There fore the flow is laminar and we can use the relationships of Nux,\n", + "#Thus Rex=(1.05*1*x)/(1.9*10**-5)=0.5526*10**5*x\n", + "#Therefore we can write Nux=(hx*x/k)=0.332*(0.5526*10**5*x)**0.5*Pr**(1/3)....or hx=2.08*x**(-1/2) W/(m**2*°C)\n", + "#hbarL is the average heat transfer coefficient over a length(L)\n", + "print\"The average heat transfer coefficient over a length(L)= 1m ,in W/m**2 is\"\n", + "L=1;\n", + "hbarL=(1.0/L)*quad(lambda x:2.08*x**(-1/2.0),0,L)[0]\n", + "print\"hbarL=\",hbarL\n", + "#Q is the rate of heat transfer\n", + "print\"The rate of heat transfer in W/m of width is\"\n", + "Q=hbarL*L*(T2-T1)\n", + "print\"Q=\",Q\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.4:pg-207" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 5, Example 4\n", + "The local heat transfer coefficient hx is hx=27.063*U**0.85\n", + "The minimum flow velocity in m/s is\n", + "U= 15.4806813943\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 5, Example 4\"\n", + "#Air at atmospheric pressure is required to flow over a circuit board to cool the electronics element mounted on it.\n", + "#Chip has length (L)=3mm and width(B)=3mm located x=0.1m from the leading edge\n", + "L=0.003;#in metre\n", + "B=0.003;#in metre\n", + "x=0.1;\n", + "#The Nusselt no. is given by Nux=0.06*Rex**0.85*Pr**0.33\n", + "#The chip has to dissipate E=50mW of energy while its surface temprature has to be kept below temprature,Ts=45°C and free strem Temptrature of air is Tinf=25°C\n", + "Ts=45;\n", + "Tinf=25;\n", + "E=50*10**-3;#in watt\n", + "#For air ,density(rho=1.2kg/m**3),viscosity(mu=1.8*10**5kg/(m*s)),conductivity(k=0.03W/(m*K)) and specific heat(cp=1000J/(kg*K))\n", + "rho=1.2;\n", + "mu=1.8*10**5;\n", + "k=0.03;\n", + "cp=1000;\n", + "#Let the minimum flow velocity be U.\n", + "#The local heat transfer coefficient hx where the chip is mounted is determined as hx=(k/x)*0.06*(rho*U*x/mu)**0.85*(mu*cp/k)**0.33\n", + "print\"The local heat transfer coefficient hx is hx=27.063*U**0.85\"\n", + "#from an enrgy balance we can write as E=27.063*U**0.85*L*B*(Ts-Tinf)\n", + "print\"The minimum flow velocity in m/s is\"\n", + "U=(E/(27.063*L*B*(Ts-Tinf)))**(1/0.85)\n", + "print\"U=\",U\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.6:pg-208" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 5, Example 6\n", + "mdot= 0.0235619449019\n", + "(dTb/dx)in °C/m is\n", + "Y= 26.6666666667\n", + "Therefore Exit bulk mean temprature Tb2 in °C is\n", + "Tb2= 83.3333333333\n", + "Heat flux(hx) in W/(m**2*°C) is \n", + "hx= 100\n", + "Overall Nusselt number is \n", + "NuL= 87.7192982456\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + " \n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 5, Example 6\"\n", + "#Air at 1atm pressure and temprature(Tin)=30°C enters a tube of 25mm diameter(D) with a velocity(U) of 10m/s\n", + "D=0.025;#in metre\n", + "U=10;\n", + "Tin=30;\n", + "#Tube is heated so that a constant heat flux(q) of 2kW/m**2 is maintained at the wall whose temprature is deltaT=20°C above the bulk mean air temprature through the length of tube \n", + "#Let Tw-Tb=T\n", + "q=2000;\n", + "deltaT=20;\n", + "#The length(L)= 2m\n", + "L=2;\n", + "#For air density(rho=1.2kg/m**3),specific heat(cp=1000J/(kg*K))\n", + "rho=1.2;\n", + "cp=1000;\n", + "#From an energy balance of a control volume of air we get mdot*cp*(Tb+(dTb/dx)*deltax-Tb)=q*pi*D*deltax or (dTb/dx)=(q*pi*D)/(mdot*cp)\n", + "#mass flow rate=mdot\n", + "mdot=rho*math.pi*D**2*U;\n", + "print\"mdot=\",mdot\n", + "#let (dTb/dx)=Y\n", + "print\"(dTb/dx)in °C/m is\"\n", + "Y=(4*q*math.pi*D)/(mdot*cp)\n", + "print\"Y=\",Y\n", + "#Tb2 is Exit bulk mean temprature\n", + "print\"Therefore Exit bulk mean temprature Tb2 in °C is\"\n", + "Tb2=Tin+Y*2\n", + "print\"Tb2=\",Tb2\n", + "#Again we can write at any section of the tube hx*(Tw-Tb)=q or hx=q/(Tw-Tb)\n", + "#hx is heat flux\n", + "print\"Heat flux(hx) in W/(m**2*°C) is \"\n", + "hx=q/(deltaT)\n", + "print\"hx=\",hx\n", + "#Since Tw-Tb remains the same,The heat transfer coefficient at all sections are the same\n", + "#Now Overall Nusselt number,NuL=hx*D/k\n", + "#The thermal conductivity of air at mean temprature of (30+83.4)/2=56.7°C is k=0.0285 W/(m*K)\n", + "k=0.0285;\n", + "print\"Overall Nusselt number is \"\n", + "NuL=hx*D/k\n", + "print\"NuL=\",NuL\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.7:pg-210" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 5, Example 7\n", + "Beta(The volumetric coefficient of expansion in K**-1 is\n", + "Beta= 0\n", + "Grashoff number is\n", + "Gr= 0.0\n", + "The average nusselt number is\n", + "NuHbar= 0.13\n", + "Heat flux hbar in W/(m**2*°C)\n", + "hbar= 0.00169\n", + "The heat loss from the plate in W is\n", + "Q= 0.4394\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 5, Example 7\"\n", + "#A wall is exposed to nitrogen at one atmospheric pressure and temprature,Tinf=4°C.\n", + "Tinf=4;\n", + "#The wall is H=2.0m high and B=2.5m wide and is maintained at temprature,Ts=56°C\n", + "Ts=56;\n", + "H=2;\n", + "B=2.5;\n", + "A=H*B;#area is(A)\n", + "#The average nusselt number NuHbar over the height of the plate is given by NuHbar=0.13*(Gr*Pr)**(1/3)\n", + "#The properties of nitrogen at mean film temprature(Tf) is (56+4)/2=30°C are given as density(rho=1.142kg/m**3) ,conductivity(k=0.026W/(m*K)),\n", + "#kinematic viscosity(nu=15.630*10**-6 m**2/s) ,Prandtl number(Pr=0.713)\n", + "rho=1.142;\n", + "k=0.026;\n", + "nu=15.630*10**-6;\n", + "Pr=0.713;\n", + "Tf=30;\n", + "#We first have to detrmine the value of Grashoff number,Gr.In consideration of nitrogen as an ideal gas,we can write\n", + "#Beta(The volumetric coefficient of expansion)=1/T\n", + "print\"Beta(The volumetric coefficient of expansion in K**-1 is\"\n", + "Beta=1/(273+Tf)\n", + "print\"Beta=\",Beta\n", + "#Now Gr=(g*Beta*(Ts-Tinf)*H**3)/nu**2\n", + "g=9.81;#acceleration due to gravity\n", + "print\"Grashoff number is\"\n", + "Gr=(g*Beta*(Ts-Tinf)*H**3)/nu**2\n", + "print\"Gr=\",Gr\n", + "print\"The average nusselt number is\"\n", + "NuHbar=0.13*(Gr*Pr)**(1/3)\n", + "print\"NuHbar=\",NuHbar\n", + "#hbar is the heat flux\n", + "print\"Heat flux hbar in W/(m**2*°C)\"\n", + "hbar=NuHbar*k/H\n", + "print\"hbar=\",hbar\n", + "#Q is the heat loss from the plate\n", + "print\"The heat loss from the plate in W is\"\n", + "Q=hbar*A*(Ts-Tinf)\n", + "print\"Q=\",Q\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.8:pg-211" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 5, Example 8\n", + "The heat flux in W/(m**2*K) is\n", + "hbar 120.0\n", + "The heat loss from the wire is Q=hbar*pi*D*L*(Twire-Tair) in Watt\n", + "Q= 1.88495559215\n", + "The current in Ampere is\n", + "I= 17.7245385091\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + " import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 5, Example 8\"\n", + "#Eletric current passes through a L=0.5m long horizontal wire of D=0.1mm diameter.\n", + "L=0.5;\n", + "D=0.1*10**-3;\n", + "#The wire is to be maintained at temprature,Twire=400K and the air is at temprature,Tair=300K.\n", + "Twire=400;\n", + "Tair=300;\n", + "#The resistance of the wire(R) is 0.012ohm per meter.Nusselt number(NuL) over the length of wire to be 0.4.\n", + "NuL=0.4;\n", + "R=0.012;\n", + "#At mean temprature of Tf=350K, The thermal conductivity of air is k=0.03W/(m*K)\n", + "k=0.03;\n", + "#Nusselt number is NuL=hbar*D/k\n", + "#hbar is the heat flux\n", + "print\"The heat flux in W/(m**2*K) is\"\n", + "hbar=NuL*k/D\n", + "print\"hbar\",hbar\n", + "#Q is the heat loss from the wire\n", + "print\"The heat loss from the wire is Q=hbar*pi*D*L*(Twire-Tair) in Watt\"\n", + "Q=hbar*math.pi*D*L*(Twire-Tair)\n", + "print\"Q=\",Q\n", + "#At steady state the ohmic loss in the wire equals the heat loss from its surface Therfore I**2*R=Q\n", + "#I is the current flow.\n", + "print\"The current in Ampere is\"\n", + "I=(Q/(R*L))**0.5\n", + "print\"I=\",I\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter6.ipynb b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter6.ipynb new file mode 100644 index 00000000..a4433df7 --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter6.ipynb @@ -0,0 +1,368 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "# Chapter 06:Incompressible viscous flow: A brief review" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.1:pg-226" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 6, Example 1\n", + "Umax in m/s is\n", + "Umax= 1.6\n", + "The shear stress T in N/m**2\n", + "T= 64.0\n", + "(dp/dx) in N/m**3 is\n", + "X= -19200.0\n", + "The Shear stress at a distance of 0.002m from the lower plate in N/m**2\n", + "t= -57.6\n", + "The shear stress at a distance of 0.002m from the upper plate in N/m**2\n", + "t= 57.6\n", + "The opposite signs in t represents the opposite directions.The plus sign is in the direction of flow and the minus sign is in the direction opposite to the flow \n", + "The pressure drop over a distance of 2m in N/m**2 is\n", + "deltaP= 38400.0\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 6, Example 1\"\n", + " #Oil of specific gravity 0.90 and dynamic viscosity (mu=0.1Pa*s) flows between two fixed plates kept 2*b=10mm apart,So b=5mm.\n", + "#The average velocity is Uav=1.60m/s\n", + "Uav=1.60;\n", + "mu=0.1;\n", + "b=0.005; #in metre\n", + " #Umax is maximum velocity\n", + " Umax=(3.0/2)*Uav\n", + "print\"Umax in m/s is\"\n", + "Umax=(3/2)*Uav\n", + "print\"Umax=\",Umax\n", + " #The shear stress at the plate is given by T=2*µ*(Umax/b)\n", + "print\"The shear stress T in N/m**2\"\n", + "T=2*mu*(Umax/b) \n", + " #The shear sress at a distance from plate is given by t=y*(dp/dx)\n", + "#(dp/dx)=X=-3*mu*(Uav/b**2)\n", + "print\"T=\",T\n", + "print\"(dp/dx) in N/m**3 is\"\n", + "X=-3*mu*(Uav/b**2)\n", + " #Taking modulus of X by multipying it with negative sign.\n", + "print\"X=\",X\n", + "print\"The Shear stress at a distance of 0.002m from the lower plate in N/m**2\"\n", + "y=b-0.002;\n", + "t=y*(X) #NOTE:Answer given in the book is incorrect (Calculation mistake)\n", + "print\"t=\",t\n", + "print\"The shear stress at a distance of 0.002m from the upper plate in N/m**2\"\n", + "t=-y*(X) #NOTE:Answer given in the book is incorrect (Calculation mistake)\n", + "print\"t=\",t\n", + "print\"The opposite signs in t represents the opposite directions.The plus sign is in the direction of flow and the minus sign is in the direction opposite to the flow \"\n", + " #deltaP is the pressure drop\n", + "print\"The pressure drop over a distance of 2m in N/m**2 is\"\n", + " #Since pressure drop is considered at a distance of 2m so L=2m\n", + "L=2;\n", + "deltaP=(-X)*L\n", + "print\"deltaP=\",deltaP\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.3:pg-229" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 6, Example 3\n", + "The rate of change of pressure with respect to length in N/m**3\n", + "X= 2000\n", + "Flow rate(Q) in m**3/s is)\n", + "Q= 0.00333333333333\n", + "The viscosity of oil(mu)in kg/(m*s)\n", + "mu= 0.0920388472731\n" + ] + } + ], + "source": [ + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 6, Example 3\"\n", + " #Oil of specific gravity (sg)=0.90 is discharged at a rate(mdot)=3kg/s under a pressure difference dp=10KN/m**2 over a length dz=5m of a pipe having a diameter(D) of 50mm.\n", + "dp=10*10**3; #in N/m**2\n", + "dz=5;\n", + "D=0.05; #in metre\n", + "mdot=3;\n", + "sg=0.90;\n", + " #X=dp/dz is the rate of change of pressure\n", + "print\"The rate of change of pressure with respect to length in N/m**3\"\n", + "X=dp/dz\n", + "print\"X=\",X\n", + " #Flow rate is Q\n", + "print\"Flow rate(Q) in m**3/s is)\"\n", + "Q=mdot/(sg*10**3)\n", + "print\"Q=\",Q\n", + " #The viscosity of oil is mu=(pi*D**4*X)/(128*Q*dz)\n", + "print\"The viscosity of oil(mu)in kg/(m*s)\"\n", + "mu=(math.pi*D**4*X)/(128*Q)\n", + "print\"mu=\",mu\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.7:pg-250 " + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Introduction to heat transfer by S.K.Som, Chapter 6, Example 7\n", + "The maximum length of plate in m is \n", + "L= 2.5\n", + "The average skin friction coefficient is\n", + "cfL= 1.328\n", + "Drag force on one side of plate in N is\n", + "Fd= 21.5136\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 6, Example 7\"\n", + " #A flat plate B=1.2m wide and of length L is kept parallel to a uniform stream of air of velocity Uinf=3m/s in a wind tunnel.\n", + "Uinf=3;\n", + "B=1.2;\n", + " #If it is desired to have a laminar boundary layer only on the plate \n", + "#Assume that the laminar flow exists up to a reynold number(ReL)=5*10**5.Take density of air as rhoair=1.2kg/m**3 and viscosity of air as nuair=1.5*10**-5 m**2/s.\n", + "nuair=1.5*10**-5;\n", + "rhoair=1.2;\n", + "ReL=5*10**5;\n", + " #For maximum length of the plate reynolds number is ReL=Uinf*L/nuair\n", + "#so L=ReL*nuair/Uinf\n", + "print\"The maximum length of plate in m is \"\n", + "L=ReL*nuair/Uinf\n", + "print\"L=\",L\n", + " #The average skin friction coefficient is cfL=1.328/(ReL)**(1/2)\n", + "print\"The average skin friction coefficient is\"\n", + "cfL=1.328/(ReL)**(1/2)\n", + "print\"cfL=\",cfL\n", + " #Fd is drag force\n", + "print\"Drag force on one side of plate in N is\"\n", + "Fd=cfL*(rhoair*Uinf**2/2)*B*L\n", + "print\"Fd=\",Fd\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.10:pg-268 " + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 6, Example 10\n", + "Wind velocity(Uinf)in m/s is\n", + "Uinf= 10\n", + "Reynolds number is\n", + "ReL= 4000000.0\n", + "Friction coefficient is\n", + "CbarfL= 0.0735645\n", + "Drag force on one side of the plate per unit metre width in Newton is \n", + "FD= 26.48322\n", + "The turbulent boundary layer thickness at the trailing edge in metre is \n", + "delta= 2.274\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 6, Example 10\"\n", + " #Wind at a speed of U=36km/hr blows over a flat plate of length,L=6m .If the density and kinematic viscosity of air are rho=1.2kg/m**3 and mu=1.5*10**-5m**2/s respectively.\n", + "U=36;\n", + "L=6;\n", + "rho=1.2;\n", + "mu=1.5*10**-5;\n", + " #Wind velocity in m/s is Uinf\n", + "print\"Wind velocity(Uinf)in m/s is\"\n", + "Uinf=U*1000/3600\n", + "print\"Uinf=\",Uinf\n", + " #Reynolds number is given by ReL=L*Uinf/mu\n", + "print\"Reynolds number is\"\n", + "ReL=L*Uinf/mu\n", + "print\"ReL=\",ReL\n", + " #We consider that transition of boundary layer takes place from laminar to turbulent takes place at ReL=5*10**5.\n", + "#Therfore the corresponding friction coefficient is given by CbarfL=(0.074-ReL**(1/5))-(1742/ReL)\n", + "print\"Friction coefficient is\"\n", + "CbarfL=(0.074/ReL**(1/5))-(1742/ReL)\n", + "print\"CbarfL=\",CbarfL\n", + " #Drag force on one side of the plate per unit metre width is given by FD=CbarfL*rho*Uinf**2*L/2\n", + "print\"Drag force on one side of the plate per unit metre width in Newton is \"\n", + "FD=CbarfL*rho*Uinf**2*L/2\n", + "print\"FD=\",FD\n", + " #The turbulent boundary layer thickness at the trailing edge is given by delta=L*(0.379/ReL**(1/5))\n", + "print\"The turbulent boundary layer thickness at the trailing edge in metre is \"\n", + "delta=L*(0.379/ReL**(1/5))\n", + "print\"delta=\",delta\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter7.ipynb b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter7.ipynb new file mode 100644 index 00000000..85b7eec5 --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter7.ipynb @@ -0,0 +1,1176 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "# Chapter 07:Principles of forced convection" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex7.1:pg-296" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 7, Example 1\n", + "First we check from reynolds no. that the flow is laminar or tubulent\n", + "Reynold number is\n", + "Re= 20000.0\n", + "which is less than critical reynolds number,So the flow is laminar.\n", + "The average nusselt number over the entire length under the situation is given by NuL=0.664*Re**0.5*Pr**(1/3)\n", + "NuL= 93.9037805416\n", + "Heat flux in W/(m**2*K) is\n", + "h= 2.72320963571\n", + "The rate of heat transfer per unit width in W is\n", + "Q= 408.481445356\n" + ] + } + ], + "source": [ + " \n", + "import math \n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 7, Example 1\"\n", + "#Engine oil at temprature,Tinf=60°C with a velocity of Uinf=1m/s flows over plate of length(L)=5m whose temprature(Tw)=30°C\n", + "Tw=30;\n", + "L=5;\n", + "Uinf=1;\n", + "Tinf=60;\n", + "#The properties at a film temprature of 45°C are as follows density(rho=870kg/m**3),Prandtl number(Pr=2850),conductivity(k=0.145W/(m*°C)),kinematic viscosity(nu=250*10**-6m**2/s).\n", + "rho=870;\n", + "Pr=2850;\n", + "k=0.145;\n", + "nu=250*10**-6;\n", + "print\"First we check from reynolds no. that the flow is laminar or tubulent\"\n", + "#Reynolds number is given by Re=(Uinf*L)/nu\n", + "print\"Reynold number is\"\n", + "Re=(Uinf*L)/nu\n", + "print\"Re=\",Re\n", + "print\"which is less than critical reynolds number,So the flow is laminar.\"\n", + "#NuL is the average nusselt number\n", + "print\"The average nusselt number over the entire length under the situation is given by NuL=0.664*Re**0.5*Pr**(1/3)\"\n", + "NuL=0.664*Re**0.5*Pr**(1/3)\n", + "print\"NuL=\",NuL\n", + "#Heat flux is given by h=(k/L)*NuL\n", + "print\"Heat flux in W/(m**2*K) is\"\n", + "h=(k/L)*NuL\n", + "print\"h=\",h\n", + "#The rate of heat transfer per unit width is Q=h*A*(Tinf-Tw)\n", + "#Since unit width is considerd so B=1\n", + "#Area(A)=L*B\n", + "B=1;\n", + "A=L*B;\n", + "print\"The rate of heat transfer per unit width in W is\"\n", + "Q=h*A*(Tinf-Tw)\n", + "print\"Q=\",Q" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex7.2:pg-298" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 7, Example 2\n", + "The location x in m where the transition occurs\n", + "x= 0.275\n", + "The average Nusselt number for the laminar zone is\n", + "Nux= 469.518902708\n", + "Heat flux in W/(m**2*K) is\n", + "h= 44.3908780742\n", + "The reynolds number at L=2m is\n", + "ReL= 3636363.63636\n", + "The average heat transfer coefficient over L=2m in W/(m**2*K)\n", + "hbarL= -11.322519\n", + "The rate of heat transfer per unit width in W is\n", + "Q= -2264.5038\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + " import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 7, Example 2\"\n", + "#Atmospheric air at temprature,Tinf=300K and with a free stream Velocity Uinf=30m/s flows over a flat plate parallel to a side of length(L)=2m.\n", + "Tinf=300;\n", + "Uinf=30;\n", + "L=2;\n", + "#It is maintained at a uniform temprature of Tw=400K.\n", + "Tw=400;\n", + "#The properties of air at the film temprature of 350K are Prandtl number(Pr=0.705),conductivity(k=0.026W/(m*°C)),kinematic viscosity(nu=16.5*10**-6m**2/s)\n", + "Pr=0.705; \n", + "k=0.026;\n", + "nu=16.5*10**-6;\n", + "#We first find the location x(for reynolds number,Re=5*10**5) where the transition occurs\n", + "#Rex is reynolds number\n", + "print\"The location x in m where the transition occurs\"\n", + "Rex=5*10**5;\n", + "x=(nu*Rex)/Uinf\n", + "print\"x=\",x\n", + "#The average Nusselt number for the laminar zone is given by Nux=0.664*Re**0.5*Pr**(1/3)\n", + "print\"The average Nusselt number for the laminar zone is\"\n", + "Nux=0.664*Rex**0.5*Pr**(1/3)\n", + "print\"Nux=\",Nux\n", + "#Heat flux is given by h=(k/x)*Nux\n", + "print\"Heat flux in W/(m**2*K) is\"\n", + "h=(k/x)*Nux\n", + "print\"h=\",h\n", + "#Reynolds number is given by ReL=(Uinf*L)/nu\n", + "print\"The reynolds number at L=2m is\"\n", + "ReL=(Uinf*L)/nu\n", + "print\"ReL=\",ReL\n", + "#The average heat transfer coefficient over L=2m is determined from hbarL=(k/L)*(0.037*(ReL)**(4/5)-871)*Pr**(1/3)\n", + "print\"The average heat transfer coefficient over L=2m in W/(m**2*K)\"\n", + "hbarL=(k/L)*(0.037*(ReL)**(4/5)-871)*Pr**(1/3)\n", + "print\"hbarL=\",hbarL\n", + "#The rate of heat transfer per unit width is Q=h*A*(Tinf-Tw)\n", + "#Since unit width is considerd so B=1\n", + "#Area(A)=L*B\n", + "B=1;\n", + "A=L*B;\n", + "print\"The rate of heat transfer per unit width in W is\"\n", + "Q=hbarL*A*(Tw-Tinf)\n", + "print\"Q=\",Q\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex7.3:pg-314" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 7, Example 3\n", + "(a)When the air flows parallel to the long side we have L=5 and the Reynolds no. becomes\n", + "ReL= 1250000.0\n", + "which is greater than critical Reynolds number.\n", + "The average heat transfer coefficient over L=5m in W/(m**2*K)\n", + "hbarL= -5.225778\n", + "The rate of heat transfer per unit width in W is\n", + "Q= -3135.4668\n", + "(b)When the air flow is parallel to the 1m side we have L=1 an the Reynolds no. becomes \n", + "which is less than critical Reynolds number.\n", + "ReL= 250000.0\n", + "Heat flux in W/(m**2*K) is\n", + "h= 9.96\n", + "The rate of heat transfer per unit width in W is\n", + "Q= 5976.0\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + " import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 7, Example 3\"\n", + "#Air at a pressure of 101kPa and temprature,Tinf=20°C flows with a velocity(Uinf) of 5m/s over a flat plate whose temprature is kept constant at Tw=140°C.\n", + "Tw=140;\n", + "Tinf=20;\n", + "Uinf=5;\n", + "#The properties at the film temprature of 80°C are Prandtl number(Pr=0.706),Conductivity(k=0.03W/(m*°C)),kinematic viscosity(nu=2*10**-5m**2/s)\n", + "Pr=0.706;\n", + "k=0.03;\n", + "nu=2*10**-5;\n", + "#ReL is reynolds number and L is length of flat plate\n", + "print\"(a)When the air flows parallel to the long side we have L=5 and the Reynolds no. becomes\"\n", + "L=5;\n", + "ReL=(Uinf*L)/nu\n", + "print\"ReL=\",ReL\n", + "print\"which is greater than critical Reynolds number.\"\n", + "#Thus we have combined laminar and tubulent flow.\n", + "# So The average heat transfer coefficient over L=5m is determined from hbarL=(k/L)*(0.037*(ReL)**(4/5)-871)*Pr**(1/3)\n", + "print\"The average heat transfer coefficient over L=5m in W/(m**2*K)\"\n", + "hbarL=(k/L)*(0.037*(ReL)**(4/5)-871)*Pr**(1/3)\n", + "print\"hbarL=\",hbarL\n", + "#The rate of heat transfer per unit width is Q=h*A*(Tinf-Tw)\n", + "#Since width is 1m so B=1\n", + "#Area(A)=L*B\n", + "B=1;\n", + "A=L*B;\n", + "#Q is the rate of heat transfer\n", + "print\"The rate of heat transfer per unit width in W is\"\n", + "Q=hbarL*A*(Tw-Tinf)\n", + "print\"Q=\",Q\n", + "#When the air flow is parallel to the 1m side we have L=1\n", + "print\"(b)When the air flow is parallel to the 1m side we have L=1 an the Reynolds no. becomes \"\n", + "L=1;\n", + "ReL=(Uinf*L)/nu\n", + "print\"which is less than critical Reynolds number.\"\n", + "print\"ReL=\",ReL\n", + "#Thus we have laminar flow\n", + "#Heat flux is given by h=(k/L)*0.664*ReL**0.5*Pr**(1/3)\n", + "print\"Heat flux in W/(m**2*K) is\"\n", + "h=(k/L)*0.664*ReL**0.5*Pr**(1/3)\n", + "print\"h=\",h\n", + "#The rate of heat transfer per unit width is Q=h*A*(Tinf-Tw)\n", + "#Now width is 5m so B=5\n", + "#Area(A)=L*B\n", + "B=5;\n", + "A=L*B;\n", + "#Q is the rate of heat transfer\n", + "print\"The rate of heat transfer per unit width in W is\"\n", + "Q=h*A*(Tw-Tinf)\n", + "print\"Q=\",Q\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex7.4:pg-322" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 7, Example 4\n", + "(a)Reynolds number is\n", + "ReL= 6000.0\n", + "The boundary layer thickness in m is\n", + "delta= 0.387298334621\n", + "Prandtl no. is\n", + "Pr= 831.024930748\n", + "The thermal boundary layer thickness in m is\n", + "deltaT= 0.387298334621\n", + "(b)Since the prandtl number is high So Nusselt no. is\n", + "NuL= 26.2588270873\n", + "Heat flux in W/(m**2*K) is\n", + "hL= 0.919058948055\n", + "hbarL in W/(m**2*K) is\n", + "hbarL= 1.83811789611\n", + "(c)The rate of heat transfer in W is\n", + "Q= 661.7224426\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + " import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 7, Example 4\"\n", + "#Castor oil at temprature,Tinf=36°C flows over a heated plate of length,L=6m and breadth,B=1m at velocity,Uinf=0.06m/s\n", + "Tinf=36;\n", + "L=6;\n", + "B=1;\n", + "Uinf=0.06;\n", + "#For a surface temprature at Tw=96°C\n", + "Tw=96;\n", + "#The properties at film temprature 66°C conductivity(k=0.21W/(m*K)),kinematic viscosity(nu=6*10**-5m**2/s),Thermal diffusivity(alpha=7.22*10**-8 m**2/s)\n", + "nu=6*10**-5;\n", + "k=0.21;\n", + "alpha=7.22*10**-8;\n", + "#ReL is reynolds number\n", + "print\"(a)Reynolds number is\"\n", + "ReL=(Uinf*L)/nu\n", + "print\"ReL=\",ReL\n", + "#Therefore the boundary layer is laminar over the entire plate.\n", + "#delta is the boundary layer thickness\n", + "print\"The boundary layer thickness in m is\"\n", + "delta=(5*L)/(ReL)**0.5\n", + "print\"delta=\",delta\n", + "#Pr is prandtl number.\n", + "print\"Prandtl no. is\"\n", + "Pr=nu/alpha\n", + "print\"Pr=\",Pr\n", + "#deltaT is thermal boundary layer thickness\n", + "print\"The thermal boundary layer thickness in m is\"\n", + "deltaT=delta/(Pr**(1/3))#NOTE:Answer in the book is incorrect(calculation mistake)\n", + "print\"deltaT=\",deltaT\n", + "#NuL is the nusselt number\n", + "print\"(b)Since the prandtl number is high So Nusselt no. is\"\n", + "NuL=0.339*(ReL)**0.5*Pr**(1/3)\n", + "print\"NuL=\",NuL\n", + "#Heat flux is given by hL=(k/L)*NuL\n", + "print\"Heat flux in W/(m**2*K) is\"\n", + "hL=(k/L)*NuL\n", + "print\"hL=\",hL\n", + "#hbarL is the average heat flux over length L\n", + "print\"hbarL in W/(m**2*K) is\"\n", + "hbarL=2*hL\n", + "print\"hbarL=\",hbarL\n", + "#The rate of heat transfer is Q=h*A*(Tinf-Tw)\n", + "#Area(A)=L*B\n", + "A=L*B;\n", + "print\"(c)The rate of heat transfer in W is\"\n", + "Q=hbarL*A*(Tw-Tinf)\n", + "print\"Q=\",Q\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex7.5:pg-322" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 7, Example 5\n", + "Reynolds number is\n", + "ReL= 11181.8181818\n", + "Therefore the flow is turbulent over the module \n", + "The local heat transfer coefficient at L in W/(m**2*K)is\n", + "hL= 8.32911955901e+30\n", + "The required power generation in W/m**3 is\n", + "qm= 1.6658239118e+31\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + " import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 7, Example 5\"\n", + "#A flat plate of width B=1m is maintained at a uniform surface temprtaure(Tw)=225°C\n", + "Tw=225;\n", + "B=1;\n", + "#Heating is done by rectangular modules of thickness t=10mm and length l=40mm.\n", + "t=10;\n", + "l=40;\n", + "#atmospheric air at temprature,Tinf=25°C flows over the plate at velocity(Uinf)=30m/s.\n", + "Tinf=25;\n", + "Uinf=30;\n", + "#The thermophysical properties of module are conductivity(km=5.2W/(m*K)),specific heat(cp=320J/(kg/K)),density(rho=2300kg/m**3).\n", + "km=5.2;\n", + "cp=320;\n", + "rho=2300;\n", + "#Assume the air properties at the film temprature of 125°C conductivity(ka=0.031W/(m*K)),kinematic viscosity(nu=22*10**-6m**2/s),Prandtl number(Pr=0.7)\n", + "ka=0.031;\n", + "nu=22*10**-6;\n", + "Pr=0.7;\n", + "#Module is placed at a distance of 800mm from the leading edge\n", + "#The distance from leading edge to the centre-line of the module,L=800+20=820mm.\n", + "L=0.0082;#in metre\n", + "#ReL is the reynolds number \n", + "print\"Reynolds number is\"\n", + "ReL=(Uinf*L)/nu\n", + "print\"ReL=\",ReL\n", + "print\"Therefore the flow is turbulent over the module \"\n", + "#The local heat transfer coefficient at L is calculated using hL=(k/L)*0.0296*(ReL)**(4/5)*(Pr)**(1/3)\n", + "print\"The local heat transfer coefficient at L in W/(m**2*K)is\"\n", + "hL=(ka/L)*0.0296*(ReL)**(4/0.5)*(Pr)**(1/0.3)\n", + "print\"hL=\",hL\n", + "#We consider that the local heat transfer coefficient at L=0.82m remains the same over the module which extends from L=0.80m to 0.84m \n", + "#If qm be the power generation in W/m**2 within the module ,we can write from energy balance qm*(t/0.1000)*(l/0.1000)*(B)=hbarL*(t/0.1000)*(B)*(Tw-Tinf)\n", + "print\"The required power generation in W/m**3 is\"\n", + "qm=(hL*(l/0.1000)*(B)*(Tw-Tinf))/((t/0.1000)*(l/0.1000)*(B))\n", + "print\"qm=\",qm\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex7.6:pg-327" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 7, Example 6\n", + "Reynolds number is\n", + "ReL= 15000000.0\n", + "Since ReL>Rec(=5*10**5) the flow is approximated as turbulent over the entire surface of the wing \n", + "Nux= 0.0308\n", + "Nusselt number is \n", + "NubarL= 0.0308\n", + "Average heat transfer coefficient in W/(m**2*K) is\n", + "hbarL= 0.0003696\n", + "Surface temprature of wing in kelvin is\n", + "Tw= 1217800.46753\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + " import math\n", + "\n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 7, Example 6\"\n", + "#An aircraft is moving at a velocity of Uinf=150m/s in air at an altitude where the pressure is 0.7bar and the temprature is Tinf=-5°C.\n", + "Tinf=-5;\n", + "Uinf=150;\n", + "#The top surface of the wing absorbs solar radiation at a rate of Qr=900W/m**2.\n", + "Qr=900;\n", + "#Considering the wing as a flat plate of length(L)=2m and to be of solid construction with a single uniform surface temprature .\n", + "L=2;\n", + "#The properties of air at 268K and 0.7 bar are conductivity(k=0.024W/(m*K)),kinematic viscosity(nu=2*10**-5m**2/s),Prandtl number(Pr=0.72)\n", + "k=0.024;\n", + "nu=2*10**-5;\n", + "Pr=0.72;\n", + "#ReL is reynolds number\n", + "print\"Reynolds number is\"\n", + "ReL=Uinf*L/nu\n", + "print\"ReL=\",ReL\n", + "#Rec is critical reynolds number\n", + "print\"Since ReL>Rec(=5*10**5) the flow is approximated as turbulent over the entire surface of the wing \"\n", + "#Nusselt number is given by Nux=0.0308*ReL**(4/5)*Pr**(1/3)\n", + "Nux=0.0308*ReL**(4/5)*Pr**(1/3);\n", + "print\"Nux=\",Nux\n", + "#NubarL is average nusselt number over length L\n", + "print\"Nusselt number is \"\n", + "NubarL=(5/4)*Nux\n", + "print\"NubarL=\",NubarL\n", + "#Average heat transfer coefficient is given by hbarL=(k/L)*NubarL\n", + "print\"Average heat transfer coefficient in W/(m**2*K) is\"\n", + "hbarL=(k/L)*NubarL\n", + "print\"hbarL=\",hbarL\n", + "#From an energy balance the airfoil at steady state,Qr*As=2*hbarL*As*(Tw-Tinf) where Qr=radiation flux,As=upper or lower surface area.\n", + "#Therefore we can write Surface temprature of wing, Tw=Tinf+(Qr/(2*hbarL))\n", + "print\"Surface temprature of wing in kelvin is\"\n", + "Tw=(273+Tinf)+(Qr/(2*hbarL))\n", + "print\"Tw=\",Tw\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex7.7:pg-331" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 7, Example 7\n", + "Reynolds number is\n", + "Re= 141.176470588\n", + "Nusselt number is\n", + "NuD= 6.85819682626\n", + "The average Heat transfer coefficient in W/(m**2*K) is\n", + "hbar= 4629.28285773\n", + "Heat transfer per unit length in W/m is\n", + "qL= 14.5433210172\n", + "If we use eq NuD=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", + "NuD= 7.66669771975\n", + "The average Heat transfer coefficient in W/(m**2*K) is\n", + "hbar= 5175.02096083\n", + "Heat transfer per unit length in W/m is\n", + "qL= 16.2578078327\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + " import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 7, Example 7\"\n", + "#A fine wire having a diameter(D)=0.04mm is placed in an air stream at temprature,Tinf=25°C having a flow velocity of Uinf=60m/s perpendicular to wire.\n", + "D=0.04;\n", + "Tinf=25;\n", + "Uinf=60;\n", + "#An electric current is passed through the wire ,raising its surface temprature to Tw=50°C\n", + "Tw=50;\n", + "#For air at the film temprature of 37.5°C,conductivity(k=0.027 W/(m*K)),kinematic viscosity(nu=17*10**-6m**2/s) and Prandtl number(Pr=0.71)\n", + "k=0.027;\n", + "nu=17*10**-6;\n", + "Pr=0.71;\n", + "#Re is reynolds number\n", + "print\"Reynolds number is\"\n", + "Re=Uinf*(D*10**-3)/nu\n", + "print\"Re=\",Re\n", + "#C and n are constants\n", + "#The values of C and n are found for Re=141 are C=0.683 and n=0.466\n", + "#NuD is nusselt number\n", + "print\"Nusselt number is\"\n", + "NuD=(0.683)*Re**0.466*Pr**(1/3)\n", + "print\"NuD=\",NuD\n", + "#hbar is the average Heat transfer coefficient\n", + "print\"The average Heat transfer coefficient in W/(m**2*K) is\"\n", + "hbar=(k/(D*10**-3))*NuD\n", + "print\"hbar=\",hbar\n", + "#Heat transfer per unit length(qL) is given by pi*D*hbar*(Tw-Tinf)\n", + "print\"Heat transfer per unit length in W/m is\"\n", + "qL=math.pi*(D*10**-3)*hbar*(Tw-Tinf)\n", + "print\"qL=\",qL\n", + "#NuD is nusselt number\n", + "print\"If we use eq NuD=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", + "NuD=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", + "print\"NuD=\",NuD\n", + "#hbar is the average Heat transfer coefficient\n", + "print\"The average Heat transfer coefficient in W/(m**2*K) is\"\n", + "hbar=(k/(D*10**-3))*NuD\n", + "print\"hbar=\",hbar\n", + "#Heat transfer per unit length(qL) is given by pi*D*hbar*(Tw-Tinf)\n", + "print\"Heat transfer per unit length in W/m is\"\n", + "qL=math.pi*(D*10**-3)*hbar*(Tw-Tinf)\n", + "print\"qL=\",qL\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex7.8:pg-334" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 7, Example 8\n", + "Reynolds number for mercury is\n", + "ReHg= 1000.0\n", + "Reynolds number for oil is\n", + "Reoil= 15.3846153846\n", + "The hydrodynamic entry length for mercury in m is\n", + "LeHg= 1.25\n", + "The hydrodynamic entry length for oil in m is\n", + "Leoil= 0.0192307692308\n", + "The thermal entry length for mercury in m is \n", + "LtHg= 0.02375\n", + "The thermal entry length for oil in m is\n", + "Ltoil= 1.63461538462\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + " import math\n", + "\n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 7, Example 8\"\n", + "#Mercury and a light oil flowing at Uinf=4mm/s in a smooth tube having diameter(D)=25mm at a bulk temprature of 80°C.\n", + "Uinf=4*10**-3;#in metre\n", + "D=25*10**-3;#in metre\n", + "#The pertinent properties of the fluid at that temprature are kinematic viscosity of mercury(nuHg=1*10**-7m**2/s),kinematic viscosity of oil(nuoil=6.5*10**-6m**2/s)\n", + "#Prandtl number of mercury(PrHg=0.019),Prandtl number of oil(Proil=85).\n", + "nuHg=1*10**-7;\n", + "nuoil=6.5*10**-6;\n", + "PrHg=0.019;\n", + "Proil=85;\n", + "#ReHg is Reynolds number for mercury\n", + "print\"Reynolds number for mercury is\"\n", + "ReHg=Uinf*D/nuHg\n", + "print\"ReHg=\",ReHg\n", + "#Reoil is Reynolds number for oil\n", + "print\"Reynolds number for oil is\"\n", + "Reoil=Uinf*D/nuoil\n", + "print\"Reoil=\",Reoil\n", + "#The hydrodynamic length are given by L=0.05*Re*D\n", + "#LeHg is the hydrodynamic entry length for mercury\n", + "print\"The hydrodynamic entry length for mercury in m is\"\n", + "LeHg=0.05*ReHg*D\n", + "print\"LeHg=\",LeHg\n", + "#Leoil the hydrodynamic entry length for oil\n", + "print\"The hydrodynamic entry length for oil in m is\"\n", + "Leoil=0.05*Reoil*D\n", + "print\"Leoil=\",Leoil\n", + "#The thermal entry length are given by L=0.05*Re*Pr*D\n", + "#LtHg is the thermal entry length for mercury\n", + "print\"The thermal entry length for mercury in m is \"\n", + "LtHg=0.05*ReHg*PrHg*D\n", + "print\"LtHg=\",LtHg\n", + "#Ltoil is the thermal entry length for oil\n", + "print\"The thermal entry length for oil in m is\"\n", + "Ltoil=0.05*Reoil*Proil*D\n", + "print\"Ltoil=\",Ltoil\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex7.9:pg-336" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 7, Example 9\n", + "Reynold number is\n", + "Re= 348.623853211\n", + "Therefore the flow is laminar.The hydrodynamic entrance length in m is\n", + "Leh= 0.0697247706422\n", + "The thermal entrance length in m is\n", + "Let= 0.0488073394495\n", + "The heat transfer coefficient in W/(m**2*K) is \n", + "h= 32.7\n", + "The mass flow rate of air in kg/s is\n", + "mdot= 2.38761041673e-05\n", + "Therefore the constant surface heat flux qw in W/m**2 is\n", + "qw= 95.95\n", + "The tube surface temprature at the exit plane in °C is \n", + "Twe= 127.934250765\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + " import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 7, Example 9\"\n", + "#Air at one atmospheric pressure and temprature(Tbi=75°C) enters a tube of internal diameter(D)=4.0mm with average velocity(U)=2m/s\n", + "Tbi=75;\n", + "D=4*10**-3;#in metre\n", + "U=2;\n", + "#The tube length is L=1.0m and a constant heat flux is imposed by the tube surface on the air over the entire length.\n", + "L=1;\n", + "#An exit bulk mean temprature(Tbo)=125°C is required.\n", + "Tbo=125;\n", + "#The properties of air 100°C are density(rho=0.95kg/m**3),Prandtl number(Pr=0.70),conductivity(k=0.03W/(m*K)),viscosity(mu=2.18*10**-5kg/(m*s)),specific heat(cp=1.01kJ/(kg/K))\n", + "rho=0.95;\n", + "Pr=0.70;\n", + "k=0.03;\n", + "mu=2.18*10**-5;\n", + "cp=1.01*10**3;\n", + "#Re is reynolds number\n", + "print\"Reynold number is\"\n", + "Re=rho*U*D/mu\n", + "print\"Re=\",Re\n", + "#Leh is the hydrodynamic entrance length\n", + "print\"Therefore the flow is laminar.The hydrodynamic entrance length in m is\"\n", + "Leh=0.05*Re*D\n", + "print\"Leh=\",Leh\n", + "#Let is the thermal entrance length\n", + "print\"The thermal entrance length in m is\"\n", + "Let=0.05*Re*Pr*D\n", + "print\"Let=\",Let\n", + "#The length of tube is given as 1m.A reasonable approach is to consider the flow to be fully developed for both velocity and tempratures over the entire profile lengths.\n", + "#For a fully developed flow with constant surface heat flux,Nusselt number is Nu=4.36\n", + "Nu=4.36;\n", + "#h is the heat transfer coefficient\n", + "print\"The heat transfer coefficient in W/(m**2*K) is \"\n", + "h=Nu*(k/D)\n", + "print\"h=\",h\n", + "#Here h=hL Since the heat transfer coefficient is constant over the entire length of tube.\n", + "#hL is the local heat transfer coefficient\n", + "hL=h;\n", + "#from an energy balance qw*pi*D*L=mdot*cp*(Tbo-Tbi)\n", + "#mdot is mass flow rate\n", + "print\"The mass flow rate of air in kg/s is\"\n", + "mdot=rho*(math.pi/4)*D**2*U\n", + "print\"mdot=\",mdot\n", + "#qw is the constant surface heat flux\n", + "print\"Therefore the constant surface heat flux qw in W/m**2 is\"\n", + "qw=(mdot*cp*(Tbo-Tbi))/(math.pi*D*L)\n", + "print\"qw=\",qw\n", + "#Let Twe be the surface temprature at the exit plane.Then we can write hL*(Twe-Tbo)=qw\n", + "print\"The tube surface temprature at the exit plane in °C is \"\n", + "Twe=Tbo+(qw/hL)\n", + "print\"Twe=\",Twe\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex7.10:pg-338" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 7, Example 10\n", + "Reynold number is\n", + "Re= 348.623853211\n", + "Therefore the flow is laminar.The hydrodynamic entrance length in m is\n", + "Leh= 0.0697247706422\n", + "The thermal entrance length in m is\n", + "Let= 0.0488073394495\n", + "The thermal entrance length is greater than the tube length Therefore the flow is hydrodynamically developed but not thermally developed\n", + "The inverse of graetz number Gr_1 is\n", + "Gr_1= 0.040977443609\n", + "Therefore the local heat transfer coefficient in W/(m**2*K) is\n", + "hL= 35.25\n", + "The mass flow rate of air in kg/s is\n", + "mdot= 2.38761041673e-05\n", + "Therefore surafce heat flux qw in W/m**2 is\n", + "qw= 2398.75\n", + "The tube surface temprature at the exit plane in °C is \n", + "Twe= 193.04964539\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + " import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 7, Example 10\"\n", + "#Air at one atmospheric pressure and temprature(Tbi=75°C) enters a tube of internal diameter(D)=4.0mm with average velocity(U)=2m/s\n", + "Tbi=75;\n", + "D=4*10**-3;\n", + "U=2;\n", + "#The heated tube length is L=0.04m and a constant heat flux is imposed by the tube surface on the air over the entire length.\n", + "L=0.04;\n", + "#An exit bulk mean temprature(Tbo)=125°C is required.\n", + "Tbo=125;\n", + "#The properties of air 100°C are density(rho=0.95kg/m**3),Prandtl number(Pr=0.70),conductivity(k=0.03W/(m*K)),viscosity(mu=2.18*10**-5kg/(m*s)),specific heat(cp=1.01kJ/(kg/K))\n", + "rho=0.95;\n", + "Pr=0.70;\n", + "k=0.03;\n", + "mu=2.18*10**-5;\n", + "cp=1.01*10**3;\n", + "#Re is the reynolds number \n", + "print\"Reynold number is\"\n", + "Re=rho*U*D/mu\n", + "print\"Re=\",Re\n", + "#Leh is the hydrodynamic entrance length\n", + "print\"Therefore the flow is laminar.The hydrodynamic entrance length in m is\"\n", + "Leh=0.05*Re*D\n", + "print\"Leh=\",Leh\n", + "#Let is thermal entrance length\n", + "print\"The thermal entrance length in m is\"\n", + "Let=0.05*Re*Pr*D\n", + "print\"Let=\",Let\n", + "print\"The thermal entrance length is greater than the tube length Therefore the flow is hydrodynamically developed but not thermally developed\" \n", + "#We calculate the inverse graetz number at x=L=0.04m\n", + "x=0.04;\n", + "#Gr_1 is inverse of graetz number\n", + "print\"The inverse of graetz number Gr_1 is\"\n", + "Gr_1=(x/D)*(1/(Re*Pr))\n", + "print\"Gr_1=\",Gr_1\n", + "#For constant surface heat flux nusselt number is Nu=4.7 and Graetz number is Gr=4.1*10**-2\n", + "Nu=4.7;\n", + "Gr=4.1*10**-2;\n", + "#hL is the local heat transfer coefficient\n", + "print\"Therefore the local heat transfer coefficient in W/(m**2*K) is\"\n", + "hL=Nu*(k/D)\n", + "print\"hL=\",hL\n", + "#from an energy balance qw*pi*D*L=mdot*cp*(Tbo-Tbi)\n", + "#mdot is the mass flow rate\n", + "print\"The mass flow rate of air in kg/s is\"\n", + "mdot=rho*(math.pi/4)*D**2*U\n", + "print\"mdot=\",mdot\n", + "#qw is the surface heat flux\n", + "print\"Therefore surafce heat flux qw in W/m**2 is\"\n", + "qw=(mdot*cp*(Tbo-Tbi))/(math.pi*D*L)\n", + "print\"qw=\",qw\n", + "#Let Twe be the surface temprature at the exit plane.Then we can write hL*(Twe-Tbo)=qw\n", + "print\"The tube surface temprature at the exit plane in °C is \"\n", + "Twe=Tbo+(qw/hL)\n", + "print\"Twe=\",Twe\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex7.11:pg-339" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Introduction to heat transfer by S.K.Som, Chapter 7, Example 11\n", + "Reynold number is\n", + "Re1= 13541.3214942\n", + "Nusselt number is\n", + "Nubar1= 56.808608087\n", + "The heat transfer transfer coefficient in W/(m**2*°C) \n", + "hbar1= 522.6391944\n", + "Outlet fluid temprature in first iteration is Tbo2 in °C is\n", + "Tb2 in °C is\n", + "Tb2= -30.4912413164\n", + "Reynold number is\n", + "Re2= 13938.8493187\n", + "Nusselt number is\n", + "The heat transfer transfer coefficient in W/(m**2*°C) \n", + "hbar2= 784.03829067\n", + "Outlet fluid temprature in second iteration is Tbo3 in °C is\n", + "Tbo3= -16.646852652\n", + "Tb3 in °C is\n", + "The Exit fluid temprature after second iteration is obtained as Tbo=-16.67°C\n", + "Tb3= -28.323426326\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + " import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 7, Example 11\"\n", + "#Liquid sulphur di oxide in a saturated state flows inside a L=5m long tube and D=25mm internal diameter with a mass flow rate(mdot) of 0.15 kg/s.\n", + "#The tube is heated at a constant surface temprature(Tw) of -10°C and the inlet fluid temprature is Tbi=-40°C\n", + "Tw=-10;\n", + "Tbi=-40;\n", + "mdot=0.15;\n", + "D=0.025;#in metre\n", + "L=5;\n", + "#The properties to be used shoud be estimated at a temprature which is arithmetic mean of Tbi and Tbo.\n", + "#Since (outlet fluid temprature Tbo) is not known a priori,the solution has to be based on an iterative method starting with a guess value of Tb1=(Tbi+Tbo)/2\n", + "#Here we denote bulk mean temprature as Tb.The superscript refers to the no. of trials\n", + "#For first trial,guess Tbo1=-20°C;so Tb1=-30°C\n", + "#We have the property values as follows at a temprature of -30°C.\n", + "rhob1=1520.64;#density in kg/m**3\n", + "nub1=0.371*10**-6;#kinematic viscosity in m**2/s\n", + "kb1=0.23;#conductivity in W/(m*°C)\n", + "Prb1=3.31;#Prandtl number\n", + "mub1=nub1*rhob1;#viscosity in kg/(m*s)\n", + "cpb1=1361.6;#specific heat in J/(kg*K)\n", + "#muw=nuw*rhow at Tw=10°C\n", + "nuw=0.288*10**-6;#kinematic viscosity at Tw in m**2/s\n", + "rhow=1463.61;#density at Tw in kg/m**3\n", + "muw=nuw*rhow;#viscosity at Tw in kg/(m*s)\n", + "#The reynolds number is found as Re1=(4*mdot)/(math.pi*D*mub1)\n", + "print\"Reynold number is\"\n", + "Re1=(4*mdot)/(math.pi*D*mub1)\n", + "print\"Re1=\",Re1\n", + "#Hence the flow is turbulent\n", + "#Now using equation, nusselt number is,Nubar1=0.027*(Re1)**0.8*Prb1**(1/3)*(mub1/muw)**0.14\n", + "print\"Nusselt number is\"\n", + "Nubar1=0.027*(Re1)**0.8*Prb1**(1/3)*(mub1/muw)**0.14\n", + "print\"Nubar1=\",Nubar1\n", + "#The heat transfer transfer coefficient hbar1=(kb1/D)*Nubar1\n", + "print\"The heat transfer transfer coefficient in W/(m**2*°C) \"\n", + "hbar1=(kb1/D)*Nubar1\n", + "print\"hbar1=\",hbar1\n", + "#The outlet fluid temprature can be found by making use of eqn Tbo2=Tw-(Tw-Tbi)*math.e((-math.pi*D*L*hbar1)/(mdot*cpb1))\n", + "print\"Outlet fluid temprature in first iteration is Tbo2 in °C is\"\n", + "Tbo2=Tw-(Tw-Tbi)*math.e**((-math.pi*D*L*hbar1)/(mdot*cpb1))\n", + "#Tb2 is the bulk mean temprature.\n", + "print\"Tb2 in °C is\"\n", + "Tb2=(Tbi+Tbo2)/2\n", + "print\"Tb2=\",Tb2\n", + "#Since the value differs from the assumed value of Tb1=-30°C,WE require furtheriteration,Therfore we start second trial with Tb2=-28.36°C\n", + "#We have the property value at a temprature of -28.36°C as follows\n", + "rhob2=1514;#density in kg/m**3\n", + "nub2=0.362*10**-6;#kinematic viscosity in m**2/s\n", + "kb2=0.229;#conductivity in W/(m*°C)\n", + "Prb2=3.23;#Prandtl number\n", + "mub2=nub2*rhob2;#viscosity in kg/(m*s)\n", + "cpb2=1362;#specific heat in J/(kg*K)\n", + "#muw=nuw*rhow at Tw=10°C\n", + "nuw=0.288*10**-6;#viscosity at Tw in m**2/s\n", + "rhow=1463.61;#density at Tw in kg/m**3\n", + "muw=nuw*rhow;#kinematic viscosity at Tw in kg/(m*s)\n", + "#The reynolds number is found as Re2=(4*mdot)/(math.pi*D*mub2)\n", + "print\"Reynold number is\"\n", + "Re2=(4*mdot)/(math.pi*D*mub2)\n", + "print\"Re2=\",Re2\n", + "#Now using equation, nusselt number is,Nubar2=0.027*(Re2)**0.8*Prb2**(1/3.0)*(mub2/muw)**0.14\n", + "print\"Nusselt number is\"\n", + "Nubar2=0.027*(Re2)**0.8*Prb2**(1/3.0)*(mub2/muw)**0.14\n", + "#The heat transfer transfer coefficient hbar2=(kb2/D)*Nubar2\n", + "print\"The heat transfer transfer coefficient in W/(m**2*°C) \"\n", + "hbar2=(kb2/D)*Nubar2\n", + "print\"hbar2=\",hbar2\n", + "#The outlet fluid temprature can be found by making use of eqn Tbo3=Tw-(Tw-Tbi)*math.e((-math.pi*D*L*hbar2)/(mdot*cpb2))\n", + "print\"Outlet fluid temprature in second iteration is Tbo3 in °C is\"\n", + "Tbo3=Tw-(Tw-Tbi)*math.e**((-math.pi*D*L*hbar2)/(mdot*cpb2))\n", + "print\"Tbo3=\",Tbo3\n", + "#Tb3 is the bulk mean temprature.\n", + "print\"Tb3 in °C is\"\n", + "Tb3=(Tbi+Tbo3)/2\n", + "#We see that difference between Tbo2 and Tbo3 and that between Tb2 and Tb3 is marginal.Therfore we can stop iteration and present the result as Tbo=-16.67°C\n", + "print\"The Exit fluid temprature after second iteration is obtained as Tbo=-16.67°C\"\n", + "print\"Tb3=\",Tb3" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter8.ipynb b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter8.ipynb new file mode 100644 index 00000000..a6c237e4 --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter8.ipynb @@ -0,0 +1,893 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "# Chapter 08:Principles of free convection" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex8.1:pg-355" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 8, Example 1\n", + "Grashoff number is\n", + "GrL= 2175146201.53\n", + "Rayleigh number is\n", + "RaL= 9440134514.65\n", + "Therefore the flow is turbulent\n", + "Now we use [(hbarL*L)/k]=0.10*(GrL*Pr)**(1/3)\n", + "The average heat transfer coefficient in W/(m**2*K) is\n", + "hbarL= 0.314\n", + "The rate of heat transfer in W is\n", + "q= 0.5024\n" + ] + } + ], + "source": [ + "import math \n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 8, Example 1\"\n", + "#Water is heated by a vertical flat plate length(L=200mm or .2m )by breadth(B=200mm) which is maintained at temprature,Tw=60°C\n", + "Tw=60;\n", + "L=.2;\n", + "B=.2;# in metre\n", + "#Area(A) is L*B \n", + "A=L*B;\n", + "#Water is at temprature,Tinf=20°C\n", + "Tinf=20;\n", + "#At mean film temprature 40°C The physical properties parameters can be taken as \n", + "#conductivity(k=0.0628W/(m*K)),Prandtl number(Pr=4.34),density(rho=994.59kg/m**3),kinematic viscosity(nu=0.658*10**-6m**2/s),volume expnasion coefficient(Beta=3*10**-4K**-1))\n", + "k=0.628;\n", + "Pr=4.34;\n", + "rho=994.59;\n", + "nu=0.658*10**-6;\n", + "Beta=3*10**-4;\n", + "#g is acceleration due to gravity =9.81m/s**2\n", + "g=9.81;\n", + "#Grashoff number is given by GrL=(g*beta*(Tw-Tinf)*L**3)/(nu)**2\n", + "print\"Grashoff number is\"\n", + "GrL=(g*Beta*(Tw-Tinf)*L**3)/(nu)**2\n", + "print\"GrL=\",GrL\n", + "#Rayleigh number is defined as RaL=GrL*Pr\n", + "print\"Rayleigh number is\"\n", + "RaL=GrL*Pr\n", + "print\"RaL=\",RaL\n", + "print\"Therefore the flow is turbulent\"\n", + "print\"Now we use [(hbarL*L)/k]=0.10*(GrL*Pr)**(1/3)\"\n", + "#hbarL is the average heat transfer coefficient\n", + "print\"The average heat transfer coefficient in W/(m**2*K) is\"\n", + "hbarL=(0.10*(GrL*Pr)**(1/3)*k)/L\n", + "print\"hbarL=\",hbarL\n", + "#The rate of heat transfer is given by q=hbarL*A*(Tw-Tinf)\n", + "print\"The rate of heat transfer in W is\"\n", + "q=hbarL*A*(Tw-Tinf)\n", + "print\"q=\",q\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex8.2:pg-357" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 8, Example 2\n", + "The minimum spacing between the plates will be twice the thickness of the boundary layer at the trailing edge where x=0.09\n", + "Grashoff number is\n", + "GrL= 198210197.615\n", + "Rayleigh number is\n", + "RaL= 860232257.647\n", + "Since Ra<10**9,Therefore the flow is laminar\n", + "The thickness of the boundary layer in metre is\n", + "delta= 4.11168026839e-10\n", + "The minimum spacing in metre is\n", + "spac= 8.22336053678e-10\n" + ] + } + ], + "source": [ + " \n", + "import math \n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 8, Example 2\"\n", + "#The thin plates are kept at temprature(Tw)=60°C while the temprature of water bath(Tinf)=20°C\n", + "Tw=60;\n", + "Tinf=20;\n", + "#The plates have length(L)=90mm or .09m\n", + "L=.09;\n", + "#The minimum spacing between the plates will be twice the thickness of the boundary layer at the trailing edge where x=0.09.\n", + "print\"The minimum spacing between the plates will be twice the thickness of the boundary layer at the trailing edge where x=0.09\"\n", + "x=.09;\n", + "#At mean film temprature 40°C The physical properties parameters can be taken as\n", + "# conducivity(k=0.0628W/(m*K)),Prandtl number(Pr=4.34),Density(rho=994.59kg/m**3),kinematic viscosity(nu=0.658*10**-6m**2/s),Volume expansion coefficient(Beta=3*10**-4K**-1)\n", + "k=0.628;\n", + "Pr=4.34;\n", + "rho=994.59;\n", + "nu=0.658*10**-6;\n", + "Beta=3*10**-4;\n", + "#g is acceleration due to gravity =9.81m/s**2\n", + "g=9.81;\n", + "#Grashoff number is given by GrL=(g*beta*(Tw-Tinf)*L**3)/(nu)**2\n", + "print\"Grashoff number is\"\n", + "GrL=(g*Beta*(Tw-Tinf)*L**3)/(nu)**2\n", + "print\"GrL=\",GrL\n", + "#Rayleigh number is defined as RaL=GrL*Pr\n", + "print\"Rayleigh number is\"\n", + "RaL=GrL*Pr\n", + "print\"RaL=\",RaL\n", + "print\"Since Ra<10**9,Therefore the flow is laminar\"\n", + "#delta is the thickness of the boundary layer\n", + "print\"The thickness of the boundary layer in metre is\"\n", + "delta=x*3.93*Pr**(-1/2)*(0.952+Pr)**(1/4)*GrL**(-1/4)\n", + "print\"delta=\",delta\n", + "#spac is the minimum spacing \n", + "print\"The minimum spacing in metre is\"\n", + "spac=2*delta\n", + "print\"spac=\",spac\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex8.3:pg-366" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 8, Example 3\n", + "Grashoff number is\n", + "Grx= 517025.52213\n", + "The boundary layer thickness in metre is\n", + "delta= 60304.3038858\n", + "The velocity at point x is ux in m/s is\n", + "ux= 3247798354.51\n", + "For maximum value of velocity,u\n", + "Maximum velocity in m/s is\n", + "Umax= 3.57089835848\n", + "Mass flow rate at x=0.8m,in kG is\n", + "mdot= 2.36830073295e+16\n" + ] + } + ], + "source": [ + "\n", + "from scipy.integrate import quad\n", + "print \"Introduction to heat transfer by S.K.Som, Chapter 8, Example 3\"\n", + "#Considering question 5.7\n", + "#A wall is exposed to nitrogen at one atmospheric pressure and temprature,Tinf=4°C.\n", + "Tinf=4.0;\n", + "#The wall is H=2.0m high and 2.5m wide and is maintained at temprature,Tw=56°C\n", + "Tw=56.0;\n", + "H=2.0;\n", + "B=2.5;\n", + "A=H*B;#Area of wall in m**2\n", + "#The properties of nitrogen at mean film temprature (56+4)/2=30°C are given as \n", + "#density(rho=1.142kg/m*3) ,conductivity(k=0.026W/(m*K)),kinematic viscosity(nu=15.630*10-6 m*2/s) ,prandtl number(Pr=0.713)\n", + "rho=1.142;\n", + "k=0.026;\n", + "nu=15.630*10**-6;\n", + "Pr=0.713;\n", + "Tf=30.0;#mean film temprature\n", + "Beta=1/(273.0+Tf);#volume expansion coefficient:unit K**-1\n", + "#Now Grashoff number is Grx=(g*Beta*(Tw-Tinf)*x*3)/nu*2\n", + "g=9.81;#acceleration due to gravity\n", + "print \"Grashoff number is\"\n", + "x=0.8;#distance from the bottom of wall\n", + "Grx=(g*Beta*(Tw-Tinf)*x*3)/nu*2\n", + "print\"Grx=\",Grx\n", + "#Using equation delta=x*Pr*(-0.5)(0.952+Pr)*(0.25)*Grx*(-0.25)\n", + "#delta is the boundary layer thickness\n", + "print \"The boundary layer thickness in metre is\"\n", + "delta=x*3.93*Pr*(-0.5)*(0.952+Pr)*(0.25)*Grx*(-0.25)\n", + "print\"delta=\",delta\n", + "#Now using equation ux=(g*Beta*delta*2(Tw-Tinf))/(4*nu)\n", + "#ux is the velocity at point x\n", + "print \"The velocity at point x is ux in m/s is\"\n", + "ux=(g*Beta*delta*2*(Tw-Tinf))/(4*nu)\n", + "print\"ux=\",ux\n", + "# (u/ux)=(y/delta)*(1-y/delta)**2\n", + "#Putting value of ux we get velovity function,u=465.9*(y-116*y*2+3341*y*3)\n", + "#For maximum value of u,du/dy=465.9*(1-232*y+10023*y**2)=0...this is a quadratic equation in which coefficients a=10023,b=232,c=1\n", + "a=10023;\n", + "b=232;\n", + "c=1;\n", + "#Solution for quadratic equation is given by y=(-b+-(b*2-4ac)*0.5)/2*a\n", + "print \"For maximum value of velocity,u\"\n", + "y=(b+(b*2-4*a*c)*0.5)/(2*a)#root of the quadratic equation\n", + "y=(b-(b*2-4*a*c)*0.5)/(2*a)#root of the quadratic equation\n", + "#The value of 0.0173 is at the edge of boundary layer,where u=0\n", + "#Therefore the maximum value occurs at y=0.00573m i.e Umax=465.9*y*(1-57.8*y)**2\n", + "y=0.00573;\n", + "#Umax is maximum velocity\n", + "print \"Maximum velocity in m/s is\"\n", + "Umax=465.9*y*(1-57.8*y)*2#NOTE:The answer given in the book is incorrect,in this expresssion they considered square on y only,however it is on whole expression (1-57.8*y)*2\n", + "#mdot is mass flow rate\n", + "print\"Umax=\",Umax\n", + "print \"Mass flow rate at x=0.8m,in kG is\"\n", + "I=quad(lambda y:465.9*(y-116*y*2+3341*y*3),0,delta)\n", + "mdot=rho*B*I[0]\n", + "print\"mdot=\",mdot\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex8.4:pg-369" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 8, Example 4\n", + "Grashoff number is\n", + "Rayleigh number is\n", + "Hence,the flow is laminar\n", + "The thickness of the boundary layer in metre is\n", + "The average heat transfer coeficient in W/(m**2*K) is\n", + "0.101781170483\n" + ] + } + ], + "source": [ + " \n", + "import math \n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 8, Example 4\"\n", + "#A square plate length,L=0.2m by breadth,B=0.2m is suspended vertically in a quiescent atmospheric air at a temprature(Tinf)=300K\n", + "L=0.2;\n", + "B=0.2;\n", + "Tinf=300;\n", + "#The Temprature of plate(Tw) is maintained at 400K\n", + "Tw=400;\n", + "#The required property value of air at a film temprature(Tf)=350K,kinematic viscosity (nu=20.75*10**-6),Prandtl number(Pr=0.69),conductivity(k=0.03W/(m*K))\n", + "Tf=350;\n", + "nu=20.75*10**-6;\n", + "Pr=0.69;\n", + "k=0.03;\n", + "#volume expansion coefficient is Beta\n", + "Beta=(1/Tf);\n", + "#g is acceleration due to gravity =9.81m/s**2\n", + "g=9.81;\n", + "#Grashoff number is given by GrL=(g*beta*(Tw-Tinf)*L**3)/(nu)**2\n", + "print\"Grashoff number is\"\n", + "GrL=(g*Beta*(Tw-Tinf)*L**3)/(nu)**2 \n", + "print\"GrL=\",GrL\n", + "#Rayleigh number is defined as RaL=GrL*Pr\n", + "print\"Rayleigh number is\"\n", + "RaL=GrL*Pr\n", + "print\"Hence,the flow is laminar\"\n", + "print\"RaL=\",RaL\n", + "#delta is the thickness of the boundary layer\n", + "print\"The thickness of the boundary layer in metre is\"\n", + "x=0.2;#location of trailing edge of plate\n", + "delta=(x*3.93*(0.952+Pr)**(1/4))/(Pr**(1/2)*(GrL)**(1/4))#NOTE:The answer in the book is incorrect(calculation mistake)\n", + "print\"delta=\",delta\n", + "#hL and hbarL are local and average heat transfer coefficient respectively\n", + "print\"The average heat transfer coeficient in W/(m**2*K) is\"\n", + "hL=(2*k)/delta;\n", + "hbarL=(4.0/3)*(hL)#NOTE:The answer in the book is incorrect(calculation mistake)\n", + "print\"hL=\",hL\n", + "print\"hbarL=\",hbarL\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex8.5:pg-373" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 8, Example 5\n", + "Grashoff number is\n", + "503958851.066\n", + "Rayleigh number is\n", + "357810784.257\n", + "Therefore the flow is laminar\n", + "Nusselt number is\n", + "75.3134665126\n", + "Average heat transfer coefficient(hbarL)in W/(m**2*°C)\n", + "The rate of heat transfer in W is \n", + "Now if we use NuL2=0.59*RaL**(1/4) with the value of C=0.59,n=(1/4)\n", + "Nusselt number is\n", + "Average heat transfer coefficient(hbarL)in W/(m**2*°C)\n", + "The rate of heat transfer in W is \n", + "49.9857347505\n", + "(b)For the horizontal plate facing up\n", + "Now RaL2=Gr*Pr*(Lc/L)**3\n", + "Rayleigh number is\n", + "Nusselt number is given by NuL3=C*(GrL*Pr)**n\n", + "Average heat transfer coefficient(hbarL)in W/(m**2*°C)\n", + "The rate of heat transfer in W is \n", + "64.6997833306\n", + "(c)When the hot surface faces is down\n", + "Nusselt number is given by NuL4=0.27*RaL2**(1/4)\n", + "13.1290144745\n", + "Average heat transfer coefficient(hbarL) in W/(m**2)\n", + "2.9408992423\n", + "The rate of heat transfer in W is \n", + "32.3498916653\n" + ] + } + ], + "source": [ + " \n", + "import math \n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 8, Example 5\"\n", + "#A square plate of length(L)=0.5m by breadth,B=0.5m in a room at temprature,Tinf=30°C\n", + "#One side of plate is kept a uniform temprature(Tw)=74°C\n", + "Tw=74;\n", + "L=0.5;\n", + "B=0.5;\n", + "Tinf=30.0;\n", + "#The required properties at the film temprature(Tf)=52°C are kinematic viscosity(nu=1.815*10**-5),Prandtl number(Pr=0.71),conductivity(k=0.028W/(m*°C))\n", + "Tf=52.0;\n", + "Pr=0.71;\n", + "nu=1.815*10**-5;\n", + "k=0.028;\n", + "#Area(A)=L*B m**2\n", + "A=L*B;\n", + "#Volume expansion coefficient is Beta\n", + "Beta=1/(273+Tf);\n", + "#g is acceleration due to gravity =9.81m/s**2\n", + "g=9.81;\n", + "#Grashoff number is given by GrL=(g*beta*(Tw-Tinf)*L**3)/(nu)**2\n", + "print\"Grashoff number is\"\n", + "GrL=(g*Beta*(Tw-Tinf)*L**3)/(nu)**2 \n", + "print GrL\n", + "#Rayleigh number is defined as RaL1=GrL*Pr\n", + "print\"Rayleigh number is\"\n", + "RaL1=GrL*Pr\n", + "print RaL1\n", + "print\"Therefore the flow is laminar\"\n", + "#We make use of following equation to find Nusselt number,NuL1=(4/3)*(0.508*Pr**(-1/2)*(0.952+Pr)**(-1/4)*Gr**(1/4))\n", + "print\"Nusselt number is\"\n", + "NuL1=(4.0/3)*(0.508*Pr**(1.0/2)*(0.952+Pr)**(-1.0/4)*GrL**(1.0/4))\n", + "#Average heat transfer coefficient(hbarL) is given by (NuL*k)/L\n", + "print NuL1\n", + "print\"Average heat transfer coefficient(hbarL)in W/(m**2*°C)\"\n", + "hbarL=(NuL1*k)/L\n", + "#The rate of heat transfer(Q) from the plate by free convection is given by Q=hbarL*A*(Tw-Tinf)\n", + "print\"The rate of heat transfer in W is \"\n", + "Q=hbarL*A*(Tw-Tinf)\n", + "print\"Now if we use NuL2=0.59*RaL**(1/4) with the value of C=0.59,n=(1/4)\"\n", + "print\"Nusselt number is\"\n", + "NuL2=0.59*RaL1**(1.0/4)\n", + "#Average heat transfer coefficient(hbarL) is given by (NuL*k)/L\n", + "print\"Average heat transfer coefficient(hbarL)in W/(m**2*°C)\"\n", + "hbarL=(NuL2*k)/L\n", + "#The rate of heat transfer(Q) from the plate by free convection is given by Q=hbarL*A*(Tw-Tinf)\n", + "print\"The rate of heat transfer in W is \"\n", + "Q=hbarL*A*(Tw-Tinf)\n", + "print Q\n", + "print\"(b)For the horizontal plate facing up\"\n", + "#Perimeter(P) for a square plate is P=4*L\n", + "P=4*L;\n", + "#Characterstic length(Lc)=A/P\n", + "Lc=A/P\n", + "print\"Now RaL2=Gr*Pr*(Lc/L)**3\"\n", + "print\"Rayleigh number is\"\n", + "RaL2=GrL*Pr*(Lc/L)**3\n", + "#The values of constants,C=0.54 and n=(1/4)\n", + "C=0.54;\n", + "n=(1.0/4);\n", + "print\"Nusselt number is given by NuL3=C*(GrL*Pr)**n\"\n", + "NuL3=C*(RaL2)**n\n", + "print\"Average heat transfer coefficient(hbarL)in W/(m**2*°C)\"\n", + "hbarL=(NuL3*k)/Lc\n", + "print\"The rate of heat transfer in W is \"\n", + "Q=hbarL*A*(Tw-Tinf)\n", + "print Q\n", + "print\"(c)When the hot surface faces is down\"\n", + "print\"Nusselt number is given by NuL4=0.27*RaL2**(1/4)\"\n", + "NuL4=0.27*RaL2**(1.0/4)\n", + "print NuL4\n", + "print\"Average heat transfer coefficient(hbarL) in W/(m**2)\"\n", + "hbarL=(NuL4*k)/Lc\n", + "print hbarL\n", + "print\"The rate of heat transfer in W is \"\n", + "Q=hbarL*A*(Tw-Tinf)\n", + "print Q\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex8.6:pg-375" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 8, Example 6\n", + "Grashoff number is\n", + "GrL= 813719594.384\n", + "Rayleigh number is\n", + "RaL= 569603716.069\n", + "Therefore the flow is laminar\n", + "Now we use NuL=0.59*RaL**(1/4.0) with the value of constants C=0.59,n=(1/4.0)\n", + "Nusselt number is\n", + "NuL= 91.1475952489\n", + "Average heat transfer coefficient in W/(m**2*K)\n", + "hbarL1= 5.46885571493\n", + "Grashoff number GrD=GrL*(D/L)**3\n", + "GrD= 0.00650975675508\n", + "The correction factor is\n", + "F= 39.485281111\n", + "The correct value of Average heat transfer coefficient(hbarL2)=hbarL1*F in W/(m**2*K) is\n", + "hbarL2= 215.939305259\n", + "The ohmic loss in W is \n", + "q= 3.39196667512\n", + "The current flowing in the wire in Ampere is\n", + "I= 7.51882822777\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math \n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 8, Example 6\"\n", + "#A vertical wire of length(L)=0.5m and Dimeter(D)=0.1mm is maintained at temprature, Tw=400K\n", + "#The temprature of quicsent air is Tinf=300K\n", + "#Resistance(R) per meter length is 0.12ohm\n", + "R=0.12;\n", + "Tw=400.0;\n", + "L=0.5;\n", + "D=0.1*10**-3;#in metre\n", + "Tinf=300;\n", + "#The required properties at the film temprature(Tf)=350K are kinematic viscosity(nu=20.75*10**-6m**2/s),Prandtl number(Pr=0.70),conductivity(k=0.03W/(m*°C))\n", + "Tf=350.0;\n", + "Pr=0.70;\n", + "nu=20.75*10**-6;\n", + "k=0.03;\n", + "#Area(A)=L*B m**2\n", + "A=math.pi*D*L;\n", + "#Volume expansion Coefficient is Beta\n", + "Beta=1/(Tf);\n", + "#g is acceleration due to gravity =9.81m/s**2\n", + "g=9.81;\n", + "#Grashoff number is given by GrL=(g*beta*(Tw-Tinf)*L**3)/(nu)**2\n", + "print\"Grashoff number is\"\n", + "GrL=(g*Beta*(Tw-Tinf)*L**3)/(nu)**2 \n", + "print\"GrL=\",GrL\n", + "#Rayleigh number is defined as RaL=GrL*Pr\n", + "print\"Rayleigh number is\"\n", + "RaL=GrL*Pr\n", + "print\"RaL=\",RaL\n", + "print\"Therefore the flow is laminar\"\n", + "#NuL is nusselt number\n", + "#C and n are constants\n", + "print\"Now we use NuL=0.59*RaL**(1/4.0) with the value of constants C=0.59,n=(1/4.0)\"\n", + "print\"Nusselt number is\"\n", + "NuL=0.59*RaL**(1/4.0)\n", + "print\"NuL=\",NuL\n", + "#hbarL1 is the Average heat transfer coefficient\n", + "print\"Average heat transfer coefficient in W/(m**2*K)\"\n", + "hbarL1=(NuL*k)/L\n", + "print\"hbarL1=\",hbarL1\n", + "#Grashoff number GrD=GrL*(D/L)**3\n", + "print\"Grashoff number GrD=GrL*(D/L)**3\"\n", + "GrD=GrL*(D/L)**3\n", + "print\"GrD=\",GrD\n", + "#The correction factor is given By F=1.3*((L/D)/GrD)**(1/4.0)+1.0\n", + "print\"The correction factor is\"\n", + "F=1.3*((L/D)/GrD)**(1/4.0)+1.0\n", + "print\"F=\",F\n", + "print\"The correct value of Average heat transfer coefficient(hbarL2)=hbarL1*F in W/(m**2*K) is\"\n", + "hbarL2=hbarL1*F\n", + "print\"hbarL2=\",hbarL2\n", + "#The ohmic power loss is given by energy balance I**2*R=q=hbar2*A*(Tw-Tinf)\n", + "#q is the ohmic power loss\n", + "print\"The ohmic loss in W is \"\n", + "q=hbarL2*A*(Tw-Tinf)\n", + "print\"q=\",q\n", + "#The current flowing in the wire I=(q/(R*L)**(1/2.0)\n", + "print\"The current flowing in the wire in Ampere is\"\n", + "I=(q/(R*L))**(1/2.0)\n", + "print\"I=\",I\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex8.7:pg-378" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 8, Example 7\n", + "Grashoff number is\n", + "GrD= 53311595.6796\n", + "Rayleigh number is\n", + "RaD= 37318116.9757\n", + "The flow is laminar over the entire cylinder\n", + "we use following equation to find Nusselt number NuD=(0.60+((0.387*RaD**(1/6))/(1+(0.559/Pr**(9/16)))**(8/27)))**2\n", + "NuD= 0.974169\n", + "Average heat transfer coefficient in W/(m**2*K)\n", + "hbar= 0.14612535\n", + "The heat loss per meter length in W is\n", + "q= 9.64039284733\n" + ] + } + ], + "source": [ + " \n", + "import math \n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 8, Example 7\"\n", + "#A long horizontal pressurized hot water of diameter(D)=200mm passes through a room where the air temprature is Tinf=25°C\n", + "D=.2;\n", + "Tinf=25;\n", + "#Length(L)=1m ,since the unit length is considered\n", + "L=1;\n", + "#Area(A)=pi*L*D\n", + "A=math.pi*L*D;\n", + "#The pipe surface temprature is Tw=130°C\n", + "Tw=130;\n", + "#The properties of air at the film temprature Tf=77.5°C are kinematic viscosity(nu=21*10**-6m**2/s),Prandtl number(Pr=0.70),Conductivity(k=0.03W/(m*K))\n", + "Tf=77.5;\n", + "nu=21*10**-6;\n", + "k=0.03;\n", + "Beta=(1/(273+Tf));#Volume expansion coefficient in k**-1)\n", + "Pr=0.70;\n", + "#g is acceleration due to gravity =9.81m/s**2\n", + "g=9.81;\n", + "#Grashoff number is given by GrD=(g*beta*(Tw-Tinf)*L**3)/(nu)**2\n", + "print\"Grashoff number is\"\n", + "GrD=(g*Beta*(Tw-Tinf)*D**3)/(nu)**2 \n", + "print\"GrD=\",GrD\n", + "#Rayleigh number is defined as RaD=GrD*Pr\n", + "print\"Rayleigh number is\"\n", + "RaD=GrD*Pr\n", + "print\"RaD=\",RaD\n", + "print\"The flow is laminar over the entire cylinder\"\n", + "#NuD is the nusselt number\n", + "print\"we use following equation to find Nusselt number NuD=(0.60+((0.387*RaD**(1/6))/(1+(0.559/Pr**(9/16)))**(8/27)))**2\"\n", + "NuD=(0.60+((0.387*RaD**(1/6))/(1+(0.559/Pr**(9/16)))**(8/27)))**2\n", + "print\"NuD=\",NuD\n", + "#hbar is the avearge heat transfer coefficient\n", + "print\"Average heat transfer coefficient in W/(m**2*K)\"\n", + "hbar=(NuD*k)/D\n", + "print\"hbar=\",hbar\n", + "#The heat loss per meter length is given by q=hbar*A*(Tw-Tinf)\n", + "print\"The heat loss per meter length in W is\"\n", + "q=hbar*A*(Tw-Tinf)\n", + "print\"q=\",q\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex8.8:pg-381" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 8, Example 8\n", + "Let us take first trial Tw=64°C\n", + "Grashoff number is\n", + "GrD= 226303.67232\n", + "Rayleigh number is\n", + "The flow is laminar \n", + "RaD= 941423.276851\n", + "we use following equation to find Nusselt number NuD=(0.60+((0.387*RaD**(1/6))/(1+(0.559/Pr**(9/16)))**(8/27)))**2\n", + "NuD= 0.974169\n", + "Average heat transfer coefficient in W/(m**2*K)\n", + "hbarD= 77.20289325\n", + "Hence,steady state Surface temprature in °C is\n", + "Hence we see that our guess is in excellent agreement with the calculated value\n", + "Tw= 793.068225127\n" + ] + } + ], + "source": [ + " \n", + "import math \n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 8, Example 8\"\n", + "#An electric immersion heater diameter(D)=8mm and length(L)=300mm is rated at power input,P=450W\n", + "P=450;\n", + "L=0.3;#in metre\n", + "D=0.008;#in metre\n", + "#If the heater is horizontally positioned in a large tank of stationery water at temprature,Tinf=20°C\n", + "Tinf=20;\n", + "#At steady state ,The electrical power input(P)=(Q)Heat loss from the heater\n", + "#P=Q\n", + "#Q=hbarD*(pi*D)*L*(Tw-Tinf)\n", + "#This gives Tw(surface temprature)=Tinf+(P/(hbarD*pi*D*L))\n", + "#So we need to find Average heat transfer coefficient,hbarD.\n", + "#In this problem we need to take guess of steady state surface temprature(Tw) and iterate the solution for Tw till a desired convergence is achieved.\n", + "print\"Let us take first trial Tw=64°C\"\n", + "Tw=64;\n", + "Tf=(Tw+Tinf)/2;#mean film temprature\n", + "#At this temprature of 42°C,The required properties of water kinematic viscosity(nu=6.25*10**-7m**2/s),Prandtl number(Pr=4.16),Conductivity(k=0.634W/(m*K)),Beta=4*10**-4K**-1\n", + "Beta=4*10**-4;#Volume expansion coefficient\n", + "nu=6.25*10**-7;\n", + "Pr=4.16;\n", + "k=0.634;\n", + "#g is acceleration due to gravity =9.81m/s**2\n", + "g=9.81;\n", + "#Grashoff number is given by GrD=(g*beta*(Tw-Tinf)*L**3)/(nu)**2\n", + "print\"Grashoff number is\"\n", + "GrD=(g*Beta*(Tw-Tinf)*D**3)/(nu)**2 \n", + "print\"GrD=\",GrD\n", + "#Rayleigh number is defined as RaD=GrD*Pr\n", + "print\"Rayleigh number is\"\n", + "RaD=GrD*Pr\n", + "print\"The flow is laminar \"\n", + "print\"RaD=\",RaD\n", + "#/NuD is nusselt number\n", + "#hbarD is Average heat transfer coefficient\n", + "print\"we use following equation to find Nusselt number NuD=(0.60+((0.387*RaD**(1/6))/(1+(0.559/Pr**(9/16)))**(8/27)))**2\"\n", + "NuD=(0.60+((0.387*RaD**(1/6))/(1+(0.559/Pr**(9/16)))**(8/27)))**2\n", + "print\"NuD=\",NuD\n", + "print\"Average heat transfer coefficient in W/(m**2*K)\"\n", + "hbarD=(NuD*k)/D\n", + "print\"hbarD=\",hbarD\n", + "print\"Hence,steady state Surface temprature in °C is\"\n", + "Tw=Tinf+(P/(hbarD*math.pi*D*L))\n", + "print\"Hence we see that our guess is in excellent agreement with the calculated value\"\n", + "print\"Tw=\",Tw\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter9.ipynb b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter9.ipynb new file mode 100644 index 00000000..7d76afa3 --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/Chapter9.ipynb @@ -0,0 +1,727 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "# Chapter 09:Heat transfer in condensation and boiling" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.1:pg-392" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 9, Example 1\n", + "The properties of condensate(liquid water) are evaluated at the mean film temprature \n", + "The mean film temprature in°C is\n", + "tf= 95\n", + "hfg= 2270000.0\n", + "The average heat transfer coefficient over length L in W/(m**2*K)\n", + "hbar= 0.745\n", + "The rate of heat transfer per unit width in W/m \n", + "Q= 3.772\n", + "The total rate of condensation in kg/(s*m)\n", + "mdotc= 1.66167400881e-06\n", + "We have to check whether the flow is laminar or not \n", + "Reynolds no. is\n", + "Therefore the flow is laminar and hence the use of the equation is justified\n", + "ReL= 0.0221556534508\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 9, Example 1\"\n", + "#A vertical cooling fin, Approximately a flat plate length,(L)=0.4m high is exposed to saturated steam(temprature,Tg=100°C) at atmospheric pressure.\n", + "L=0.4;\n", + "Tg=100;\n", + "#The fin is maintained at temprature,Tw=90°C by cooling water.\n", + "Tw=90;\n", + "print\"The properties of condensate(liquid water) are evaluated at the mean film temprature \"\n", + "#tf is mean film temprature\n", + "print\"The mean film temprature in°C is\"\n", + "tf=(Tg+Tw)/2\n", + "print\"tf=\",tf\n", + "#The properties of condensate are density(rho=962kg/m**3),conductivity(k=0.677W/(m*K)),viscosity(mu=3*10**-4 kg/(m*s))\n", + "rho=962;\n", + "k=0.677;\n", + "mu=3*10**-4;\n", + "#The value rhov=0.598kg/m**3 and hfg=2.27*10**6J/kg at 100°C are found from steam table\n", + "#g is acceleration due to gravity =9.81m/s**2\n", + "g=9.81;\n", + "rhov=0.598;#rhov is vapour density\n", + "hfg=2.27*10**6;#hfg is enthalpy of vaporisation\n", + "print\"hfg=\",hfg\n", + "#The average heat transfer coefficient over length L is hbarL=0.943*((rho*(rho-rhov)*g*h*L**3)/(mu*k*(Tg-Tw)))**(1/4)\n", + "print\"The average heat transfer coefficient over length L in W/(m**2*K)\"\n", + "hbarL=0.943*((rho*(rho-rhov)*g*hfg*k**3)/(mu*L*(Tg-Tw)))**(1/4)\n", + "print\"hbar=\",hbar\n", + "#The rate of heat transfer per unit width is Q=hbarL*L*(Tg-Tw)\n", + "print\"The rate of heat transfer per unit width in W/m \"\n", + "Q=hbarL*L*(Tg-Tw)\n", + "print\"Q=\",Q\n", + "#The rate of condensation is given by mdotc=(Q/hfg)\n", + "print\"The total rate of condensation in kg/(s*m)\"\n", + "mdotc=(Q/hfg)\n", + "print\"mdotc=\",mdotc\n", + "print\"We have to check whether the flow is laminar or not \"\n", + "#Reynolds no is given by ReL=(4*mdotc)/(mu)\n", + "print\"Reynolds no. is\"\n", + "ReL=(4*mdotc)/(mu)\n", + "print\"Therefore the flow is laminar and hence the use of the equation is justified\"\n", + "print\"ReL=\",ReL\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.2:pg-393" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 9, Example 2\n", + "The mean film temprature in°C is\n", + "tf= 95\n", + "hfg= 2270000.0\n", + "The average heat transfer coefficient in W/(m**2*K)\n", + "hbar= 0.745\n", + "The total rate of condensation in kg/s\n", + "Check for reynolds no.\n", + "mdotc= 1.54657700017e-06\n", + "Reynolds number is\n", + "Re= 0.00343683777816\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 9, Example 2\"\n", + "#Steam is condensed at temprature(Tg=100°C) on the outer surafce of a horizontal tube of length(L=3m) and diameter(d)=50mm or .05m\n", + "Tg=100;\n", + "L=3;\n", + "D=0.05;\n", + "#The Tube surface is maintained at temprature,Tw=90°C \n", + "Tw=90;\n", + "#tf is mean film temprature\n", + "print\"The mean film temprature in°C is\"\n", + "tf=(Tg+Tw)/2\n", + "print\"tf=\",tf\n", + "#The properties of condensate are density(rho=962kg/m**3),conductivity(k=0.677W/(m*K)),viscosity(mu=3*10**-4 kg/(m*s))\n", + "rho=962;\n", + "k=0.677;\n", + "mu=3*10**-4;\n", + "#The value rhov=0.598kg/m**3 and hfg=2.27*10**6J/kg at 100°C are found from steam table\n", + "#g is acceleration due to gravity =9.81m/s**2\n", + "g=9.81;\n", + "rhov=0.598;#vapour density\n", + "hfg=2.27*10**6;#enthalpy of vaporisation\n", + "print\"hfg=\",hfg\n", + "#The average heat transfer coefficient hbar=0.745*((rho*(rho-rhov)*g*hfg*k**3)/(mu*D*(Tg-Tw)))**(1/4)\n", + "print\"The average heat transfer coefficient in W/(m**2*K)\"\n", + "hbar=0.745*((rho*(rho-rhov)*g*hfg*k**3)/(mu*D*(Tg-Tw)))**(1/4)\n", + "print\"hbar=\",hbar\n", + "#The rate of condensation is given by mdotc=(hbar*(pi*D*L)*(Tg-Tw))/hfg\n", + "print\"The total rate of condensation in kg/s\"\n", + "mdotc=(hbar*(math.pi*D*L)*(Tg-Tw))/hfg\n", + "print\"Check for reynolds no.\"\n", + "print\"mdotc=\",mdotc\n", + "#For a horizontal tube having length,L,perimeter is P=2L\n", + "P=2*L;\n", + "#Re is reynolds number\n", + "print\"Reynolds number is\"\n", + "Re=(4*mdotc)/(mu*P)\n", + "print\"Re=\",Re\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.3:pg-394" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 9, Example 3\n", + "The mean film temprature in°C is\n", + "tf= 80\n", + "The average heat transfer coefficient over length L in W/(m**2*K)\n", + "hbar= 0.943\n", + "The rate of heat transfer in kW \n", + "Q= 0.016974\n", + "(b)The film thickness at the trailing edges in m is\n", + "delta= 1.0\n", + "The total rate of condensation in kg/s\n", + "mdotc= 7.47753303965e-06\n", + "Hence the average flow velocity at the trailing edge in m/s is\n", + "v= 2.56431174199e-08\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 9, Example 3\"\n", + "#A vertical plate having length,(L)=1.5m is maintained at temprature(Tw) of 60°C in the presence of saturated steam(temprature,Tg=100°C) at atmospheric pressure.\n", + "L=1.5;\n", + "Tg=100;\n", + "Tw=60;\n", + "#Consider the width of plate to be (B)=0.3m\n", + "B=0.3;\n", + "#tf is the mean film temprature\n", + "print\"The mean film temprature in°C is\"\n", + "tf=(Tg+Tw)/2\n", + "print\"tf=\",tf\n", + "#The relevant properties are desity(rho=972kg/m**3),conductivity(k=0.670W/(m*K)),viscosity(mu=3.54*10**-4 kg/(m*s))\n", + "#specific heat(cp=4.2J/(kg*K)),vapur density(rhov(100°C)=0.598k/m**3),Enthalpy of vaporisation(hfg(100°C)=2.27*10**6J/kg)\n", + "#g is acceleration due to gravity =9.81m/s**2\n", + "g=9.81;\n", + "rho=972;\n", + "k=0.670;\n", + "mu=3.54*10**-4;\n", + "cp=4.2;\n", + "rhov=0.598;\n", + "hfg=2.27*10**6;\n", + "#The average heat transfer coefficient over length L is hbar=0.943*((rho*(rho-rhov)*g*h*L**3)/(mu*k*(Tg-Tw)))**(1/4)\n", + "print\"The average heat transfer coefficient over length L in W/(m**2*K)\"\n", + "hbar=0.943*((rho*(rho-rhov)*g*hfg*k**3)/(mu*L*(Tg-Tw)))**(1/4)\n", + "print\"hbar=\",hbar\n", + "#The rate of heat transfer Q=hbarL*A*(Tg-Tw)\n", + "#Area(A)=L*B\n", + "A=L*B;\n", + "print\"The rate of heat transfer in kW \"\n", + "Q=(hbar*A*(Tg-Tw))/1000\n", + "print\"Q=\",Q\n", + "#The film thickness at the trailing edges is found out by delta=((4*mu*k*x*(Tg-Tw))/(g*hfg*rho*(rho-rhov)))**(1/4)\n", + "print\"(b)The film thickness at the trailing edges in m is\"\n", + "#at trailing edges x=1.5m\n", + "x=1.5;\n", + "delta=((4*mu*k*x*(Tg-Tw))/(g*hfg*rho*(rho-rhov)))**(1/4)\n", + "print\"delta=\",delta\n", + "#The rate of condensation is given by mdotc=(Q/hfg)\n", + "print\"The total rate of condensation in kg/s\"\n", + "mdotc=((Q*1000)/hfg)\n", + "print\"mdotc=\",mdotc\n", + "#v is the average flow velocity\n", + "print\"Hence the average flow velocity at the trailing edge in m/s is\"\n", + "v=(mdotc)/(rho*delta*B)\n", + "print\"v=\",v\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.4:pg-396" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 9, Example 4\n", + "The mean film temprature in°C is\n", + "tf= 30\n", + " Modified enthalpy in J/kg is\n", + "hfgdash= 131330.0\n", + "The average heat transfer coefficient over length L in W/(m**2*K)\n", + "hbar= 0.555\n", + "The total rate of condensation in kg/hr\n", + "mdotc= 0.00716923260703\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 9, Example 4\"\n", + "#Saturated freon-012 at Temprature(Tg)=35°C is condensed horizontal tube of diameter(D)=15mm or.015m at a lower vapour velocity.\n", + "#length,L=1m,Since per meter of tube is considered.\n", + "L=1;\n", + "Tg=35;\n", + "D=0.015;\n", + "#The tube wall is maintained at temprature(Tw)=25°C\n", + "Tw=25;\n", + "#For freon-12 at 35°C,enthalpy of vaporisation(hfg=131.33kJ/kg) and vapour density(rhov=42.68kg/m**3)\n", + "hfg=131.33*10**3;\n", + "rhov=42.68;\n", + "#tf is mean film temprature\n", + "print\"The mean film temprature in°C is\"\n", + "tf=(Tg+Tw)/2\n", + "print\"tf=\",tf\n", + "#The relevant properties at 30°C are density(rho=1.29*10**3kg/m**3),conductivity(k=0.071W/(mK)),viscosity(mu=2.50*10**-4kg/(m*s)),specific heat(cp=983J/(kg*°C))\n", + "rho=1.29*10**3;\n", + "k=0.071;\n", + "mu=2.50*10**-4;\n", + "cp=983;\n", + "#g is acceleration due to gravity =9.81m/s**2\n", + "g=9.81;\n", + "#we found the modified enthalpy by using following equation hfgdash=hfg+(3/8)*cp*(Tg-Tw)\n", + "print\" Modified enthalpy in J/kg is\"\n", + "hfgdash=hfg+((3/8)*cp*(Tg-Tw))\n", + "print\"hfgdash=\",hfgdash\n", + "#The average heat transfer coefficient over length L is hbar=0.555*((rho*(rho-rhov)*g*hfgdash*k**3)/(mu*D*(Tg-Tw)))**(1/4)\n", + "print\"The average heat transfer coefficient over length L in W/(m**2*K)\"\n", + "hbar=0.555*((rho*(rho-rhov)*g*hfgdash*k**3)/(mu*D*(Tg-Tw)))**(1/4)\n", + "print\"hbar=\",hbar\n", + "#The rate of condensation is given by mdotc=(hbar*(pi*D*L)*(Tg-Tw))/hfg\n", + "print\"The total rate of condensation in kg/hr\"\n", + "mdotc=((hbar*(math.pi*D*L)*(Tg-Tw))/hfg)*3600\n", + "print\"mdotc=\",mdotc\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.5:pg-397" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 9, Example 5\n", + "Heat transfer coefficient in W/m**2 is\n", + "h= 105042.262441\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 9, Example 5\"\n", + "#A nickel wire of length(L)=0.1m,Diameter(D)=1mm or .001m \n", + "#Submerged horizontally in water at pressure=1 atm(101kPa) requires current,I=150A at voltage ,E=2.2V to maintain wire at temprature(T1)=110°C\n", + "L=0.1;\n", + "T1=110;\n", + "D=0.001;\n", + "I=150;\n", + "E=2.2;\n", + "#Area(A)=(math.pi*D*L)\n", + "A=math.pi*D*L;\n", + "#The saturation temprature of water at one atmospheric pressure(101kPa) is T2=100°C.\n", + "T2=100;\n", + "#We can write from energy balance E*I=h*A*(T1-T2),we can find heat transfer coefficient from it.\n", + "#h is heat transfer coefficient\n", + "print\"Heat transfer coefficient in W/m**2 is\"\n", + "h=(E*I)/(A*(T1-T2))\n", + "print\"h=\",h\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.6:pg-398" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 9, Example 6\n", + "Critical Heat flux in W/m**2 is\n", + "qc= 202044.0\n", + "The burn out voltage in Volts is \n", + "E= 1.90421983831\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 9, Example 6\"\n", + "#In a laboratory experiment,A current(I)=100A burns out a nickel wire having Diameter(D)=1mm or 0.001mm,length(L)=0.3m\n", + "I=100;\n", + "D=.001;\n", + "L=0.3;\n", + "#It is submerged horizontally in water at one atmospheric pressure.\n", + "#For saturated water at one atmospheric pressure,density(rhol=960kg/m**3),vapour density(rhov=0.60kg/m**3),enthalpy of vaporisation(hfg=2.26*10**6J/kg),surface tension(sigma=0.055N/m).\n", + "rhol=960;\n", + "rhov=0.60;\n", + "hfg=2.26*10**6;\n", + "sigma=0.055;\n", + "#Area(A)=(pi*D*L)\n", + "A=math.pi*D*L;\n", + "#g is acceleration due to gravity =9.81m/s**2\n", + "g=9.81;\n", + "#The wire is burnt out when heat reaches its peak\n", + "#We use following expression to determine critical heat flux qc=0.149*hfg*rhov*((sigma*g*(rhol-rhov))/rhov**2)**(1/4)*((rhol+rhov)/rhol)**(1/2) \n", + "print\"Critical Heat flux in W/m**2 is\"\n", + "qc=0.149*hfg*rhov*((sigma*g*(rhol-rhov))/rhov**2)**(1/4)*((rhol+rhov)/rhol)**(1/2) \n", + "print\"qc=\",qc\n", + "#From the energy balance E*I=qc*A\n", + "#E is the burn out voltage\n", + "print\"The burn out voltage in Volts is \"\n", + "E=(qc*A)/I\n", + "print\"E=\",E\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.7:pg-399" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 9, Example 7\n", + "Heat flux q in W/m**2 is\n", + "The peak heat flux for water at one atmospheric pressure is qc=1.24*10**6(found in example 9.6).Since q<qc,The regime of boiling is nucleate.\n", + "q= 3636.07255495\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 9, Example 7\"\n", + "#A heated nickel plate at temprature (T1)=110°C is submereged in water at one atmospheric pressure.\n", + "T1=110;\n", + "#For nucleate boiling coefficient(csf=0.006) and n=1\n", + "csf=0.006;\n", + "n=1;\n", + "#For saturated water at one atmospheric pressure,density of liquid(rhol=960kg/m**3),vapour density(rhov=0.60kg/m**3)\n", + "#enthalpy of vaporisation(hfg=2.26*10**6J/kg),surface tension(sigma=0.055N/m),saturation temprature(T2)=100°C\n", + "T2=100;\n", + "rhol=960;\n", + "rhov=0.60;\n", + "hfg=2.26*10**6;\n", + "sigma=0.055;\n", + "#g is acceleration due to gravity =9.81m/s**2\n", + "g=9.81;\n", + "#We take specific heat of liquid(cpl=4.216kJ/(kg*K)),prandtl number of liquid(Prl=1.74),viscosity of liquid(mul=2.82*10**-4kg/(m*s))\n", + "cpl=4.216*10**3;\n", + "Prl=1.74;\n", + "mul=2.82*10**-4;\n", + "#The heat flux q is given by expression q=(mul*hfg)*(((rhol-rhov)*g)/sigma)**(1/2)*((cpl*(T1-T2))*(csf*hfg*prl**n))**3 \n", + "print\"Heat flux q in W/m**2 is\"\n", + "q=(mul*hfg)*(((rhol-rhov)*g)/sigma)**(1/2)*((cpl*(T1-T2))/(csf*hfg*Prl**n))**3 \n", + "print\"The peak heat flux for water at one atmospheric pressure is qc=1.24*10**6(found in example 9.6).Since q<qc,The regime of boiling is nucleate.\"\n", + "print\"q=\",q\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.8:pg-401" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 9, Example 8\n", + "The heat flux in W/m**2 is\n", + "q= 750000.0\n", + "The surface temprature in °C is\n", + "Tw= 120.0\n", + "The value of the coefficient csf is \n", + "csf= 0.0151329179422\n" + ] + } + ], + "source": [ + " \n", + " \n", + " \n", + " \n", + "import math\n", + " \n", + "print\"Introduction to heat transfer by S.K.Som, Chapter 9, Example 8\"\n", + "#A Copper bar whose one end is exposed to boiling water while the other end is encapsulated by an electric heater.\n", + "#Thermocouples are inserted in the bar to measure the tempratures at two locations A and b at distances xA=10mm and xB=30mm from the surface.\n", + "xA=.010;\n", + "xB=.030;\n", + "#Under steady condition nucleate boiling is maintained in saturated water at atmospheric pressure and the tempratures are TA=140°C and TB=180°C,n=1\n", + "TA=140;\n", + "TB=180;\n", + "n=1;\n", + "#The values of relevant properties of water and other parameters are \n", + "#density of liquid(rhol=960kg/m**3),vapour density(rhov=0.60kg/m**3),specific heat of liquid(cpl=4.216 kJ/(kg*K))\n", + "#enthalpy of vaporisation(hfg=2.26*106J/kg),prandtl number of liquiid(Prl=1.74),viscosity of liquid(mul=2.82*10**-4kg/(m*s)),surface tension(sigma1=0.055N/m).\n", + "rhol=960;\n", + "rhov=0.60;\n", + "cpl=4.216*10**3;\n", + "hfg=2.26*10**6;\n", + "Prl=1.74;\n", + "mul=2.82*10**-4;\n", + "sigma1=0.055;\n", + "#We have to know the value of heat flux(q) and the surface temprature(Tw).\n", + "#Since we know the tempratures at location A and B,The heat flux q is determined by fourier law of heat conduction in the bar at steady-state as\n", + "#q=k*((TB-TA)/(xB-xA))\n", + "#We take for copper conductivity,k=375W/(m*K)\n", + "k=375;\n", + "print\"The heat flux in W/m**2 is\"\n", + "q=k*((TB-TA)/(xB-xA))\n", + "print\"q=\",q\n", + "#g is acceleration due to gravity =9.81m/s**2\n", + "g=9.81;\n", + "#The surface temprature is given by Tw=TA-((TB-TA)/(xB-xA))*xA\n", + "print\"The surface temprature in °C is\"\n", + "Tw=TA-((TB-TA)/(xB-xA))*xA\n", + "print\"Tw=\",Tw\n", + "#Temprature,T=100°C,since copper bar is exposed to boiling water. \n", + "T=100;\n", + "#Now we use following equation to determine csf,q=(mul*hfg)*(((rhol-rhov)*g)/sigma1)**(1/2)*((cpl*(Tw-T))/(csf*hfg*Prl**n))**3 \n", + "#Manipulating above equation to find csf we get csf=((cpl*(Tw-T))/(((q/((mul*hfg)*(((rhol-rhov)*g)/sigma1)**(1/2))**(1/3))*hfg*Prl**n))\n", + "print\"The value of the coefficient csf is \"\n", + "csf=((cpl*(Tw-T))/(((q/((mul*hfg)*(((rhol-rhov)*g)/sigma1)**(1.0/2)))**(1.0/3))*hfg*Prl**n))#[NOTE:The answer in the book is incorrect.(Calcultion mistake)]\n", + "print\"csf=\",csf\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/chapter12.ipynb b/Introduction_to_Heat_Transfer_by_S._K._Som/chapter12.ipynb new file mode 100644 index 00000000..6fafa3fd --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/chapter12.ipynb @@ -0,0 +1,268 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 12:Principles of mass transfer" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.1:pg-496" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 12, Example 1\n", + "The flow area is given by A=(pi*di**2)/4 in m**2\n", + "3e-05\n", + "The molar concentration of mixture which is constant throughout is given by c=p/(R*T)\n", + "0.04079\n", + "Nhe=Nair=(A*c*Db*(Yao-yal))/L in kmol/sec\n", + "mass flow rate of helium is given by m=Mhe*Nhe in kg/sec \n", + "1.7e-11\n", + "mass flow rate of air is given by m=Mair*Nair in kg/sec \n", + "1.2e-10\n" + ] + } + ], + "source": [ + "\n", + "import math\n", + "\n", + "print \"Introduction to heat transfer by S.K.Som, Chapter 12, Example 1\"\n", + "#The pressure in the pipeline that transports helium gas at a rate of 4kg/s is maintained at pressure(p)=1 atm or 101*10**3 pascal.\n", + "#The internal daimeter of tube is (di)=6mm or .006m\n", + "#The temprature of both air and helium is (T)=25°C or 298 K.\n", + "#The diffusion coefficient of helium in air at normal atmosphere is(Dab)=7.20*10**-5 m**2/s\n", + "#The venting tube extends to a length(L)=20m in the atmosphere.\n", + "di=.006;\n", + "print \"The flow area is given by A=(pi*di**2)/4 in m**2\"\n", + "A=(math.pi*di**2)/4\n", + "print round(A,5)\n", + "p=101*10**3;\n", + "R=8.31*10**3;#gas constant\n", + "T=298;\n", + "Dab=7.20*10**-5;\n", + "L=20;\n", + "#c is the molar concentration\n", + "print \"The molar concentration of mixture which is constant throughout is given by c=p/(R*T)\"\n", + "c=p/(R*T)\n", + "print round(c,5)\n", + "#helium has been considered as species A so (helium mole fraction at the bottom of the tube)is Yao=1 and (helium mole fraction at the bottom of the tube)is Yal=0\n", + "Yal=0;\n", + "Yao=1;\n", + "#Nhe and Nair are molar rate of helium and air respectively\n", + "print \"Nhe=Nair=(A*c*Db*(Yao-yal))/L in kmol/sec\"\n", + "Nair=(A*c*Dab*(Yao-Yal))/L\n", + "Nhe=Nair;\n", + "#Molecular weights of air and helium are 29kg/kmol and 4 kg/kmol respectively.\n", + "Mhe=4;\n", + "Mair=29;\n", + "#mass flow rate of helium is mhe\n", + "print \"mass flow rate of helium is given by m=Mhe*Nhe in kg/sec \"\n", + "mhe=Mhe*Nhe\n", + "print round(mhe,12)\n", + "#mass flow rate of air is mair\n", + "print \"mass flow rate of air is given by m=Mair*Nair in kg/sec \"\n", + "mair=Mair*Nair\n", + "print round(mair,11)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.2:pg-500" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 12, Example 2\n", + "The film temperature is given by Tf=(T+Tw)/2 in °C \n", + "30.0\n", + "The density of water at bulb surface is given by rhos=(Ps*M)/(R*Ts) in kg/m**3 \n", + "0.0173\n", + "The concentration of water vapour at free stream is rhoinf=rhos-(hheat/hmass)*((Tinf-Ts)/hfg) in kg/m**3 \n", + "0.00784\n", + "The relative humidity is given by rehu=(rhoinf/rhosteam)*100 in percentage \n", + "15.38028\n" + ] + } + ], + "source": [ + "\n", + "import math\n", + "print \"Introduction to heat transfer by S.K.Som, Chapter 12, Example 2\"\n", + "#The temprature of atmospheric air (T)=40°C which flows over a wet bulb thermometer.\n", + "#The reading of wet bulb thermometer which is called the wet bulb temprature is (Tw)=20°C\n", + "T=40;\n", + "Tw=20.0;\n", + "#Tf is the film temprature\n", + "print \"The film temperature is given by Tf=(T+Tw)/2 in °C \"\n", + "Tf=(T+Tw)/2\n", + "print round(Tf,5)\n", + "Tinf=T;#surrounding temprature\n", + "#The properties of air at film temprature are density(rho=1.13kg/m**3),specific heat(cp=1.007kJ/(kg*K)),Thermal diffusivity(alpha=0.241*10**-4m**2/s)\n", + "#The diffusivity Dab=0.26*10**-4 m**2/s\n", + "#The enthalpy of vaporisation of water at 20°C is hfg=2407kJ/kg or 2407*10**3 J/kg\n", + "#The partial pressure of water vapour is the saturation pressure corresponding to 20°C so from steam table Ps=2.34kPa or 2.34*10**3 Pa.\n", + "rho=1.13;\n", + "cp=1.007*10**3;\n", + "alpha=0.241*10**-4;\n", + "Dab=0.26*10**-4;\n", + "hfg=2407*10**3;\n", + "Ps=2.34*10**3;\n", + "#The temprature at bulb surface Ts=20°C or 293K\n", + "Ts=Tw+273;#in kelvin\n", + "R=8.31*10**3;#gas constant\n", + "#The molecular weight of water is M=18\n", + "M=18;\n", + "#The density of water at bulb surface is rhos\n", + "print \"The density of water at bulb surface is given by rhos=(Ps*M)/(R*Ts) in kg/m**3 \"\n", + "rhos=(Ps*M)/(R*Ts)\n", + "print round(rhos,5)\n", + "#Let X=hheat/hmass=rho*cp*(alpha/Dab)**(2/3).\n", + "X=rho*cp*(alpha/Dab)**(2/3);\n", + "#At steady atate (Rate of heat transfer from air to wet cover of thermometer bulb)=(Heat removed by evaporation of water from the wet cover of thermometer bulb)\n", + "#hheat*(Tinf-Ts)=hmass*(rhos-rhoinf)*hfg\n", + "#Rearranging above we get rhoinf=rhos-(hheat/hmass)*((Tinf-Ts)/hfg)\n", + "#The concentration of water vapour at free stream is rhoinf\n", + "print \"The concentration of water vapour at free stream is rhoinf=rhos-(hheat/hmass)*((Tinf-Ts)/hfg) in kg/m**3 \"\n", + "rhoinf=rhos-((X)*((Tinf-Tw)/hfg))\n", + "print round(rhoinf,5)\n", + "#The mass concentration of saturated water vapour(rhosteam) at 40°C(as found from steam table) is .051 kg/m**3\n", + "rhosteam=.051;\n", + "#The relative humidity is (rehu)\n", + "print \"The relative humidity is given by rehu=(rhoinf/rhosteam)*100 in percentage \"\n", + "rehu=(rhoinf/rhosteam)*100\n", + "print round(rehu,5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.3:pg-503" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Introduction to heat transfer by S.K.Som, Chapter 12, Example 3\n", + "The mole fraction of water vapour at the interface is given by Yao=pvapour/p\n", + "0.03963\n", + "The total molecular concentration (c) through the tube remains constant is given by c=p/(R*T) in kmol/m**3\n", + "0.03286\n", + "The cross sectional area of the tube is given by A=(pi*(di*10**-3)**2)/4 in m**2\n", + "0.00096\n", + "The molar flow rate of water vapour is given by N=mdot/M in kmol/s\n", + "1e-10\n", + "The diffusion coefficient of water vapour is Dab=(N*L)/(c*A*ln[(1-Yal)/(1-Yao)]) in m/s\n", + "3e-05\n" + ] + } + ], + "source": [ + "\n", + "import math\n", + "\n", + "print \"Introduction to heat transfer by S.K.Som, Chapter 12, Example 3\"\n", + "#The diameter of tube is (di)=35mm which measures binary diffusion coefficient of water vapour in air at temprature,T=20°C or 293 K.\n", + "#The measurement is done at height of 1500 m where the atmospheric pressure is (p)=80kPa.\n", + "p=80;\n", + "T=293.0;\n", + "#The distance from the water surface to the open end of the tube is L=500 mm or 0.5m.\n", + "L=.5;\n", + "#After t=12 days of continuous operation at constant pressure and temprature the amount of water evaporated was measured to be m= 1.2*10**-3kg.\n", + "m= 1.2*10**-3;\n", + "#From the steam table pvapour=3.17kPa\n", + "pvapour=3.17;#partial pressure of vapour\n", + "#Yao is the mole fraction of water vapour at the interface\n", + "print \"The mole fraction of water vapour at the interface is given by Yao=pvapour/p\"\n", + "Yao=pvapour/p\n", + "print round(Yao,5)\n", + "#The mole fraction of water vapour at the top end of the tube is Yal=0\n", + "Yal=0;\n", + "R=8.31*10**3;#gas constant\n", + "#The total molecular concentration is (c)\n", + "print \"The total molecular concentration (c) through the tube remains constant is given by c=p/(R*T) in kmol/m**3\"\n", + "c=(p*10**3)/(R*T)\n", + "print round(c,5)\n", + "di=35;\n", + "#A is the cross sectional area of the tube\n", + "print \"The cross sectional area of the tube is given by A=(pi*(di*10**-3)**2)/4 in m**2\"\n", + "A=(math.pi*(di*10**-3)**2)/4\n", + "print round(A,5)\n", + "#The molecular weight of wate is M=18\n", + "M=18;\n", + "#The mass flow rate is given by mdot=(m/(12*24*3600))\n", + "mdot=(m/(12*24*3600));\n", + "#N is the molar flow rate of water vapour\n", + "print \"The molar flow rate of water vapour is given by N=mdot/M in kmol/s\"\n", + "N=mdot/M\n", + "print round(N,10)\n", + "#The molar flow rate of water vapour can also be written as N=(c*Dab*A*ln[(1-Yal)/(1-Yao)])/L\n", + "#The diffusion coefficient of water vapour is Dab=(N*L)/(c*A*ln[(1-Yal)/(1-Yao)])\n", + "#let us take X=math.log10((1-Yal)/(1-Yao)) and Y=math.log10(2.7182)\n", + "X=math.log10((1-Yal)/(1-Yao));\n", + "Y=math.log10(2.7182);\n", + "#ln[(1-Yal)/(1-Yao)] is given by\n", + "ln=X/Y;\n", + "print \"The diffusion coefficient of water vapour is Dab=(N*L)/(c*A*ln[(1-Yal)/(1-Yao)]) in m/s\"\n", + "Dab=(N*L)/(c*A*ln)\n", + "print round(Dab,5)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/screenshots/9.7.png b/Introduction_to_Heat_Transfer_by_S._K._Som/screenshots/9.7.png Binary files differnew file mode 100644 index 00000000..1eb15165 --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/screenshots/9.7.png diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/screenshots/Ex10.7.png b/Introduction_to_Heat_Transfer_by_S._K._Som/screenshots/Ex10.7.png Binary files differnew file mode 100644 index 00000000..c72d6352 --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/screenshots/Ex10.7.png diff --git a/Introduction_to_Heat_Transfer_by_S._K._Som/screenshots/Ex11.4.png b/Introduction_to_Heat_Transfer_by_S._K._Som/screenshots/Ex11.4.png Binary files differnew file mode 100644 index 00000000..64509f5e --- /dev/null +++ b/Introduction_to_Heat_Transfer_by_S._K._Som/screenshots/Ex11.4.png diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter01.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter01.ipynb new file mode 100644 index 00000000..1fc19029 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter01.ipynb @@ -0,0 +1,171 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 1. Fundamental Concepts of Thermodynamics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.1:pg-9" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Final Tyre pressure is 3.61e+05 Pa\n" + ] + } + ], + "source": [ + "import math \n", + "Pi = 3.21e5 #Recommended tyre pressure, Pa\n", + "Ti = -5.00 #Initial Tyre temperature, °C\n", + "Tf = 28.00 #Final Tyre temperature, °C\n", + "\n", + "#Calculations\n", + "Ti = 273.16 + Ti\n", + "Tf = 273.16 + Tf\n", + "pf = Pi*Tf/Ti #Final tyre pressure, Pa\n", + "\n", + "#Results\n", + "print 'Final Tyre pressure is %6.2e Pa'%pf" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.2:pg-9" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Moles of He=0.121, Ne=0.303 and, Xe=0.040 in mol\n", + "Mole fraction of xHe=0.261, xNe=0.652 and, xXe=0.087\n", + "Final pressure is 1.917 bar\n", + "Partial pressure of pHe=0.500, pNe=1.250 and, pXe=0.167 in bar\n" + ] + } + ], + "source": [ + "import math \n", + "phe = 1.5 #Pressure in Helium chamber, bar\n", + "vhe = 2.0 #Volume of Helium chamber, L\n", + "pne = 2.5 #Pressure in Neon chamber, bar\n", + "vne = 3.0 #Volume of Neon chamber, L\n", + "pxe = 1.0 #Pressure in Xenon chamber, bar\n", + "vxe = 1.0 #Volume of Xenon chamber, L\n", + "R = 8.314e-2 #Ideal Gas Constant, L.bar/(mol.K)\n", + "T = 298 #Temperature of Gas, K\n", + "#Calculations\n", + "\n", + "nhe = phe*vhe/(R*T) #Number of moles of Helium, mol\n", + "nne = pne*vne/(R*T) #Number of moles of Neon, mol\n", + "nxe = pxe*vxe/(R*T) #Number of moles of Xenon, mol\n", + "n = nhe + nne + nxe #Total number of moles, mol\n", + "V = vhe + vne + vxe #Total volume of system, L\n", + "xhe = nhe/n\n", + "xne = nne/n\n", + "xxe = nxe/n\n", + "P = n*R*T/(V)\n", + "phe = P*xhe #Partial pressure of Helium, bar\n", + "pne = P*xne #Partial pressure of Neon, bar\n", + "pxe = P*xxe #Partial pressure of Xenon, bar\n", + "\n", + "#Results\n", + "print 'Moles of He=%4.3f, Ne=%4.3f and, Xe=%4.3f in mol'%(nhe,nne,nxe) \n", + "print 'Mole fraction of xHe=%4.3f, xNe=%4.3f and, xXe=%4.3f'%(xhe,xne,xxe)\n", + "print 'Final pressure is %4.3f bar'%P\n", + "print 'Partial pressure of pHe=%4.3f, pNe=%4.3f and, pXe=%4.3f in bar'%(phe,pne,pxe)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.4:pg-12" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Pressure from ideal gas law = 9.98e-02 bar nad from Van der Waals equation = 9.98e-02 bar \n", + "Pressure from ideal gas law = 249.4 bar nad from Van der Waals equation = 269.9 bar \n" + ] + } + ], + "source": [ + "\n", + "import math \n", + "T = 300.0 #Nitrogen temperature, K\n", + "v1 = 250.00 #Molar volume, L\n", + "v2 = 0.1 #Molar volume, L\n", + "a = 1.37 #Van der Waals parameter a, bar.dm6/mol2 \n", + "b = 0.0387 #Van der Waals parameter b, dm3/mol\n", + "R = 8.314e-2 #Ideal Gas Constant, L.bar/(mol.K)\n", + "n = 1.\n", + "#Calculations\n", + "\n", + "p1 = n*R*T/v1 \n", + "p2 = n*R*T/v2\n", + "pv1 = n*R*T/(v1-n*b)- n**2*a/v1**2\n", + "pv2 = n*R*T/(v2-n*b)- n**2*a/v2**2\n", + "\n", + "#Results\n", + "print 'Pressure from ideal gas law = %4.2e bar nad from Van der Waals equation = %4.2e bar '%(p1, pv1)\n", + "print 'Pressure from ideal gas law = %4.1f bar nad from Van der Waals equation = %4.1f bar '%(p2, pv2)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter02.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter02.ipynb new file mode 100644 index 00000000..04d54ef7 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter02.ipynb @@ -0,0 +1,418 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 02: Heat, Work, Internal Energy, Enthalpy, and The First Law of Thermodynamics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.1:pg-20" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Part a: Work done in expansion is -16.2 kJ\n", + "Part b: Work done in expansion of bubble is -1.73 J\n", + "Part c: Work done in paasing the cuurent through coil is 1.39 kJ\n", + "Part d: Work done stretching th fiber is -1.12 J\n" + ] + } + ], + "source": [ + "import math #Part a\n", + "vi = 20.0 #Initial volume of ideal gas, L\n", + "vf = 85.0 #final volume of ideal gas, L\n", + "Pext = 2.5 #External Pressure against which work is done, bar\n", + "\n", + "#Calculations\n", + "w = -Pext*1e5*(vf-vi)*1e-3\n", + "\n", + "#Results\n", + "print 'Part a: Work done in expansion is %6.1f kJ'%(w/1000)\n", + "\n", + "import math #Part b\n", + "ri = 1.00 #Initial diameter of bubble, cm\n", + "rf = 3.25 #final diameter of bubble, cm\n", + "sigm = 71.99 #Surface tension, N/m\n", + "\n", + "#Calculations\n", + "w = -2*sigm*4*math.pi*(rf**2-ri**2)*1e-4\n", + "\n", + "#Results\n", + "print 'Part b: Work done in expansion of bubble is %4.2f J'%w\n", + "\n", + "import math #Part c\n", + "i = 3.20 #Current through heating coil, A \n", + "v = 14.5 #fVoltage applied across coil, volts\n", + "t = 30.0 #time for which current is applied,s\n", + "\n", + "#Calculations\n", + "w = v*i*t\n", + "\n", + "#Results\n", + "print 'Part c: Work done in pasing the cuurent through coil is %4.2f kJ'%(w/1000)\n", + "\n", + "import math #Part d\n", + "k = 100.0 #Constant in F = -kx, N/cm \n", + "dl = -0.15 #stretch , cm\n", + "\n", + "#Calculations\n", + "w = -k*(dl**2-0)/2\n", + "\n", + "#Results\n", + "print 'Part d: Work done stretching th fiber is %4.2f J'%w" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.2:pg-22" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Heat added to the water 24.00 kJ\n", + "Work done in vaporizing liquid is -1703.84 J\n" + ] + } + ], + "source": [ + "import math \n", + "m = 100.0 #Mass of water, g \n", + "T = 100.0 #Temperature of water, °C\n", + "Pext = 1.0 #External Pressure on assembly, bar\n", + "x = 10.0 #percent of water vaporised at 1 bar,-\n", + "i = 2.00 #current through heating coil, A\n", + "v = 12.0 #Voltage applied, v\n", + "t = 1.0e3 #time for which current applied, s \n", + "rhol = 997 #Density of liquid, kg/m3\n", + "rhog = 0.59 #Density of vapor, kg/m3\n", + "\n", + "#Calculations\n", + "q = i*v*t\n", + "vi = m/(rhol*100)*1e-3\n", + "vf = m*(100-x)*1e-3/(rhol*100) + m*x*1e-3/(rhog*100)\n", + "w = -Pext*(vf-vi)*1e5\n", + "#Results\n", + "print 'Heat added to the water %4.2f kJ'%(q/1000)\n", + "print 'Work done in vaporizing liquid is %4.2f J'%w" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.3:pg-27" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Heat removed by water at constant pressure 89.03 kJ\n" + ] + } + ], + "source": [ + "import math #Part d\n", + "m = 1.5 #mass of water in surrounding, kg \n", + "dT = 14.2 #Change in temperature of water, °C or K\n", + "cp = 4.18 #Specific heat of water at constant pressure, J/(g.K)\n", + "\n", + "#Calculations\n", + "qp = m*cp*dT\n", + "\n", + "#Results\n", + "print 'Heat removed by water at constant pressure %4.2f kJ'%qp" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.4:pg-32" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "For reverssible Isothermal expansion\n", + "Work done = -1.93e+02 J\n", + "For Single step reverssible expansion\n", + "Work done = -9.22e+03 J\n", + "For Two step reverssible expansion\n", + "Work done = -1.29e+04 J\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "import math \n", + "n = 2.0 #moles of ideal gas\n", + "R = 8.314 #Ideal gas constant, bar.L/(mol.K)\n", + "#For reverssible Isothermal expansion \n", + "Pi1 = 25.0 #Initial Pressure of ideal gas, bar\n", + "Vi1 = 4.50 #Initial volume of ideal gas, L\n", + "Pf1 = 4.50 #Fianl Pressure of ideal gas, bar\n", + "Pext = 4.50 #External pressure, bar \n", + "Pint = 11.0 #Intermediate pressure, bar\n", + "\n", + "#Calcualtions reverssible Isothermal expansion \n", + "T1 = Pi1*Vi1/(n*R)\n", + "Vf1 = n*R*T1/Pf1\n", + "w = -n*R*T1*log(Vf1/Vi1)\n", + "\n", + "#Results\n", + "print 'For reverssible Isothermal expansion'\n", + "print 'Work done = %4.2e J'%w\n", + "\n", + "#Calcualtions Single step irreverssible expansion \n", + "\n", + "w = -Pext*1e5*(Vf1-Vi1)*1e-3\n", + "\n", + "#Results\n", + "print 'For Single step reverssible expansion'\n", + "print 'Work done = %4.2e J'%w\n", + "\n", + "#Calcualtions Two step irreverssible expansion \n", + "Vint = n*R*T1/(Pint)\n", + "w = -Pint*1e5*(Vint-Vi1)*1e-3 - Pf1*1e5*(Vf1-Vint)*1e-3\n", + "\n", + "#Results\n", + "print 'For Two step reverssible expansion'\n", + "print 'Work done = %4.2e J'%w\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.5:pg-37" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "For Path q w DU DH \n", + "1-2 139463.96 -39840.00 99623.96 139463.96\n", + "2-3 -99623.96 0.00 -99623.96 -139463.96\n", + "3-1 -5343.33 5343.33 0.00 0.00\n", + "Overall 34496.67 -34496.67 0.00 0.00\n", + "all values are in J\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "n = 2.5 #moles of ideal gas\n", + "R = 0.08314 #Ideal gas constant, bar.L/(mol.K)\n", + "cvm = 20.79 #Heat Capacity at constant volume, J/(mol.K)\n", + "\n", + "p1 = 16.6 #Pressure at point 1, bar\n", + "v1 = 1.00 #Volume at point 1, L\n", + "p2 = 16.6 #Pressure at point 2, bar\n", + "v2 = 25.0 #Volume at point 2, L \n", + "v3 = 25.0 #Volume at point 3, L\n", + "\n", + "#Calculations\n", + "T1 = p1*v1/(n*R)\n", + "T2 = p2*v2/(n*R)\n", + "T3 = T1 #from problem statement\n", + " #for path 1-2\n", + "DU12 = n*cvm*(T2-T1)\n", + "w12 = -p1*1e5*(v2-v1)*1e-3\n", + "q12 = DU12 - w12\n", + "DH12 = DU12 + n*R*(T2-T1)*1e2\n", + "\n", + " #for path 2-3\n", + "w23 = 0.0\n", + "DU23 = q23 = n*cvm*(T3-T2)\n", + "DH23 = -DH12\n", + "\n", + "\n", + " #for path 3-1\n", + "DU31 = 0.0 #Isothemal process\n", + "DH31 = 0.0\n", + "w31 = -n*R*1e2*T1*log(v1/v3)\n", + "q31 = -w31\n", + "\n", + "DU = DU12+DU23+DU31\n", + "w = w12+w23+w31\n", + "q = q12+q23+q31\n", + "DH = DH12+DH23+DH31\n", + "\n", + "#Results\n", + "print 'For Path q w DU DH '\n", + "print '1-2 %7.2f %7.2f %7.2f %7.2f'%(q12,w12,DU12,DH12)\n", + "print '2-3 %7.2f %7.2f %7.2f %7.2f'%(q23,w23,DU23,DH23)\n", + "print '3-1 %7.2f %7.2f %7.2f %7.2f'%(q31,w31,DU31,DH31)\n", + "print 'Overall %7.2f %7.2f %7.2f %7.2f'%(q,w,DU,DH)\n", + "print 'all values are in J'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.6:pg-38" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The final temperature at end of adiabatic procees is 268.5 K\n", + "The enthalpy change of adiabatic procees is -2937.0 J\n", + "The Internal energy change of adiabatic procees is -1762.2 J\n", + "The work done in expansion of adiabatic procees is -1762.2 J\n" + ] + } + ], + "source": [ + "\n", + "import math #Part d\n", + "n = 2.5 #moles of ideal gas\n", + "R = 8.314 #Ideal gas constant, J/(mol.K)\n", + "cvm = 12.47 #Heat Capacity at constant volume, J/(mol.K)\n", + "\n", + "pext = 1.00 #External Pressure, bar\n", + "Ti = 325. #Initial Temeprature, K\n", + "pi = 2.50 #Initial Pressure, bar\n", + "pf = 1.25 #Final pressure, bar \n", + "\n", + "#Calculations Adiabatic process q = 0; DU = w\n", + "q = 0.0 \n", + "Tf = Ti*(cvm + R*pext/pi)/(cvm + R*pext/pf )\n", + "DU = w = n*cvm*(Tf-Ti)\n", + "DH = DU + n*R*(Tf-Ti)\n", + "\n", + "#Results\n", + "print 'The final temperature at end of adiabatic procees is %4.1f K'%Tf\n", + "print 'The enthalpy change of adiabatic procees is %4.1f J'%DH\n", + "print 'The Internal energy change of adiabatic procees is %4.1f J'%DU\n", + "print 'The work done in expansion of adiabatic procees is %4.1f J'%w\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.7:pg-40" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Final temperature of cloud 265.2 K\n", + "You can expect cloud\n" + ] + } + ], + "source": [ + "from math import log, exp\n", + " #Part d\n", + "h1 = 1000.0 #initial Altitude of cloud, m \n", + "hf = 3500.0 #Final Altitude of cloud, m \n", + "p1 = 0.802 #Pressure at h1, atm \n", + "pf = 0.602 #Pressure at hf, atm\n", + "T1 = 288.0 #Initial temperature of cloud, K\n", + "cp = 28.86 #Specific heat of air, J/mol.K\n", + "R = 8.314 #Gas constant, J/mol.K\n", + "\n", + "#Calculations\n", + "Tf = exp(-(cp/(cp-R)-1)/(cp/(cp-R))*log(p1/pf))*T1\n", + "#Results\n", + "print 'Final temperature of cloud %4.1f K'%Tf\n", + "if Tf < 273:\n", + " print 'You can expect cloud'\n", + "else:\n", + " print 'You can not expect cloud'" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter03.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter03.ipynb new file mode 100644 index 00000000..351d347c --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter03.ipynb @@ -0,0 +1,243 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 3: Importance of State Functions: Internal Energy and Enthalpy" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.2:pg-49" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Pressure increase in capillary 100.0 bar\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "betaOH = 11.2e-4 #Thermal exapnasion coefficient of ethanol, °C\n", + "betagl = 2.00e-5 #Thermal exapnasion coefficient of glass, °C\n", + "kOH = 11.0e-5 #Isothermal compressibility of ethanol, /bar\n", + "dT = 10.0 #Increase in Temperature, °C\n", + "\n", + "#Calcualtions\n", + "vfbyvi = (1+ betagl*dT)\n", + "dP = betaOH*dT/kOH-(1./kOH)*log(vfbyvi)\n", + "\n", + "#Results\n", + "print 'Pressure increase in capillary %4.1f bar'%dP" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.4:pg-53" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Minimum detectable temperature change of gas +- 6.0 °C\n" + ] + } + ], + "source": [ + "import math\n", + "cpsubysy = 1000 #Specific heat ration of surrounding and system\n", + "Tpreci = 0.006 #Precision in Temperature measurement, °C\n", + "\n", + "#Calcualtions\n", + "dtgas = -cpsubysy*(-Tpreci)\n", + "\n", + "#Results\n", + "print 'Minimum detectable temperature change of gas +-%4.1f °C'%dtgas" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.6:pg-54" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "dUT = 24.4 J: This is wrongly reported in book\n", + "dUV = 4174.1 J\n" + ] + } + ], + "source": [ + "from sympy import symbols, integrate\n", + "\n", + "\n", + "n = 1.0 #number of mole of N2, mol \n", + "Ti = 200.0 #Intial Temperature, K\n", + "Pi = 5.00 #Initial pressure, bar\n", + "Tf = 400.0 #Intial Temperature, K\n", + "Pf = 20.0 #Initial pressure, bar\n", + "a = 0.137 #van der Waals constant a, Pa.m3/(mol2)\n", + "b = 3.87e-5 #van der Waals constant b, m3/(mol)\n", + "A, B, C, D = 22.5, -1.187e-2,2.3968e-5, -1.0176e-8\n", + " #Constants in Cvm equation J, K and mol\n", + "vi = 3.28e-3 #initial volume, m3/mol\n", + "vf = 7.88e-3 #Final volume, m3/mol\n", + "\n", + "#Calculations\n", + "T = symbols('T')\n", + "dUT = n**2*a*(1./vi-1./vf)\n", + "dUV = integrate( A + B*T + C*T**2 + D*T**3, (T,Ti,Tf))\n", + "\n", + "#Results\n", + "print 'dUT = %4.1f J: This is wrongly reported in book'%dUT\n", + "print 'dUV = %4.1f J'%dUV" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.7:pg-57" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "dH = 46.8 kJ\n", + "qp = 30.8 kJ\n", + "Error in calculations 34.3\n" + ] + } + ], + "source": [ + "from sympy import symbols, integrate\n", + "\n", + "import math\n", + "m = 143.0 #Mass of graphite, g \n", + "Ti = 300.0 #Intial Temperature, K\n", + "Tf = 600.0 #Intial Temperature, K\n", + "A, B, C, D, E = -12.19,0.1126,-1.947e-4,1.919e-7,-7.8e-11\n", + " #Constants in Cvm equation J, K and mol\n", + "M = 12.01\n", + "\n", + "#Calculations\n", + "\n", + "T = symbols('T')\n", + "dH = (m/M)*integrate( A + B*T + C*T**2 + D*T**3 + E*T**4, (T,Ti,Tf))\n", + "expr = A + B*T + C*T**2 + D*T**3 + E*T**4\n", + "cpm = expr.subs(T,300.)\n", + "qp = (m/M)*cpm*(Tf-Ti)\n", + "err = abs(dH-qp)/dH\n", + "#Results\n", + "print 'dH = %6.1f kJ'%(dH/1000)\n", + "print 'qp = %6.1f kJ'%(qp/1000)\n", + "print 'Error in calculations %4.1f'%(err*100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.9:pg-59" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Enthalpy change for change in state of methanol is 39.9 kJ\n" + ] + } + ], + "source": [ + "import math\n", + "m = 124.0 #Mass of liquid methanol, g\n", + "Pi = 1.0 #Initial Pressure, bar\n", + "Ti = 298.0 #Intial Temperature, K\n", + "Pf = 2.5 #Final Pressure, bar\n", + "Tf = 425.0 #Intial Temperature, K\n", + "rho = 0.791 #Density, g/cc\n", + "Cpm = 81.1 #Specifi heat, J/(K.mol)\n", + "M = 32.04\n", + "\n", + "#Calculations\n", + "n = m/M\n", + "DH = n*Cpm*(Tf-Ti)+ m*(Pf-Pi)*1e-6/rho\n", + "\n", + "#Results\n", + "print 'Enthalpy change for change in state of methanol is %4.1f kJ'%(DH/1000)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter04.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter04.ipynb new file mode 100644 index 00000000..7d42ed97 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter04.ipynb @@ -0,0 +1,211 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 04: Thermochemistry" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.1:pg-72" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Avergae Enthalpy change required for breaking both OH bonds 927.0 kJ/mol\n", + "Average bond energy required for breaking both OH bonds 461.0 kJ/mol\n" + ] + } + ], + "source": [ + "import math\n", + "DH0_H2O = 241.8 #Std Enthalpy of reaxtion of Water Fomation backward rxn, kJ/mol\n", + "DH0_2H = 2*218.0 #Std Enthalpy of formation of Hydrogen atom, kJ/mol\n", + "DH0_O = 249.2 #Std Enthalpy of formation of Oxygen atom, kJ/mol\n", + "R = 8.314 #Ideal gas constant, J/(mol.K)\n", + "Dn = 2.0\n", + "T = 298.15 #Std. Temperature, K\n", + "#Calculation\n", + "DH0_2HO = DH0_H2O + DH0_2H + DH0_O\n", + "DU0 = (DH0_2HO - Dn*R*T*1e-3)/2\n", + "\n", + "#Results\n", + "print 'Avergae Enthalpy change required for breaking both OH bonds %4.1f kJ/mol'%DH0_2HO\n", + "print 'Average bond energy required for breaking both OH bonds %4.1f kJ/mol'%DU0" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.2:pg-74" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Heat of reaction for HCl formation is -95.1 kJ/mol\n" + ] + } + ], + "source": [ + "import numpy as np\n", + "from sympy import symbols, integrate\n", + "\n", + "#Variable Declaration\n", + "a = ([29.064, 31.695, 28.165]) #Constant 'a' in Heat capacity equation, J/(mol.K)\n", + "b = ([-0.8363e-3, 10.143e-3, 1.809e-3]) #Constant 'b' in Heat capacity equation, J/(mol.K)\n", + "c = ([20.111e-7, -40.373e-7, 15.464e-7]) #Constant 'a' in Heat capacity equation, J/(mol.K)\n", + "delHf0HCl = -92.3 #Std. Heat of formation of HCl, kJ/mol\n", + "T1, T2 = 298.15, 1450 #Std and final temperature, K\n", + "\n", + "#Calculations\n", + "T = symbols('T')\n", + "DA = a[2]-(a[0]+a[1])/2\n", + "DB = b[2]-(b[0]+b[1])/2\n", + "DC = c[2]-(c[0]+c[1])/2\n", + "\n", + "expr = integrate( DA + DB*T + DC*T**2, (T,T1,T2))\n", + "DHR1450= expr/1000 + delHf0HCl\n", + "\n", + "#Results\n", + "print 'Heat of reaction for HCl formation is %4.1f kJ/mol'%DHR1450" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.3:pg-75" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Calorimeter constant 7.59e+03 J/°C\n", + "Enthalpy of rection for benzene -3.26e+06 J/mol\n" + ] + } + ], + "source": [ + "\n", + "import math\n", + "ms1 = 0.972 #Mass of cyclohexane, g\n", + "DT1 = 2.98 #Change in temperature for bath, °C\n", + "DUR1 = -3913e3 #Std Internal energy change, J/mol\n", + "mw = 1.812e3 #Mass of water, g\n", + "ms2 = 0.857 #Mass of benzene, g\n", + "Ms1 = 84.16\n", + "Ms2 = 78.12\n", + "DT2 = 2.36 #Change in temperature for bath, °C\n", + "Mw = 18.02\n", + "Cpw = 75.3 \n", + "\n", + "#Calculation\n", + "\n", + "Ccal = ((-ms1/Ms1)*DUR1-(mw/Mw)*Cpw*DT1)/DT1\n", + "DUR2 = (-Ms2/ms2)*((mw/Mw)*Cpw*DT2+Ccal*DT2)\n", + "\n", + "#Results\n", + "print 'Calorimeter constant %4.2e J/°C'%Ccal\n", + "print 'Enthalpy of rection for benzene %4.2e J/mol'%DUR2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.4:pg-77" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Enthalpy of solution for Na2SO4 -2.81e+03 J/mol\n", + "Enthalpy of solution for Na2SO4 from Data -2.40e+00 J/mol\n" + ] + } + ], + "source": [ + "\n", + "import math\n", + "ms = 1.423 #Mass of Na2SO4, g\n", + "mw = 100.34 #Mass of Na2SO4, g\n", + "DT = 0.037 #Change in temperature for solution, K\n", + "Mw = 18.02 #Molecular wt of Water\n", + "Ms = 142.04 #Molecular wt of ms Na2SO4\n", + "Ccal = 342.5 #Calorimeter constant, J/K\n", + "#Data\n", + "DHfNa = -240.1\n", + "DHfSO4 = -909.3\n", + "DHfNa2SO4 = -1387.1\n", + "\n", + "#Calculation\n", + "DHs = (-Ms/ms)*((mw/Mw)*Cpw*DT+Ccal*DT)\n", + "DHsolD = 2*DHfNa + DHfSO4 - DHfNa2SO4\n", + "\n", + "#Results\n", + "print 'Enthalpy of solution for Na2SO4 %4.2e J/mol'%DHs\n", + "print 'Enthalpy of solution for Na2SO4 from Data %4.2e J/mol'%DHsolD" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter05.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter05.ipynb new file mode 100644 index 00000000..29d2cd41 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter05.ipynb @@ -0,0 +1,421 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 5: Enthalpy and the Second and Third Laws of Thermodynamics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.1:pg-90" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Efficiency of heat engine is 0.600\n", + "Work done by heat engine is 600.0 J\n" + ] + } + ], + "source": [ + "import math\n", + "Th, Tc = 500.,200. #Temeperatures IN Which reversible heat engine works, K\n", + "q = 1000. #Heat absorbed by heat engine, J\n", + "\n", + "#Calcualtions\n", + "eps = 1.-Tc/Th\n", + "w = eps*q\n", + "\n", + "#Results\n", + "print 'Efficiency of heat engine is %4.3f'%eps\n", + "print 'Work done by heat engine is %4.1f J'%w" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.4:pg-94" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Entropy change of process is 24.43 J/(mol.K)\n" + ] + } + ], + "source": [ + "from sympy import integrate, symbols\n", + "from math import log\n", + "\n", + "n = 1.0 #Number of moles of CO2\n", + "Ti, Tf = 320.,650. #Initial and final state Temeperatures of CO2, K\n", + "vi, vf = 80.,120. #Initial and final state volume of CO2, K\n", + "A, B, C, D = 31.08,-0.01452,3.1415e-5,-1.4973e-8\n", + " #Constants in constant volume Heat capacity equation in J, mol, K units\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K) \n", + "#Calcualtions\n", + "T = symbols('T')\n", + "dS1 = n*integrate( (A + B*T + C*T**2 + D*T**3)/T, (T,Ti,Tf)) \n", + "dS2 = n*R*log(vf/vi)\n", + "dS = dS1 + dS2\n", + "#Results\n", + "print 'Entropy change of process is %4.2f J/(mol.K)'%dS" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.5:pg-94" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Entropy change of process is 48.55 J/(mol.K)\n" + ] + } + ], + "source": [ + "from sympy import integrate, symbols\n", + "from math import log\n", + "\n", + "n = 2.5 #Number of moles of CO2\n", + "Ti, Tf = 450.,800. #Initial and final state Temeperatures of CO2, K\n", + "pi, pf = 1.35,3.45 #Initial and final state pressure of CO2, K\n", + "A, B, C, D = 18.86,7.937e-2,-6.7834e-5,2.4426e-8\n", + " #Constants in constant pressure Heat capacity equation in J, mol, K units\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K) \n", + "#Calcualtions\n", + "T = symbols('T')\n", + "dS1 = n*integrate( (A + B*T + C*T**2 + D*T**3)/T, (T,Ti,Tf)) \n", + "dS2 = n*R*log(pf/pi)\n", + "dS = dS1 - dS2\n", + "#Results\n", + "print 'Entropy change of process is %4.2f J/(mol.K)'%dS" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.6:pg-95" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Entropy change of process is 58.2 J/(mol.K)\n", + "Ratio of pressure to temperature dependent term 2.8e-05\n", + "hence effect of pressure dependent term isvery less\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "\n", + "n = 3.0 #Number of moles of CO2\n", + "Ti, Tf = 300.,600. #Initial and final state Temeperatures of CO2, K\n", + "pi, pf = 1.00,3.00 #Initial and final state pressure of CO2, K\n", + "cpm = 27.98 #Specific heat of mercury, J/(mol.K)\n", + "M = 200.59 #Molecualr wt of mercury, g/(mol)\n", + "beta = 1.81e-4 #per K\n", + "rho = 13.54 #Density of mercury, g/cm3\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K) \n", + "\n", + "#Calcualtions\n", + "dS1 = n*cpm*log(Tf/Ti)\n", + "dS2 = n*(M/(rho*1e6))*beta*(pf-pi)*1e5\n", + "dS = dS1 - dS2\n", + "\n", + "#Results\n", + "print 'Entropy change of process is %4.1f J/(mol.K)'%dS\n", + "print 'Ratio of pressure to temperature dependent term %3.1e\\nhence effect of pressure dependent term isvery less'%(dS2/dS1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.7:pg-99" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Entropy change of surrounding is 7.6 J/(mol.K)\n", + "Entropy change of system is -7.6 J/(mol.K)\n", + "Total Entropy changeis 0.0 J/(mol.K)\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "n = 1.0 #Number of moles of CO2\n", + "T = 300.0 #Temeperatures of Water bath, K\n", + "vi, vf = 25.0,10.0 #Initial and final state Volume of Ideal Gas, L\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K) \n", + "\n", + "#Calcualtions\n", + "qrev = n*R*T*log(vf/vi)\n", + "w = -qrev\n", + "dSsys = qrev/T\n", + "dSsur = -dSsys\n", + "dS = dSsys + dSsur\n", + "\n", + "#Results\n", + "print 'Entropy change of surrounding is %4.1f J/(mol.K)'%dSsur\n", + "print 'Entropy change of system is %4.1f J/(mol.K)'%dSsys\n", + "print 'Total Entropy changeis %4.1f J/(mol.K)'%dS" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.8:pg-100" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Constant external pressure and initial pressure are 2.494e+05 J,and 9.977e+04 J respectively\n", + "Heat in reverssible and irreversible processes are -2285.4 J,and -3741.3 J respectively\n", + "Entropy change of system is -7.6 J/(mol.K)\n", + "Entropy change of surrounding is 12.47 J/(mol.K)\n", + "Total Entropy changeis 4.85 J/(mol.K)\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "\n", + "n = 1.0 #Number of moles of CO2\n", + "T = 300.0 #Temeperatures of Water bath, K\n", + "vi, vf = 25.0,10.0 #Initial and final state Volume of Ideal Gas, L\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K) \n", + "\n", + "#Calcualtions\n", + "pext = n*R*T/(vf/1e3)\n", + "pi = n*R*T/(vi/1e3)\n", + "q = pext*(vf-vi)/1e3\n", + "qrev = n*R*T*log(vf/vi)\n", + "w = -q\n", + "dSsur = -q/T\n", + "dSsys = qrev/T\n", + "dS = dSsys + dSsur\n", + "\n", + "#Results\n", + "print 'Constant external pressure and initial pressure are %4.3e J,and %4.3e J respectively'%(pext,pi)\n", + "print 'Heat in reverssible and irreversible processes are %4.1f J,and %4.1f J respectively'%(qrev,q)\n", + "print 'Entropy change of system is %4.1f J/(mol.K)'%dSsys\n", + "print 'Entropy change of surrounding is %4.2f J/(mol.K)'%dSsur\n", + "print 'Total Entropy changeis %4.2f J/(mol.K)'%dS" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.9:pg-103" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Entropy change Sm0 for O2 is 204.8 J/(mol.K)\n" + ] + } + ], + "source": [ + "from sympy import integrate, symbols\n", + "from math import log\n", + "\n", + "n = 1.0 #Number of moles of CO2\n", + "pi, pf = 1.35,3.45 #Initial and final state pressure of CO2, K\n", + "D1 = 2.11e-3 #Constants in constant pressure Heat capacity equation for K<T<12.97K, in J, mol, K units\n", + "A2, B2, C2, D2 = -5.666,0.6927,-5.191e-3,9.943e-4\n", + " #Constants in constant pressure Heat capacity equation for 12.97<T<23.66, J, mol, K units\n", + "A3, B3, C3, D3 = 31.70,-2.038,0.08384,-6.685e-4\n", + " #Constants in constant pressure Heat capacity equation for 23.66<T<43.76, J, mol, K units\n", + "A4 = 46.094 #Constants in constant pressure Heat capacity equation for 43.76<T<54.39, J/(mol.K)\n", + "A5, B5, C5, D5 = 81.268,-1.1467,0.01516,-6.407e-5\n", + " #Constants in constant pressure Heat capacity equation for 54.39<T<90.20K, J, mol, K units\n", + "A6, B6, C6, D6 = 32.71,-0.04093,1.545e-4,-1.819e-7\n", + " #Constants in constant pressure Heat capacity equation for 90.20<T<298.15 KJ, mol, K units\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K) \n", + "Ltrans1 = 93.80 #Entalpy of transition at 23.66K, J/mol\n", + "Ltrans2 = 743.0 #Entalpy of transition at 43.76K, J/mol\n", + "Ltrans3 = 445.0 #Entalpy of transition at 54.39K, J/mol\n", + "Ltrans4 = 6815. #Entalpy of transition at 90.20K, J/mol\n", + "T1 = 12.97 #Maximum applicabliltiy temeprature for first heat capacity equation, K\n", + "T12 = 23.66 #Phase Change temperature from Solid III--II, K\n", + "T23 = 43.76 #Phase Change temperature from Solid II--I, K\n", + "T34 = 54.39 #Phase Change temperature from Solid I--liquid, K\n", + "T45 = 90.20 #Phase Change temperature from liquid--gas, K\n", + "Ts = 298.15 #Std. Temeprature, K\n", + "#Calcualtions\n", + "T = symbols('T')\n", + "dS1 = n*integrate( (D1*T**3)/T, (T,0,T1)) \n", + "dS2 = n*integrate( (A2 + B2*T + C2*T**2 + D2*T**3)/T, (T,T1,T12)) \n", + "dS21 = Ltrans1/T12\n", + "dS3 = n*integrate( (A3 + B3*T + C3*T**2 + D3*T**3)/T, (T,T12,T23)) \n", + "dS31 = Ltrans2/T23\n", + "dS4 = n*integrate( (A4)/T, (T,T23,T34)) \n", + "dS41 = Ltrans3/T34\n", + "dS5 = n*integrate( (A5 + B5*T + C5*T**2 + D5*T**3)/T, (T,T34,T45)) \n", + "dS51 = Ltrans4/T45\n", + "dS6 = n*integrate( (A6 + B6*T + C6*T**2 + D6*T**3)/T, (T,T45,Ts))\n", + "#print dS1+dS2,dS21\n", + "#print dS3, dS31\n", + "#print dS4, dS41\n", + "#print dS5, dS51\n", + "#print dS6\n", + "dS = dS1+dS2+dS21+dS3+dS31+dS4+dS41+dS5+dS51+dS6\n", + "\n", + "#Results\n", + "print 'Entropy change Sm0 for O2 is %4.1f J/(mol.K)'%dS" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.10:pg-105" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Entropy change for reaction at 475 K is -88.26 J/(mol.K)\n" + ] + } + ], + "source": [ + "from sympy import integrate, symbols\n", + "from math import log\n", + "n = 1.0 #Number of moles of CO2 formed, mol\n", + "p = 1. #Pressure of CO2, K\n", + "\n", + "A1, B1, C1, D1 = 18.86,7.937e-2,-6.7834e-5,2.4426e-8\n", + " #Constants in constant pressure Heat capacity equation for CO2, J/(mol.K)\n", + "A2, B2, C2, D2 = 30.81,-1.187e-2,2.3968e-5, 0.0\n", + " #Constants in constant pressure Heat capacity equation for O2, J/(mol.K)\n", + "A3, B3, C3, D3 = 31.08,-1.452e-2,3.1415e-5 ,-1.4793e-8 \n", + " #Constants in constant pressure Heat capacity equation for CO, J/(mol.K)\n", + "DSr298CO = 197.67 #Std. Entropy change for CO, J/(mol.K)\n", + "DSr298CO2 = 213.74 #Std. Entropy change for CO, J/(mol.K)\n", + "DSr298O2 = 205.138 #Std. Entropy change for CO, J/(mol.K)\n", + "Tr = 475. #Reaction temperature, K\n", + "Ts = 298.15 #Std. temperature, K\n", + "#Calcualtions\n", + "T = symbols('T')\n", + "v1,v2,v3 = 1.,1./2,1.\n", + "DSr = DSr298CO2*v1 - DSr298CO*v1 - DSr298O2*v2\n", + "DA = v1*A1-v2*A2-v3*A3\n", + "DB = v1*B1-v2*B2-v3*B3\n", + "DC = v1*C1-v2*C2-v3*C3\n", + "DD = v1*D1-v2*D2-v3*D3\n", + "dS = DSr + n*integrate( (DA + DB*T + DC*T**2 + DD*T**3)/T, (T,Ts,Tr)) \n", + "\n", + "#Results\n", + "print 'Entropy change for reaction at %4d K is %4.2f J/(mol.K)'%(Tr,dS)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter06.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter06.ipynb new file mode 100644 index 00000000..076c1413 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter06.ipynb @@ -0,0 +1,700 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 06: Chemical Equilibrium" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.1:pg-126" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum Available work through combustion of CH4 -813.6 kJ/mol\n", + "Maximum Available work through combustion of C8H18 -5320.9 kJ/mol\n" + ] + } + ], + "source": [ + "import math\n", + "dHcCH4 = -891.0 #Std. heat of combustion for CH4, kJ/mol\n", + "dHcC8H18 = -5471.0 #Std. heat of combustion for C8H18, kJ/mol\n", + "\n", + "T = 298.15\n", + "SmCO2, SmCH4, SmH2O, SmO2, SmC8H18 = 213.8,186.3,70.0,205.2, 316.1\n", + "dnCH4 = -2.\n", + "dnC8H18 = 4.5\n", + "R = 8.314\n", + "#Calculations\n", + "dACH4 = dHcCH4*1e3 - dnCH4*R*T - T*(SmCO2 + 2*SmH2O - SmCH4 - 2*SmO2)\n", + "dAC8H18 = dHcC8H18*1e3 - dnC8H18*R*T - T*(8*SmCO2 + 9*SmH2O - SmC8H18 - 25.*SmO2/2) \n", + "#Results \n", + "print 'Maximum Available work through combustion of CH4 %4.1f kJ/mol'%(dACH4/1000)\n", + "print 'Maximum Available work through combustion of C8H18 %4.1f kJ/mol'%(dAC8H18/1000)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.2:pg-128" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum nonexapnasion work through combustion of CH4 -818.6 kJ/mol\n", + "Maximum nonexapnasion work through combustion of C8H18 -5309.8 kJ/mol\n" + ] + } + ], + "source": [ + "import math\n", + "dHcCH4 = -891.0 #Std. heat of combustion for CH4, kJ/mol\n", + "dHcC8H18 = -5471.0 #Std. heat of combustion for C8H18, kJ/mol\n", + "\n", + "T = 298.15\n", + "SmCO2, SmCH4, SmH2O, SmO2, SmC8H18 = 213.8,186.3,70.0,205.2, 316.1\n", + "dnCH4 = -2.\n", + "dnC8H18 = 4.5\n", + "R = 8.314\n", + "#Calculations\n", + "dGCH4 = dHcCH4*1e3 - T*(SmCO2 + 2*SmH2O - SmCH4 - 2*SmO2)\n", + "dGC8H18 = dHcC8H18*1e3 - T*(8*SmCO2 + 9*SmH2O - SmC8H18 - 25.*SmO2/2) \n", + "#Results \n", + "print 'Maximum nonexapnasion work through combustion of CH4 %4.1f kJ/mol'%(dGCH4/1000)\n", + "print 'Maximum nonexapnasion work through combustion of C8H18 %4.1f kJ/mol'%(dGC8H18/1000)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.4:pg-133" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. free energy of formation for Fe(g) at 400 K is 355.1 kJ/mol\n" + ] + } + ], + "source": [ + "import math\n", + "dGf298 = 370.7 #Std. free energy of formation for Fe (g), kJ/mol\n", + "dHf298 = 416.3 #Std. Enthalpy of formation for Fe (g), kJ/mol\n", + "T0 = 298.15 #Temperature in K\n", + "T = 400. #Temperature in K\n", + "R = 8.314\n", + "\n", + "#Calculations\n", + "\n", + "dGf = T*(dGf298*1e3/T0 + dHf298*1e3*(1./T - 1./T0))\n", + "\n", + "#Results \n", + "print 'Std. free energy of formation for Fe(g) at 400 K is %4.1f kJ/mol'%(dGf/1000)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.5:pg-137" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. free energy Change on mixing is -2.8e+04 J\n", + "Std. entropy Change on mixing is -93.3 J\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "nHe = 1.0 #Number of moles of He\n", + "nNe = 3.0 #Number of moles of Ne\n", + "nAr = 2.0 #Number of moles of Ar\n", + "nXe = 2.5 #Number of moles of Xe\n", + "T = 298.15 #Temperature in K\n", + "P = 1.0 #Pressure, bar\n", + "R = 8.314\n", + "\n", + "#Calculations\n", + "n = nHe + nNe + nAr + nXe\n", + "dGmix = n*R*T*((nHe/n)*log(nHe/n) + (nNe/n)*log(nNe/n) +(nAr/n)*log(nAr/n) + (nXe/n)*log(nXe/n))\n", + "dSmix = n*R*((nHe/n)*log(nHe/n) + (nNe/n)*log(nNe/n) +(nAr/n)*log(nAr/n) + (nXe/n)*log(nXe/n))\n", + "\n", + "#Results \n", + "print 'Std. free energy Change on mixing is %3.1e J'%(dGmix)\n", + "print 'Std. entropy Change on mixing is %4.1f J'%(dSmix)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.6:pg-138" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. Gibbs energy change for reaction is 67.00 kJ/mol\n" + ] + } + ], + "source": [ + "import math\n", + "dGfFe = 0.0 #Std. Gibbs energy of formation for Fe (S), kJ/mol\n", + "dGfH2O = -237.1 #Std. Gibbs energy of formation for Water (g), kJ/mol\n", + "dGfFe2O3 = -1015.4 #Std. Gibbs energy of formation for Fe2O3 (s), kJ/mol\n", + "dGfH2 = 0.0 #Std. Gibbs energy of formation for Hydrogen (g), kJ/mol\n", + "T0 = 298.15 #Temperature in K\n", + "R = 8.314\n", + "nFe, nH2, nFe2O3, nH2O = 3,-4,-1,4\n", + "\n", + "#Calculations\n", + "dGR = nFe*dGfFe + nH2O*dGfH2O + nFe2O3*dGfFe2O3 + nH2*dGfH2 \n", + "\n", + "#Results \n", + "print 'Std. Gibbs energy change for reaction is %4.2f kJ/mol'%(dGR)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.7:pg-139" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. Enthalpy change for reactionat 525.0 is -24.80 kJ/mol\n", + "Std. Gibbs energy change for reactionat 525.0 is 137 kJ/mol\n" + ] + } + ], + "source": [ + "import math\n", + "dGR = 67.0 #Std. Gibbs energy of formation for reaction, kJ, from previous problem\n", + "dHfFe = 0.0 #Enthalpy of formation for Fe (S), kJ/mol\n", + "dHfH2O = -285.8 #Enthalpy of formation for Water (g), kJ/mol\n", + "dHfFe2O3 = -1118.4 #Enthalpy of formation for Fe2O3 (s), kJ/mol\n", + "dHfH2 = 0.0 #Enthalpy of formation for Hydrogen (g), kJ/mol\n", + "T0 = 298.15 #Temperature in K\n", + "T = 525. #Temperature in K\n", + "R = 8.314\n", + "nFe, nH2, nFe2O3, nH2O = 3,-4,-1,4\n", + "\n", + "#Calculations\n", + "dHR = nFe*dHfFe + nH2O*dHfH2O + nFe2O3*dHfFe2O3 + nH2*dHfH2 \n", + "dGR2 = T*(dGR*1e3/T0 + dHR*1e3*(1./T - 1./T0))\n", + "\n", + "#Results \n", + "print 'Std. Enthalpy change for reactionat %4.1f is %4.2f kJ/mol'%(T, dHR)\n", + "print 'Std. Gibbs energy change for reactionat %4.1f is %4.0f kJ/mol'%(T, dGR2/1e3)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.8:pg-140" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. Gibbs energy change for reaction is 1.337 kJ/mol\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "dGfNO2 = 51.3 #Std. Gibbs energy of formation for NO2 (g), kJ/mol\n", + "dGfN2O4 = 99.8 #Std. Gibbs energy of formation for N2O4 (g), kJ/mol\n", + "T0 = 298.15 #Temperature in K\n", + "pNO2 = 0.350 #Partial pressure of NO2, bar\n", + "pN2O4 = 0.650 #Partial pressure of N2O4, bar\n", + "R = 8.314\n", + "nNO2, nN2O4 = -2, 1 #Stoichiomentric coeff of NO2 and N2O4 respectively in reaction\n", + "\n", + "#Calculations\n", + "dGR = nN2O4*dGfN2O4*1e3 + nNO2*dGfNO2*1e3 + R*T0*log(pN2O4/(pNO2)**2)\n", + "\n", + "#Results \n", + "print 'Std. Gibbs energy change for reaction is %5.3f kJ/mol'%(dGR/1e3)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.9:pg-141" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. Gibbs energy change for reaction is -0.020 kJ/mol\n", + "Equilibrium constant for reaction is 3323.254 \n", + "Kp >> 1. hence, mixture will consists of product CO2 and H2\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "dGfCO2 = -394.4 #Std. Gibbs energy of formation for CO2 (g), kJ/mol\n", + "dGfH2 = 0.0 #Std. Gibbs energy of formation for H2 (g), kJ/mol\n", + "dGfCO = 237.1 #Std. Gibbs energy of formation for CO (g), kJ/mol\n", + "dGfH2O = 137.2 #Std. Gibbs energy of formation for H24 (l), kJ/mol\n", + "T0 = 298.15 #Temperature in K\n", + "R = 8.314\n", + "nCO2, nH2, nCO, nH2O = 1,1,1,1 #Stoichiomentric coeff of CO2,H2,CO,H2O respectively in reaction\n", + "\n", + "#Calculations\n", + "dGR = nCO2*dGfCO2 + nH2*dGfH2 + nCO*dGfCO + nH2O*dGfH2O\n", + "Kp = exp(-dGR*1e3/(R*T0))\n", + "\n", + "#Results \n", + "print 'Std. Gibbs energy change for reaction is %5.3f kJ/mol'%(dGR/1e3)\n", + "print 'Equilibrium constant for reaction is %5.3f '%(Kp)\n", + "if Kp > 1: print 'Kp >> 1. hence, mixture will consists of product CO2 and H2'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.11:pg-144" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Part A\n", + "Std. Gibbs energy change for reaction is 211.400 kJ/mol\n", + "Std. Enthalpy change for reaction is 242.600 kJ/mol\n", + "Equilibrium constants at 800, 1500, and 2000 K are 4.223e-11, 1.042e-03, and 1.349e-01\n", + "Part B\n", + "Degree of dissociation at 800, 1500, and 2000 K are 3.249e-05, 1.593e-01, and 8.782e-01\n" + ] + } + ], + "source": [ + "from math import exp, sqrt\n", + "\n", + "dGfCl2 = 0.0 #Std. Gibbs energy of formation for CO2 (g), kJ/mol\n", + "dGfCl = 105.7 #Std. Gibbs energy of formation for H2 (g), kJ/mol\n", + "dHfCl2 = 0.0 #Std. Gibbs energy of formation for CO (g), kJ/mol\n", + "dHfCl = 121.3 #Std. Gibbs energy of formation for H24 (l), kJ/mol\n", + "T0 = 298.15 #Temperature in K\n", + "R = 8.314\n", + "nCl2, nCl= -1,2 #Stoichiomentric coeff of Cl2,Cl respectively in reaction\n", + "PbyP0 = 0.01\n", + "#Calculations\n", + "dGR = nCl*dGfCl + nCl2*dGfCl2 \n", + "dHR = nCl*dHfCl + nCl2*dHfCl2 \n", + "func = lambda T: exp(-dGR*1e3/(R*T0) - dHR*1e3*(1./T - 1./T0)/R)\n", + "Kp8 = func(800)\n", + "Kp15 = func(1500)\n", + "Kp20 = func(2000)\n", + "DDiss = lambda K: sqrt(K/(K+4*PbyP0))\n", + "alp8 = DDiss(Kp8)\n", + "alp15 = DDiss(Kp15)\n", + "alp20 = DDiss(Kp20)\n", + "\n", + "#Results \n", + "print 'Part A'\n", + "print 'Std. Gibbs energy change for reaction is %5.3f kJ/mol'%(dGR)\n", + "print 'Std. Enthalpy change for reaction is %5.3f kJ/mol'%(dHR)\n", + "print 'Equilibrium constants at 800, 1500, and 2000 K are %4.3e, %4.3e, and %4.3e'%(Kp8,Kp15,Kp20)\n", + "\n", + "print 'Part B'\n", + "print 'Degree of dissociation at 800, 1500, and 2000 K are %4.3e, %4.3e, and %4.3e'%(alp8,alp15,alp20)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.12:pg-145" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. Gibbs energy change for reaction is 131.1 kJ/mol\n", + "Std. Enthalpy change for reaction is 178.5 kJ/mol\n", + "Equilibrium constants at 1000, 1100, and 1200 K are 0.0956, 0.673e, and 3.423\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "dGfCaCO3 = -1128.8 #Std. Gibbs energy of formation for CaCO3 (s), kJ/mol\n", + "dGfCaO = -603.3 #Std. Gibbs energy of formation for CaO (s), kJ/mol\n", + "dGfCO2 = -394.4 #Std. Gibbs energy of formation for O2 (g), kJ/mol\n", + "dHfCaCO3 = -1206.9 #Std. Enthalpy Change of formation for CaCO3 (s), kJ/mol\n", + "dHfCaO = -634.9 #Std. Enthalpy Change of formation for CaO (s), kJ/mol\n", + "dHfCO2 = -393.5 #Std. Enthalpy Change of formation for O2 (g), kJ/mol\n", + "T0 = 298.15 #Temperature in K\n", + "R = 8.314\n", + "nCaCO3, nCaO, nO2 = -1,1,1 #Stoichiomentric coeff of CaCO3, CaO, O2 respectively in reaction\n", + "\n", + "#Calculations\n", + "dGR = nCaO*dGfCaO + nO2*dGfCO2 + nCaCO3*dGfCaCO3\n", + "dHR = nCaO*dHfCaO + nO2*dHfCO2 + nCaCO3*dHfCaCO3\n", + "\n", + "func = lambda T: exp(-dGR*1e3/(R*T0) - dHR*1e3*(1./T - 1./T0)/R)\n", + "\n", + "Kp10 = func(1000)\n", + "Kp11 = func(1100)\n", + "Kp12 = func(1200)\n", + "\n", + "#Results \n", + "print 'Std. Gibbs energy change for reaction is %4.1f kJ/mol'%(dGR)\n", + "print 'Std. Enthalpy change for reaction is %4.1f kJ/mol'%(dHR)\n", + "print 'Equilibrium constants at 1000, 1100, and 1200 K are %4.4f, %4.3fe, and %4.3f'%(Kp10,Kp11,Kp12)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.13:pg-146" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Pressure at which graphite and dimond will be in equilibrium is 1.51e+04 bar\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "dGfCG = 0.0 #Std. Gibbs energy of formation for CaCO3 (s), kJ/mol\n", + "dGfCD = 2.90 #Std. Gibbs energy of formation for CaO (s), kJ/mol\n", + "rhoG = 2.25e3 #Density of Graphite, kg/m3\n", + "rhoD = 3.52e3 #Density of dimond, kg/m3\n", + "T0 = 298.15 #Std. Temperature, K\n", + "R = 8.314 #Ideal gas constant, J/(mol.K) \n", + "P0 = 1.0 #Pressure, bar\n", + "M = 12.01 #Molceular wt of Carbon\n", + "#Calculations\n", + "P = P0*1e5 + dGfCD*1e3/((1./rhoG-1./rhoD)*M*1e-3)\n", + "\n", + "#Results \n", + "print 'Pressure at which graphite and dimond will be in equilibrium is %4.2e bar'%(P/1e5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.14:pg-154" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "dUbydV = 1.42e+03 bar\n", + "dVbyV = 6.519 percent\n", + "dUbydVm = 9e+02 atm\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "\n", + "beta = 2.04e-4 #Thermal exapansion coefficient, /K\n", + "kapa = 45.9e-6 #Isothermal compressibility, /bar\n", + "T = 298.15 #Std. Temperature, K\n", + "R = 8.206e-2 #Ideal gas constant, atm.L/(mol.K) \n", + "T1 = 320.0 #Temperature, K\n", + "Pi = 1.0 #Initial Pressure, bar\n", + "V = 1.00 #Volume, m3\n", + "a = 1.35 #van der Waals constant a for nitrogen, atm.L2/mol2\n", + "\n", + "#Calculations\n", + "dUbydV = Pf = (beta*T1-kapa*P0)/kapa\n", + "dVT = V*kapa*(Pf-Pi)\n", + "dVbyV = dVT*100/V\n", + "Vm = Pi/(R*T1)\n", + "dUbydVm = a/(Vm**2)\n", + "\n", + "#Results \n", + "print 'dUbydV = %4.2e bar'%(dUbydV)\n", + "print 'dVbyV = %4.3f percent'%(dVbyV)\n", + "print 'dUbydVm = %4.0e atm'%(dUbydVm)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.15:pg-155" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Internal energy change is 4.06e+04 J/mol in which \n", + "contribution of temeprature dependent term 99.9999 percent\n", + "Enthalpy change is 4.185e+04 J/mol in which \n", + "contribution of temeprature dependent term 100.0 percent\n" + ] + } + ], + "source": [ + "from math import exp, log\n", + "\n", + "m = 1000.0 #mass of mercury, g\n", + "Pi, Ti = 1.00, 300.0 #Intial pressure and temperature, bar, K\n", + "Pf, Tf = 300., 600.0 #Final pressure and temperature, bar, K\n", + "rho = 13534. #Density of mercury, kg/m3\n", + "beta = 18.1e-4 #Thermal exapansion coefficient for Hg, /K \n", + "kapa = 3.91e-6 #Isothermal compressibility for Hg, /Pa\n", + "Cpm = 27.98 #Molar Specific heat at constant pressure, J/(mol.K) \n", + "M = 200.59 #Molecular wt of Hg, g/mol\n", + "\n", + "#Calculations\n", + "Vi = m*1e-3/rho\n", + "Vf = Vi*exp(-kapa*(Pf-Pi))\n", + "Ut = m*Cpm*(Tf-Ti)/M \n", + "Up = (beta*Ti/kapa-Pi)*1e5*(Vf-Vi) + (Vi-Vf+Vf*log(Vf/Vi))*1e5/kapa\n", + "dU = Ut + Up\n", + "Ht = m*Cpm*(Tf-Ti)/M\n", + "Hp = ((1 + beta*(Tf-Ti))*Vi*exp(-kapa*Pi)/kapa)*(exp(-kapa*Pi)-exp(-kapa*Pf))\n", + "dH = Ht + Hp\n", + "#Results\n", + "print 'Internal energy change is %6.2e J/mol in which \\ncontribution of temeprature dependent term %6.4f percent'%(dU,Ut*100/dH)\n", + "print 'Enthalpy change is %4.3e J/mol in which \\ncontribution of temeprature dependent term %4.1f percent'%(dH,Ht*100/dH)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.16:pg-156" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Difference in molar specific heats \n", + "at constant volume and constant pressure 3.73e-03 J/(mol.K)\n", + "Molar Specific heat of Hg at const. volume is 27.98 J/(mol.K)\n" + ] + } + ], + "source": [ + "import math\n", + "T = 300.0 #Temperature of Hg, K \n", + "beta = 18.1e-4 #Thermal exapansion coefficient for Hg, /K \n", + "kapa = 3.91e-6 #Isothermal compressibility for Hg, /Pa\n", + "M = 0.20059 #Molecular wt of Hg, kg/mol \n", + "rho = 13534 #Density of mercury, kg/m3\n", + "Cpm = 27.98 #Experimental Molar specif heat at const pressure for mercury, J/(mol.K)\n", + "\n", + "#Calculations\n", + "Vm = M/rho\n", + "DCpmCv = T*Vm*beta**2/kapa\n", + "Cvm = Cpm - DCpmCv\n", + "#Results\n", + "print 'Difference in molar specific heats \\nat constant volume and constant pressure %4.2e J/(mol.K)'%DCpmCv\n", + "print 'Molar Specific heat of Hg at const. volume is %4.2f J/(mol.K)'%Cvm" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.17:pg-158" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Molar Gibbs energy of Ar -46.154 kJ/mol\n", + "Molar Gibbs energy of Water -306.658 kJ/mol\n" + ] + } + ], + "source": [ + "import math\n", + "T = 298.15 #Std. Temperature, K \n", + "P = 1.0 #Initial Pressure, bar\n", + "Hm0, Sm0 = 0.0,154.8 #Std. molar enthalpy and entropy of Ar(g), kJ, mol, K units\n", + "Sm0H2, Sm0O2 = 130.7,205.2 #Std. molar entropy of O2 and H2 (g), kJ/(mol.K)\n", + "dGfH2O = -237.1 #Gibbs energy of formation for H2O(l), kJ/mol \n", + "nH2, nO2 = 1, 1./2 #Stoichiomentric coefficients for H2 and O2 in water formation reaction \n", + "\n", + "#Calculations\n", + "Gm0 = Hm0 - T*Sm0\n", + "dGmH2O = dGfH2O*1000 - T*(nH2*Sm0H2 + nO2*Sm0O2)\n", + "#Results\n", + "print 'Molar Gibbs energy of Ar %4.3f kJ/mol'%(Gm0/1e3)\n", + "print 'Molar Gibbs energy of Water %4.3f kJ/mol'%(dGmH2O/1e3)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter07.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter07.ipynb new file mode 100644 index 00000000..bb478dec --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter07.ipynb @@ -0,0 +1,80 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 07: Properties of Real Gases" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex7.3:pg-175" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(V-Videal) -6.49 L\n", + "Percentage error -58.73\n" + ] + } + ], + "source": [ + "\n", + "import math\n", + "m = 1.0 #Mass of Methane, kg\n", + "T = 230 #Temeprature of Methane, K\n", + "P = 68.0 #Pressure, bar \n", + "Tc = 190.56 #Critical Temeprature of Methane\n", + "Pc = 45.99 #Critical Pressure of Methane\n", + "R = 0.08314 #Ideal Gas Constant, L.bar/(mol.K)\n", + "M = 16.04 #Molecular wt of Methane\n", + "\n", + "#Calcualtions\n", + "Tr = T/Tc\n", + "Pr = P/Pc\n", + "z = 0.63 #Methane compressibility factor\n", + "n = m*1e3/M\n", + "V = z*n*R*T/P\n", + "Vig = n*R*T/P\n", + "DV = (V - Vig)/V\n", + "\n", + "#Results\n", + "print '(V-Videal) %4.2f L'%(V-Vig)\n", + "print 'Percentage error %5.2f'%(DV*100)\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter08.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter08.ipynb new file mode 100644 index 00000000..860afddf --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter08.ipynb @@ -0,0 +1,172 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 08: Phase Diagrams and the Relative Stability of Solids, Liquids, and Gases" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex8.2:Pg.No-195" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Latent heat of vaporization of benzene at 20°C 30.7 kJ/mol\n", + "Entropy Change of vaporization of benzene at 20°C 86.9 J/mol\n", + "Triple point temperature = 267.3 K for benzene\n", + "Triple point pressure = 3.53e+03 Pa for benzene\n" + ] + } + ], + "source": [ + "from math import log, exp\n", + "\n", + "import math\n", + "Tn = 353.24 #normal boiling point of Benzene, K\n", + "pi = 1.19e4 #Vapor pressure of benzene at 20°C, Pa\n", + "DHf = 9.95 #Latent heat of fusion, kJ/mol\n", + "pv443 = 137. #Vapor pressure of benzene at -44.3°C, Pa\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "Pf = 101325 #Std. atmospheric pressure, Pa\n", + "T20 = 293.15 #Temperature in K\n", + "P0 = 1.\n", + "Pl = 10000.\n", + "Ts = -44.3 #Temperature of solid benzene, °C\n", + "\n", + "#Calculations\n", + "Ts = Ts + 273.15\n", + "#Part a\n", + "\n", + "DHv = -(R*math.log(Pf/pi))/(1./Tn-1./T20)\n", + "#Part b\n", + "\n", + "DSv = DHv/Tn\n", + "DHf = DHf*1e3\n", + "#Part c\n", + "\n", + "Ttp = -DHf/(R*(math.log(Pl/P0)-math.log(pv443/P0)-(DHv+DHf)/(R*Ts)+DHv/(R*T20)))\n", + "Ptp = exp(-DHv/R*(1./Ttp-1./Tn))*101325\n", + "\n", + "#Results\n", + "print 'Latent heat of vaporization of benzene at 20°C %4.1f kJ/mol'%(DHv/1000)\n", + "print 'Entropy Change of vaporization of benzene at 20°C %3.1f J/mol'%DSv\n", + "print 'Triple point temperature = %4.1f K for benzene'%Ttp\n", + "print 'Triple point pressure = %4.2e Pa for benzene'%Ptp" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex8.3:Pg.No-200" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Force exerted by one leg 5.428e-05 N\n" + ] + } + ], + "source": [ + "from math import cos, pi\n", + "\n", + "gama = 71.99e-3 #Surface tension of water, N/m\n", + "r = 1.2e-4 #Radius of hemisphere, m\n", + "theta = 0.0 #Contact angle, rad\n", + "\n", + "#Calculations\n", + "DP = 2*gama*cos(theta)/r\n", + "F = DP*pi*r**2\n", + "\n", + "#Results\n", + "print 'Force exerted by one leg %5.3e N'%F" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex8.4:Pg.No-200" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Height to which water can rise by capillary action is 0.74 m\n", + "This is very less than 100.0 n, hence water can not reach top of tree\n" + ] + } + ], + "source": [ + "from math import cos\n", + "\n", + "\n", + "gama = 71.99e-3 #Surface tension of water, N/m\n", + "r = 2e-5 #Radius of xylem, m\n", + "theta = 0.0 #Contact angle, rad\n", + "rho = 997.0 #Density of water, kg/m3\n", + "g = 9.81 #gravitational acceleration, m/s2\n", + "H = 100 #Height at top of redwood tree, m\n", + "\n", + "#Calculations\n", + "h = 2*gama/(rho*g*r*cos(theta))\n", + "\n", + "#Results\n", + "print 'Height to which water can rise by capillary action is %3.2f m'%h\n", + "print 'This is very less than %4.1f n, hence water can not reach top of tree'%H" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter09.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter09.ipynb new file mode 100644 index 00000000..504b170b --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter09.ipynb @@ -0,0 +1,468 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 09: Ideal and Real Solutions" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.2:pg-212" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Gibbs energy change of mixing is -1.371e+04 J\n", + "Gibbs energy change of mixing is < 0, hence the mixing is spontaneous\n", + "Entropy change of mixing is 45.99 J/K\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#Variable Declaration\n", + "nb = 5.00 #Number of moles of Benzene, mol\n", + "nt = 3.25 #Number of moles of Toluene, mol\n", + "T = 298.15 #Temperature, K\n", + "P = 1.0 #Pressure, bar\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "\n", + "#Calculations\n", + "n = nb + nt\n", + "xb = nb/n\n", + "xt = 1. - xb\n", + "dGmix = n*R*T*(xb*log(xb)+xt*log(xt))\n", + "dSmix = -n*R*(xb*log(xb)+xt*log(xt))\n", + "\n", + "#Results\n", + "print 'Gibbs energy change of mixing is %4.3e J'%dGmix\n", + "print 'Gibbs energy change of mixing is < 0, hence the mixing is spontaneous'\n", + "print 'Entropy change of mixing is %4.2f J/K'%dSmix" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.3:pg-214" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total pressure of the vapor is 69.8 torr\n", + "Benzene fraction in vapor is 0.837 \n", + "Toulene fraction in vapor is 0.163 \n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "nb = 5.00 #Number of moles of Benzene, mol\n", + "nt = 3.25 #Number of moles of Toluene, mol\n", + "T = 298.15 #Temperature, K\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "P0b = 96.4 #Vapor pressure of Benzene, torr\n", + "P0t = 28.9 #Vapor pressure of Toluene, torr\n", + "\n", + "#Calculations\n", + "n = nb + nt\n", + "xb = nb/n\n", + "xt = 1. - xb\n", + "P = xb*P0b + xt*P0t\n", + "y = (P0b*P - P0t*P0b)/(P*(P0b-P0t))\n", + "yt = 1.-y\n", + "\n", + "#Results\n", + "print 'Total pressure of the vapor is %4.1f torr'%P\n", + "print 'Benzene fraction in vapor is %4.3f '%y\n", + "print 'Toulene fraction in vapor is %4.3f '%yt" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.4:pg-215" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Mass Balance: 6.75*x + 1.5*y - 5.0\n", + "Pressure and x: P - 67.5*x - 28.9\n", + "Pressure and y: y - 0.0148148148148148*(96.4*P - 2785.96)/P\n", + "Pressure is 66.8 torr\n", + "Mole fraction of benzene in liquid phase 0.561\n", + "Mole fraction of benzene in vapor phase 0.810\n" + ] + } + ], + "source": [ + "from sympy import symbols, solve\n", + "import math\n", + "#Variable Declaration\n", + "nb = 5.00 #Number of moles of Benzene, mol\n", + "nt = 3.25 #Number of moles of Toluene, mol\n", + "T = 298.15 #Temperature, K\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "P0b = 96.4 #Vapor pressure of Benzene, torr\n", + "P0t = 28.9 #Vapor pressure of Toluene, torr\n", + "nv = 1.5 #moles vaporized, mol\n", + "\n", + "#Calculations\n", + "n = nb + nt\n", + "nl = n - nv\n", + "zb = nb/n\n", + "\n", + "x,y, P = symbols('x y P')\n", + "e1 = nv*(y-zb)-nl*(zb-x)\n", + "print 'Mass Balance:', e1\n", + "e2 = P - (x*P0b + (1-x)*P0t)\n", + "print 'Pressure and x:',e2\n", + "e3 = y - (P0b*P - P0t*P0b)/(P*(P0b-P0t))\n", + "print 'Pressure and y:', e3\n", + "equations = [e1,e2,e3]\n", + "sol = solve(equations)\n", + "\n", + "#Results\n", + "for i in sol:\n", + " if ((i[x] > 0.0 and i[x] <1.0) and (i[P] > 0.0) and (i[y]>zb and i[y]<1.0)):\n", + " print 'Pressure is %4.1f torr' %i[P]\n", + " print 'Mole fraction of benzene in liquid phase %4.3f' %i[x]\n", + " print 'Mole fraction of benzene in vapor phase %4.3f' %i[y]\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.6:pg-222" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Freezing point depression -3.94 K\n", + "Molecualr wt of solute 274.2 g/mol\n", + "Vapor pressure of solvent is reduced by a factor of 0.980\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "m = 4.50 #Mass of substance dissolved, g\n", + "ms = 125.0 #Mass of slovent (CCl4), g\n", + "TbE = 0.65 #Boiling point elevation, °C\n", + "Kf, Kb = 30.0, 4.95 #Constants for freezing point elevation \n", + " # and boiling point depression for CCl4, K kg/mol\n", + "Msolvent = 153.8 #Molecualr wt of solvent, g/mol\n", + "#Calculations\n", + "DTf = -Kf*TbE/Kb\n", + "Msolute = Kb*m/(ms*1e-3*TbE)\n", + "nsolute = m/Msolute\n", + "nsolvent = ms/Msolvent \n", + "x = 1.0 - nsolute/(nsolute + nsolvent)\n", + "\n", + "#Results\n", + "print 'Freezing point depression %5.2f K'%DTf\n", + "print 'Molecualr wt of solute %4.1f g/mol'%Msolute\n", + "print 'Vapor pressure of solvent is reduced by a factor of %4.3f'%x" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.7:pg-223" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Osmotic pressure 12.23 atm\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "csolute = 0.500 #Concentration of solute, g/L\n", + "R = 8.206e-2 #Gas constant L.atm/(mol.K)\n", + "T = 298.15 #Temperature of the solution, K\n", + "\n", + "#Calculations\n", + "pii = csolute*R*T\n", + "\n", + "#Results\n", + "print 'Osmotic pressure %4.2f atm'%pii\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.8:pg-230" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Activity of CS2 0.6994 atm\n", + "Activity coefficinet of CS2 1.9971 atm\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "xCS2 = 0.3502 #Mol fraction of CS2, g/L\n", + "pCS2 = 358.3 #Partial pressure of CS2, torr\n", + "p0CS2 = 512.3 #Total pressure, torr\n", + "\n", + "#Calculations\n", + "alpha = pCS2/p0CS2\n", + "gama = alpha/xCS2\n", + "\n", + "#Results\n", + "print 'Activity of CS2 %5.4f atm'%alpha\n", + "print 'Activity coefficinet of CS2 %5.4f atm'%gama" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.9:pg-230" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Activity of CS2 0.1783 atm\n", + "Activity coefficinet of CS2 0.5090 atm\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "xCS2 = 0.3502 #Mol fraction of CS2, g/L\n", + "pCS2 = 358.3 #Partial pressure of CS2, torr\n", + "kHCS2 = 2010. #Total pressure, torr\n", + "\n", + "#Calculations\n", + "alpha = pCS2/kHCS2\n", + "gama = alpha/xCS2\n", + "\n", + "#Results\n", + "print 'Activity of CS2 %5.4f atm'%alpha\n", + "print 'Activity coefficinet of CS2 %5.4f atm'%gama" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.10:pg-231" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Henrys constant = 143.38 torr\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "rho = 789.9 #Density of acetone, g/L\n", + "n = 1.0 #moles of acetone, mol\n", + "M = 58.08 #Molecular wt of acetone, g/mol\n", + "kHacetone = 1950 #Henrys law constant, torr\n", + "#Calculations\n", + "H = n*M*kHacetone/rho\n", + "\n", + "#Results\n", + "print 'Henrys constant = %5.2f torr'%H" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.11:pg-232" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Activity coefficient = 0.969\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "m = 0.5 #Mass of water, kg\n", + "ms = 24.0 #Mass of solute, g\n", + "Ms = 241.0 #Molecular wt of solute, g/mol\n", + "Tfd = 0.359 #Freezinf point depression, °C or K\n", + "kf = 1.86 #Constants for freezing point depression for water, K kg/mol\n", + "\n", + "#Calculations\n", + "msolute = ms/(Ms*m)\n", + "gama = Tfd/(kf*msolute)\n", + "\n", + "#Results\n", + "print 'Activity coefficient = %4.3f'%gama" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.12:pg-233" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of moles of nitrogen in blood at 1 and 50 bar are 2.46e-03,0.123 mol\n", + "Volume of nitrogen released from blood at reduced pressure 2.981 L\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "m = 70.0 #Mass of human body, kg\n", + "V = 5.00 #Volume of blood, L\n", + "HN2 = 9.04e4 #Henry law constant for N2 solubility in blood, bar\n", + "T = 298.0 #Temperature, K\n", + "rho = 1.00 #density of blood, kg/L\n", + "Mw = 18.02 #Molecualr wt of water, g/mol\n", + "X = 80 #Percent of N2 at sea level\n", + "p1, p2 = 1.0, 50.0 #Pressures, bar\n", + "R = 8.314e-2 #Ideal Gas constant, L.bar/(mol.K)\n", + "#Calculations\n", + "nN21 = (V*rho*1e3/Mw)*(p1*X/100)/HN2\n", + "nN22 = (V*rho*1e3/Mw)*(p2*X/100)/HN2\n", + "V = (nN22-nN21)*R*T/p1\n", + "#Results\n", + "print 'Number of moles of nitrogen in blood at 1 and 50 bar are %3.2e,%3.3f mol'%(nN21,nN22)\n", + "print 'Volume of nitrogen released from blood at reduced pressure %4.3f L'%V" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter10.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter10.ipynb new file mode 100644 index 00000000..2b5ef632 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter10.ipynb @@ -0,0 +1,71 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 10: Electrolyte Solutions" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex10.2:Pg-252" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Ionic streangth for NaCl solution is 0.050 and for Na2SO4 solution is 0.150, mol/kg\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "M = 0.050 #Molarity for NaCl and Na2SO4 solution, mol/kg\n", + "npa, zpa = 1, 1\n", + "nma, zma = 1, 1\n", + "npb, zpb = 2, 1\n", + "nmb, zmb = 1, 2\n", + "\n", + "#Calculations\n", + "Ia = M*(npa*zpa**2 + nma*zma**2)/2\n", + "Ib = M*(npb*zpb**2 + nmb*zmb**2)/2\n", + "\n", + "#Results\n", + "print 'Ionic streangth for NaCl solution is %4.3f and for Na2SO4 solution is %4.3f, mol/kg'%(Ia,Ib)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter11.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter11.ipynb new file mode 100644 index 00000000..7f1b328b --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter11.ipynb @@ -0,0 +1,314 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 11: Electrochemical Cells, Batteries, and Fuel Cells" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.1:pg-265" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The potential of H+/H2 half cell 0.0083 V\n" + ] + } + ], + "source": [ + "from math import log, sqrt\n", + "\n", + "#Variable Declaration\n", + "aH = 0.770 #Activity of \n", + "fH2 = 1.13 #Fugacity of Hydrogen gas\n", + "E0 = 0.0 #Std. electrode potential, V\n", + "n = 1.0 #Number of electrons transfered\n", + "\n", + "#Calculations\n", + "E = E0 - (0.05916/n)*log(aH/sqrt(fH2),10)\n", + "\n", + "#Results\n", + "print 'The potential of H+/H2 half cell %5.4f V'%E" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.2:pg-266" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.689 1.019\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "E0r1 = -0.877 #Std Electrod potential for Rx2 : Al3+ + 3e- ------> Al (s) \n", + "E0r2 = -1.660 #Std Electrod potential for Rx2 : Al3+ + 3e- ------> Al (s)\n", + "E0r3 = +0.071 #Std Electrod potential for Rx3 : AgBr (s) + e- ------> Ag(s) +Br- (aq.)\n", + "\n", + "#Calculations\n", + "#3Fe(OH)2 (s)+ 2Al (s) <---------> 3Fe (s) + 6(OH-) + 2Al3+\n", + "E0a = 3*E0r1 + (-2)*E0r2\n", + "#Fe (s) + 2OH- + 2AgBr (s) -------> Fe(OH)2 (s) + 2Ag(s) + 2Br- (aq.)\n", + "E0b = -E0r1 + (2)*E0r3\n", + "\n", + "#Results\n", + "print '%5.3f %5.3f'%(E0a,E0b)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.3:pg-267" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "E0 for overall reaction is -0.041 V\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "E01 = 0.771 #Rx1 : Fe3+ + e- -----> Fe2+\n", + "E02 = -0.447 #Rx2 : Fe2+ + 2e- -----> Fe\n", + "F = 96485 #Faraday constant, C/mol\n", + "n1,n2,n3 = 1.,2.,3.\n", + "\n", + "#Calculations\n", + "dG01 = -n1*F*E01\n", + "dG02 = -n2*F*E02\n", + " #For overall reaction\n", + "dG0 = dG01 + dG02\n", + "E0Fe3byFe = -dG0/(n3*F)\n", + "\n", + "#Results\n", + "print 'E0 for overall reaction is %5.3f V'%(E0Fe3byFe)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.4:pg-268" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. entropy change of reaction from dE0bydT is -2.32e+02 and\n", + "Std entropy values is -2.41e+02 V\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "E01 = +1.36 #Std. electrode potential for Cl2/Cl\n", + "dE0bydT = -1.20e-3 #V/K\n", + "F = 96485 #Faraday constant, C/mol\n", + "n = 2.\n", + "S0H = 0.0 #Std. entropy J/(K.mol) for H+ ,Cl-,H2, Cl2 \n", + "S0Cl = 56.5\n", + "S0H2 = 130.7\n", + "S0Cl2 = 223.1\n", + "nH, nCl, nH2, nCl2 = 2, 2, -1,-1\n", + "#Calculations\n", + "dS01 = n*F*dE0bydT\n", + "dS02 =nH*S0H + nCl*S0Cl + nH2*S0H2 + nCl2*S0Cl2\n", + "\n", + "#Results\n", + "print 'Std. entropy change of reaction from dE0bydT is %4.2e and\\nStd entropy values is %4.2e V'%(dS01,dS02)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.5:pg-269" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Equilibrium constant for reaction is 1.55e+37\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declaration\n", + "E0 = +1.10 #Std. electrode potential for Danniel cell, V\n", + " #Zn(s) + Cu++ -----> Zn2+ + Cu\n", + "T = 298.15 #V/K\n", + "F = 96485 #Faraday constant, C/mol\n", + "n = 2.\n", + "R = 8.314 #Gas constant, J/(mol.K)\n", + "\n", + "#Calculations\n", + "K = exp(n*F*E0/(R*T))\n", + "\n", + "#Results\n", + "print 'Equilibrium constant for reaction is %4.2e'%(K)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.6:pg-269" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Equilibrium constant for reaction is 1.57e-10\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "E = +0.29 #Cell emf, V\n", + "n = 2.\n", + "\n", + "#Calculations\n", + "Ksp = 10**(-n*E/0.05916)\n", + "\n", + "#Results\n", + "print 'Equilibrium constant for reaction is %4.2e'%(Ksp)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.8:pg-272" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cell potentials for Zn, Ag, Au are 2.27 V, 0.71 V, and -0.18 V\n", + "Zn has positive cell potential of 2.272 V and Can be oxidized bypermangnate ion\n", + "Ag has positive cell potential of 0.710 V and Can be oxidized bypermangnate ion\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "E = +1.51 #EMF for reduction of permangnet, V\n", + "E01 = -0.7618 #Zn2+ + 2e- --------> Zn (s)\n", + "E02 = +0.7996 #Ag+ + e- --------> Ag (s)\n", + "E03 = +1.6920 #Au+ + e- --------> Au (s) \n", + "\n", + "#Calculations\n", + "EZn = E - E01\n", + "EAg = E - E02\n", + "EAu = E - E03\n", + "animals = {\"parrot\": 2, \"fish\": 6}\n", + "Er = {\"Zn\":EZn,\"Ag\":EAg,\"Au\":EAu}\n", + "#Results\n", + "print 'Cell potentials for Zn, Ag, Au are %4.2f V, %4.2f V, and %4.2f V'%(EZn, EAg,EAu)\n", + "for i in Er:\n", + " if Er[i] >0.0:\n", + " print '%s has positive cell potential of %4.3f V and Can be oxidized bypermangnate ion' %(i,Er[i])\n", + " " + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter12.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter12.ipynb new file mode 100644 index 00000000..430c21a8 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter12.ipynb @@ -0,0 +1,484 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 12: Probability" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.1:pg-295" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Probability of picking up any one ball is 1.0\n" + ] + } + ], + "source": [ + "import math\n", + "#Varible declaration\n", + "n = range(1,51,1)\n", + "Prob = 0\n", + "for x in n:\n", + " Prob = 1./len(n) + Prob\n", + "\n", + "#Results\n", + "print 'Probability of picking up any one ball is %3.1f'%Prob" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.2:pg-296" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Probability of one (heart)card picked from a std. stack of 52 cards is 1/4\n" + ] + } + ], + "source": [ + "from fractions import Fraction\n", + "import math\n", + "#Variable Declaration\n", + "n = 52 #Total cards\n", + "nheart = 13 #Number of cards with hearts\n", + "\n", + "#Calculations\n", + "Pe = Fraction(nheart,n)\n", + "\n", + "#Results\n", + "print 'Probability of one (heart)card picked from a std. stack of %d cards is'%n,Pe" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.3:pg-297" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total number of Five card arrangment from a deck of 52 cards is 311875200\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "n = 52 #Total cards\n", + "import math\n", + "#Calculations\n", + "TotalM = n*(n-1)*(n-2)*(n-3)*(n-4)\n", + "#Results\n", + "print 'Total number of Five card arrangment from a deck of 52 cards is %d'%TotalM" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.4:pg-297" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Possible spin states for excited state are 4\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "n1 = 2 #Two spin states for 1st electron in orbit 1\n", + "n2 = 2 #Two spin states for 2nd electron in orbit 2\n", + "\n", + "#Calculation\n", + "M = n1*n1\n", + "\n", + "#Results\n", + "print 'Possible spin states for excited state are %2d'%M" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.5:pg-298" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum Possible permutations for 5 player to play are 95040\n" + ] + } + ], + "source": [ + "from math import factorial\n", + "\n", + "#Variable Declaration\n", + "n = 12 #Total Number of players \n", + "j = 5 #Number player those can play match\n", + "\n", + "#Calculation\n", + "P = factorial(n)/factorial(n-j)\n", + "\n", + "#Results\n", + "print 'Maximum Possible permutations for 5 player to play are %8d'%P" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.6:pg-299" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum Possible 5-card combinations are 2598960\n" + ] + } + ], + "source": [ + "from math import factorial\n", + "\n", + "#Variable Declaration\n", + "n = 52 #Number of cards in std . pack\n", + "j = 5 #Number of cards in subset\n", + "\n", + "#Calculation\n", + "C = factorial(n)/(factorial(j)*factorial(n-j))\n", + "\n", + "#Results\n", + "print 'Maximum Possible 5-card combinations are %8d'%C" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.7:pg-300" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total number of quantum states are 15\n" + ] + } + ], + "source": [ + "from math import factorial\n", + "\n", + "#Variable Declaration\n", + "x = 6 #Number of electrons\n", + "n = 2 #Number of states\n", + "\n", + "#Calculation\n", + "P = factorial(x)/(factorial(n)*factorial(x-n))\n", + "\n", + "#Results\n", + "print 'Total number of quantum states are %3d'%P" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.8:pg-301" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Probability of getting 25 head out of 50 tossing is 0.112\n", + "Probability of getting 10 head out of 50 tossing is 9.124e-06\n" + ] + } + ], + "source": [ + "from math import factorial\n", + "from fractions import Fraction\n", + "\n", + "#Variable Declaration\n", + "n = 50 #Number of separate experiments\n", + "j1 = 25 #Number of sucessful expt with heads up\n", + "j2 = 10 #Number of sucessful expt with heads up\n", + "\n", + "#Calculation\n", + "C25 = factorial(n)/(factorial(j1)*factorial(n-j1))\n", + "PE25 = Fraction(1,2)**j1\n", + "PEC25 = (1-Fraction(1,2))**(n-j1)\n", + "P25 = C25*PE25*PEC25\n", + "\n", + "C10 = factorial(n)/(factorial(j2)*factorial(n-j2))\n", + "PE10 = Fraction(1,2)**j2\n", + "PEC10 = (1-Fraction(1,2))**(n-j2)\n", + "P10 = C10*PE10*PEC10\n", + "\n", + "#Results\n", + "print 'Probability of getting 25 head out of 50 tossing is %4.3f'%(float(P25))\n", + "print 'Probability of getting 10 head out of 50 tossing is %4.3e'%(float(P10))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.9:pg-302" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " N ln(N!) ln(N!)sterling Error\n", + " 10 15.10 13.03 2.08\n", + " 50 148.48 145.60 2.88\n", + "100 363.74 360.52 3.22\n" + ] + } + ], + "source": [ + "from math import factorial, log\n", + "#Variable Declaration\n", + "N = [10,50,100] #Valures for N\n", + "\n", + "#Calculations\n", + "print ' N ln(N!) ln(N!)sterling Error'\n", + "for i in N:\n", + " lnN = log(factorial(i))\n", + " lnNs = i*log(i)-i\n", + " err = abs(lnN-lnNs)\n", + " print '%3d %5.2f %5.2f %4.2f'%(i,lnN,lnNs, err)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.10:pg-305" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Probability of receiving any card 1/52\n" + ] + } + ], + "source": [ + "from fractions import Fraction\n", + "\n", + "#Variable Declaration\n", + "fi = 1 #Probability of receiving any card\n", + "n = 52 #Number od Cards\n", + "\n", + "#Calculations\n", + "sum = 0\n", + "for i in range(52):\n", + " sum = sum + fi\n", + "\n", + "Pxi = Fraction(fi,sum)\n", + "\n", + "#Results\n", + "print 'Probability of receiving any card', Pxi" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.11:pg-307" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sum of Px considering it as discrete function 20.4\n", + "Sum of Px considering it as contineous function 19.9\n" + ] + } + ], + "source": [ + "from math import exp\n", + "from scipy import integrate\n", + "#Variable Declaration\n", + "\n", + "#Calculations\n", + "fun = lambda x: exp(-0.05*x)\n", + "Pt = 0\n", + "for i in range(0,101):\n", + " Pt = Pt + fun(i)\n", + " \n", + "Ptot = integrate.quad(fun, 0.0, 100.)\n", + "\n", + "#Results\n", + "print 'Sum of Px considering it as discrete function %4.1f'%Pt\n", + "print 'Sum of Px considering it as contineous function %4.1f'%Ptot[0]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.12:pg-308" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "from sympy import Symbol\n", + "import math\n", + "\n", + "#Variable Declaration\n", + "r = Symbol('r') #Radius of inner circle\n", + "C = [5,2,0]\n", + "#Calculations\n", + "A1 = pi*r**2\n", + "A2 = pi*(2*r)**2 - A1\n", + "A3 = pi*(3*r)**2 - (A1 + A2)\n", + "At = A1 + A2 + A3\n", + "f1 = A1/At\n", + "f2 = A2/At\n", + "f3 = A3/At\n", + "sf = f1 + f2 + f3\n", + "\n", + "ns = (f1*C[0]+f2*C[1]+f3*C[2])/sf\n", + "\n", + "#Results\n", + "print 'A1, A2, A3: ', A1,', ', A2,', ', A3\n", + "print 'f1, f2, f3: ', f1,f2,f3\n", + "print 'Average payout $', round(float(ns),2)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter13.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter13.ipynb new file mode 100644 index 00000000..058c9da8 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter13.ipynb @@ -0,0 +1,286 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 13: Boltzmann Distribution" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex13.1:pg-321" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The observed weight 1.37e+28 compared to 1.01e+29\n" + ] + } + ], + "source": [ + "from math import factorial\n", + "\n", + "#Variable Declaration\n", + "\n", + "aH = 40 #Number of heads\n", + "N = 100 #Total events\n", + "\n", + "#Calculations\n", + "aT = 100 - aH\n", + "We = factorial(N)/(factorial(aT)*factorial(aH))\n", + "Wexpected = factorial(N)/(factorial(N/2)*factorial(N/2))\n", + "\n", + "#Results\n", + "print 'The observed weight %5.2e compared to %5.2e'%(We,Wexpected)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex13.2:pg-322" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "At maximum value of ln(W)\n", + "Values of N1 : 6162, N2: 2676 and N3: 1162 \n", + "Maximum value of ln(W)= 9012\n" + ] + } + ], + "source": [ + "from sympy import symbols, diff, log\n", + "\n", + "#Varialbe declaration\n", + "n = 10000 #Total number of particles\n", + "\n", + "\n", + "#Calcualtions\n", + "def ster(i):\n", + " return i*log(i)-i\n", + "\n", + "n1, n2, n3, W = symbols('n1 n2 n3 W',positive=True)\n", + "\n", + "n2 = 5000 - 2*n3\n", + "n1 = 10000 - n2 -n3\n", + "logW = ster(n) - ster(n1) - ster(n2) - ster(n3) \n", + "fun = diff(logW, n3)\n", + "dfun = diff(fun, n3)\n", + "x0 = 10.0\n", + "err = 1.0\n", + "while err>0.001:\n", + " f = fun.subs(n3,x0)\n", + " df = dfun.subs(n3,x0)\n", + " xnew = x0 - f/df\n", + " err = abs(x0-xnew)/x0\n", + " x0 = xnew\n", + "\n", + "x0 = int(x0)\n", + "N2 = n2.subs(n3,x0)\n", + "N3 = x0\n", + "n1 = n1.subs(n3,x0)\n", + "N1 = n1.subs(n2,N2)\n", + "lnW = logW.subs(n3,N3)\n", + "\n", + "#Results\n", + "print 'At maximum value of ln(W)'\n", + "print 'Values of N1 : %4d, N2: %4d and N3: %4d '%(N1, N2,N3)\n", + "print 'Maximum value of ln(W)= %6d'%lnW" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex13.3:pg-326" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Probability of finding an oscillator at energy level of n>3 is 0.048 i.e. 4.8 percent\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "p0 = 0.633 #Probabilities of Energy level 1,2,3 \n", + "p1 = 0.233\n", + "p2 = 0.086\n", + "\n", + "#Calculation\n", + "p4 = 1. -(p0+p1+p2)\n", + "\n", + "#Results\n", + "print 'Probability of finding an oscillator at energy level of n>3 is %4.3f i.e.%4.1f percent'%(p4,p4*100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex13.4:pg-327" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Probability of finding an oscillator at energy level of n>3 is 0.222\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "p0 = 0.394 #Probabilities of Energy level 1,2,3 \n", + "p1by2 = 0.239\n", + "p2 = 0.145\n", + "\n", + "#Calculation\n", + "p4 = 1. -(p0+p1by2+p2)\n", + "\n", + "#Results\n", + "print 'Probability of finding an oscillator at energy level of n>3 is %4.3f'%(p4)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex13.5:pg-333" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Partition function is 1.577\n", + "Probability of occupying the second vibrational state n=2 is 0.085\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declaration\n", + "I2 = 208 #Vibrational frequency, cm-1 \n", + "T = 298 #Molecular Temperature, K\n", + "c = 3.00e10 #speed of light, cm/s\n", + "h = 6.626e-34 #Planks constant, J/K\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "#Calculation\n", + "q = 1./(1.-exp(-h*c*I2/(k*T)))\n", + "p2 = exp(-2*h*c*I2/(k*T))/q\n", + "\n", + "#Results\n", + "print 'Partition function is %4.3f'%(q)\n", + "print 'Probability of occupying the second vibrational state n=2 is %4.3f'%(p2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex13.6:pg-334" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Occupation Number is 0.999990\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "B = 1.45 #Magnetic field streangth, Teslas \n", + "T = 298 #Molecular Temperature, K\n", + "c = 3.00e10 #speed of light, cm/s\n", + "h = 6.626e-34 #Planks constant, J/K\n", + "k = 1.38e-23 #Boltzman constant, J/K \n", + "gnbn = 2.82e-26 #J/T\n", + "#Calculation\n", + "ahpbyahm = math.exp(-gnbn*B/(k*T))\n", + "\n", + "#Results\n", + "print 'Occupation Number is %7.6f'%(ahpbyahm)\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter14.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter14.ipynb new file mode 100644 index 00000000..382b0ea4 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter14.ipynb @@ -0,0 +1,508 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 14: Ensemble and Molecular Partition Function" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.1:pg-344" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Difference in energy levels is 3.10e-38 J or 1.56e-15 1/cm\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "l = 0.01 #Box length, m \n", + "n1,n2 = 2,1 #Energy levels states\n", + "m = 5.31e-26 #mass of oxygen molecule, kg\n", + "\n", + "#Calculations \n", + "dE = (n1+n2)*h**2/(8*m*l**2)\n", + "dEcm = dE/(h*c*1e2)\n", + "#Results\n", + "print 'Difference in energy levels is %3.2e J or %3.2e 1/cm'%(dE,dEcm)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.2:pg-345" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Thermal wave length is 1.60e-11 m and\n", + "Translational partition function is 2.44e+29\n" + ] + } + ], + "source": [ + "from math import pi, sqrt\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "v = 1.0 #Volume, L\n", + "T = 298.0 #Temeprature of Ar, K\n", + "m = 6.63e-26 #Mass of Argon molecule, kg \n", + "\n", + "#Calculations \n", + "GAMA = h/sqrt(2*pi*m*k*T)\n", + "v = v*1e-3\n", + "qT3D = v/GAMA**3\n", + "\n", + "#Results\n", + "print 'Thermal wave length is %3.2e m and\\nTranslational partition function is %3.2e'%(GAMA,qT3D)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.4:pg-350" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Spectrum will be observed at 494 K\n" + ] + } + ], + "source": [ + "#Variable Declarations\n", + "import math\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "\n", + "J = 4 #Rotational energy level\n", + "B = 8.46 #Spectrum, 1/cm\n", + "\n", + "#Calculations \n", + "T = (2*J+1)**2*h*c*100*B/(2*k)\n", + "#Results\n", + "print 'Spectrum will be observed at %4.0f K'%(T)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.5:pg-352" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rotation partition function of H2 at 1000 is 5.729\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "\n", + "B = 60.589 #Spectrum for H2, 1/cm\n", + "T = 1000 #Temperture of Hydrogen, K\n", + "#Calculations \n", + "qR = k*T/(2*h*c*100*B)\n", + "qRs = 0.0\n", + "#for J in range(101):\n", + "# print J\n", + "# if (J%2 == 0):\n", + "# qRs = qRs + (2*J+1)*exp(-h*c*100*B*J*(J+1)/(k*T)\n", + "# else:\n", + "# qRs = qRs + 3*(2*J+1)*exp(-h*c*100*B*J*(J+1)/(k*T))\n", + "#print qRs/4\n", + "\n", + "#Results\n", + "print 'Rotation partition function of H2 at %4.0f is %4.3f'%(T,qR)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.6:pg-353" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rotation partition function of H2 at 100 K is 928.121\n" + ] + } + ], + "source": [ + "#Variable Declarations\n", + "import math\n", + "\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "B = 0.0374 #Spectrum for H2, 1/cm\n", + "T = 100.0 #Temperture of Hydrogen, K\n", + "sigma = 2.\n", + "\n", + "#Calculations\n", + "ThetaR = h*c*100*B/k\n", + "qR = T/(sigma*ThetaR)\n", + "\n", + "#Results\n", + "print 'Rotation partition function of H2 at %4.0f K is %4.3f'%(T,qR)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.7:pg-354" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rotation partition function for OCS, ONCI, CH2O at 298 K are 140, 16926, and 712 respectively\n" + ] + } + ], + "source": [ + "from math import pi, sqrt\n", + "\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "Ba = 1.48 #Spectrum for OCS, 1/cm\n", + "Bb = [2.84,0.191,0.179] #Spectrum for ONCI, 1/cm\n", + "Bc = [9.40,1.29,1.13] #Spectrum for CH2O, 1/cm\n", + "T = 298.0 #Temperture of Hydrogen, K\n", + "sigmab = 1\n", + "sigmac = 2\n", + "\n", + "#Calculations\n", + "qRa = k*T/(h*c*100*Ba)\n", + "qRb = (sqrt(pi)/sigmab)*(k*T/(h*c*100))**(3./2)*sqrt(1/Bb[0])*sqrt(1/Bb[1])*sqrt(1/Bb[2])\n", + "qRc = (sqrt(pi)/sigmac)*(k*T/(h*c*100))**(3./2)*sqrt(1/Bc[0])*sqrt(1/Bc[1])*sqrt(1/Bc[2])\n", + "\n", + "#Results\n", + "print 'Rotation partition function for OCS, ONCI, CH2O at %4.0f K are %4.0f, %4.0f, and %4.0f respectively'%(T,qRa,qRb,qRc)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.8:pg-356" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Vibrational partition function for I2 at 298 and 1000 are 1.58 K and 3.86 respectively\n" + ] + } + ], + "source": [ + "from math import pi, exp\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "\n", + "Ba = 1.48 #Frequency for OCS, 1/cm\n", + "Bb = [2.84,0.191,0.179] #Frequency for ONCI, 1/cm\n", + "Bc = [9.40,1.29,1.13] #Frequency for CH2O, 1/cm\n", + "T298 = 298.0 #Temperture of Hydrogen, K\n", + "T1000 = 1000 #Temperture of Hydrogen, K\n", + "nubar = 208\n", + "\n", + "#Calculations\n", + "qv298 = 1./(1.-exp(-h*c*100*nubar/(k*T298)))\n", + "qv1000 = 1./(1.-exp(-h*c*100*nubar/(k*T1000)))\n", + "\n", + "#Results\n", + "print 'Vibrational partition function for I2 at %4d and %4d are %4.2f K and %4.2f respectively'%(T298, T1000,qv298, qv1000)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.9:pg-357" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "At 450 1/cm the q = 1.128\n", + "At 945 1/cm the q = 1.010\n", + "At 1100 1/cm the q = 1.005\n", + "Total Vibrational partition function for OClO at 298.0 K is 1.146 respectively\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "\n", + "T = 298 #Temeprature, K\n", + "nubar = [450, 945, 1100] #Vibrational mode frequencies for OClO, 1/cm\n", + "\n", + "#Calculations\n", + "Qv = 1.\n", + "for i in nubar:\n", + " qv = 1./(1.-exp(-h*c*100*i/(k*T)))\n", + " print 'At %4.0f 1/cm the q = %4.3f'%(i,qv)\n", + " Qv = Qv*qv\n", + "#Results\n", + "print 'Total Vibrational partition function for OClO at %4.1f K is %4.3f'%(T, Qv)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.10:pg-359" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Vibrational partition function for F2 at 298.0 K is 10.508\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "T = 298 #Temeprature, K\n", + "nubar = 917 #Vibrational mode frequencies for F2, 1/cm\n", + "\n", + "#Calculations\n", + "ThetaV = h*c*100*nubar/k\n", + "Th = 10*ThetaV\n", + "qv = 1/(1.-exp(-ThetaV/Th))\n", + "\n", + "#Results\n", + "print 'Vibrational partition function for F2 at %4.1f K is %4.3f'%(T, qv)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.11:pg-360" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "At 1388 1/cm the q = 1.157\n", + "At 667 1/cm the q = 1.619\n", + "At 667 1/cm the q = 1.619\n", + "At 2349 1/cm the q = 1.035\n", + "Total Vibrational partition function for OClO at 1000.0 K is 3.139\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "T = 1000 #Temeprature, K\n", + "nubar = [1388, 667.4,667.4,2349] #Vibrational mode frequencies for CO2, 1/cm\n", + "\n", + "#Calculations\n", + "Qv = 1.\n", + "for i in nubar:\n", + " qv = 1./(1.-exp(-h*c*100*i/(k*T)))\n", + " print 'At %4.0f 1/cm the q = %4.3f'%(i,qv)\n", + " Qv = Qv*qv\n", + "#Results\n", + "print 'Total Vibrational partition function for OClO at %4.1f K is %4.3f'%(T, Qv)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.12:pg-363" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Electronic partition function for F2 at 298.0 K is 9.45\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "T = 298. #Temeprature, K\n", + "n = [0,1,2,3,4,5,6,7,8] #Energy levels\n", + "E0 = [0,137.38,323.46,552.96,2112.28,2153.21,2220.11,2311.36,2424.78] #Energies, 1/cm\n", + "g0 = [4,6,8,10,2,4,6,8,10]\n", + "\n", + "#Calculations\n", + "qE = 0.0\n", + "for i in range(9):\n", + " a =g0[i]*exp(-h*c*100*E0[i]/(k*T))\n", + " qE = qE + a\n", + "\n", + "#Results\n", + "print 'Electronic partition function for F2 at %4.1f K is %4.2f'%(T, qE)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter15.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter15.ipynb new file mode 100644 index 00000000..bfc29594 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter15.ipynb @@ -0,0 +1,221 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 15: Statistical Thermodyanamics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex15.2:pg-374" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "For Internal energy to be 1000.0 J temperature will be 449.0 K\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#Variable Declaration\n", + "U = 1.00e3 #Total internal energy, J\n", + "hnu = 1.00e-20 #Energy level separation, J\n", + "NA = 6.022e23 #Avagadro's Number, 1/mol\n", + "k = 1.38e-23 #Boltzmann constant, J/K\n", + "n = 1 #Number of moles, mol\n", + "\n", + "#Calcualtions\n", + "T = hnu/(k*log(n*NA*hnu/U-1.))\n", + "\n", + "#Results\n", + "print 'For Internal energy to be %4.1f J temperature will be %4.1f K'%(U,T)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex15.3:pg-378" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Energy of excited state is 1.57e-19 J\n", + "Electronic partition function qE is 3.000e+00\n", + "Electronic contribution to internal enrgy is 3.921e-06 J\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declaration\n", + "g0 = 3.0 #Ground State partition function\n", + "labda = 1263e-9 #Wave length in nm\n", + "T = 500. #Temperature, K\n", + "c = 3.00e8 #Speed of light, m/s\n", + "NA = 6.022e23 #Avagadro's Number, 1/mol\n", + "k = 1.38e-23 #Boltzmann constant, J/K\n", + "n = 1.0 #Number of moles, mol\n", + "h = 6.626e-34 #Planks's Constant, J.s\n", + "\n", + "#Calcualtions\n", + "beta = 1./(k*T)\n", + "eps = h*c/labda\n", + "qE = g0 + exp(-beta*eps)\n", + "UE = n*NA*eps*exp(-beta*eps)/qE\n", + "\n", + "#Results\n", + "print 'Energy of excited state is %4.2e J'%eps\n", + "print 'Electronic partition function qE is %4.3e'%qE\n", + "print 'Electronic contribution to internal enrgy is %4.3e J'%UE" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex15.5:pg-387" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Thermal wave lengths for Ne is 2.25e-11 m3\n", + "Std. Molar entropy for Ne is 145.46 J/(mol.K)\n", + "Thermal wave lengths for Kr is 1.11e-11 m3\n", + "Std. Molar entropy for Kr is 163.18 J/(mol.K)\n" + ] + } + ], + "source": [ + "from math import log, pi, sqrt\n", + "\n", + "#Variable Declaration\n", + "Mne = 0.0201797 #Molecular wt of ne, kg/mol \n", + "Mkr = 0.0837980 #Molecular wt of kr, kg/mol\n", + "Vmne = 0.0224 #Std. state molar volume of ne, m3\n", + "Vmkr = 0.0223 #Std. state molar volume of kr, m3\n", + "h = 6.626e-34 #Planks's Constant, J.s\n", + "NA = 6.022e23 #Avagadro's Number, 1/mol\n", + "k = 1.38e-23 #Boltzmann constant, J/K\n", + "T = 298 #Std. state temeprature,K \n", + "R = 8.314 #Ideal gas constant, J/(mol.K)\n", + "n = 1.0 #Number of mole, mol\n", + "\n", + "#Calcualtions\n", + "mne = Mne/NA\n", + "mkr = Mkr/NA\n", + "Labdane = sqrt(h**2/(2*pi*mne*k*T))\n", + "Labdakr = sqrt(h**2/(2*pi*mkr*k*T))\n", + "Sne = 5.*R/2 + R*log(Vmne/Labdane**3)-R*log(NA)\n", + "Skr = 5.*R/2 + R*log(Vmkr/Labdakr**3)-R*log(NA)\n", + "\n", + "#Results\n", + "print 'Thermal wave lengths for Ne is %4.2e m3'%Labdane\n", + "print 'Std. Molar entropy for Ne is %4.2f J/(mol.K)'%Sne\n", + "print 'Thermal wave lengths for Kr is %4.2e m3'%Labdakr\n", + "print 'Std. Molar entropy for Kr is %4.2f J/(mol.K)'%Skr" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex15.8:pg-392" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Thermal wave lengths for Ne is 4.09e-33 m3\n", + "The Gibbs energy for 1 mol of Ar is -39.97 kJ\n" + ] + } + ], + "source": [ + "from math import log, pi\n", + "\n", + "#Variable Declaration\n", + "M = 0.040 #Moleculat wt of Ar, kg/mol\n", + "h = 6.626e-34 #Planks's Constant, J.s\n", + "NA = 6.022e23 #Avagadro's Number, 1/mol\n", + "k = 1.38e-23 #Boltzmann constant, J/K\n", + "T = 298.15 #Std. state temeprature,K \n", + "P = 1e5 #Std. state pressure, Pa\n", + "R = 8.314 #Ideal gas constant, J/(mol.K)\n", + "n = 1.0 #Number of mole, mol\n", + "\n", + "#Calcualtions\n", + "m = M/NA\n", + "Labda3 = (h**2/(2*pi*m*k*T))**(3./2)\n", + "G0 = -n*R*T*log(k*T/(P*Labda3))\n", + "\n", + "#Results\n", + "print 'Thermal wave lengths for Ne is %4.2e m3'%Labda3\n", + "print 'The Gibbs energy for 1 mol of Ar is %6.2f kJ'%(G0/1000)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter16.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter16.ipynb new file mode 100644 index 00000000..cfc07351 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter16.ipynb @@ -0,0 +1,287 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 16: Kinetic Theory of Gases" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex16.1:pg-407" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Most probable speed of Ne and Krypton at 298 K are 498, 244 m/s\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "\n", + "#Variable Declaration\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "T = 298 #Temperatureof Gas, K\n", + "MNe = 0.020 #Molecular wt of Ne, kg/mol\n", + "MKr = 0.083 #Molecular wt of Kr, kg/mol\n", + "\n", + "#Calculations\n", + "vmpNe = sqrt(2*R*T/MNe)\n", + "vmpKr = sqrt(2*R*T/MKr)\n", + "\n", + "#Results\n", + "print 'Most probable speed of Ne and Krypton at 298 K are %4.0f, %4.0f m/s'%(vmpNe,vmpKr)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex16.2:pg-411" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum, average, root mean square speed of Ar\n", + "at 298 K are 352, 397, 431 m/s\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "T = 298 #Temperatureof Gas, K\n", + "M = 0.040 #Molecular wt of Ar, kg/mol\n", + "\n", + "\n", + "#Calculations\n", + "vmp = sqrt(2*R*T/M)\n", + "vave = sqrt(8*R*T/(M*pi))\n", + "vrms = sqrt(3*R*T/M)\n", + "\n", + "#Results\n", + "print 'Maximum, average, root mean square speed of Ar\\nat 298 K are %4.0f, %4.0f, %4.0f m/s'%(vmp,vave,vrms)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex16.4, Page Numbe 413" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of Collisions 2.45e+27 per s\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "T = 298 #Temperature of Gas, K\n", + "M = 0.040 #Molecular wt of Ar, kg/mol\n", + "P = 101325 #Pressure, N/m2\n", + "NA = 6.022e23 #Number of particles per mol\n", + "V = 1.0 #Volume of Container, L\n", + "\n", + "#Calculations\n", + "Zc = P*NA/sqrt(2*pi*R*T*M)\n", + "Nc = Zc*V \n", + "#Results\n", + "print 'Number of Collisions %4.2e per s'%(Nc)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex16.5:pg-414" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Pressure after 1 hr of effusion is 9.996e-03 Pa\n" + ] + } + ], + "source": [ + "from math import sqrt, pi,exp\n", + "\n", + "#Variable Declaration\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "T = 298 #Temperature of Gas, K\n", + "M = 0.040 #Molecular wt of Ar, kg/mol\n", + "P0 = 1013.25 #Pressure, N/m2\n", + "NA = 6.022e23 #Number of particles per mol\n", + "V = 1.0 #Volume of Container, L\n", + "k = 1.38e-23 #Boltzmann constant, J/K\n", + "t = 3600 #time of effusion, s\n", + "A = 0.01 #Area, um2\n", + "\n", + "#Calculations\n", + "A = A*1e-12\n", + "V = V*1e-3\n", + "expo = (A*t/V)*(k*T/(2*pi*M/NA))\n", + "P = P0*exp(-expo)\n", + "#Results\n", + "print 'Pressure after 1 hr of effusion is %4.3e Pa'%(P/101325)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex16.6:pg-417" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Single particle collisional frequency is 6.9e+09 per s\n" + ] + } + ], + "source": [ + "from math import sqrt, pi\n", + "\n", + "#Variable Declaration\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "T = 298 #Temperature of Gas, K\n", + "M = 0.044 #Molecular wt of CO2, kg/mol\n", + "P = 101325 #Pressure, N/m2\n", + "NA = 6.022e23 #Number of particles per mol\n", + "sigm = 5.2e-19 #m2\n", + "\n", + "#Calculations\n", + "zCO2 = (P*NA/(R*T))*sigm*sqrt(2)*sqrt(8*R*T/(pi*M)) \n", + "#Results\n", + "print 'Single particle collisional frequency is %4.1e per s'%(zCO2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex16.7:pg-417" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Collisional frequency is 3.14e+34 m-3s-1\n" + ] + } + ], + "source": [ + "from math import sqrt, pi\n", + "\n", + "#Variable Declaration\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "T = 298 #Temperature of Gas, K\n", + "MAr = 0.04 #Molecular wt of Ar, kg/mol\n", + "MKr = 0.084 #Molecular wt of Kr, kg/mol\n", + "pAr = 360 #Partial Pressure Ar, torr\n", + "pKr = 400 #Partial Pressure Kr, torr\n", + "rAr = 0.17e-9 #Hard sphere radius of Ar, m\n", + "rKr = 0.20e-9 #Hard sphere radius of Kr, m\n", + "NA = 6.022e23 #Number of particles per mol\n", + "k = 1.38e-23 #Boltzmann constant, J/K\n", + "\n", + "#Calculations\n", + "pAr = pAr*101325/760\n", + "pKr = pKr*101325/760\n", + "p1 = pAr*NA/(R*T)\n", + "p2 = pKr*NA/(R*T)\n", + "sigm = pi*(rAr+rKr)**2\n", + "mu = MAr*MKr/((MAr+MKr)*NA)\n", + "p3 = sqrt(8*k*T/(pi*mu)) \n", + "zArKr = p1*p2*sigm*p3\n", + "\n", + "#Results\n", + "print 'Collisional frequency is %4.2e m-3s-1'%(zArKr)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter17.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter17.ipynb new file mode 100644 index 00000000..6d251294 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter17.ipynb @@ -0,0 +1,508 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 17: Transport Phenomena" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.1:pg-427" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Diffusion coefficient of Argon 1.1e-05 m2/s\n" + ] + } + ], + "source": [ + "from scipy import constants\n", + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "M = 0.040 #Molecualar wt of Argon, kh/mol\n", + "P, T = 101325.0, 298.0 #Pressure and Temperature, Pa, K\n", + "sigm = 3.6e-19 #\n", + "R = 8.314 #Molar Gas constant, mol^-1 K^-1\n", + "N_A = 6.02214129e+23 #mol^-1\n", + "#Calculations\n", + "DAr = (1./3)*sqrt(8*R*T/(pi*M))*(R*T/(P*N_A*sqrt(2)*sigm))\n", + "\n", + "#Results\n", + "print 'Diffusion coefficient of Argon %3.1e m2/s'%DAr" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.2:pg-428" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Ratio of collision cross sections of Helium to Argon 0.790\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "\n", + "#Variable Declaration\n", + "DHebyAr = 4.0 \n", + "MAr, MHe = 39.9, 4.0 #Molecualar wt of Argon and Neon, kg/mol\n", + "P, T = 101325.0, 298.0 #Pressure and Temperature, Pa, K\n", + "sigm = 3.6e-19 #\n", + "R = 8.314 #Molar Gas constant, mol^-1 K^-1\n", + "N_A = 6.02214129e+23 #mol^-1\n", + "#Calculations\n", + "sigHebyAr = (1./DHebyAr)*sqrt(MAr/MHe)\n", + "\n", + "#Results\n", + "print 'Ratio of collision cross sections of Helium to Argon %4.3f'%sigHebyAr" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.3:pg-430" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "rms displacement at 1000 and 10000 is 0.141 and 0.447 m respectively\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "\n", + "#Variable Declaration\n", + "D = 1.0e-5 #Diffusion coefficient, m2/s \n", + "t1 = 1000 #Time, s\n", + "t10 = 10000 #Time, s\n", + "\n", + "#Calculations\n", + "xrms1 = sqrt(2*D*t1)\n", + "xrms10 = sqrt(2*D*t10)\n", + "\n", + "#Results\n", + "print 'rms displacement at %4d and %4d is %4.3f and %4.3f m respectively'%(t1,t10,xrms1,xrms10)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.4:pg-432" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Time per random walk is 2.045e-11 s or 20.45 ps\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "D = 2.2e-5 #Diffusion coefficient of benzene, cm2/s \n", + "x0 = 0.3 #molecular diameter of benzene, nm\n", + "\n", + "#Calculations\n", + "t = (x0*1e-9)**2/(2*D*1e-4)\n", + "\n", + "#Results\n", + "print 'Time per random walk is %4.3e s or %4.2f ps'%(t,t/1e-12)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.5:pg-434" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Mean free path 2.627e-07 m and collisional cross section 1.10e-19 m2\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "P = 101325 #Pressure, Pa\n", + "kt = 0.0177 #Thermal conductivity, J/(K.m.s)\n", + "T = 300.0 #Temperature, K\n", + "k = 1.3806488e-23 #Boltzmanconstant,J K^-1\n", + "sigm = 3.6e-19 #\n", + "R = 8.314 #Molar Gas constant, mol^-1 K^-1\n", + "NA = 6.02214129e+23 #mol^-1\n", + "M = 39.9 #Molecualar wt of Argon and Neon, kg/mol\n", + "\n", + "#Calculations\n", + "CvmbyNA = 3.*k/2\n", + "nuavg = sqrt(8*R*T/(pi*M*1e-3))\n", + "N = NA*P/(R*T)\n", + "labda = 3*kt/(CvmbyNA*nuavg*N)\n", + "sigm = 1/(sqrt(2)*N*labda)\n", + "\n", + "#Results\n", + "print 'Mean free path %4.3e m and collisional cross section %4.2e m2'%(labda, sigm)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.6:pg-437" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Collisional cross section 2.74e-19 m2\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "eta = 227. #Viscosity of Ar, muP\n", + "P = 101325 #Pressure, Pa\n", + "kt = 0.0177 #Thermal conductivity, J/(K.m.s)\n", + "T = 300.0 #Temperature, K\n", + "k = 1.3806488e-23 #Boltzmanconstant,J K^-1\n", + "R = 8.314 #Molar Gas constant, mol^-1 K^-1\n", + "NA = 6.02214129e+23 #mol^-1\n", + "M = 39.9 #Molecualar wt of Argon and Neon, kg/mol\n", + "\n", + "#Calculations\n", + "nuavg = sqrt(8*R*T/(pi*M*1e-3))\n", + "N = NA*P/(R*T)\n", + "m = M*1e-3/NA\n", + "labda = 3.*eta*1e-7/(nuavg*N*m) #viscosity in kg m s units\n", + "sigm = 1./(sqrt(2)*N*labda)\n", + "\n", + "#Results\n", + "print 'Collisional cross section %4.2e m2'%(sigm)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.7:pg-439" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Flow rate is 2.762e-06 m3/s\n", + "Cylinder can be used for 4.381e+06 s nearly 50.7 days\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "m = 22.7 #Mass of CO2, kg\n", + "T = 293.0 #Temperature, K\n", + "L = 1.0 #length of the tube, m\n", + "d = 0.75 #Diameter of the tube, mm\n", + "eta = 146 #Viscosity of CO2, muP\n", + "p1 = 1.05 #Inlet pressure, atm\n", + "p2 = 1.00 #Outlet pressure, atm\n", + "atm2pa = 101325 #Conversion for pressure from atm to Pa \n", + "M = 0.044 #Molecular wt of CO2, kg/mol\n", + "R = 8.314 #Molar Gas constant, J mol^-1 K^-1\n", + "\n", + "#Calculations\n", + "p1 = p1*atm2pa\n", + "p2 = p2*atm2pa\n", + "F = pi*(d*1e-3/2)**4*(p1**2-p2**2)/(16.*eta/1.e7*L*p2)\n", + "nCO2 = m/M\n", + "v = nCO2*R*T/((p1+p2)/2)\n", + "t = v/F\n", + "\n", + "#Results\n", + "print 'Flow rate is %4.3e m3/s'%(F)\n", + "print 'Cylinder can be used for %4.3e s nearly %3.1f days'%(t, t/(24*3600))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.8:pg-441" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Radius of protein is 3.550 nm\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "eta = 0.891 #Viscosity of hemoglobin in water, cP\n", + "T = 298.0 #Temperature, K\n", + "k = 1.3806488e-23 #Boltzmanconstant,J K^-1\n", + "R = 8.314 #Molar Gas constant, mol^-1 K^-1\n", + "D = 6.9e-11 #Diffusion coefficient, m2/s \n", + "\n", + "#Calculations\n", + "r = k*T/(6*pi*eta*1e-3*D)\n", + "\n", + "#Results\n", + "print 'Radius of protein is %4.3f nm'%(r/1e-9)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.9:pg-442" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Radius of Lysozyme particle is 1.937 nm\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "s = 1.91e-13 #Sedimentation constant, s\n", + "NA = 6.02214129e+23 #mol^-1\n", + "M = 14100.0 #Molecualr wt of lysozyme, g/mol\n", + "rho = 0.998 #Density of water, kg/m3\n", + "eta = 1.002 #Viscosity lysozyme in water, cP\n", + "T = 293.15 #Temperature, K\n", + "vbar = 0.703 #Specific volume of cm3/g\n", + "\n", + "#Calculations\n", + "m = M/NA\n", + "f = m*(1.-vbar*rho)/s\n", + "r = f/(6*pi*eta)\n", + "\n", + "#Results\n", + "print 'Radius of Lysozyme particle is %4.3f nm'%(r/1e-9)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.10:pg-443" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x9adf8d0>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Slope is 3.78e-04 1/min or 6.299e-06 1/s \n", + "Sedimentation factor is 1.899e-13 s\n" + ] + } + ], + "source": [ + "from numpy import arange,array,ones,linalg,log, exp, size\n", + "from matplotlib.pylab import plot,show,xlabel,ylabel\n", + "import math\n", + "%matplotlib inline\n", + "\n", + "#Variable Declaration\n", + "t = array([0.0,30.0,60.0,90.0,120.0,150.0]) #Time, min\n", + "xb = array([6.00,6.07,6.14,6.21,6.28,6.35]) #Location of boundary layer, cm\n", + "rpm = 55000. #RPM of centrifuge \n", + "\n", + "#Calculations\n", + "nx = xb/xb[0]\n", + "lnx = log(nx)\n", + "A = array([ t, ones(size(t))])\n", + "# linearly generated sequence\n", + "[slope, intercept] = linalg.lstsq(A.T,lnx)[0] # obtaining the parameters\n", + "# Use w[0] and w[1] for your calculations and give good structure to this ipython notebook\n", + "# plotting the line\n", + "line = slope*t+intercept # regression line\n", + "\n", + "#Results\n", + "plot(t,line,'-',t,lnx,'o')\n", + "xlabel('$ Time, min $')\n", + "ylabel('$ \\log(x_b/x_{b0}) $')\n", + "show()\n", + "sbar = (slope/60)/(rpm*2*pi/60)**2\n", + "print 'Slope is %6.2e 1/min or %4.3e 1/s '%(slope, slope/60)\n", + "print 'Sedimentation factor is %4.3e s'%(sbar)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.11:pg-449" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Molar conductivity of MgCl2 on infinite dilution is 0.0258 S.m2/mol\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "LMg = 0.0106 #Ionic conductance for Mg, S.m2/mol\n", + "LCl = 0.0076 #Ionic conductance for Cl, S.m2/mol\n", + "nMg, nCl = 1, 2 #Coefficients of Mg and Cl \n", + "\n", + "#Calculations\n", + "LMgCl2 = nMg*LMg + nCl*LCl\n", + "\n", + "#Results\n", + "print 'Molar conductivity of MgCl2 on infinite dilution is %5.4f S.m2/mol'%(LMgCl2)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter18.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter18.ipynb new file mode 100644 index 00000000..887d09f2 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter18.ipynb @@ -0,0 +1,419 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 18: Elementary Chemical Kinetics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.2:pg-461" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Order of reaction with respect to reactant A: 2.00\n", + "Order of reaction with respect to reactant A: 1.00\n", + "Rate constant of the reaction: 3.201e+08 1./(M.s)\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#Variable Declaration\n", + "Ca0 = [2.3e-4,4.6e-4,9.2e-4] #Initial Concentration of A, M\n", + "Cb0 = [3.1e-5,6.2e-5,6.2e-5] #Initial Concentration of B, M\n", + "Ri = [5.25e-4,4.2e-3,1.68e-2] #Initial rate of reaction, M\n", + "\n", + "#Calculations\n", + "alp = log(Ri[1]/Ri[2])/log(Ca0[1]/Ca0[2])\n", + "beta = (log(Ri[0]/Ri[1]) - 2*log((Ca0[0]/Ca0[1])))/(log(Cb0[0]/Cb0[1]))\n", + "k = Ri[2]/(Ca0[2]**2*Cb0[2]**beta)\n", + "\n", + "#REsults\n", + "print 'Order of reaction with respect to reactant A: %3.2f'%alp\n", + "print 'Order of reaction with respect to reactant A: %3.2f'%beta\n", + "print 'Rate constant of the reaction: %4.3e 1./(M.s)'%k" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.3:pg-466" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rate constant of the reaction: 3.381e-05 1/s\n", + "Timerequire for 60 percent decay of N2O5: 1.511e+04 s\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#Variable Declaration\n", + "t1by2 = 2.05e4 #Half life for first order decomposition of N2O5, s\n", + "x = 60. #percentage decay of N2O5\n", + "\n", + "#Calculations\n", + "k = log(2)/t1by2\n", + "t = -log(x/100)/k\n", + "\n", + "#REsults\n", + "print 'Rate constant of the reaction: %4.3e 1/s'%k\n", + "print 'Timerequire for 60 percent decay of N2O5: %4.3e s'%t" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.4:pg-467 " + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rate constant of the reaction: 1.203e-04 1/s\n", + "Timerequire for 60 percent decay of N2O5: 4.245e+03 s\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#Variable Declaration\n", + "t1by2 = 5760 #Half life for C14, years\n", + "\n", + "\n", + "#Calculations\n", + "k = log(2)/t1by2\n", + "t = -log(x/100)/k\n", + "\n", + "#REsults\n", + "print 'Rate constant of the reaction: %4.3e 1/s'%k\n", + "print 'Timerequire for 60 percent decay of N2O5: %4.3e s'%t" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.5:pg-472" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Time required for maximum concentration of A: 13.86 s\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#Variable Declaration\n", + "kAbykI = 2.0 #Ratio of rate constants\n", + "kA = 0.1 #First order rate constant for rxn 1, 1/s \n", + "kI = 0.05 #First order rate constant for rxn 2, 1/s \n", + "#Calculations\n", + "tmax = 1/(kA-kI)*log(kA/kI)\n", + "\n", + "#Results\n", + "print 'Time required for maximum concentration of A: %4.2f s'%tmax" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.7:pg-476" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Percentage of Benzyl Penicillin that under acid catalyzed reaction by path 1: 6.67 \n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#Variable Declaration\n", + "T = 22.0 #Temperature of the reaction,°C\n", + "k1 = 7.0e-4 #Rate constants for rxn 1, 1/s\n", + "k2 = 4.1e-3 #Rate constant for rxn 2, 1/s \n", + "k3 = 5.7e-3 #Rate constant for rxn 3, 1/s \n", + "#Calculations\n", + "phiP1 = k1/(k1+k2+k3)\n", + "\n", + "#Results\n", + "print 'Percentage of Benzyl Penicillin that under acid catalyzed reaction by path 1: %4.2f '%(phiP1*100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.8:pg-477" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaMAAAEWCAYAAADLkvgyAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmUVNW1x/HvhgZnjIIKNCqTKCKCiIAYsCQhIlFQE0fU\naIyKs4JTjEjHNgkaRY04GzEOUaMhMWL02UZb4oAiCLYgogQ1gsPDCXwOiOz3xymkabuaBqrq3Kr6\nfdaqRdWtc+/dfVe5tufcc/cxd0dERCSmJrEDEBERUTISEZHolIxERCQ6JSMREYlOyUhERKJTMhIR\nkegSmYzM7HQze9XMasxsXIY2Q8xsrpnNM7Pz8x2jiIhkT1nsAOoysxRwANDd3ZebWat62jQBJgA/\nABYB08zsQXefm9dgRUQkK5LYMzoZGOfuywHcfXE9bfoAr7v7W+7+NXAvMDyPMYqISBYlMRl1AQaa\n2VQze9LMetfTphz4b63P76S3iYhIAYoyTGdmVcA2tTcBDlyUjmkLd+9nZnsAfwE65j9KERHJlyjJ\nyN0HZ/rOzEYCk9LtppnZCjNr6e4f1mq2ENiu1ud26W2ZjqkCfCIia8ndLV/nSuIw3d+BQQBm1gVo\nVicRAUwDOpvZ9mbWHDgc+EdDB3V3vbLwGjt2bPQYiuml66nrmdRXviUxGU0EOppZDfBn4BgAM2tj\nZpMB3P0b4DTgMWA2cK+7vxopXhERWU+Jm9rtYXbc0fVsfxfYv9bnR4Ed8xiaiIjkSBJ7RpJgqVQq\ndghFRdczu3Q9C5fFGBvMNzPzUvg7RUSyxczwEp/AICIiJUbJSEREolMyEhGR6JSMREQkOiUjERGJ\nTslIRESiUzISEZHolIxERCQ6JSMREYlOyUhERKJTMhIRkeiUjEREJDolIxERiU7JSEREolMyEhGR\n6JSMREQkOiUjERGJTslIRESiUzISEZHolIxERCQ6JSMREYkukcnIzE43s1fNrMbMxtXzfTsze8LM\nZqfbnBEjThERyY6y2AHUZWYp4ACgu7svN7NW9TRbDoxy95lmtikw3cwec/e5+YxVRESyI4k9o5OB\nce6+HMDdF9dt4O7vufvM9PvPgFeB8rxGCdx0E0yZku+ziogUnyQmoy7AQDObamZPmlnvhhqbWXug\nJ/B8HmJbzVZbwYgRcOyx8MEH+T67iEjxiJKMzKzKzF6u9apJ/zuMMHS4hbv3A84D/tLAcTYFHgDO\nTPeQ8mbBmwuYVH0UHVL78PwbR7FT1wXcdBOsWJHPKEREikOUe0buPjjTd2Y2EpiUbjfNzFaYWUt3\n/7BOuzJCIrrT3R9c0zkrKiq+fZ9KpUilUusWPCERDT5tMPN7zIeWwHbQbqOp3HRzFbfd1oEbb4Td\ndlvnw4uI5F11dTXV1dXRzm/uHu3k9TGzE4Fydx9rZl2AKnffvp52dwCL3X1UI47p2fw7jzrjKO7e\n7G5oXmvjMjhyyQgG9byLCy+Eww6DykrYfPOsnVZEJG/MDHe3fJ0vifeMJgIdzawG+DNwDICZtTGz\nyen3ewEjgEFm9pKZzTCzIfkKcOGShasnIoDm8O7SRRx/PMyeDZ9/DjvvDPfeCwnL9yIiiZO4qd3u\n/jVwdD3b3wX2T79/Bmia59C+Vd6iHJbxnZ5R2xZtAWjVCm69FZ59Fk4+Gf74R7juOujSJUq4IiKJ\nl8SeUeJVjqqk06xOISEBLINOszpROapytXb9+8P06TB0aHg/Zgx88UX+4xURSbrE3TPKhWzfM4Iw\niWHM+DEsWrKIti3aUjmqkg7tO2Rs/847MGoUvPgiTJgQEpSISFLl+56RklGePfoonHYa9OgBV18N\n224bOyIRke/SBIYiN2QI1NRA9+5h+vcVV8DXX8eOSkQkLvWMInr99dBLWrQIbrgBvv/92BGJiAQa\npsuBpCYjCNO+H3gAzj4bfvQjuOyyUGZIRCQmDdOVGDM45BCYMyc8INutG9x8s8oKiUhpUc8oYWbO\nhFNOCT2mG26Anj1jRyQipUg9oxLXsyc8/TQcfzzsuy+cdRYsWRI7KhGR3FIySqAmTeAXvwhlhZYu\nDWWF7rtPZYVEpHhpmK4APPNMKCvUunUoK7TDDrEjEpFip2E6+Y699gplhfbdF/bcE8aOVVkhESku\nSkYFolkzGD06THCYMyc8NPvoo7GjEhHJDg3TFahHHgkPzO62Wygr1K5d7IhEpJhomE4aZb/94JVX\nwnNJPXvC+PEqKyQihUs9oyIwbx6ceiq8/354NmmvvWJHJCKFTuWAcqDYkxGEad/33x+Wqdh331BW\nqFWr2FGJSKHSMJ2sEzM49NAwuWGzzcLw3a23qqyQiBQG9YyK1MyZ4dkkszB016NH7IhEpJCoZyRZ\n0bNneFj2uONg8OAwfLd0aeyoRETqp2RUxJo0gRNOCGWFPv4YunYN95VKrJMoIgVAw3Ql5N//DhXB\ny8thwgTo3Dl2RCKSVBqmk5wZMABmzIAf/hD69YOKCvjyy9hRiYgkNBmZ2elm9qqZ1ZjZuAbaNTGz\nGWb2j3zGV8iaNYNzzoGXXoKamlBW6LHHYkclIqUuccN0ZpYCLgSGuvtyM2vl7osztD0b2B1o4e7D\nGjimhuky+Oc/4fTTYffd4aqrwhCeiIiG6eBkYJy7LwdoIBG1A4YCt+YxtqIzdGgoK7TTTmH691VX\nwfLlsaMSkVKTxGTUBRhoZlPN7Ekz652h3VXAuYC6POtpo43gkkvCVPCHHw69pGefjR2ViJSSshgn\nNbMqYJvamwhJ5aJ0TFu4ez8z2wP4C9Cxzv4/Bt5395npYb28dSWL2Y47QlVVWFX2kENCr2ncOGjZ\nMnZkIlLsoiQjdx+c6TszGwlMSrebZmYrzKylu39Yq9lewDAzGwpsBGxmZne4+zGZjltRUfHt+1Qq\nRSqVWr8/okiZweGHh6rgF18cljz/3e/g2GPDc0siUpyqq6uprq6Odv4kTmA4ESh397Fm1gWocvft\nG2i/NzBaExhyY8aMUFaoWTO4/nrYddfYEYlIPmgCA0wEOppZDfBn4BgAM2tjZpOjRlaCevWC556D\nY44JzyeNHq2yQiKSfYnrGeWCekbZ8cEHcN558K9/hVl3P/lJGNZbkwVvLmDM+DEsXLKQ8hblVI6q\npEP7DrkPWETWmdYzygElo+yaMiWUFdp221BWqFOnzG0XvLmAwacNZn6P+dAcWAadZnWiakKVEpJI\ngmmYThJv4MBQwWHQIOjbN0wLz1RWaMz4MasSEUBzmN9jPmPGj8lbvCKSfEpGsk6aNYNzzw0THGbO\nDBMbqqq+227hkoWrEtFKzWHRkkV5iVNECoOSkayX7baDSZPCPaSTTgrTwhfVyjPlLcphWZ2dlkHb\nFm3zGqeIJJuSkWTFj38cygp17hzKCl1zTSgrVDmqkk6zOq1KSOl7RpWjKqPGKyLJogkMknWvvRYm\nOHz0UVjyfJvWYTbdoiWLaNuirWbTiRQAzabLASWj/HOHe+8Ny1Xsv3+o4rDllrGjEpHG0mw6KQpm\ncMQRMGcObLBBKCs0cSKsWBE7MhFJIvWMJC9WlhVq3jwM3e2yS+yIRKQh6hlJUerVKyxLMWJEeD7p\n3HPhs89iRyUiSaFkJHnTtCmMHBlm3X3wQRi6mzQp3F8SkdKmYTqJ5qmnwqy79u3h2muhY8c17iIi\neaJhOikZe+8dygrtvTf06QOVlfDVV7GjEpEYlIwkqubNQyXw6dPDa9dd4fHHY0clIvmmYTpJlIce\ngjPOgH79YPx4aNMmdkQipUnDdFLSDjgAZs8O94923RX+8IdQVkhEipt6RpJYc+eGCQ6ffBKeTerb\nN3ZEIqVDPSORtJ12CqvKjh4NBx0UpoV/9FHsqEQkF5SMJNHMwoOyc+ZAWVl4NulPf9KzSSLFRsN0\nUlCmTw89pI02CkN33brFjkikOGmYTqQBu+8OU6eGIqz77BOmhauskEjhUzKSgtO0aSi6WlMD770X\nekd/+5uG7kQKmYbppOBVV4dZdx07hqngKisksv40TAeY2elm9qqZ1ZjZuAxtNjez+9PtZpuZJv6W\nqFQKZs6E738/lBX6zW9UVkik0CSuZ2RmKeBCYKi7LzezVu6+uJ52twNPuftEMysDNnb3JRmOqZ5R\niXjzTTjzzLD0+XXXwQ9+EDsikcJU8suOm9l9wE3u/kQDbVoAL7l7p0YeU8moxPzjH6GsUP/+cOWV\nKisksrY0TAddgIFmNtXMnjSz3vW06QAsNrOJZjbDzG42s43yHKck2LBhoaxQ+/ahrNC118I338SO\nSkQyiZKMzKzKzF6u9apJ/zsMKAO2cPd+wHnAX+o5RBnQC7jO3XsBnwMX5O0PkIKwySbw29/ClClh\nEb8+feCFF2JHJSL1KYtxUncfnOk7MxsJTEq3m2ZmK8yspbt/WKvZO8B/3f3F9OcHgPMbOmdFRcW3\n71OpFKlUat2Cl4LTtSs88QTcfTcMHw4HHhiS1BZbxI5MJDmqq6uprq6Odv4k3jM6ESh397Fm1gWo\ncvft62n3FHCCu88zs7GECQz1JiTdM5KVPvkEfvWr0FO67DI4+uhQckhEVqcJDGbNgNuAnsBXwGh3\nf8rM2gC3uPv+6XY9gFuBZsB/gOPc/dMMx1QyktVMmxYenN1kE7j+epUVEqmr5JNRLigZSX2++QZu\nvBEqKuD442HMmJCcRESz6UTypmlTOPXUUFZo4cJQEfzvf1dZIZEYGt0zMrONgaOAXQhJbENgBfAZ\nMBV4wN1X5CjO9aKekTTGk0+GskKdO4eyQh06xI5IJJ5EDtOZ2WCgK/Cwu8+v5/sewGDCZINZWY9y\nPSkZSWMtWxYekr3yShg1Cs45B5o3jx2VSP4lLhmZ2YZAO3d/Y40HM+vu7jXZCi5blIxkbS1YECo4\nvPFGKCs0aFDsiETyK3HJ6Ds7mL0IDHD3L8xsP2CJuz+Tk+iyRMlI1tWDD4akNGAAXHEFtG4dOyKR\n/CiECQy/SSeiA4H+wIFZjkkkMYYPD0uet2sH3buHXpLKColkX2PvGU0BngWeA2YAewAHAZcDC939\no1wGub7UM5JsmDMnTHD47LOw5Pkee8SOSCR3EjlMZ2YHAG8A/YC+wM7prx4Cqt19Ws4izAIlI8kW\nd7jrrrDc+UEHhbWTVFZIilEik1G9O5ptQugh7eTuN2Y1qixTMpJs+/jjUFbob3+Dyy+Ho45SWSEp\nLolLRma2AbBpnUKlmdpu6+7/zVZw2aJkJLnywguhrNBmm4WyQjvvvOZ9RApB4iYwuPtXwJ5mdkSm\nNYPM7HvpAqffKWgqUsxWLkvx05/C3nvDL38J//d/saMSKTxrU4GhNfBzYGtC9YVmwHLCWkLvALdm\nKlQam3pGkg/vvQejR8Mzz4QKDsOGxY5IZN0lbpiuGCgZST498USYddelS0hK7dvHjkhk7SVumK4u\nM7vJzK40s5+aWdtcBCVSyAYNglmzoG9f6N0bxo0LZYZEJLN1eej1WeBKwhDdeWb2bDpBKTGJpG2w\nQZhtN20aPP009OgRCrGKSP3WpRzQRcDV7v5Z+vNPgCrgRHe/Ivshrj8N00lM7qGs0JlnwsCBoazQ\nNtvEjkqkYYkfpgP+CNxtZg+a2eVAb3dfArye3dBEioMZHHhgqODQti3sskuYBq6yQiKrrM9Dr9sD\nWwA1QEvgMnc/LouxZY16RpIkr7wSJjh88UUoK9S7d+yIRL4r8bPpzKwrcDLwCXCnuye+R6RkJEnj\nDnfeCeefDwcfHMoKfe97saMSWaUQhumGAjcSJjJckF5GQkTWghkccwzMnh2G67p2DTXv9P9MUqrW\npWf0M3f/U63Px7j7HVmPLIvUM5Kke/75UFZo883D/aSuXWNHJKWuEHpGi83sHjM7wMx2BTQvSGQ9\n9e0bygodfHCYcXfhhfD557GjEsmfRiUjM7vEzH5sZq3c/WFgLGE5iYlAold5FSkUZWVw+unw8svw\n5pvQrRs89FDsqETyo7HrGf0e+A/QB9gK+Bh4AZgO7OXuv89qUGanA6cQHqx92N0vqKfNL4GjgG8I\nM/qOc/d6n3PXMJ0Uoscfh1NPhZ12CmWFtlcZYsmjxM+mAzCzFoS1jHoD8939gawFZJYCLgSGuvvy\ndG9scZ022wNPEtZSWmZm9xGSVr33rpSMpFB99RX8/vdw9dVw7rlw9tnQvHnsqKQUFMI9I9x9ibv/\ny90vy2YiSjsZGOfuy9PnWlxPmyXAMmATMysDNgYWZTkOkeg22AAuuijcT5oyBXbbDZ56KnZUItm3\nTskox7oAA81sqpk9aWbfeSTQ3T8m1Md7G1gIfOLuj+c5TpG86dgRJk+GSy+Fo48O08Lffz92VCLZ\nEyUZmVmVmb1c61WT/ncYUAZs4e79gPOAv9Szf0fgbMJifm2BTc3syHz+DSL5ZgYHHRTKCrVuDd27\nhwoOKiskxaAsxkndfXCm78xsJDAp3W6ama0ws5Z1lj3vDTzj7h+l95kE9Af+nOm4FRUV375PpVKk\nUqn1+RNEotl0U7j88tA7OvlkmDgxJKXdd48dmRSy6upqqquro50/cYvrpZcvL3f3sWbWBahy9+3r\ntOkB3EWYRPEVYYr5NHe/LsMxNYFBipI7/OlPcMEFcMghUFmpskKSHQUxgSHHJgIdzayG0NM5BsDM\n2pjZZAB3nwXcQZhaPgsw4OY44YrEYwbHHhvKCi1bBjvvDHffrbJCUngS1zPKBfWMpFRMnRqG7rbc\nEq67LjyjJLIu1DMSkXXWr19YXXb4cBgwIKw2q7JCUgiUjESKTFkZnHEGzJoF8+eHskKTJ8eOSqRh\nGqYTKXJVVaGsULducM01sN12sSOSQqBhOhHJqsGDQ/HVXr3C6/LL4euvY0clsjr1jERKyPz5cNpp\n8Pbb4dmkgQNjRyRJVRCFUguNkpHIKu4waRKcdRYMGhQKsW69deyoJGk0TCciOWUGP/lJKCu01Vaw\nyy5w442wYkXsyKSUqWckUuJqasKzSV9/HYbuevWKHZEkgXpGIpJX3buH5SlGjoShQ8O08E8/jR2V\nlBolIxGhSRM47rhQVujLL0NZoXvuUVkhyR8N04nIdzz3XBi6a9UqlBXaccfYEUm+aZhORKLbc094\n8UXYf3/Yay8YMwa++CJ2VFLMlIxEpF5lZWH696xZMG9eqODw8MOxo5JipWE6EWmUxx4LZYW6dw9l\nhZZ/s4Ax48ewcMlCyluUUzmqkg7tO8QOU7JED73mgJKRSHZ8+WUoJzT+qgU07TaYj/aeD82BZdBp\nVieqJlQpIRUJJaMcUDISya5hxx3FQ23vDolopWUwYukI7vrDXdHikuzRBAYRSbylvnD1RATQHBYt\nWRQlHil8SkYistbKW5TDsjobl8Fn77dVWSFZJ0pGIrLWKkdV0mlWp1UJaRm0e6ETyz+opH9/eOml\nqOFJAVIyEpG11qF9B6omVDFi6Qj2WbAPI5aOYMotVbw4rQMnnABDhsCZZ8KSJbEjlUKhCQwiknWL\nF8MFF8Ajj8CVV8Jhh4Vq4VI4NJsuB5SMROJ49tlQVmjrrUNZoS5dYkckjaXZdCJSNPr3h+nTQzXw\n/v3h4otVVkjql7hkZGb3mtmM9GuBmc3I0G6Imc01s3lmdn6+4xSRxikrg7PPhpkzYe7csJjfI4/E\njkqSJtHDdGZ2BfCJu19aZ3sTYB7wA2ARMA043N3nZjiOhulEEuLRR+G006BnT7jqKth229gRSX00\nTLe6Q4F76tneB3jd3d9y96+Be4HheY1MRNbJkCHwyiuhh7TbbnDFFWGVWSltiU1GZjYAeM/d59fz\ndTnw31qf30lvE5ECsOGGUFER1k2qqgpLnT/zTOyoJKYoycjMqszs5VqvmvS/B9RqdgT194pEpEjs\nsEMYtrv44jD9++c/D9PCpfSUxTipuw9u6HszawocDPTK0GQhsF2tz+3S2zKqqKj49n0qlSKVSjUi\nUhHJNTM45BDYd18YOzYsef6b38Dxx4fl0CU/qqurqa6ujnb+RE5gMLMhwPnuvk+G75sCrxEmMLwL\nvAAc4e6vZmivCQwiBWLmTDjlFHCHG24IEx0k/zSBITiMOkN0ZtbGzCYDuPs3wGnAY8Bs4N5MiUhE\nCkvPnvD006FntO++YVq4ygoVv0T2jLJNPSORwrR4MZx/PvzP/8D48WE4T2WF8kPlgHJAyUiksD3z\nTCgr1KYNTJgQJj5IbmmYTkSkjr32CmWFfvQj2HPPMNHhyy9jRyXZpGQkIgWhWTMYPTpMcJgzJzw0\n++ijsaOSbNEwnYgUpEceCWWFevUKZYXatYsdUXHRMJ2ISCPst18oK7TzzmEG3vjxsHx57KhkXaln\nJCIFb948OPVU+OADuP76cI9J1o9m0+WAkpFI8XOH+++HUaPC80mXXQatWsWOqnBpmE5EZB2YwaGH\nhskNm20G3brBH/8IK1bEjkwaQz0jESlKM2eGZ5OaNAllhXbdNXZEhUU9IxGRLOjZMzwse+yxMHhw\nGL5bujR2VJKJkpGIFK0mTeCEE8Ksu48/hq5dw30lDZQkj4bpRKRk/PvfoSJ4eXkoK9S5c+yIkkvD\ndCIiOTJgAMyYAT/8IfTrB7/+tcoKJYWSkYiUlGbN4Jxz4KWX4OWXoXt3eOyx2FGJhulEpKT985+h\nrNAee4QqDuXlsSNKBg3TiYjk0dChMHs27Lgj9OgR6typrFD+qWckIpL22muhrND//m94Nql//9gR\nxaNyQDmgZCQijeUO990XlqsYOhTGjYOWLWNHlX8aphMRicgMDj88lBXaeONQVui221RWKNfUMxIR\nacCMGaGsULNmoSJ4qZQVUs9IRCRBevWC556Do48OzyeNHq2yQrmgZCQisgZNmsBJJ4WyQh9+GBb0\n++tfVVYomzRMJyKylqZMCWWFtt02lBXq1Cl2RNlX8sN0Znavmc1IvxaY2Yx62rQzsyfMbLaZ1ZjZ\nGTFiFZHSNHBgqOAwaBD07QuXXAJffRU7qsKW6J6RmV0BfOLul9bZ3hpo7e4zzWxTYDow3N3nZjiO\nekYikhNvvw1nnRWG8K67LixXUQz0nFEtZvY2sI+7z19Du78D17r7vzJ8r2QkIjk1eTKccQb06RPK\nCrVtGzui9VPyw3QrmdkA4L1GJKL2QE/g+TyEJSJSr/33D72jzp1DWaFrrlFZobVRFuOkZlYFbFN7\nE+DAr9z9ofS2I4B71nCcTYEHgDPd/bOG2lZUVHz7PpVKkUql1jpuEZGGbLwxXHppmAZ+yilw++2h\nrFC/frEjW7Pq6mqqq6ujnT+Rw3Rm1hRYCPRy90UZ2pQBk4FH3P2aNRxPw3QiklfucM89YbmKAw6A\n3/0OttwydlSNp2G6YDDwaqZElHYbMGdNiUhEJAYzOPJIePVV2GCD8GzS7bfr2aRMktozmgg85+43\n19rWBrjF3fc3s72AKUANYXjPgQvd/dEMx1PPSESimj49lBXaYIMwdLfLLrEjaphm0+WAkpGIJME3\n38Att8DFF8PPfgZjx8Kmm8aOqn4aphMRKVJNm8LIkVBTAx98EIbuJk3S0B2oZyQiEs1TT4VZd+3b\nw7XXQseOsSNaRT0jEZESsffeoazQwIHhYdlLLy3dskLqGYmIJMBbb8EvTljA86+PoVOPhXTbrpzK\nUZV0aN8hSjyawJADSkYiknQL3lzA4NMGM7/HfGgOLINOszpRNaEqSkLSMJ2ISAkaM37MqkQE0Bzm\n95jPmPFjosaVL0pGIiIJsHDJwlWJaKXmsGhJQ8/+Fw8lIxGRBChvUQ7L6mxcBm1bFHj570bSPSMR\nkQQo9XtGSkYiIgmx4M0FjBk/hkVLFtG2RVvNpis2SkYiImtHs+lERKTkKBmJiEh0SkYiIhKdkpGI\niESnZCQiItEpGYmISHRKRiIiEp2SkYiIRKdkJCIi0SkZiYhIdEpGIiISXVnsAOoys3uBLumPWwAf\nu3uvDG2bAC8C77j7sDyFKCIiWZa4npG7H+7uvdIJ6K/ApAaanwnMyU9kAlBdXR07hKKi65ldup6F\nK3HJqI5DgXvq+8LM2gFDgVvzGlGJ03/s2aXrmV26noUrscnIzAYA77n7/AxNrgLOBbQ2hIhIgYty\nz8jMqoBtam8iJJVfuftD6W1HkLlX9GPgfXefaWap9P4iIlKgErm4npk1BRYCvdx9UT3f/xY4ClgO\nbARsBkxy92MyHC95f6SISMKV/EqvZjYEON/d92lE272B0ZpNJyJSuJJ6z+gw6gzRmVkbM5scKR4R\nEcmhRPaMRESktCSyZ2RmQ8xsrpnNM7PzM7T5g5m9bmYzzaznmvY1s0vMbFa6/ePpqeGY2Q/N7MX0\nd9PMbJ9a+/Qys5fTx7o6l39zLiXoej6ZPtZLZjbDzFrl8u/OlTxfzz3S1+ul9PeH1dpHv8/sXs+C\n/33m81rW+n47M1tqZqNqbVv736a7J+pFSJBvANsDzYCZwE512uwHPJx+3xeYuqZ9gU1r7X86cEv6\nfQ+gdfp9N0I1h5Xtngf2SL//J7Bv7OtT4NfzSWC32NekwK7nhkCT9PvWwGKgqX6fObmeBf37zOO1\nvLXOMe8H7gNG1dq21r/NJPaM+gCvu/tb7v41cC8wvE6b4cAdAO7+PLC5mW3T0L7u/lmt/TcBPkxv\nn+Xu76XfzwY2NLNmZtYa2Mzdp6X3uQM4MPt/bs4l4nrWapvE39zayPf1/NLdV6S3bwR86u7f6PeZ\n3etZq20h/z7zdS0Xr/xgZsOB/wCza21bp99m4mrTAeXAf2t9fodwodbUpnxN+5rZpcAxwOeE/ytY\njZn9FJjh7l+bWXl6/7rnKDSJuJ61Nt9uZl8TpuJfutZ/TXx5v55m1ge4DegAHFnrHPp9Zu96rlTI\nv8+8Xksz2wQ4DxhMKEBQ+xxr/dss5P8LqK1Rc+Hd/SJ33w6YCKw2jmlm3YDfASdmP7yCk6vreaS7\ndwcGAAPM7KgsxZt063U93f0Fd98F2B24xsxa5CbMgpGt69mL1a9nKf4+1+daVgBXufvn2Qgkiclo\nIbBdrc/t0tvqttm2njaN2Rfgz0DvlR/SN+QmAUe7+5trOEehScr1xN3fTf/7f+l96v5fWyHI+/Vc\nyd3nAvPjsTZzAAADcUlEQVSBHRo4R6GJeT1fY9X1LIbfZ76vZV/gcjP7D3AWcKGZndLAORoW+6Zb\n3RfQlFU30poTbqR1rdNmKKtuwvVj1U24jPsCnWvtfzpwZ/r999LtDqwnlqmEH6QRbsINiX19CvV6\npo/VMv2+GeGm54mxr08BXM/2rLrBvj3wFtBCv8/sXs9i+H3m+1rWOe5YVp/AsNa/zegXMMNFHQK8\nBrwOXJDedlLtHwcwIX3xZhHKBmXcN739AeBl4CXC0hRbp7f/ClgKzEh/NwNolf5ud6AmfaxrYl+X\nQr6ewMaEtadmpq/pVaSfcyu0V56v51HAK+nr+Dy1ZiXp95m961ksv898Xss6562bjNb6t6mHXkVE\nJLok3jMSEZESo2QkIiLRKRmJiEh0SkYiIhKdkpGIiESnZCQiItEpGYmISHRKRiIiEp2SkUiWmVmZ\nme2Yx/MNM7M2+TqfSC4oGYmsAwvGZ/g6BXxjZjuY2SNmdqKZVZnZrWZ2koWVcL/z356ZjTazd83s\n6PTncjN71cxGNhDHNsCxNLL6skhSJXE9I5FEM7MtCAlgYIYmO7r742Z2KDDMw/pYBwOXu/s8M/vE\nVy3wVtt04FF3v9PMDOgP9HX3JZlicff3zWzm+v1FIvEpGYmsJXf/GLjKzA7I0GTlyqHzfNXCgl3c\nfV76/dwM+/UBnjez5sDBwF9r7Y+ZtQW6A07oCX3q7lNRr0iKgJKRSBalVxGdBuDuM9PbOhOqJJPe\nPivD7n2A6wmVkS/21VfIxd0XAYvqnG9roAswCLgrO3+FSP7pnpFIdu3u7tPrbOsDvNCIffcAWgIP\nEpY6WCN3/8DdR7i7EpEUNCUjkeyqb8isD2HtnMw7hYkIi9z9fsLCbsPT941ESoKSkci6Wy1ZpKdz\nv1ZPuz2o1TMys/b1tOlLWB0Td/+UsNDb4CzFKZJ4SkYia8nMNjGzs4CdzOwsM9s4/VUKqK7VroeZ\nnQPsChxsZlulJyE8Xud4/YFTgTZm1jZ9vI2BX5vZDrn/i0Ti00qvIlliZqe5+4RGtNvb3Z/KR0wi\nhUI9I5EsSFdAWNjI5hvkMhaRQqSekUgWpB9wnezun8eORaQQKRmJiEh0GqYTEZHolIxERCQ6JSMR\nEYlOyUhERKJTMhIRkeiUjEREJDolIxERiU7JSEREolMyEhGR6P4ffTyAN3dtCVsAAAAASUVORK5C\nYII=\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x9358710>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Slope and intercept are, -6419.8 and 14.45\n", + "Pre-exponential factor and Activation energy are 53.37 kJ/mol and 1.88e+06 1/s\n" + ] + } + ], + "source": [ + "from numpy import arange,array,ones,linalg,log, exp, size\n", + "from matplotlib.pylab import plot, show, xlabel, ylabel\n", + "%matplotlib inline\n", + "import math\n", + "\n", + "#Variable Declaration\n", + "T = array([22.7,27.2,33.7,38.0])\n", + "k1 = array([7.e-4,9.8e-4,1.6e-3,2.e-3])\n", + "R = 8.314 \n", + "\n", + "#Calculations\n", + "T = T +273.15\n", + "x = 1./T\n", + "y = log(k1)\n", + "A = array([ x, ones(size(x))])\n", + "# linearly generated sequence\n", + "[slope, intercept] = linalg.lstsq(A.T,y)[0] # obtaining the parameters\n", + "\n", + "# Use w[0] and w[1] for your calculations and give good structure to this ipython notebook\n", + "# plotting the line\n", + "line = slope*x+intercept # regression line\n", + "#Results\n", + "plot(x,line,'-',x,y,'o')\n", + "xlabel('$ 1/T, K^{-1} $')\n", + "ylabel('$ log(k) $')\n", + "show()\n", + "Ea = -slope*R\n", + "A = exp(intercept)\n", + "print 'Slope and intercept are, %6.1f and %4.2f'%(slope, intercept)\n", + "print 'Pre-exponential factor and Activation energy are %4.2f kJ/mol and %4.2e 1/s'%(Ea/1e3, A)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.9:pg-482" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Forward Rate constant is 4.34e+08 1/s\n", + "Backward Rate constant is 4.34e+04 1/s\n", + "Apperent Rate constant is 4.34e+08 1/s\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declaration\n", + "Ea = 42.e3 #Activation energy for reaction, J/mol\n", + "A = 1.e12 #Pre-exponential factor for reaction, 1/s\n", + "T = 298.0 #Temeprature, K\n", + "Kc = 1.0e4 #Equilibrium constant for reaction\n", + "R = 8.314 #Ideal gas constant, J/(mol.K)\n", + "#Calculations\n", + "kB = A*exp(-Ea/(R*T))\n", + "kA = kB*Kc\n", + "kApp = kA + kB\n", + "\n", + "#Results\n", + "print 'Forward Rate constant is %4.2e 1/s'%kA\n", + "print 'Backward Rate constant is %4.2e 1/s'%kB\n", + "print 'Apperent Rate constant is %4.2e 1/s'%kApp" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.10:pg-492" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Estimated rate 6.4e+13 1/(M.s) is far grater than experimental value of 4.0e+07 1/(M.s), \n", + "hence the reaction is not diffusion controlled\n" + ] + } + ], + "source": [ + "from math import pi\n", + "#Variable Declaration\n", + "Dh = 7.6e-7 #Diffusion coefficient of Hemoglobin, cm2/s\n", + "Do2 = 2.2e-5 #Diffusion coefficient of oxygen, cm2/s\n", + "rh = 35. #Radius of Hemoglobin, °A\n", + "ro2 = 2.0 #Radius of Oxygen, °A\n", + "k = 4e7 #Rate constant for binding of O2 to Hemoglobin, 1/(M.s)\n", + "NA =6.022e23 #Avagadro Number\n", + "#Calculations\n", + "DA = Dh + Do2\n", + "kd = 4*pi*NA*(rh+ro2)*1e-8*DA\n", + "\n", + "#Results\n", + "print 'Estimated rate %4.1e 1/(M.s) is far grater than experimental value of %4.1e 1/(M.s), \\nhence the reaction is not diffusion controlled'%(kd,k)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.11:pg-494" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Forward Rate constant is 9.90e+04 1/s\n", + "Backward Rate constant is -12.72 1/s\n" + ] + } + ], + "source": [ + "from math import log, e\n", + "#Variable Declaration\n", + "Ea = 104e3 #Activation energy for reaction, J/mol\n", + "A = 1.e13 #Pre-exponential factor for reaction, 1/s\n", + "T = 300.0 #Temeprature, K\n", + "R = 8.314 #Ideal gas constant, J/(mol.K)\n", + "h = 6.626e-34 #Plnak constant, Js\n", + "c = 1.0 #Std. State concentration, M\n", + "k = 1.38e-23 #,J/K\n", + "\n", + "#Calculations\n", + "dH = Ea - 2*R*T\n", + "dS = R*log(A*h*c/(k*T*e**2))\n", + "\n", + "#Results\n", + "print 'Forward Rate constant is %4.2e 1/s'%dH\n", + "print 'Backward Rate constant is %4.2f 1/s'%dS" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter19.ipynb b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter19.ipynb new file mode 100644 index 00000000..81a699eb --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/Chapter19.ipynb @@ -0,0 +1,356 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 19: Complex Reaction Mechanism " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex19.1:pg-511" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZYAAAEQCAYAAACTEVJTAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xuc1VW9//HXGxQvGKaVKKg4oih4Q8Jbao6kqJ3yUh5F\nK6VDHhUUL13E+hF4SFPLJDW7mIXXSK28pCEYZywTFAQEARERFAYBFcXEGzCf3x/rC2w5Mzgz7D3f\nPTPv5+MxD/as+X73fu8B5jNrre93LUUEZmZmxdIm7wBmZtayuLCYmVlRubCYmVlRubCYmVlRubCY\nmVlRubCYmVlRbZZ3gHIgyddcm5k1UESotnb3WDIRUZYfw4YNyz1Dc8xW7vmcrWXmK+dsxc63MS4s\nZmZWVC4sZmZWVC4sZa6ysjLvCHUq52xQ3vmcrfHKOV85Z4Omy6ePGytrDSSFvw9mZvUnifDkvZmZ\nNQUXFjMzKyoXFjMzKyrfIGlm1sLNn/8yQ4eOorq6hs6d2zBiRH8qKrqU7PU8eY8n782s5Zo//2WO\nPfZG5s27AmgPrKRr12GMG3fhJhUXT96bmbVSQ4eOKigqAO2ZN+8Khg4dVbLXdGExM2vBqme8xvqi\nslZ7Fi+uKdlr5lJYJG0h6SlJUyXNlHRV1j5M0iJJU7KP4wvOuVzSXEmzJfUtaO8labqkFySNLGhv\nJ2l0ds4ESbs27bs0M8vRggVwyil0fulJYOUGX1xJp06l+/GfS2GJiA+AoyPiQGB/oI+kw7Mv/ywi\nemUfYwAkdQdOA7oDJwA3S1o7tvdLYEBEdAO6STouax8ALI+IPYGRwLVN8ubMzPL0/vswYgT07g2f\n/SwjJv2Brl2Hsb64pDmWESP6lyxCbleFRcS72cMtSAXuzezz2iaDTgJGR8RqYIGkucDBkl4GPhER\nk7LjbgdOBh7NzhmWtd8H3FT8d2FmVkb++le46CI44AB45hno0oUKYNy4Cxk69KcsXlxDp05tGDFi\n0ybuP05uhUVSG+AZoCvwq4iYlXVCLpD0DWAy8O2IWAF0BiYUnF6dta0GFhW0L8rayf5cCBARayS9\nJWn7iFhewrdlZtb05s2Diy+GF16Am2+G4477yJcrKrpw553D6ji5+HKbvI+ImmwobGfg85KOAm4G\ndo+InsAS4LoivmStl8WZmTVb774LP/whHHIIHHEEzJjxf4pKHnK/QTIi3pb0MNA7Ih4v+NItwEPZ\n42pgl4Kv7Zy11dVeeM5iSW2BDhvrrQwfPnzd48rKyrJfpdTMWrEIuP9+uOQSOPRQmDYNdt65pC9Z\nVVVFVVVVvY7N5QZJSZ8GVkXECklbkeZErgBmRsSS7JhLgIMi4kxJPYC7gENIQ1zjgD0jIiRNBAYD\nk4CHgRsiYoykgcC+ETFQUj/g5IjoV0ce3yBpZs3DCy/AhRfCokVw443Qp08uMTZ2g2RePZadgNuy\nK7vaAHdExN8l3S6pJ1ADLADOBcjmX+4BZgGrgIEFlWAQMArYEnhk7ZVkwK3AHdlE/xtArUXFzKxZ\neOcduPJKuOUW+P73U3HZfPO8U9XKS7rgHouZlbEIuPde+Pa3obISrr0Wdtop71Rl2WMxM7OPM2tW\n6pm8/jrcfTcceWTeierFS7qYmZWbt99OPZSjjoKTT073pDSTogIuLGZm5SMC7roLuneHN9+E555L\nPZbNmtfgUvNKa2bWUk2fDhdcACtXwn33wWGH5Z2o0dxjMTPL01tvpWVYjjkGzjwTnn66WRcVcGEx\nM8tHTQ2MGpWGvd5/P03Un3cetG2bd7JN5qEwM7OmNmVKGvZaswYefBAOOijvREXlHouZWVNZvhzO\nPx+++EUYMAAmTGhxRQVcWMzMSm/NmnTHfPfuaahr1qxUWNq0zB/BHgozMyulp5+GQYOgXTt49FHo\n2TPvRCXXMsulmVneXnsNzjkn3eB44YXwxBOtoqiAC4uZWXGtWQO/+AXssw9ssw3Mng1nnQVqPVtC\neSjMzKxYnnwyDXttuy38/e+w3355J8qFC4uZ2aZauhS+971UTH7yE+jXr1X1UDbkoTAzs8ZavRp+\n/nPYd1/o2DENe51xRqsuKuAei5lZ4zz+eLrJcccd4Z//hL33zjtR2XBhMTNriMWL4TvfSVd5/exn\n8NWvtvoeyoY8FGZmVh8ffpjmT/bfHyoq0rDXqae6qNTCPRYzs4/z2GPpXpSKirQMy5575p2orLmw\nmJnVZeFCuPRSmDwZRo6EE090D6UechkKk7SFpKckTZU0U9JVWft2ksZKmiPpUUnbFpxzuaS5kmZL\n6lvQ3kvSdEkvSBpZ0N5O0ujsnAmSdm3ad2lmzdYHH8BVV8GBB6YbHWfNgpNOclGpp1wKS0R8ABwd\nEQcC+wN9JB0ODAEei4i9gPHA5QCSegCnAd2BE4CbpXV/w78EBkREN6CbpOOy9gHA8ojYExgJXNs0\n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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x9aa4048>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Km and k2 are 10.0 mM and 1.1e+05 s-1\n" + ] + } + ], + "source": [ + "import numpy as np\n", + "from numpy import arange,array,ones,linalg,size\n", + "from matplotlib.pylab import plot,show,xlim,ylim,xlabel,ylabel\n", + "%matplotlib inline\n", + "import math\n", + "\n", + "#Variable declaration\n", + "Ce = 2.3e-9 #Initial value of enzyme concentration, M\n", + "r = array([2.78e-5,5.e-5,8.33e-5,1.67e-4])\n", + "CCO2 = array([1.25e-3,2.5e-3,5.e-3,20.e-3])\n", + "\n", + "#Calculations\n", + "rinv = 1./r\n", + "CCO2inv = 1./CCO2\n", + "xlim(0,850)\n", + "ylim(0,38000)\n", + "xi = CCO2inv\n", + "A = array([ CCO2inv, ones(size(CCO2inv))])\n", + "# linearly generated sequence\n", + "w = linalg.lstsq(A.T,rinv)[0] # obtaining the parameters\n", + "slope = w[0]\n", + "intercept = w[1]\n", + "\n", + "line = w[0]*CCO2inv+w[1] # regression line\n", + "plot(CCO2inv,line,'r-',CCO2inv,rinv,'o')\n", + "xlabel('$ {C_{CO}}_2, mM^{-1} $')\n", + "ylabel('$ Rate^{-1}, s/M^{-1} $')\n", + "show()\n", + "rmax = 1./intercept\n", + "k2 = rmax/Ce\n", + "Km = slope*rmax\n", + "\n", + "#Results\n", + "print 'Km and k2 are %4.1f mM and %3.1e s-1'%(Km*1e3,k2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex19.2:pg-517" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\nREahIiIikfl//rBLh3QxZCwAAAAASUVORK5CYII=\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x9acd4a8>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Slope and intercept are 0.3449 torr.g/cm3 and 0.0293 g/cm3\n", + "K and Vm are 8.48e-02 Torr^-1 and 34.2 cm3/g\n" + ] + } + ], + "source": [ + "from numpy import arange,array,ones,linalg\n", + "from matplotlib.pylab import plot,show,xlim,ylim,xlabel,ylabel\n", + "%matplotlib inline\n", + "import math\n", + "\n", + "#Variable declaration\n", + "Vads = array([5.98,7.76,10.1,12.35,16.45,18.05,19.72,21.1]) #Adsorption data at 193.5K\n", + "P = array([2.45,3.5,5.2,7.2,11.2,12.8,14.6,16.1]) #Pressure, torr\n", + "\n", + "#Calculations\n", + "Vinv = 1./Vads\n", + "Pinv =1./P\n", + "xlim(0,0.5)\n", + "ylim(0,0.2)\n", + "A = array([ Pinv, ones(size(Pinv))])\n", + "# linearly generated sequence\n", + "w = linalg.lstsq(A.T,Vinv)[0] # obtaining the parameters\n", + "m = w[0]\n", + "c = w[1]\n", + "line = m*Pinv+c # regression line\n", + "plot(Pinv,line,'r-',Pinv,Vinv,'o')\n", + "xlabel('$ 1/P, Torr^{-1} $')\n", + "ylabel('$ 1/V_{abs}, cm^{-1}g $')\n", + "show()\n", + "Vm = 1./c\n", + "K = 1./(m*Vm)\n", + "\n", + "#Results\n", + "print 'Slope and intercept are %5.4f torr.g/cm3 and %5.4f g/cm3'%(m,c)\n", + "print 'K and Vm are %4.2e Torr^-1 and %3.1f cm3/g'%(K,Vm)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex19.4:pg-533" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0xa641f28>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Slope and intercept are kq = 3.1995e+09 per s and kf = 2.1545e+06 per s\n" + ] + } + ], + "source": [ + "from numpy import arange,array,ones,linalg\n", + "from matplotlib.pylab import plot,show,xlim,ylim,xlabel,ylabel\n", + "%matplotlib inline\n", + "import math\n", + "\n", + "#Variable declaration\n", + "CBr = array([0.0005,0.001,0.002,0.003,0.005]) #C6Br6 concentration, M\n", + "tf = array([2.66e-7,1.87e-7,1.17e-7,8.50e-8,5.51e-8]) #Fluroscence life time, s\n", + "\n", + "#Calculations\n", + "Tfinv = 1./tf\n", + "xlim(0,0.006)\n", + "ylim(0,2.e7)\n", + "A = array([ CBr, ones(size(CBr))])\n", + "# linearly generated sequence\n", + "[m,c] = linalg.lstsq(A.T,Tfinv)[0] # obtaining the parameters\n", + "\n", + "line = m*CBr+c # regression line\n", + "plot(CBr,line,'r-',CBr,Tfinv,'o')\n", + "xlabel('$ Br_6C_6, M $')\n", + "ylabel('$ tau_f $')\n", + "show()\n", + "\n", + "#Results\n", + "print 'Slope and intercept are kq = %5.4e per s and kf = %5.4e per s'%(m,c)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex19.5:pg-536" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Separation Distance at decreased efficiency 11.53\n" + ] + } + ], + "source": [ + "from scipy.optimize import root\n", + "import math\n", + "\n", + "#Variable Declaration\n", + "r = 11. #Distance of residue separation, °A\n", + "r0 = 9. #Initial Distance of residue separation, °A\n", + "EffD = 0.2 #Fraction decrease in eff\n", + "\n", + "#Calculations\n", + "Effi = r0**6/(r0**6+r**6)\n", + "Eff = Effi*(1-EffD)\n", + "f = lambda r: r0**6/(r0**6+r**6) - Eff\n", + "sol = root(f, 12)\n", + "rn = sol.x[0]\n", + "\n", + "#Results\n", + "print 'Separation Distance at decreased efficiency %4.2f'%rn" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex19.6:pg-538" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total photon energy absorbed by sample 2.7e+03 J\n", + "Photon energy absorbed at 280 nm is 7.1e-19 J\n", + "Total number of photon absorbed by sample 3.8e+21 photones\n", + "Overall quantum yield 0.40\n" + ] + } + ], + "source": [ + "#Variable Declarations\n", + "import math\n", + "mr = 2.5e-3 #Moles reacted, mol\n", + "P = 100.0 #Irradiation Power, J/s\n", + "t = 27 #Time of irradiation, s\n", + "h = 6.626e-34 #Planks constant, Js\n", + "c = 3.0e8 #Speed of light, m/s\n", + "labda = 280e-9 #Wavelength of light, m\n", + "\n", + "#Calculation\n", + "Eabs = P*t\n", + "Eph = h*c/labda\n", + "nph = Eabs/Eph #moles of photone\n", + "phi = mr/6.31e-3\n", + "\n", + "#Results\n", + "print 'Total photon energy absorbed by sample %3.1e J'%Eabs\n", + "print 'Photon energy absorbed at 280 nm is %3.1e J'%Eph\n", + "print 'Total number of photon absorbed by sample %3.1e photones'%nph\n", + "print 'Overall quantum yield %4.2f'%phi" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex19.7:pg-542" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "DGS = 0.111 eV\n", + "Rate constant with barrier to electron transfer 2.66e+07 per s\n" + ] + } + ], + "source": [ + "from math import exp\n", + "#Variable Declarations\n", + "r = 2.0e9 #Rate constant for electron transfer, per s\n", + "labda = 1.2 #Gibss energy change, eV\n", + "DG = -1.93 #Gibss energy change for 2-naphthoquinoyl, eV\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "T = 298.0 #Temeprature, K\n", + "#Calculation\n", + "DGS = (DG+labda)**2/(4*labda)\n", + "k193 = r*exp(-DGS*1.6e-19/(k*T))\n", + "#Results\n", + "print 'DGS = %5.3f eV'%DGS\n", + "print 'Rate constant with barrier to electron transfer %3.2e per s'%k193" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/screenshots/15.8.png b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/screenshots/15.8.png Binary files differnew file mode 100644 index 00000000..3d698568 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/screenshots/15.8.png diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/screenshots/4.3.png b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/screenshots/4.3.png Binary files differnew file mode 100644 index 00000000..f66fbef8 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/screenshots/4.3.png diff --git a/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/screenshots/9.6.png b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/screenshots/9.6.png Binary files differnew file mode 100644 index 00000000..ddd62603 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamic_and_Kinetics_by_T._Engel_and_P._Reid/screenshots/9.6.png diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_5AfCLKz.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_5AfCLKz.ipynb new file mode 100644 index 00000000..29d2cd41 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_5AfCLKz.ipynb @@ -0,0 +1,421 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 5: Enthalpy and the Second and Third Laws of Thermodynamics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.1:pg-90" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Efficiency of heat engine is 0.600\n", + "Work done by heat engine is 600.0 J\n" + ] + } + ], + "source": [ + "import math\n", + "Th, Tc = 500.,200. #Temeperatures IN Which reversible heat engine works, K\n", + "q = 1000. #Heat absorbed by heat engine, J\n", + "\n", + "#Calcualtions\n", + "eps = 1.-Tc/Th\n", + "w = eps*q\n", + "\n", + "#Results\n", + "print 'Efficiency of heat engine is %4.3f'%eps\n", + "print 'Work done by heat engine is %4.1f J'%w" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.4:pg-94" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Entropy change of process is 24.43 J/(mol.K)\n" + ] + } + ], + "source": [ + "from sympy import integrate, symbols\n", + "from math import log\n", + "\n", + "n = 1.0 #Number of moles of CO2\n", + "Ti, Tf = 320.,650. #Initial and final state Temeperatures of CO2, K\n", + "vi, vf = 80.,120. #Initial and final state volume of CO2, K\n", + "A, B, C, D = 31.08,-0.01452,3.1415e-5,-1.4973e-8\n", + " #Constants in constant volume Heat capacity equation in J, mol, K units\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K) \n", + "#Calcualtions\n", + "T = symbols('T')\n", + "dS1 = n*integrate( (A + B*T + C*T**2 + D*T**3)/T, (T,Ti,Tf)) \n", + "dS2 = n*R*log(vf/vi)\n", + "dS = dS1 + dS2\n", + "#Results\n", + "print 'Entropy change of process is %4.2f J/(mol.K)'%dS" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.5:pg-94" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Entropy change of process is 48.55 J/(mol.K)\n" + ] + } + ], + "source": [ + "from sympy import integrate, symbols\n", + "from math import log\n", + "\n", + "n = 2.5 #Number of moles of CO2\n", + "Ti, Tf = 450.,800. #Initial and final state Temeperatures of CO2, K\n", + "pi, pf = 1.35,3.45 #Initial and final state pressure of CO2, K\n", + "A, B, C, D = 18.86,7.937e-2,-6.7834e-5,2.4426e-8\n", + " #Constants in constant pressure Heat capacity equation in J, mol, K units\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K) \n", + "#Calcualtions\n", + "T = symbols('T')\n", + "dS1 = n*integrate( (A + B*T + C*T**2 + D*T**3)/T, (T,Ti,Tf)) \n", + "dS2 = n*R*log(pf/pi)\n", + "dS = dS1 - dS2\n", + "#Results\n", + "print 'Entropy change of process is %4.2f J/(mol.K)'%dS" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.6:pg-95" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Entropy change of process is 58.2 J/(mol.K)\n", + "Ratio of pressure to temperature dependent term 2.8e-05\n", + "hence effect of pressure dependent term isvery less\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "\n", + "n = 3.0 #Number of moles of CO2\n", + "Ti, Tf = 300.,600. #Initial and final state Temeperatures of CO2, K\n", + "pi, pf = 1.00,3.00 #Initial and final state pressure of CO2, K\n", + "cpm = 27.98 #Specific heat of mercury, J/(mol.K)\n", + "M = 200.59 #Molecualr wt of mercury, g/(mol)\n", + "beta = 1.81e-4 #per K\n", + "rho = 13.54 #Density of mercury, g/cm3\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K) \n", + "\n", + "#Calcualtions\n", + "dS1 = n*cpm*log(Tf/Ti)\n", + "dS2 = n*(M/(rho*1e6))*beta*(pf-pi)*1e5\n", + "dS = dS1 - dS2\n", + "\n", + "#Results\n", + "print 'Entropy change of process is %4.1f J/(mol.K)'%dS\n", + "print 'Ratio of pressure to temperature dependent term %3.1e\\nhence effect of pressure dependent term isvery less'%(dS2/dS1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.7:pg-99" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Entropy change of surrounding is 7.6 J/(mol.K)\n", + "Entropy change of system is -7.6 J/(mol.K)\n", + "Total Entropy changeis 0.0 J/(mol.K)\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "n = 1.0 #Number of moles of CO2\n", + "T = 300.0 #Temeperatures of Water bath, K\n", + "vi, vf = 25.0,10.0 #Initial and final state Volume of Ideal Gas, L\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K) \n", + "\n", + "#Calcualtions\n", + "qrev = n*R*T*log(vf/vi)\n", + "w = -qrev\n", + "dSsys = qrev/T\n", + "dSsur = -dSsys\n", + "dS = dSsys + dSsur\n", + "\n", + "#Results\n", + "print 'Entropy change of surrounding is %4.1f J/(mol.K)'%dSsur\n", + "print 'Entropy change of system is %4.1f J/(mol.K)'%dSsys\n", + "print 'Total Entropy changeis %4.1f J/(mol.K)'%dS" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.8:pg-100" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Constant external pressure and initial pressure are 2.494e+05 J,and 9.977e+04 J respectively\n", + "Heat in reverssible and irreversible processes are -2285.4 J,and -3741.3 J respectively\n", + "Entropy change of system is -7.6 J/(mol.K)\n", + "Entropy change of surrounding is 12.47 J/(mol.K)\n", + "Total Entropy changeis 4.85 J/(mol.K)\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "\n", + "n = 1.0 #Number of moles of CO2\n", + "T = 300.0 #Temeperatures of Water bath, K\n", + "vi, vf = 25.0,10.0 #Initial and final state Volume of Ideal Gas, L\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K) \n", + "\n", + "#Calcualtions\n", + "pext = n*R*T/(vf/1e3)\n", + "pi = n*R*T/(vi/1e3)\n", + "q = pext*(vf-vi)/1e3\n", + "qrev = n*R*T*log(vf/vi)\n", + "w = -q\n", + "dSsur = -q/T\n", + "dSsys = qrev/T\n", + "dS = dSsys + dSsur\n", + "\n", + "#Results\n", + "print 'Constant external pressure and initial pressure are %4.3e J,and %4.3e J respectively'%(pext,pi)\n", + "print 'Heat in reverssible and irreversible processes are %4.1f J,and %4.1f J respectively'%(qrev,q)\n", + "print 'Entropy change of system is %4.1f J/(mol.K)'%dSsys\n", + "print 'Entropy change of surrounding is %4.2f J/(mol.K)'%dSsur\n", + "print 'Total Entropy changeis %4.2f J/(mol.K)'%dS" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.9:pg-103" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Entropy change Sm0 for O2 is 204.8 J/(mol.K)\n" + ] + } + ], + "source": [ + "from sympy import integrate, symbols\n", + "from math import log\n", + "\n", + "n = 1.0 #Number of moles of CO2\n", + "pi, pf = 1.35,3.45 #Initial and final state pressure of CO2, K\n", + "D1 = 2.11e-3 #Constants in constant pressure Heat capacity equation for K<T<12.97K, in J, mol, K units\n", + "A2, B2, C2, D2 = -5.666,0.6927,-5.191e-3,9.943e-4\n", + " #Constants in constant pressure Heat capacity equation for 12.97<T<23.66, J, mol, K units\n", + "A3, B3, C3, D3 = 31.70,-2.038,0.08384,-6.685e-4\n", + " #Constants in constant pressure Heat capacity equation for 23.66<T<43.76, J, mol, K units\n", + "A4 = 46.094 #Constants in constant pressure Heat capacity equation for 43.76<T<54.39, J/(mol.K)\n", + "A5, B5, C5, D5 = 81.268,-1.1467,0.01516,-6.407e-5\n", + " #Constants in constant pressure Heat capacity equation for 54.39<T<90.20K, J, mol, K units\n", + "A6, B6, C6, D6 = 32.71,-0.04093,1.545e-4,-1.819e-7\n", + " #Constants in constant pressure Heat capacity equation for 90.20<T<298.15 KJ, mol, K units\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K) \n", + "Ltrans1 = 93.80 #Entalpy of transition at 23.66K, J/mol\n", + "Ltrans2 = 743.0 #Entalpy of transition at 43.76K, J/mol\n", + "Ltrans3 = 445.0 #Entalpy of transition at 54.39K, J/mol\n", + "Ltrans4 = 6815. #Entalpy of transition at 90.20K, J/mol\n", + "T1 = 12.97 #Maximum applicabliltiy temeprature for first heat capacity equation, K\n", + "T12 = 23.66 #Phase Change temperature from Solid III--II, K\n", + "T23 = 43.76 #Phase Change temperature from Solid II--I, K\n", + "T34 = 54.39 #Phase Change temperature from Solid I--liquid, K\n", + "T45 = 90.20 #Phase Change temperature from liquid--gas, K\n", + "Ts = 298.15 #Std. Temeprature, K\n", + "#Calcualtions\n", + "T = symbols('T')\n", + "dS1 = n*integrate( (D1*T**3)/T, (T,0,T1)) \n", + "dS2 = n*integrate( (A2 + B2*T + C2*T**2 + D2*T**3)/T, (T,T1,T12)) \n", + "dS21 = Ltrans1/T12\n", + "dS3 = n*integrate( (A3 + B3*T + C3*T**2 + D3*T**3)/T, (T,T12,T23)) \n", + "dS31 = Ltrans2/T23\n", + "dS4 = n*integrate( (A4)/T, (T,T23,T34)) \n", + "dS41 = Ltrans3/T34\n", + "dS5 = n*integrate( (A5 + B5*T + C5*T**2 + D5*T**3)/T, (T,T34,T45)) \n", + "dS51 = Ltrans4/T45\n", + "dS6 = n*integrate( (A6 + B6*T + C6*T**2 + D6*T**3)/T, (T,T45,Ts))\n", + "#print dS1+dS2,dS21\n", + "#print dS3, dS31\n", + "#print dS4, dS41\n", + "#print dS5, dS51\n", + "#print dS6\n", + "dS = dS1+dS2+dS21+dS3+dS31+dS4+dS41+dS5+dS51+dS6\n", + "\n", + "#Results\n", + "print 'Entropy change Sm0 for O2 is %4.1f J/(mol.K)'%dS" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex5.10:pg-105" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Entropy change for reaction at 475 K is -88.26 J/(mol.K)\n" + ] + } + ], + "source": [ + "from sympy import integrate, symbols\n", + "from math import log\n", + "n = 1.0 #Number of moles of CO2 formed, mol\n", + "p = 1. #Pressure of CO2, K\n", + "\n", + "A1, B1, C1, D1 = 18.86,7.937e-2,-6.7834e-5,2.4426e-8\n", + " #Constants in constant pressure Heat capacity equation for CO2, J/(mol.K)\n", + "A2, B2, C2, D2 = 30.81,-1.187e-2,2.3968e-5, 0.0\n", + " #Constants in constant pressure Heat capacity equation for O2, J/(mol.K)\n", + "A3, B3, C3, D3 = 31.08,-1.452e-2,3.1415e-5 ,-1.4793e-8 \n", + " #Constants in constant pressure Heat capacity equation for CO, J/(mol.K)\n", + "DSr298CO = 197.67 #Std. Entropy change for CO, J/(mol.K)\n", + "DSr298CO2 = 213.74 #Std. Entropy change for CO, J/(mol.K)\n", + "DSr298O2 = 205.138 #Std. Entropy change for CO, J/(mol.K)\n", + "Tr = 475. #Reaction temperature, K\n", + "Ts = 298.15 #Std. temperature, K\n", + "#Calcualtions\n", + "T = symbols('T')\n", + "v1,v2,v3 = 1.,1./2,1.\n", + "DSr = DSr298CO2*v1 - DSr298CO*v1 - DSr298O2*v2\n", + "DA = v1*A1-v2*A2-v3*A3\n", + "DB = v1*B1-v2*B2-v3*B3\n", + "DC = v1*C1-v2*C2-v3*C3\n", + "DD = v1*D1-v2*D2-v3*D3\n", + "dS = DSr + n*integrate( (DA + DB*T + DC*T**2 + DD*T**3)/T, (T,Ts,Tr)) \n", + "\n", + "#Results\n", + "print 'Entropy change for reaction at %4d K is %4.2f J/(mol.K)'%(Tr,dS)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_9c27zxN.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_9c27zxN.ipynb new file mode 100644 index 00000000..cfc07351 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_9c27zxN.ipynb @@ -0,0 +1,287 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 16: Kinetic Theory of Gases" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex16.1:pg-407" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Most probable speed of Ne and Krypton at 298 K are 498, 244 m/s\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "\n", + "#Variable Declaration\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "T = 298 #Temperatureof Gas, K\n", + "MNe = 0.020 #Molecular wt of Ne, kg/mol\n", + "MKr = 0.083 #Molecular wt of Kr, kg/mol\n", + "\n", + "#Calculations\n", + "vmpNe = sqrt(2*R*T/MNe)\n", + "vmpKr = sqrt(2*R*T/MKr)\n", + "\n", + "#Results\n", + "print 'Most probable speed of Ne and Krypton at 298 K are %4.0f, %4.0f m/s'%(vmpNe,vmpKr)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex16.2:pg-411" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum, average, root mean square speed of Ar\n", + "at 298 K are 352, 397, 431 m/s\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "T = 298 #Temperatureof Gas, K\n", + "M = 0.040 #Molecular wt of Ar, kg/mol\n", + "\n", + "\n", + "#Calculations\n", + "vmp = sqrt(2*R*T/M)\n", + "vave = sqrt(8*R*T/(M*pi))\n", + "vrms = sqrt(3*R*T/M)\n", + "\n", + "#Results\n", + "print 'Maximum, average, root mean square speed of Ar\\nat 298 K are %4.0f, %4.0f, %4.0f m/s'%(vmp,vave,vrms)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex16.4, Page Numbe 413" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of Collisions 2.45e+27 per s\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "T = 298 #Temperature of Gas, K\n", + "M = 0.040 #Molecular wt of Ar, kg/mol\n", + "P = 101325 #Pressure, N/m2\n", + "NA = 6.022e23 #Number of particles per mol\n", + "V = 1.0 #Volume of Container, L\n", + "\n", + "#Calculations\n", + "Zc = P*NA/sqrt(2*pi*R*T*M)\n", + "Nc = Zc*V \n", + "#Results\n", + "print 'Number of Collisions %4.2e per s'%(Nc)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex16.5:pg-414" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Pressure after 1 hr of effusion is 9.996e-03 Pa\n" + ] + } + ], + "source": [ + "from math import sqrt, pi,exp\n", + "\n", + "#Variable Declaration\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "T = 298 #Temperature of Gas, K\n", + "M = 0.040 #Molecular wt of Ar, kg/mol\n", + "P0 = 1013.25 #Pressure, N/m2\n", + "NA = 6.022e23 #Number of particles per mol\n", + "V = 1.0 #Volume of Container, L\n", + "k = 1.38e-23 #Boltzmann constant, J/K\n", + "t = 3600 #time of effusion, s\n", + "A = 0.01 #Area, um2\n", + "\n", + "#Calculations\n", + "A = A*1e-12\n", + "V = V*1e-3\n", + "expo = (A*t/V)*(k*T/(2*pi*M/NA))\n", + "P = P0*exp(-expo)\n", + "#Results\n", + "print 'Pressure after 1 hr of effusion is %4.3e Pa'%(P/101325)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex16.6:pg-417" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Single particle collisional frequency is 6.9e+09 per s\n" + ] + } + ], + "source": [ + "from math import sqrt, pi\n", + "\n", + "#Variable Declaration\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "T = 298 #Temperature of Gas, K\n", + "M = 0.044 #Molecular wt of CO2, kg/mol\n", + "P = 101325 #Pressure, N/m2\n", + "NA = 6.022e23 #Number of particles per mol\n", + "sigm = 5.2e-19 #m2\n", + "\n", + "#Calculations\n", + "zCO2 = (P*NA/(R*T))*sigm*sqrt(2)*sqrt(8*R*T/(pi*M)) \n", + "#Results\n", + "print 'Single particle collisional frequency is %4.1e per s'%(zCO2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex16.7:pg-417" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Collisional frequency is 3.14e+34 m-3s-1\n" + ] + } + ], + "source": [ + "from math import sqrt, pi\n", + "\n", + "#Variable Declaration\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "T = 298 #Temperature of Gas, K\n", + "MAr = 0.04 #Molecular wt of Ar, kg/mol\n", + "MKr = 0.084 #Molecular wt of Kr, kg/mol\n", + "pAr = 360 #Partial Pressure Ar, torr\n", + "pKr = 400 #Partial Pressure Kr, torr\n", + "rAr = 0.17e-9 #Hard sphere radius of Ar, m\n", + "rKr = 0.20e-9 #Hard sphere radius of Kr, m\n", + "NA = 6.022e23 #Number of particles per mol\n", + "k = 1.38e-23 #Boltzmann constant, J/K\n", + "\n", + "#Calculations\n", + "pAr = pAr*101325/760\n", + "pKr = pKr*101325/760\n", + "p1 = pAr*NA/(R*T)\n", + "p2 = pKr*NA/(R*T)\n", + "sigm = pi*(rAr+rKr)**2\n", + "mu = MAr*MKr/((MAr+MKr)*NA)\n", + "p3 = sqrt(8*k*T/(pi*mu)) \n", + "zArKr = p1*p2*sigm*p3\n", + "\n", + "#Results\n", + "print 'Collisional frequency is %4.2e m-3s-1'%(zArKr)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_9cObgYn.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_9cObgYn.ipynb new file mode 100644 index 00000000..bfc29594 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_9cObgYn.ipynb @@ -0,0 +1,221 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 15: Statistical Thermodyanamics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex15.2:pg-374" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "For Internal energy to be 1000.0 J temperature will be 449.0 K\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#Variable Declaration\n", + "U = 1.00e3 #Total internal energy, J\n", + "hnu = 1.00e-20 #Energy level separation, J\n", + "NA = 6.022e23 #Avagadro's Number, 1/mol\n", + "k = 1.38e-23 #Boltzmann constant, J/K\n", + "n = 1 #Number of moles, mol\n", + "\n", + "#Calcualtions\n", + "T = hnu/(k*log(n*NA*hnu/U-1.))\n", + "\n", + "#Results\n", + "print 'For Internal energy to be %4.1f J temperature will be %4.1f K'%(U,T)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex15.3:pg-378" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Energy of excited state is 1.57e-19 J\n", + "Electronic partition function qE is 3.000e+00\n", + "Electronic contribution to internal enrgy is 3.921e-06 J\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declaration\n", + "g0 = 3.0 #Ground State partition function\n", + "labda = 1263e-9 #Wave length in nm\n", + "T = 500. #Temperature, K\n", + "c = 3.00e8 #Speed of light, m/s\n", + "NA = 6.022e23 #Avagadro's Number, 1/mol\n", + "k = 1.38e-23 #Boltzmann constant, J/K\n", + "n = 1.0 #Number of moles, mol\n", + "h = 6.626e-34 #Planks's Constant, J.s\n", + "\n", + "#Calcualtions\n", + "beta = 1./(k*T)\n", + "eps = h*c/labda\n", + "qE = g0 + exp(-beta*eps)\n", + "UE = n*NA*eps*exp(-beta*eps)/qE\n", + "\n", + "#Results\n", + "print 'Energy of excited state is %4.2e J'%eps\n", + "print 'Electronic partition function qE is %4.3e'%qE\n", + "print 'Electronic contribution to internal enrgy is %4.3e J'%UE" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex15.5:pg-387" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Thermal wave lengths for Ne is 2.25e-11 m3\n", + "Std. Molar entropy for Ne is 145.46 J/(mol.K)\n", + "Thermal wave lengths for Kr is 1.11e-11 m3\n", + "Std. Molar entropy for Kr is 163.18 J/(mol.K)\n" + ] + } + ], + "source": [ + "from math import log, pi, sqrt\n", + "\n", + "#Variable Declaration\n", + "Mne = 0.0201797 #Molecular wt of ne, kg/mol \n", + "Mkr = 0.0837980 #Molecular wt of kr, kg/mol\n", + "Vmne = 0.0224 #Std. state molar volume of ne, m3\n", + "Vmkr = 0.0223 #Std. state molar volume of kr, m3\n", + "h = 6.626e-34 #Planks's Constant, J.s\n", + "NA = 6.022e23 #Avagadro's Number, 1/mol\n", + "k = 1.38e-23 #Boltzmann constant, J/K\n", + "T = 298 #Std. state temeprature,K \n", + "R = 8.314 #Ideal gas constant, J/(mol.K)\n", + "n = 1.0 #Number of mole, mol\n", + "\n", + "#Calcualtions\n", + "mne = Mne/NA\n", + "mkr = Mkr/NA\n", + "Labdane = sqrt(h**2/(2*pi*mne*k*T))\n", + "Labdakr = sqrt(h**2/(2*pi*mkr*k*T))\n", + "Sne = 5.*R/2 + R*log(Vmne/Labdane**3)-R*log(NA)\n", + "Skr = 5.*R/2 + R*log(Vmkr/Labdakr**3)-R*log(NA)\n", + "\n", + "#Results\n", + "print 'Thermal wave lengths for Ne is %4.2e m3'%Labdane\n", + "print 'Std. Molar entropy for Ne is %4.2f J/(mol.K)'%Sne\n", + "print 'Thermal wave lengths for Kr is %4.2e m3'%Labdakr\n", + "print 'Std. Molar entropy for Kr is %4.2f J/(mol.K)'%Skr" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex15.8:pg-392" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Thermal wave lengths for Ne is 4.09e-33 m3\n", + "The Gibbs energy for 1 mol of Ar is -39.97 kJ\n" + ] + } + ], + "source": [ + "from math import log, pi\n", + "\n", + "#Variable Declaration\n", + "M = 0.040 #Moleculat wt of Ar, kg/mol\n", + "h = 6.626e-34 #Planks's Constant, J.s\n", + "NA = 6.022e23 #Avagadro's Number, 1/mol\n", + "k = 1.38e-23 #Boltzmann constant, J/K\n", + "T = 298.15 #Std. state temeprature,K \n", + "P = 1e5 #Std. state pressure, Pa\n", + "R = 8.314 #Ideal gas constant, J/(mol.K)\n", + "n = 1.0 #Number of mole, mol\n", + "\n", + "#Calcualtions\n", + "m = M/NA\n", + "Labda3 = (h**2/(2*pi*m*k*T))**(3./2)\n", + "G0 = -n*R*T*log(k*T/(P*Labda3))\n", + "\n", + "#Results\n", + "print 'Thermal wave lengths for Ne is %4.2e m3'%Labda3\n", + "print 'The Gibbs energy for 1 mol of Ar is %6.2f kJ'%(G0/1000)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_9ui5Wjm.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_9ui5Wjm.ipynb new file mode 100644 index 00000000..076c1413 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_9ui5Wjm.ipynb @@ -0,0 +1,700 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 06: Chemical Equilibrium" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.1:pg-126" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum Available work through combustion of CH4 -813.6 kJ/mol\n", + "Maximum Available work through combustion of C8H18 -5320.9 kJ/mol\n" + ] + } + ], + "source": [ + "import math\n", + "dHcCH4 = -891.0 #Std. heat of combustion for CH4, kJ/mol\n", + "dHcC8H18 = -5471.0 #Std. heat of combustion for C8H18, kJ/mol\n", + "\n", + "T = 298.15\n", + "SmCO2, SmCH4, SmH2O, SmO2, SmC8H18 = 213.8,186.3,70.0,205.2, 316.1\n", + "dnCH4 = -2.\n", + "dnC8H18 = 4.5\n", + "R = 8.314\n", + "#Calculations\n", + "dACH4 = dHcCH4*1e3 - dnCH4*R*T - T*(SmCO2 + 2*SmH2O - SmCH4 - 2*SmO2)\n", + "dAC8H18 = dHcC8H18*1e3 - dnC8H18*R*T - T*(8*SmCO2 + 9*SmH2O - SmC8H18 - 25.*SmO2/2) \n", + "#Results \n", + "print 'Maximum Available work through combustion of CH4 %4.1f kJ/mol'%(dACH4/1000)\n", + "print 'Maximum Available work through combustion of C8H18 %4.1f kJ/mol'%(dAC8H18/1000)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.2:pg-128" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum nonexapnasion work through combustion of CH4 -818.6 kJ/mol\n", + "Maximum nonexapnasion work through combustion of C8H18 -5309.8 kJ/mol\n" + ] + } + ], + "source": [ + "import math\n", + "dHcCH4 = -891.0 #Std. heat of combustion for CH4, kJ/mol\n", + "dHcC8H18 = -5471.0 #Std. heat of combustion for C8H18, kJ/mol\n", + "\n", + "T = 298.15\n", + "SmCO2, SmCH4, SmH2O, SmO2, SmC8H18 = 213.8,186.3,70.0,205.2, 316.1\n", + "dnCH4 = -2.\n", + "dnC8H18 = 4.5\n", + "R = 8.314\n", + "#Calculations\n", + "dGCH4 = dHcCH4*1e3 - T*(SmCO2 + 2*SmH2O - SmCH4 - 2*SmO2)\n", + "dGC8H18 = dHcC8H18*1e3 - T*(8*SmCO2 + 9*SmH2O - SmC8H18 - 25.*SmO2/2) \n", + "#Results \n", + "print 'Maximum nonexapnasion work through combustion of CH4 %4.1f kJ/mol'%(dGCH4/1000)\n", + "print 'Maximum nonexapnasion work through combustion of C8H18 %4.1f kJ/mol'%(dGC8H18/1000)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.4:pg-133" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. free energy of formation for Fe(g) at 400 K is 355.1 kJ/mol\n" + ] + } + ], + "source": [ + "import math\n", + "dGf298 = 370.7 #Std. free energy of formation for Fe (g), kJ/mol\n", + "dHf298 = 416.3 #Std. Enthalpy of formation for Fe (g), kJ/mol\n", + "T0 = 298.15 #Temperature in K\n", + "T = 400. #Temperature in K\n", + "R = 8.314\n", + "\n", + "#Calculations\n", + "\n", + "dGf = T*(dGf298*1e3/T0 + dHf298*1e3*(1./T - 1./T0))\n", + "\n", + "#Results \n", + "print 'Std. free energy of formation for Fe(g) at 400 K is %4.1f kJ/mol'%(dGf/1000)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.5:pg-137" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. free energy Change on mixing is -2.8e+04 J\n", + "Std. entropy Change on mixing is -93.3 J\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "nHe = 1.0 #Number of moles of He\n", + "nNe = 3.0 #Number of moles of Ne\n", + "nAr = 2.0 #Number of moles of Ar\n", + "nXe = 2.5 #Number of moles of Xe\n", + "T = 298.15 #Temperature in K\n", + "P = 1.0 #Pressure, bar\n", + "R = 8.314\n", + "\n", + "#Calculations\n", + "n = nHe + nNe + nAr + nXe\n", + "dGmix = n*R*T*((nHe/n)*log(nHe/n) + (nNe/n)*log(nNe/n) +(nAr/n)*log(nAr/n) + (nXe/n)*log(nXe/n))\n", + "dSmix = n*R*((nHe/n)*log(nHe/n) + (nNe/n)*log(nNe/n) +(nAr/n)*log(nAr/n) + (nXe/n)*log(nXe/n))\n", + "\n", + "#Results \n", + "print 'Std. free energy Change on mixing is %3.1e J'%(dGmix)\n", + "print 'Std. entropy Change on mixing is %4.1f J'%(dSmix)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.6:pg-138" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. Gibbs energy change for reaction is 67.00 kJ/mol\n" + ] + } + ], + "source": [ + "import math\n", + "dGfFe = 0.0 #Std. Gibbs energy of formation for Fe (S), kJ/mol\n", + "dGfH2O = -237.1 #Std. Gibbs energy of formation for Water (g), kJ/mol\n", + "dGfFe2O3 = -1015.4 #Std. Gibbs energy of formation for Fe2O3 (s), kJ/mol\n", + "dGfH2 = 0.0 #Std. Gibbs energy of formation for Hydrogen (g), kJ/mol\n", + "T0 = 298.15 #Temperature in K\n", + "R = 8.314\n", + "nFe, nH2, nFe2O3, nH2O = 3,-4,-1,4\n", + "\n", + "#Calculations\n", + "dGR = nFe*dGfFe + nH2O*dGfH2O + nFe2O3*dGfFe2O3 + nH2*dGfH2 \n", + "\n", + "#Results \n", + "print 'Std. Gibbs energy change for reaction is %4.2f kJ/mol'%(dGR)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.7:pg-139" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. Enthalpy change for reactionat 525.0 is -24.80 kJ/mol\n", + "Std. Gibbs energy change for reactionat 525.0 is 137 kJ/mol\n" + ] + } + ], + "source": [ + "import math\n", + "dGR = 67.0 #Std. Gibbs energy of formation for reaction, kJ, from previous problem\n", + "dHfFe = 0.0 #Enthalpy of formation for Fe (S), kJ/mol\n", + "dHfH2O = -285.8 #Enthalpy of formation for Water (g), kJ/mol\n", + "dHfFe2O3 = -1118.4 #Enthalpy of formation for Fe2O3 (s), kJ/mol\n", + "dHfH2 = 0.0 #Enthalpy of formation for Hydrogen (g), kJ/mol\n", + "T0 = 298.15 #Temperature in K\n", + "T = 525. #Temperature in K\n", + "R = 8.314\n", + "nFe, nH2, nFe2O3, nH2O = 3,-4,-1,4\n", + "\n", + "#Calculations\n", + "dHR = nFe*dHfFe + nH2O*dHfH2O + nFe2O3*dHfFe2O3 + nH2*dHfH2 \n", + "dGR2 = T*(dGR*1e3/T0 + dHR*1e3*(1./T - 1./T0))\n", + "\n", + "#Results \n", + "print 'Std. Enthalpy change for reactionat %4.1f is %4.2f kJ/mol'%(T, dHR)\n", + "print 'Std. Gibbs energy change for reactionat %4.1f is %4.0f kJ/mol'%(T, dGR2/1e3)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.8:pg-140" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. Gibbs energy change for reaction is 1.337 kJ/mol\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "dGfNO2 = 51.3 #Std. Gibbs energy of formation for NO2 (g), kJ/mol\n", + "dGfN2O4 = 99.8 #Std. Gibbs energy of formation for N2O4 (g), kJ/mol\n", + "T0 = 298.15 #Temperature in K\n", + "pNO2 = 0.350 #Partial pressure of NO2, bar\n", + "pN2O4 = 0.650 #Partial pressure of N2O4, bar\n", + "R = 8.314\n", + "nNO2, nN2O4 = -2, 1 #Stoichiomentric coeff of NO2 and N2O4 respectively in reaction\n", + "\n", + "#Calculations\n", + "dGR = nN2O4*dGfN2O4*1e3 + nNO2*dGfNO2*1e3 + R*T0*log(pN2O4/(pNO2)**2)\n", + "\n", + "#Results \n", + "print 'Std. Gibbs energy change for reaction is %5.3f kJ/mol'%(dGR/1e3)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.9:pg-141" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. Gibbs energy change for reaction is -0.020 kJ/mol\n", + "Equilibrium constant for reaction is 3323.254 \n", + "Kp >> 1. hence, mixture will consists of product CO2 and H2\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "dGfCO2 = -394.4 #Std. Gibbs energy of formation for CO2 (g), kJ/mol\n", + "dGfH2 = 0.0 #Std. Gibbs energy of formation for H2 (g), kJ/mol\n", + "dGfCO = 237.1 #Std. Gibbs energy of formation for CO (g), kJ/mol\n", + "dGfH2O = 137.2 #Std. Gibbs energy of formation for H24 (l), kJ/mol\n", + "T0 = 298.15 #Temperature in K\n", + "R = 8.314\n", + "nCO2, nH2, nCO, nH2O = 1,1,1,1 #Stoichiomentric coeff of CO2,H2,CO,H2O respectively in reaction\n", + "\n", + "#Calculations\n", + "dGR = nCO2*dGfCO2 + nH2*dGfH2 + nCO*dGfCO + nH2O*dGfH2O\n", + "Kp = exp(-dGR*1e3/(R*T0))\n", + "\n", + "#Results \n", + "print 'Std. Gibbs energy change for reaction is %5.3f kJ/mol'%(dGR/1e3)\n", + "print 'Equilibrium constant for reaction is %5.3f '%(Kp)\n", + "if Kp > 1: print 'Kp >> 1. hence, mixture will consists of product CO2 and H2'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.11:pg-144" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Part A\n", + "Std. Gibbs energy change for reaction is 211.400 kJ/mol\n", + "Std. Enthalpy change for reaction is 242.600 kJ/mol\n", + "Equilibrium constants at 800, 1500, and 2000 K are 4.223e-11, 1.042e-03, and 1.349e-01\n", + "Part B\n", + "Degree of dissociation at 800, 1500, and 2000 K are 3.249e-05, 1.593e-01, and 8.782e-01\n" + ] + } + ], + "source": [ + "from math import exp, sqrt\n", + "\n", + "dGfCl2 = 0.0 #Std. Gibbs energy of formation for CO2 (g), kJ/mol\n", + "dGfCl = 105.7 #Std. Gibbs energy of formation for H2 (g), kJ/mol\n", + "dHfCl2 = 0.0 #Std. Gibbs energy of formation for CO (g), kJ/mol\n", + "dHfCl = 121.3 #Std. Gibbs energy of formation for H24 (l), kJ/mol\n", + "T0 = 298.15 #Temperature in K\n", + "R = 8.314\n", + "nCl2, nCl= -1,2 #Stoichiomentric coeff of Cl2,Cl respectively in reaction\n", + "PbyP0 = 0.01\n", + "#Calculations\n", + "dGR = nCl*dGfCl + nCl2*dGfCl2 \n", + "dHR = nCl*dHfCl + nCl2*dHfCl2 \n", + "func = lambda T: exp(-dGR*1e3/(R*T0) - dHR*1e3*(1./T - 1./T0)/R)\n", + "Kp8 = func(800)\n", + "Kp15 = func(1500)\n", + "Kp20 = func(2000)\n", + "DDiss = lambda K: sqrt(K/(K+4*PbyP0))\n", + "alp8 = DDiss(Kp8)\n", + "alp15 = DDiss(Kp15)\n", + "alp20 = DDiss(Kp20)\n", + "\n", + "#Results \n", + "print 'Part A'\n", + "print 'Std. Gibbs energy change for reaction is %5.3f kJ/mol'%(dGR)\n", + "print 'Std. Enthalpy change for reaction is %5.3f kJ/mol'%(dHR)\n", + "print 'Equilibrium constants at 800, 1500, and 2000 K are %4.3e, %4.3e, and %4.3e'%(Kp8,Kp15,Kp20)\n", + "\n", + "print 'Part B'\n", + "print 'Degree of dissociation at 800, 1500, and 2000 K are %4.3e, %4.3e, and %4.3e'%(alp8,alp15,alp20)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.12:pg-145" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. Gibbs energy change for reaction is 131.1 kJ/mol\n", + "Std. Enthalpy change for reaction is 178.5 kJ/mol\n", + "Equilibrium constants at 1000, 1100, and 1200 K are 0.0956, 0.673e, and 3.423\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "dGfCaCO3 = -1128.8 #Std. Gibbs energy of formation for CaCO3 (s), kJ/mol\n", + "dGfCaO = -603.3 #Std. Gibbs energy of formation for CaO (s), kJ/mol\n", + "dGfCO2 = -394.4 #Std. Gibbs energy of formation for O2 (g), kJ/mol\n", + "dHfCaCO3 = -1206.9 #Std. Enthalpy Change of formation for CaCO3 (s), kJ/mol\n", + "dHfCaO = -634.9 #Std. Enthalpy Change of formation for CaO (s), kJ/mol\n", + "dHfCO2 = -393.5 #Std. Enthalpy Change of formation for O2 (g), kJ/mol\n", + "T0 = 298.15 #Temperature in K\n", + "R = 8.314\n", + "nCaCO3, nCaO, nO2 = -1,1,1 #Stoichiomentric coeff of CaCO3, CaO, O2 respectively in reaction\n", + "\n", + "#Calculations\n", + "dGR = nCaO*dGfCaO + nO2*dGfCO2 + nCaCO3*dGfCaCO3\n", + "dHR = nCaO*dHfCaO + nO2*dHfCO2 + nCaCO3*dHfCaCO3\n", + "\n", + "func = lambda T: exp(-dGR*1e3/(R*T0) - dHR*1e3*(1./T - 1./T0)/R)\n", + "\n", + "Kp10 = func(1000)\n", + "Kp11 = func(1100)\n", + "Kp12 = func(1200)\n", + "\n", + "#Results \n", + "print 'Std. Gibbs energy change for reaction is %4.1f kJ/mol'%(dGR)\n", + "print 'Std. Enthalpy change for reaction is %4.1f kJ/mol'%(dHR)\n", + "print 'Equilibrium constants at 1000, 1100, and 1200 K are %4.4f, %4.3fe, and %4.3f'%(Kp10,Kp11,Kp12)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.13:pg-146" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Pressure at which graphite and dimond will be in equilibrium is 1.51e+04 bar\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "dGfCG = 0.0 #Std. Gibbs energy of formation for CaCO3 (s), kJ/mol\n", + "dGfCD = 2.90 #Std. Gibbs energy of formation for CaO (s), kJ/mol\n", + "rhoG = 2.25e3 #Density of Graphite, kg/m3\n", + "rhoD = 3.52e3 #Density of dimond, kg/m3\n", + "T0 = 298.15 #Std. Temperature, K\n", + "R = 8.314 #Ideal gas constant, J/(mol.K) \n", + "P0 = 1.0 #Pressure, bar\n", + "M = 12.01 #Molceular wt of Carbon\n", + "#Calculations\n", + "P = P0*1e5 + dGfCD*1e3/((1./rhoG-1./rhoD)*M*1e-3)\n", + "\n", + "#Results \n", + "print 'Pressure at which graphite and dimond will be in equilibrium is %4.2e bar'%(P/1e5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.14:pg-154" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "dUbydV = 1.42e+03 bar\n", + "dVbyV = 6.519 percent\n", + "dUbydVm = 9e+02 atm\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "\n", + "beta = 2.04e-4 #Thermal exapansion coefficient, /K\n", + "kapa = 45.9e-6 #Isothermal compressibility, /bar\n", + "T = 298.15 #Std. Temperature, K\n", + "R = 8.206e-2 #Ideal gas constant, atm.L/(mol.K) \n", + "T1 = 320.0 #Temperature, K\n", + "Pi = 1.0 #Initial Pressure, bar\n", + "V = 1.00 #Volume, m3\n", + "a = 1.35 #van der Waals constant a for nitrogen, atm.L2/mol2\n", + "\n", + "#Calculations\n", + "dUbydV = Pf = (beta*T1-kapa*P0)/kapa\n", + "dVT = V*kapa*(Pf-Pi)\n", + "dVbyV = dVT*100/V\n", + "Vm = Pi/(R*T1)\n", + "dUbydVm = a/(Vm**2)\n", + "\n", + "#Results \n", + "print 'dUbydV = %4.2e bar'%(dUbydV)\n", + "print 'dVbyV = %4.3f percent'%(dVbyV)\n", + "print 'dUbydVm = %4.0e atm'%(dUbydVm)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.15:pg-155" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Internal energy change is 4.06e+04 J/mol in which \n", + "contribution of temeprature dependent term 99.9999 percent\n", + "Enthalpy change is 4.185e+04 J/mol in which \n", + "contribution of temeprature dependent term 100.0 percent\n" + ] + } + ], + "source": [ + "from math import exp, log\n", + "\n", + "m = 1000.0 #mass of mercury, g\n", + "Pi, Ti = 1.00, 300.0 #Intial pressure and temperature, bar, K\n", + "Pf, Tf = 300., 600.0 #Final pressure and temperature, bar, K\n", + "rho = 13534. #Density of mercury, kg/m3\n", + "beta = 18.1e-4 #Thermal exapansion coefficient for Hg, /K \n", + "kapa = 3.91e-6 #Isothermal compressibility for Hg, /Pa\n", + "Cpm = 27.98 #Molar Specific heat at constant pressure, J/(mol.K) \n", + "M = 200.59 #Molecular wt of Hg, g/mol\n", + "\n", + "#Calculations\n", + "Vi = m*1e-3/rho\n", + "Vf = Vi*exp(-kapa*(Pf-Pi))\n", + "Ut = m*Cpm*(Tf-Ti)/M \n", + "Up = (beta*Ti/kapa-Pi)*1e5*(Vf-Vi) + (Vi-Vf+Vf*log(Vf/Vi))*1e5/kapa\n", + "dU = Ut + Up\n", + "Ht = m*Cpm*(Tf-Ti)/M\n", + "Hp = ((1 + beta*(Tf-Ti))*Vi*exp(-kapa*Pi)/kapa)*(exp(-kapa*Pi)-exp(-kapa*Pf))\n", + "dH = Ht + Hp\n", + "#Results\n", + "print 'Internal energy change is %6.2e J/mol in which \\ncontribution of temeprature dependent term %6.4f percent'%(dU,Ut*100/dH)\n", + "print 'Enthalpy change is %4.3e J/mol in which \\ncontribution of temeprature dependent term %4.1f percent'%(dH,Ht*100/dH)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.16:pg-156" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Difference in molar specific heats \n", + "at constant volume and constant pressure 3.73e-03 J/(mol.K)\n", + "Molar Specific heat of Hg at const. volume is 27.98 J/(mol.K)\n" + ] + } + ], + "source": [ + "import math\n", + "T = 300.0 #Temperature of Hg, K \n", + "beta = 18.1e-4 #Thermal exapansion coefficient for Hg, /K \n", + "kapa = 3.91e-6 #Isothermal compressibility for Hg, /Pa\n", + "M = 0.20059 #Molecular wt of Hg, kg/mol \n", + "rho = 13534 #Density of mercury, kg/m3\n", + "Cpm = 27.98 #Experimental Molar specif heat at const pressure for mercury, J/(mol.K)\n", + "\n", + "#Calculations\n", + "Vm = M/rho\n", + "DCpmCv = T*Vm*beta**2/kapa\n", + "Cvm = Cpm - DCpmCv\n", + "#Results\n", + "print 'Difference in molar specific heats \\nat constant volume and constant pressure %4.2e J/(mol.K)'%DCpmCv\n", + "print 'Molar Specific heat of Hg at const. volume is %4.2f J/(mol.K)'%Cvm" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex6.17:pg-158" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Molar Gibbs energy of Ar -46.154 kJ/mol\n", + "Molar Gibbs energy of Water -306.658 kJ/mol\n" + ] + } + ], + "source": [ + "import math\n", + "T = 298.15 #Std. Temperature, K \n", + "P = 1.0 #Initial Pressure, bar\n", + "Hm0, Sm0 = 0.0,154.8 #Std. molar enthalpy and entropy of Ar(g), kJ, mol, K units\n", + "Sm0H2, Sm0O2 = 130.7,205.2 #Std. molar entropy of O2 and H2 (g), kJ/(mol.K)\n", + "dGfH2O = -237.1 #Gibbs energy of formation for H2O(l), kJ/mol \n", + "nH2, nO2 = 1, 1./2 #Stoichiomentric coefficients for H2 and O2 in water formation reaction \n", + "\n", + "#Calculations\n", + "Gm0 = Hm0 - T*Sm0\n", + "dGmH2O = dGfH2O*1000 - T*(nH2*Sm0H2 + nO2*Sm0O2)\n", + "#Results\n", + "print 'Molar Gibbs energy of Ar %4.3f kJ/mol'%(Gm0/1e3)\n", + "print 'Molar Gibbs energy of Water %4.3f kJ/mol'%(dGmH2O/1e3)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_JaqgDu7.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_JaqgDu7.ipynb new file mode 100644 index 00000000..81a699eb --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_JaqgDu7.ipynb @@ -0,0 +1,356 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 19: Complex Reaction Mechanism " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex19.1:pg-511" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZYAAAEQCAYAAACTEVJTAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xuc1VW9//HXGxQvGKaVKKg4oih4Q8Jbao6kqJ3yUh5F\nK6VDHhUUL13E+hF4SFPLJDW7mIXXSK28pCEYZywTFAQEARERFAYBFcXEGzCf3x/rC2w5Mzgz7D3f\nPTPv5+MxD/as+X73fu8B5jNrre93LUUEZmZmxdIm7wBmZtayuLCYmVlRubCYmVlRubCYmVlRubCY\nmVlRubCYmVlRbZZ3gHIgyddcm5k1UESotnb3WDIRUZYfw4YNyz1Dc8xW7vmcrWXmK+dsxc63MS4s\nZmZWVC4sZmZWVC4sZa6ysjLvCHUq52xQ3vmcrfHKOV85Z4Omy6ePGytrDSSFvw9mZvUnifDkvZmZ\nNQUXFjMzKyoXFjMzKyrfIGlm1sLNn/8yQ4eOorq6hs6d2zBiRH8qKrqU7PU8eY8n782s5Zo//2WO\nPfZG5s27AmgPrKRr12GMG3fhJhUXT96bmbVSQ4eOKigqAO2ZN+8Khg4dVbLXdGExM2vBqme8xvqi\nslZ7Fi+uKdlr5lJYJG0h6SlJUyXNlHRV1j5M0iJJU7KP4wvOuVzSXEmzJfUtaO8labqkFySNLGhv\nJ2l0ds4ESbs27bs0M8vRggVwyil0fulJYOUGX1xJp06l+/GfS2GJiA+AoyPiQGB/oI+kw7Mv/ywi\nemUfYwAkdQdOA7oDJwA3S1o7tvdLYEBEdAO6STouax8ALI+IPYGRwLVN8ubMzPL0/vswYgT07g2f\n/SwjJv2Brl2Hsb64pDmWESP6lyxCbleFRcS72cMtSAXuzezz2iaDTgJGR8RqYIGkucDBkl4GPhER\nk7LjbgdOBh7NzhmWtd8H3FT8d2FmVkb++le46CI44AB45hno0oUKYNy4Cxk69KcsXlxDp05tGDFi\n0ybuP05uhUVSG+AZoCvwq4iYlXVCLpD0DWAy8O2IWAF0BiYUnF6dta0GFhW0L8rayf5cCBARayS9\nJWn7iFhewrdlZtb05s2Diy+GF16Am2+G4477yJcrKrpw553D6ji5+HKbvI+ImmwobGfg85KOAm4G\ndo+InsAS4LoivmStl8WZmTVb774LP/whHHIIHHEEzJjxf4pKHnK/QTIi3pb0MNA7Ih4v+NItwEPZ\n42pgl4Kv7Zy11dVeeM5iSW2BDhvrrQwfPnzd48rKyrJfpdTMWrEIuP9+uOQSOPRQmDYNdt65pC9Z\nVVVFVVVVvY7N5QZJSZ8GVkXECklbkeZErgBmRsSS7JhLgIMi4kxJPYC7gENIQ1zjgD0jIiRNBAYD\nk4CHgRsiYoykgcC+ETFQUj/g5IjoV0ce3yBpZs3DCy/AhRfCokVw443Qp08uMTZ2g2RePZadgNuy\nK7vaAHdExN8l3S6pJ1ADLADOBcjmX+4BZgGrgIEFlWAQMArYEnhk7ZVkwK3AHdlE/xtArUXFzKxZ\neOcduPJKuOUW+P73U3HZfPO8U9XKS7rgHouZlbEIuPde+Pa3obISrr0Wdtop71Rl2WMxM7OPM2tW\n6pm8/jrcfTcceWTeierFS7qYmZWbt99OPZSjjoKTT073pDSTogIuLGZm5SMC7roLuneHN9+E555L\nPZbNmtfgUvNKa2bWUk2fDhdcACtXwn33wWGH5Z2o0dxjMTPL01tvpWVYjjkGzjwTnn66WRcVcGEx\nM8tHTQ2MGpWGvd5/P03Un3cetG2bd7JN5qEwM7OmNmVKGvZaswYefBAOOijvREXlHouZWVNZvhzO\nPx+++EUYMAAmTGhxRQVcWMzMSm/NmnTHfPfuaahr1qxUWNq0zB/BHgozMyulp5+GQYOgXTt49FHo\n2TPvRCXXMsulmVneXnsNzjkn3eB44YXwxBOtoqiAC4uZWXGtWQO/+AXssw9ssw3Mng1nnQVqPVtC\neSjMzKxYnnwyDXttuy38/e+w3355J8qFC4uZ2aZauhS+971UTH7yE+jXr1X1UDbkoTAzs8ZavRp+\n/nPYd1/o2DENe51xRqsuKuAei5lZ4zz+eLrJcccd4Z//hL33zjtR2XBhMTNriMWL4TvfSVd5/exn\n8NWvtvoeyoY8FGZmVh8ffpjmT/bfHyoq0rDXqae6qNTCPRYzs4/z2GPpXpSKirQMy5575p2orLmw\nmJnVZeFCuPRSmDwZRo6EE090D6UechkKk7SFpKckTZU0U9JVWft2ksZKmiPpUUnbFpxzuaS5kmZL\n6lvQ3kvSdEkvSBpZ0N5O0ujsnAmSdm3ad2lmzdYHH8BVV8GBB6YbHWfNgpNOclGpp1wKS0R8ABwd\nEQcC+wN9JB0ODAEei4i9gPHA5QCSegCnAd2BE4CbpXV/w78EBkREN6CbpOOy9gHA8ojYExgJXNs0\n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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x9aa4048>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Km and k2 are 10.0 mM and 1.1e+05 s-1\n" + ] + } + ], + "source": [ + "import numpy as np\n", + "from numpy import arange,array,ones,linalg,size\n", + "from matplotlib.pylab import plot,show,xlim,ylim,xlabel,ylabel\n", + "%matplotlib inline\n", + "import math\n", + "\n", + "#Variable declaration\n", + "Ce = 2.3e-9 #Initial value of enzyme concentration, M\n", + "r = array([2.78e-5,5.e-5,8.33e-5,1.67e-4])\n", + "CCO2 = array([1.25e-3,2.5e-3,5.e-3,20.e-3])\n", + "\n", + "#Calculations\n", + "rinv = 1./r\n", + "CCO2inv = 1./CCO2\n", + "xlim(0,850)\n", + "ylim(0,38000)\n", + "xi = CCO2inv\n", + "A = array([ CCO2inv, ones(size(CCO2inv))])\n", + "# linearly generated sequence\n", + "w = linalg.lstsq(A.T,rinv)[0] # obtaining the parameters\n", + "slope = w[0]\n", + "intercept = w[1]\n", + "\n", + "line = w[0]*CCO2inv+w[1] # regression line\n", + "plot(CCO2inv,line,'r-',CCO2inv,rinv,'o')\n", + "xlabel('$ {C_{CO}}_2, mM^{-1} $')\n", + "ylabel('$ Rate^{-1}, s/M^{-1} $')\n", + "show()\n", + "rmax = 1./intercept\n", + "k2 = rmax/Ce\n", + "Km = slope*rmax\n", + "\n", + "#Results\n", + "print 'Km and k2 are %4.1f mM and %3.1e s-1'%(Km*1e3,k2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex19.2:pg-517" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\nREahIiIikfl//rBLh3QxZCwAAAAASUVORK5CYII=\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x9acd4a8>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Slope and intercept are 0.3449 torr.g/cm3 and 0.0293 g/cm3\n", + "K and Vm are 8.48e-02 Torr^-1 and 34.2 cm3/g\n" + ] + } + ], + "source": [ + "from numpy import arange,array,ones,linalg\n", + "from matplotlib.pylab import plot,show,xlim,ylim,xlabel,ylabel\n", + "%matplotlib inline\n", + "import math\n", + "\n", + "#Variable declaration\n", + "Vads = array([5.98,7.76,10.1,12.35,16.45,18.05,19.72,21.1]) #Adsorption data at 193.5K\n", + "P = array([2.45,3.5,5.2,7.2,11.2,12.8,14.6,16.1]) #Pressure, torr\n", + "\n", + "#Calculations\n", + "Vinv = 1./Vads\n", + "Pinv =1./P\n", + "xlim(0,0.5)\n", + "ylim(0,0.2)\n", + "A = array([ Pinv, ones(size(Pinv))])\n", + "# linearly generated sequence\n", + "w = linalg.lstsq(A.T,Vinv)[0] # obtaining the parameters\n", + "m = w[0]\n", + "c = w[1]\n", + "line = m*Pinv+c # regression line\n", + "plot(Pinv,line,'r-',Pinv,Vinv,'o')\n", + "xlabel('$ 1/P, Torr^{-1} $')\n", + "ylabel('$ 1/V_{abs}, cm^{-1}g $')\n", + "show()\n", + "Vm = 1./c\n", + "K = 1./(m*Vm)\n", + "\n", + "#Results\n", + "print 'Slope and intercept are %5.4f torr.g/cm3 and %5.4f g/cm3'%(m,c)\n", + "print 'K and Vm are %4.2e Torr^-1 and %3.1f cm3/g'%(K,Vm)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex19.4:pg-533" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0xa641f28>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Slope and intercept are kq = 3.1995e+09 per s and kf = 2.1545e+06 per s\n" + ] + } + ], + "source": [ + "from numpy import arange,array,ones,linalg\n", + "from matplotlib.pylab import plot,show,xlim,ylim,xlabel,ylabel\n", + "%matplotlib inline\n", + "import math\n", + "\n", + "#Variable declaration\n", + "CBr = array([0.0005,0.001,0.002,0.003,0.005]) #C6Br6 concentration, M\n", + "tf = array([2.66e-7,1.87e-7,1.17e-7,8.50e-8,5.51e-8]) #Fluroscence life time, s\n", + "\n", + "#Calculations\n", + "Tfinv = 1./tf\n", + "xlim(0,0.006)\n", + "ylim(0,2.e7)\n", + "A = array([ CBr, ones(size(CBr))])\n", + "# linearly generated sequence\n", + "[m,c] = linalg.lstsq(A.T,Tfinv)[0] # obtaining the parameters\n", + "\n", + "line = m*CBr+c # regression line\n", + "plot(CBr,line,'r-',CBr,Tfinv,'o')\n", + "xlabel('$ Br_6C_6, M $')\n", + "ylabel('$ tau_f $')\n", + "show()\n", + "\n", + "#Results\n", + "print 'Slope and intercept are kq = %5.4e per s and kf = %5.4e per s'%(m,c)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex19.5:pg-536" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Separation Distance at decreased efficiency 11.53\n" + ] + } + ], + "source": [ + "from scipy.optimize import root\n", + "import math\n", + "\n", + "#Variable Declaration\n", + "r = 11. #Distance of residue separation, °A\n", + "r0 = 9. #Initial Distance of residue separation, °A\n", + "EffD = 0.2 #Fraction decrease in eff\n", + "\n", + "#Calculations\n", + "Effi = r0**6/(r0**6+r**6)\n", + "Eff = Effi*(1-EffD)\n", + "f = lambda r: r0**6/(r0**6+r**6) - Eff\n", + "sol = root(f, 12)\n", + "rn = sol.x[0]\n", + "\n", + "#Results\n", + "print 'Separation Distance at decreased efficiency %4.2f'%rn" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex19.6:pg-538" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total photon energy absorbed by sample 2.7e+03 J\n", + "Photon energy absorbed at 280 nm is 7.1e-19 J\n", + "Total number of photon absorbed by sample 3.8e+21 photones\n", + "Overall quantum yield 0.40\n" + ] + } + ], + "source": [ + "#Variable Declarations\n", + "import math\n", + "mr = 2.5e-3 #Moles reacted, mol\n", + "P = 100.0 #Irradiation Power, J/s\n", + "t = 27 #Time of irradiation, s\n", + "h = 6.626e-34 #Planks constant, Js\n", + "c = 3.0e8 #Speed of light, m/s\n", + "labda = 280e-9 #Wavelength of light, m\n", + "\n", + "#Calculation\n", + "Eabs = P*t\n", + "Eph = h*c/labda\n", + "nph = Eabs/Eph #moles of photone\n", + "phi = mr/6.31e-3\n", + "\n", + "#Results\n", + "print 'Total photon energy absorbed by sample %3.1e J'%Eabs\n", + "print 'Photon energy absorbed at 280 nm is %3.1e J'%Eph\n", + "print 'Total number of photon absorbed by sample %3.1e photones'%nph\n", + "print 'Overall quantum yield %4.2f'%phi" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex19.7:pg-542" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "DGS = 0.111 eV\n", + "Rate constant with barrier to electron transfer 2.66e+07 per s\n" + ] + } + ], + "source": [ + "from math import exp\n", + "#Variable Declarations\n", + "r = 2.0e9 #Rate constant for electron transfer, per s\n", + "labda = 1.2 #Gibss energy change, eV\n", + "DG = -1.93 #Gibss energy change for 2-naphthoquinoyl, eV\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "T = 298.0 #Temeprature, K\n", + "#Calculation\n", + "DGS = (DG+labda)**2/(4*labda)\n", + "k193 = r*exp(-DGS*1.6e-19/(k*T))\n", + "#Results\n", + "print 'DGS = %5.3f eV'%DGS\n", + "print 'Rate constant with barrier to electron transfer %3.2e per s'%k193" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_MnetfXH.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_MnetfXH.ipynb new file mode 100644 index 00000000..860afddf --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_MnetfXH.ipynb @@ -0,0 +1,172 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 08: Phase Diagrams and the Relative Stability of Solids, Liquids, and Gases" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex8.2:Pg.No-195" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Latent heat of vaporization of benzene at 20°C 30.7 kJ/mol\n", + "Entropy Change of vaporization of benzene at 20°C 86.9 J/mol\n", + "Triple point temperature = 267.3 K for benzene\n", + "Triple point pressure = 3.53e+03 Pa for benzene\n" + ] + } + ], + "source": [ + "from math import log, exp\n", + "\n", + "import math\n", + "Tn = 353.24 #normal boiling point of Benzene, K\n", + "pi = 1.19e4 #Vapor pressure of benzene at 20°C, Pa\n", + "DHf = 9.95 #Latent heat of fusion, kJ/mol\n", + "pv443 = 137. #Vapor pressure of benzene at -44.3°C, Pa\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "Pf = 101325 #Std. atmospheric pressure, Pa\n", + "T20 = 293.15 #Temperature in K\n", + "P0 = 1.\n", + "Pl = 10000.\n", + "Ts = -44.3 #Temperature of solid benzene, °C\n", + "\n", + "#Calculations\n", + "Ts = Ts + 273.15\n", + "#Part a\n", + "\n", + "DHv = -(R*math.log(Pf/pi))/(1./Tn-1./T20)\n", + "#Part b\n", + "\n", + "DSv = DHv/Tn\n", + "DHf = DHf*1e3\n", + "#Part c\n", + "\n", + "Ttp = -DHf/(R*(math.log(Pl/P0)-math.log(pv443/P0)-(DHv+DHf)/(R*Ts)+DHv/(R*T20)))\n", + "Ptp = exp(-DHv/R*(1./Ttp-1./Tn))*101325\n", + "\n", + "#Results\n", + "print 'Latent heat of vaporization of benzene at 20°C %4.1f kJ/mol'%(DHv/1000)\n", + "print 'Entropy Change of vaporization of benzene at 20°C %3.1f J/mol'%DSv\n", + "print 'Triple point temperature = %4.1f K for benzene'%Ttp\n", + "print 'Triple point pressure = %4.2e Pa for benzene'%Ptp" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex8.3:Pg.No-200" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Force exerted by one leg 5.428e-05 N\n" + ] + } + ], + "source": [ + "from math import cos, pi\n", + "\n", + "gama = 71.99e-3 #Surface tension of water, N/m\n", + "r = 1.2e-4 #Radius of hemisphere, m\n", + "theta = 0.0 #Contact angle, rad\n", + "\n", + "#Calculations\n", + "DP = 2*gama*cos(theta)/r\n", + "F = DP*pi*r**2\n", + "\n", + "#Results\n", + "print 'Force exerted by one leg %5.3e N'%F" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex8.4:Pg.No-200" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Height to which water can rise by capillary action is 0.74 m\n", + "This is very less than 100.0 n, hence water can not reach top of tree\n" + ] + } + ], + "source": [ + "from math import cos\n", + "\n", + "\n", + "gama = 71.99e-3 #Surface tension of water, N/m\n", + "r = 2e-5 #Radius of xylem, m\n", + "theta = 0.0 #Contact angle, rad\n", + "rho = 997.0 #Density of water, kg/m3\n", + "g = 9.81 #gravitational acceleration, m/s2\n", + "H = 100 #Height at top of redwood tree, m\n", + "\n", + "#Calculations\n", + "h = 2*gama/(rho*g*r*cos(theta))\n", + "\n", + "#Results\n", + "print 'Height to which water can rise by capillary action is %3.2f m'%h\n", + "print 'This is very less than %4.1f n, hence water can not reach top of tree'%H" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_N5LVZdn.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_N5LVZdn.ipynb new file mode 100644 index 00000000..bb478dec --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_N5LVZdn.ipynb @@ -0,0 +1,80 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 07: Properties of Real Gases" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex7.3:pg-175" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(V-Videal) -6.49 L\n", + "Percentage error -58.73\n" + ] + } + ], + "source": [ + "\n", + "import math\n", + "m = 1.0 #Mass of Methane, kg\n", + "T = 230 #Temeprature of Methane, K\n", + "P = 68.0 #Pressure, bar \n", + "Tc = 190.56 #Critical Temeprature of Methane\n", + "Pc = 45.99 #Critical Pressure of Methane\n", + "R = 0.08314 #Ideal Gas Constant, L.bar/(mol.K)\n", + "M = 16.04 #Molecular wt of Methane\n", + "\n", + "#Calcualtions\n", + "Tr = T/Tc\n", + "Pr = P/Pc\n", + "z = 0.63 #Methane compressibility factor\n", + "n = m*1e3/M\n", + "V = z*n*R*T/P\n", + "Vig = n*R*T/P\n", + "DV = (V - Vig)/V\n", + "\n", + "#Results\n", + "print '(V-Videal) %4.2f L'%(V-Vig)\n", + "print 'Percentage error %5.2f'%(DV*100)\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_NEmIMzZ.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_NEmIMzZ.ipynb new file mode 100644 index 00000000..351d347c --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_NEmIMzZ.ipynb @@ -0,0 +1,243 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 3: Importance of State Functions: Internal Energy and Enthalpy" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.2:pg-49" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Pressure increase in capillary 100.0 bar\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "betaOH = 11.2e-4 #Thermal exapnasion coefficient of ethanol, °C\n", + "betagl = 2.00e-5 #Thermal exapnasion coefficient of glass, °C\n", + "kOH = 11.0e-5 #Isothermal compressibility of ethanol, /bar\n", + "dT = 10.0 #Increase in Temperature, °C\n", + "\n", + "#Calcualtions\n", + "vfbyvi = (1+ betagl*dT)\n", + "dP = betaOH*dT/kOH-(1./kOH)*log(vfbyvi)\n", + "\n", + "#Results\n", + "print 'Pressure increase in capillary %4.1f bar'%dP" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.4:pg-53" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Minimum detectable temperature change of gas +- 6.0 °C\n" + ] + } + ], + "source": [ + "import math\n", + "cpsubysy = 1000 #Specific heat ration of surrounding and system\n", + "Tpreci = 0.006 #Precision in Temperature measurement, °C\n", + "\n", + "#Calcualtions\n", + "dtgas = -cpsubysy*(-Tpreci)\n", + "\n", + "#Results\n", + "print 'Minimum detectable temperature change of gas +-%4.1f °C'%dtgas" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.6:pg-54" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "dUT = 24.4 J: This is wrongly reported in book\n", + "dUV = 4174.1 J\n" + ] + } + ], + "source": [ + "from sympy import symbols, integrate\n", + "\n", + "\n", + "n = 1.0 #number of mole of N2, mol \n", + "Ti = 200.0 #Intial Temperature, K\n", + "Pi = 5.00 #Initial pressure, bar\n", + "Tf = 400.0 #Intial Temperature, K\n", + "Pf = 20.0 #Initial pressure, bar\n", + "a = 0.137 #van der Waals constant a, Pa.m3/(mol2)\n", + "b = 3.87e-5 #van der Waals constant b, m3/(mol)\n", + "A, B, C, D = 22.5, -1.187e-2,2.3968e-5, -1.0176e-8\n", + " #Constants in Cvm equation J, K and mol\n", + "vi = 3.28e-3 #initial volume, m3/mol\n", + "vf = 7.88e-3 #Final volume, m3/mol\n", + "\n", + "#Calculations\n", + "T = symbols('T')\n", + "dUT = n**2*a*(1./vi-1./vf)\n", + "dUV = integrate( A + B*T + C*T**2 + D*T**3, (T,Ti,Tf))\n", + "\n", + "#Results\n", + "print 'dUT = %4.1f J: This is wrongly reported in book'%dUT\n", + "print 'dUV = %4.1f J'%dUV" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.7:pg-57" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "dH = 46.8 kJ\n", + "qp = 30.8 kJ\n", + "Error in calculations 34.3\n" + ] + } + ], + "source": [ + "from sympy import symbols, integrate\n", + "\n", + "import math\n", + "m = 143.0 #Mass of graphite, g \n", + "Ti = 300.0 #Intial Temperature, K\n", + "Tf = 600.0 #Intial Temperature, K\n", + "A, B, C, D, E = -12.19,0.1126,-1.947e-4,1.919e-7,-7.8e-11\n", + " #Constants in Cvm equation J, K and mol\n", + "M = 12.01\n", + "\n", + "#Calculations\n", + "\n", + "T = symbols('T')\n", + "dH = (m/M)*integrate( A + B*T + C*T**2 + D*T**3 + E*T**4, (T,Ti,Tf))\n", + "expr = A + B*T + C*T**2 + D*T**3 + E*T**4\n", + "cpm = expr.subs(T,300.)\n", + "qp = (m/M)*cpm*(Tf-Ti)\n", + "err = abs(dH-qp)/dH\n", + "#Results\n", + "print 'dH = %6.1f kJ'%(dH/1000)\n", + "print 'qp = %6.1f kJ'%(qp/1000)\n", + "print 'Error in calculations %4.1f'%(err*100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex3.9:pg-59" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Enthalpy change for change in state of methanol is 39.9 kJ\n" + ] + } + ], + "source": [ + "import math\n", + "m = 124.0 #Mass of liquid methanol, g\n", + "Pi = 1.0 #Initial Pressure, bar\n", + "Ti = 298.0 #Intial Temperature, K\n", + "Pf = 2.5 #Final Pressure, bar\n", + "Tf = 425.0 #Intial Temperature, K\n", + "rho = 0.791 #Density, g/cc\n", + "Cpm = 81.1 #Specifi heat, J/(K.mol)\n", + "M = 32.04\n", + "\n", + "#Calculations\n", + "n = m/M\n", + "DH = n*Cpm*(Tf-Ti)+ m*(Pf-Pi)*1e-6/rho\n", + "\n", + "#Results\n", + "print 'Enthalpy change for change in state of methanol is %4.1f kJ'%(DH/1000)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_NaQvqio.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_NaQvqio.ipynb new file mode 100644 index 00000000..7d42ed97 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_NaQvqio.ipynb @@ -0,0 +1,211 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 04: Thermochemistry" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.1:pg-72" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Avergae Enthalpy change required for breaking both OH bonds 927.0 kJ/mol\n", + "Average bond energy required for breaking both OH bonds 461.0 kJ/mol\n" + ] + } + ], + "source": [ + "import math\n", + "DH0_H2O = 241.8 #Std Enthalpy of reaxtion of Water Fomation backward rxn, kJ/mol\n", + "DH0_2H = 2*218.0 #Std Enthalpy of formation of Hydrogen atom, kJ/mol\n", + "DH0_O = 249.2 #Std Enthalpy of formation of Oxygen atom, kJ/mol\n", + "R = 8.314 #Ideal gas constant, J/(mol.K)\n", + "Dn = 2.0\n", + "T = 298.15 #Std. Temperature, K\n", + "#Calculation\n", + "DH0_2HO = DH0_H2O + DH0_2H + DH0_O\n", + "DU0 = (DH0_2HO - Dn*R*T*1e-3)/2\n", + "\n", + "#Results\n", + "print 'Avergae Enthalpy change required for breaking both OH bonds %4.1f kJ/mol'%DH0_2HO\n", + "print 'Average bond energy required for breaking both OH bonds %4.1f kJ/mol'%DU0" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.2:pg-74" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Heat of reaction for HCl formation is -95.1 kJ/mol\n" + ] + } + ], + "source": [ + "import numpy as np\n", + "from sympy import symbols, integrate\n", + "\n", + "#Variable Declaration\n", + "a = ([29.064, 31.695, 28.165]) #Constant 'a' in Heat capacity equation, J/(mol.K)\n", + "b = ([-0.8363e-3, 10.143e-3, 1.809e-3]) #Constant 'b' in Heat capacity equation, J/(mol.K)\n", + "c = ([20.111e-7, -40.373e-7, 15.464e-7]) #Constant 'a' in Heat capacity equation, J/(mol.K)\n", + "delHf0HCl = -92.3 #Std. Heat of formation of HCl, kJ/mol\n", + "T1, T2 = 298.15, 1450 #Std and final temperature, K\n", + "\n", + "#Calculations\n", + "T = symbols('T')\n", + "DA = a[2]-(a[0]+a[1])/2\n", + "DB = b[2]-(b[0]+b[1])/2\n", + "DC = c[2]-(c[0]+c[1])/2\n", + "\n", + "expr = integrate( DA + DB*T + DC*T**2, (T,T1,T2))\n", + "DHR1450= expr/1000 + delHf0HCl\n", + "\n", + "#Results\n", + "print 'Heat of reaction for HCl formation is %4.1f kJ/mol'%DHR1450" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.3:pg-75" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Calorimeter constant 7.59e+03 J/°C\n", + "Enthalpy of rection for benzene -3.26e+06 J/mol\n" + ] + } + ], + "source": [ + "\n", + "import math\n", + "ms1 = 0.972 #Mass of cyclohexane, g\n", + "DT1 = 2.98 #Change in temperature for bath, °C\n", + "DUR1 = -3913e3 #Std Internal energy change, J/mol\n", + "mw = 1.812e3 #Mass of water, g\n", + "ms2 = 0.857 #Mass of benzene, g\n", + "Ms1 = 84.16\n", + "Ms2 = 78.12\n", + "DT2 = 2.36 #Change in temperature for bath, °C\n", + "Mw = 18.02\n", + "Cpw = 75.3 \n", + "\n", + "#Calculation\n", + "\n", + "Ccal = ((-ms1/Ms1)*DUR1-(mw/Mw)*Cpw*DT1)/DT1\n", + "DUR2 = (-Ms2/ms2)*((mw/Mw)*Cpw*DT2+Ccal*DT2)\n", + "\n", + "#Results\n", + "print 'Calorimeter constant %4.2e J/°C'%Ccal\n", + "print 'Enthalpy of rection for benzene %4.2e J/mol'%DUR2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex4.4:pg-77" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Enthalpy of solution for Na2SO4 -2.81e+03 J/mol\n", + "Enthalpy of solution for Na2SO4 from Data -2.40e+00 J/mol\n" + ] + } + ], + "source": [ + "\n", + "import math\n", + "ms = 1.423 #Mass of Na2SO4, g\n", + "mw = 100.34 #Mass of Na2SO4, g\n", + "DT = 0.037 #Change in temperature for solution, K\n", + "Mw = 18.02 #Molecular wt of Water\n", + "Ms = 142.04 #Molecular wt of ms Na2SO4\n", + "Ccal = 342.5 #Calorimeter constant, J/K\n", + "#Data\n", + "DHfNa = -240.1\n", + "DHfSO4 = -909.3\n", + "DHfNa2SO4 = -1387.1\n", + "\n", + "#Calculation\n", + "DHs = (-Ms/ms)*((mw/Mw)*Cpw*DT+Ccal*DT)\n", + "DHsolD = 2*DHfNa + DHfSO4 - DHfNa2SO4\n", + "\n", + "#Results\n", + "print 'Enthalpy of solution for Na2SO4 %4.2e J/mol'%DHs\n", + "print 'Enthalpy of solution for Na2SO4 from Data %4.2e J/mol'%DHsolD" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_Npcu1fX.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_Npcu1fX.ipynb new file mode 100644 index 00000000..887d09f2 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_Npcu1fX.ipynb @@ -0,0 +1,419 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 18: Elementary Chemical Kinetics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.2:pg-461" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Order of reaction with respect to reactant A: 2.00\n", + "Order of reaction with respect to reactant A: 1.00\n", + "Rate constant of the reaction: 3.201e+08 1./(M.s)\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#Variable Declaration\n", + "Ca0 = [2.3e-4,4.6e-4,9.2e-4] #Initial Concentration of A, M\n", + "Cb0 = [3.1e-5,6.2e-5,6.2e-5] #Initial Concentration of B, M\n", + "Ri = [5.25e-4,4.2e-3,1.68e-2] #Initial rate of reaction, M\n", + "\n", + "#Calculations\n", + "alp = log(Ri[1]/Ri[2])/log(Ca0[1]/Ca0[2])\n", + "beta = (log(Ri[0]/Ri[1]) - 2*log((Ca0[0]/Ca0[1])))/(log(Cb0[0]/Cb0[1]))\n", + "k = Ri[2]/(Ca0[2]**2*Cb0[2]**beta)\n", + "\n", + "#REsults\n", + "print 'Order of reaction with respect to reactant A: %3.2f'%alp\n", + "print 'Order of reaction with respect to reactant A: %3.2f'%beta\n", + "print 'Rate constant of the reaction: %4.3e 1./(M.s)'%k" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.3:pg-466" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rate constant of the reaction: 3.381e-05 1/s\n", + "Timerequire for 60 percent decay of N2O5: 1.511e+04 s\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#Variable Declaration\n", + "t1by2 = 2.05e4 #Half life for first order decomposition of N2O5, s\n", + "x = 60. #percentage decay of N2O5\n", + "\n", + "#Calculations\n", + "k = log(2)/t1by2\n", + "t = -log(x/100)/k\n", + "\n", + "#REsults\n", + "print 'Rate constant of the reaction: %4.3e 1/s'%k\n", + "print 'Timerequire for 60 percent decay of N2O5: %4.3e s'%t" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.4:pg-467 " + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rate constant of the reaction: 1.203e-04 1/s\n", + "Timerequire for 60 percent decay of N2O5: 4.245e+03 s\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#Variable Declaration\n", + "t1by2 = 5760 #Half life for C14, years\n", + "\n", + "\n", + "#Calculations\n", + "k = log(2)/t1by2\n", + "t = -log(x/100)/k\n", + "\n", + "#REsults\n", + "print 'Rate constant of the reaction: %4.3e 1/s'%k\n", + "print 'Timerequire for 60 percent decay of N2O5: %4.3e s'%t" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.5:pg-472" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Time required for maximum concentration of A: 13.86 s\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#Variable Declaration\n", + "kAbykI = 2.0 #Ratio of rate constants\n", + "kA = 0.1 #First order rate constant for rxn 1, 1/s \n", + "kI = 0.05 #First order rate constant for rxn 2, 1/s \n", + "#Calculations\n", + "tmax = 1/(kA-kI)*log(kA/kI)\n", + "\n", + "#Results\n", + "print 'Time required for maximum concentration of A: %4.2f s'%tmax" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.7:pg-476" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Percentage of Benzyl Penicillin that under acid catalyzed reaction by path 1: 6.67 \n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#Variable Declaration\n", + "T = 22.0 #Temperature of the reaction,°C\n", + "k1 = 7.0e-4 #Rate constants for rxn 1, 1/s\n", + "k2 = 4.1e-3 #Rate constant for rxn 2, 1/s \n", + "k3 = 5.7e-3 #Rate constant for rxn 3, 1/s \n", + "#Calculations\n", + "phiP1 = k1/(k1+k2+k3)\n", + "\n", + "#Results\n", + "print 'Percentage of Benzyl Penicillin that under acid catalyzed reaction by path 1: %4.2f '%(phiP1*100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.8:pg-477" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\nYII=\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x9358710>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Slope and intercept are, -6419.8 and 14.45\n", + "Pre-exponential factor and Activation energy are 53.37 kJ/mol and 1.88e+06 1/s\n" + ] + } + ], + "source": [ + "from numpy import arange,array,ones,linalg,log, exp, size\n", + "from matplotlib.pylab import plot, show, xlabel, ylabel\n", + "%matplotlib inline\n", + "import math\n", + "\n", + "#Variable Declaration\n", + "T = array([22.7,27.2,33.7,38.0])\n", + "k1 = array([7.e-4,9.8e-4,1.6e-3,2.e-3])\n", + "R = 8.314 \n", + "\n", + "#Calculations\n", + "T = T +273.15\n", + "x = 1./T\n", + "y = log(k1)\n", + "A = array([ x, ones(size(x))])\n", + "# linearly generated sequence\n", + "[slope, intercept] = linalg.lstsq(A.T,y)[0] # obtaining the parameters\n", + "\n", + "# Use w[0] and w[1] for your calculations and give good structure to this ipython notebook\n", + "# plotting the line\n", + "line = slope*x+intercept # regression line\n", + "#Results\n", + "plot(x,line,'-',x,y,'o')\n", + "xlabel('$ 1/T, K^{-1} $')\n", + "ylabel('$ log(k) $')\n", + "show()\n", + "Ea = -slope*R\n", + "A = exp(intercept)\n", + "print 'Slope and intercept are, %6.1f and %4.2f'%(slope, intercept)\n", + "print 'Pre-exponential factor and Activation energy are %4.2f kJ/mol and %4.2e 1/s'%(Ea/1e3, A)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.9:pg-482" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Forward Rate constant is 4.34e+08 1/s\n", + "Backward Rate constant is 4.34e+04 1/s\n", + "Apperent Rate constant is 4.34e+08 1/s\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declaration\n", + "Ea = 42.e3 #Activation energy for reaction, J/mol\n", + "A = 1.e12 #Pre-exponential factor for reaction, 1/s\n", + "T = 298.0 #Temeprature, K\n", + "Kc = 1.0e4 #Equilibrium constant for reaction\n", + "R = 8.314 #Ideal gas constant, J/(mol.K)\n", + "#Calculations\n", + "kB = A*exp(-Ea/(R*T))\n", + "kA = kB*Kc\n", + "kApp = kA + kB\n", + "\n", + "#Results\n", + "print 'Forward Rate constant is %4.2e 1/s'%kA\n", + "print 'Backward Rate constant is %4.2e 1/s'%kB\n", + "print 'Apperent Rate constant is %4.2e 1/s'%kApp" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.10:pg-492" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Estimated rate 6.4e+13 1/(M.s) is far grater than experimental value of 4.0e+07 1/(M.s), \n", + "hence the reaction is not diffusion controlled\n" + ] + } + ], + "source": [ + "from math import pi\n", + "#Variable Declaration\n", + "Dh = 7.6e-7 #Diffusion coefficient of Hemoglobin, cm2/s\n", + "Do2 = 2.2e-5 #Diffusion coefficient of oxygen, cm2/s\n", + "rh = 35. #Radius of Hemoglobin, °A\n", + "ro2 = 2.0 #Radius of Oxygen, °A\n", + "k = 4e7 #Rate constant for binding of O2 to Hemoglobin, 1/(M.s)\n", + "NA =6.022e23 #Avagadro Number\n", + "#Calculations\n", + "DA = Dh + Do2\n", + "kd = 4*pi*NA*(rh+ro2)*1e-8*DA\n", + "\n", + "#Results\n", + "print 'Estimated rate %4.1e 1/(M.s) is far grater than experimental value of %4.1e 1/(M.s), \\nhence the reaction is not diffusion controlled'%(kd,k)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex18.11:pg-494" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Forward Rate constant is 9.90e+04 1/s\n", + "Backward Rate constant is -12.72 1/s\n" + ] + } + ], + "source": [ + "from math import log, e\n", + "#Variable Declaration\n", + "Ea = 104e3 #Activation energy for reaction, J/mol\n", + "A = 1.e13 #Pre-exponential factor for reaction, 1/s\n", + "T = 300.0 #Temeprature, K\n", + "R = 8.314 #Ideal gas constant, J/(mol.K)\n", + "h = 6.626e-34 #Plnak constant, Js\n", + "c = 1.0 #Std. State concentration, M\n", + "k = 1.38e-23 #,J/K\n", + "\n", + "#Calculations\n", + "dH = Ea - 2*R*T\n", + "dS = R*log(A*h*c/(k*T*e**2))\n", + "\n", + "#Results\n", + "print 'Forward Rate constant is %4.2e 1/s'%dH\n", + "print 'Backward Rate constant is %4.2f 1/s'%dS" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_SSPoRzJ.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_SSPoRzJ.ipynb new file mode 100644 index 00000000..058c9da8 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_SSPoRzJ.ipynb @@ -0,0 +1,286 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 13: Boltzmann Distribution" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex13.1:pg-321" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The observed weight 1.37e+28 compared to 1.01e+29\n" + ] + } + ], + "source": [ + "from math import factorial\n", + "\n", + "#Variable Declaration\n", + "\n", + "aH = 40 #Number of heads\n", + "N = 100 #Total events\n", + "\n", + "#Calculations\n", + "aT = 100 - aH\n", + "We = factorial(N)/(factorial(aT)*factorial(aH))\n", + "Wexpected = factorial(N)/(factorial(N/2)*factorial(N/2))\n", + "\n", + "#Results\n", + "print 'The observed weight %5.2e compared to %5.2e'%(We,Wexpected)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex13.2:pg-322" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "At maximum value of ln(W)\n", + "Values of N1 : 6162, N2: 2676 and N3: 1162 \n", + "Maximum value of ln(W)= 9012\n" + ] + } + ], + "source": [ + "from sympy import symbols, diff, log\n", + "\n", + "#Varialbe declaration\n", + "n = 10000 #Total number of particles\n", + "\n", + "\n", + "#Calcualtions\n", + "def ster(i):\n", + " return i*log(i)-i\n", + "\n", + "n1, n2, n3, W = symbols('n1 n2 n3 W',positive=True)\n", + "\n", + "n2 = 5000 - 2*n3\n", + "n1 = 10000 - n2 -n3\n", + "logW = ster(n) - ster(n1) - ster(n2) - ster(n3) \n", + "fun = diff(logW, n3)\n", + "dfun = diff(fun, n3)\n", + "x0 = 10.0\n", + "err = 1.0\n", + "while err>0.001:\n", + " f = fun.subs(n3,x0)\n", + " df = dfun.subs(n3,x0)\n", + " xnew = x0 - f/df\n", + " err = abs(x0-xnew)/x0\n", + " x0 = xnew\n", + "\n", + "x0 = int(x0)\n", + "N2 = n2.subs(n3,x0)\n", + "N3 = x0\n", + "n1 = n1.subs(n3,x0)\n", + "N1 = n1.subs(n2,N2)\n", + "lnW = logW.subs(n3,N3)\n", + "\n", + "#Results\n", + "print 'At maximum value of ln(W)'\n", + "print 'Values of N1 : %4d, N2: %4d and N3: %4d '%(N1, N2,N3)\n", + "print 'Maximum value of ln(W)= %6d'%lnW" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex13.3:pg-326" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Probability of finding an oscillator at energy level of n>3 is 0.048 i.e. 4.8 percent\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "p0 = 0.633 #Probabilities of Energy level 1,2,3 \n", + "p1 = 0.233\n", + "p2 = 0.086\n", + "\n", + "#Calculation\n", + "p4 = 1. -(p0+p1+p2)\n", + "\n", + "#Results\n", + "print 'Probability of finding an oscillator at energy level of n>3 is %4.3f i.e.%4.1f percent'%(p4,p4*100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex13.4:pg-327" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Probability of finding an oscillator at energy level of n>3 is 0.222\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "p0 = 0.394 #Probabilities of Energy level 1,2,3 \n", + "p1by2 = 0.239\n", + "p2 = 0.145\n", + "\n", + "#Calculation\n", + "p4 = 1. -(p0+p1by2+p2)\n", + "\n", + "#Results\n", + "print 'Probability of finding an oscillator at energy level of n>3 is %4.3f'%(p4)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex13.5:pg-333" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Partition function is 1.577\n", + "Probability of occupying the second vibrational state n=2 is 0.085\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declaration\n", + "I2 = 208 #Vibrational frequency, cm-1 \n", + "T = 298 #Molecular Temperature, K\n", + "c = 3.00e10 #speed of light, cm/s\n", + "h = 6.626e-34 #Planks constant, J/K\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "#Calculation\n", + "q = 1./(1.-exp(-h*c*I2/(k*T)))\n", + "p2 = exp(-2*h*c*I2/(k*T))/q\n", + "\n", + "#Results\n", + "print 'Partition function is %4.3f'%(q)\n", + "print 'Probability of occupying the second vibrational state n=2 is %4.3f'%(p2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex13.6:pg-334" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Occupation Number is 0.999990\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "B = 1.45 #Magnetic field streangth, Teslas \n", + "T = 298 #Molecular Temperature, K\n", + "c = 3.00e10 #speed of light, cm/s\n", + "h = 6.626e-34 #Planks constant, J/K\n", + "k = 1.38e-23 #Boltzman constant, J/K \n", + "gnbn = 2.82e-26 #J/T\n", + "#Calculation\n", + "ahpbyahm = math.exp(-gnbn*B/(k*T))\n", + "\n", + "#Results\n", + "print 'Occupation Number is %7.6f'%(ahpbyahm)\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_WJvqX73.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_WJvqX73.ipynb new file mode 100644 index 00000000..1fc19029 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_WJvqX73.ipynb @@ -0,0 +1,171 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 1. Fundamental Concepts of Thermodynamics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.1:pg-9" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Final Tyre pressure is 3.61e+05 Pa\n" + ] + } + ], + "source": [ + "import math \n", + "Pi = 3.21e5 #Recommended tyre pressure, Pa\n", + "Ti = -5.00 #Initial Tyre temperature, °C\n", + "Tf = 28.00 #Final Tyre temperature, °C\n", + "\n", + "#Calculations\n", + "Ti = 273.16 + Ti\n", + "Tf = 273.16 + Tf\n", + "pf = Pi*Tf/Ti #Final tyre pressure, Pa\n", + "\n", + "#Results\n", + "print 'Final Tyre pressure is %6.2e Pa'%pf" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.2:pg-9" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Moles of He=0.121, Ne=0.303 and, Xe=0.040 in mol\n", + "Mole fraction of xHe=0.261, xNe=0.652 and, xXe=0.087\n", + "Final pressure is 1.917 bar\n", + "Partial pressure of pHe=0.500, pNe=1.250 and, pXe=0.167 in bar\n" + ] + } + ], + "source": [ + "import math \n", + "phe = 1.5 #Pressure in Helium chamber, bar\n", + "vhe = 2.0 #Volume of Helium chamber, L\n", + "pne = 2.5 #Pressure in Neon chamber, bar\n", + "vne = 3.0 #Volume of Neon chamber, L\n", + "pxe = 1.0 #Pressure in Xenon chamber, bar\n", + "vxe = 1.0 #Volume of Xenon chamber, L\n", + "R = 8.314e-2 #Ideal Gas Constant, L.bar/(mol.K)\n", + "T = 298 #Temperature of Gas, K\n", + "#Calculations\n", + "\n", + "nhe = phe*vhe/(R*T) #Number of moles of Helium, mol\n", + "nne = pne*vne/(R*T) #Number of moles of Neon, mol\n", + "nxe = pxe*vxe/(R*T) #Number of moles of Xenon, mol\n", + "n = nhe + nne + nxe #Total number of moles, mol\n", + "V = vhe + vne + vxe #Total volume of system, L\n", + "xhe = nhe/n\n", + "xne = nne/n\n", + "xxe = nxe/n\n", + "P = n*R*T/(V)\n", + "phe = P*xhe #Partial pressure of Helium, bar\n", + "pne = P*xne #Partial pressure of Neon, bar\n", + "pxe = P*xxe #Partial pressure of Xenon, bar\n", + "\n", + "#Results\n", + "print 'Moles of He=%4.3f, Ne=%4.3f and, Xe=%4.3f in mol'%(nhe,nne,nxe) \n", + "print 'Mole fraction of xHe=%4.3f, xNe=%4.3f and, xXe=%4.3f'%(xhe,xne,xxe)\n", + "print 'Final pressure is %4.3f bar'%P\n", + "print 'Partial pressure of pHe=%4.3f, pNe=%4.3f and, pXe=%4.3f in bar'%(phe,pne,pxe)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex1.4:pg-12" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Pressure from ideal gas law = 9.98e-02 bar nad from Van der Waals equation = 9.98e-02 bar \n", + "Pressure from ideal gas law = 249.4 bar nad from Van der Waals equation = 269.9 bar \n" + ] + } + ], + "source": [ + "\n", + "import math \n", + "T = 300.0 #Nitrogen temperature, K\n", + "v1 = 250.00 #Molar volume, L\n", + "v2 = 0.1 #Molar volume, L\n", + "a = 1.37 #Van der Waals parameter a, bar.dm6/mol2 \n", + "b = 0.0387 #Van der Waals parameter b, dm3/mol\n", + "R = 8.314e-2 #Ideal Gas Constant, L.bar/(mol.K)\n", + "n = 1.\n", + "#Calculations\n", + "\n", + "p1 = n*R*T/v1 \n", + "p2 = n*R*T/v2\n", + "pv1 = n*R*T/(v1-n*b)- n**2*a/v1**2\n", + "pv2 = n*R*T/(v2-n*b)- n**2*a/v2**2\n", + "\n", + "#Results\n", + "print 'Pressure from ideal gas law = %4.2e bar nad from Van der Waals equation = %4.2e bar '%(p1, pv1)\n", + "print 'Pressure from ideal gas law = %4.1f bar nad from Van der Waals equation = %4.1f bar '%(p2, pv2)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_cyWVjGT.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_cyWVjGT.ipynb new file mode 100644 index 00000000..04d54ef7 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_cyWVjGT.ipynb @@ -0,0 +1,418 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 02: Heat, Work, Internal Energy, Enthalpy, and The First Law of Thermodynamics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.1:pg-20" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Part a: Work done in expansion is -16.2 kJ\n", + "Part b: Work done in expansion of bubble is -1.73 J\n", + "Part c: Work done in paasing the cuurent through coil is 1.39 kJ\n", + "Part d: Work done stretching th fiber is -1.12 J\n" + ] + } + ], + "source": [ + "import math #Part a\n", + "vi = 20.0 #Initial volume of ideal gas, L\n", + "vf = 85.0 #final volume of ideal gas, L\n", + "Pext = 2.5 #External Pressure against which work is done, bar\n", + "\n", + "#Calculations\n", + "w = -Pext*1e5*(vf-vi)*1e-3\n", + "\n", + "#Results\n", + "print 'Part a: Work done in expansion is %6.1f kJ'%(w/1000)\n", + "\n", + "import math #Part b\n", + "ri = 1.00 #Initial diameter of bubble, cm\n", + "rf = 3.25 #final diameter of bubble, cm\n", + "sigm = 71.99 #Surface tension, N/m\n", + "\n", + "#Calculations\n", + "w = -2*sigm*4*math.pi*(rf**2-ri**2)*1e-4\n", + "\n", + "#Results\n", + "print 'Part b: Work done in expansion of bubble is %4.2f J'%w\n", + "\n", + "import math #Part c\n", + "i = 3.20 #Current through heating coil, A \n", + "v = 14.5 #fVoltage applied across coil, volts\n", + "t = 30.0 #time for which current is applied,s\n", + "\n", + "#Calculations\n", + "w = v*i*t\n", + "\n", + "#Results\n", + "print 'Part c: Work done in pasing the cuurent through coil is %4.2f kJ'%(w/1000)\n", + "\n", + "import math #Part d\n", + "k = 100.0 #Constant in F = -kx, N/cm \n", + "dl = -0.15 #stretch , cm\n", + "\n", + "#Calculations\n", + "w = -k*(dl**2-0)/2\n", + "\n", + "#Results\n", + "print 'Part d: Work done stretching th fiber is %4.2f J'%w" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.2:pg-22" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Heat added to the water 24.00 kJ\n", + "Work done in vaporizing liquid is -1703.84 J\n" + ] + } + ], + "source": [ + "import math \n", + "m = 100.0 #Mass of water, g \n", + "T = 100.0 #Temperature of water, °C\n", + "Pext = 1.0 #External Pressure on assembly, bar\n", + "x = 10.0 #percent of water vaporised at 1 bar,-\n", + "i = 2.00 #current through heating coil, A\n", + "v = 12.0 #Voltage applied, v\n", + "t = 1.0e3 #time for which current applied, s \n", + "rhol = 997 #Density of liquid, kg/m3\n", + "rhog = 0.59 #Density of vapor, kg/m3\n", + "\n", + "#Calculations\n", + "q = i*v*t\n", + "vi = m/(rhol*100)*1e-3\n", + "vf = m*(100-x)*1e-3/(rhol*100) + m*x*1e-3/(rhog*100)\n", + "w = -Pext*(vf-vi)*1e5\n", + "#Results\n", + "print 'Heat added to the water %4.2f kJ'%(q/1000)\n", + "print 'Work done in vaporizing liquid is %4.2f J'%w" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.3:pg-27" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Heat removed by water at constant pressure 89.03 kJ\n" + ] + } + ], + "source": [ + "import math #Part d\n", + "m = 1.5 #mass of water in surrounding, kg \n", + "dT = 14.2 #Change in temperature of water, °C or K\n", + "cp = 4.18 #Specific heat of water at constant pressure, J/(g.K)\n", + "\n", + "#Calculations\n", + "qp = m*cp*dT\n", + "\n", + "#Results\n", + "print 'Heat removed by water at constant pressure %4.2f kJ'%qp" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.4:pg-32" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "For reverssible Isothermal expansion\n", + "Work done = -1.93e+02 J\n", + "For Single step reverssible expansion\n", + "Work done = -9.22e+03 J\n", + "For Two step reverssible expansion\n", + "Work done = -1.29e+04 J\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "import math \n", + "n = 2.0 #moles of ideal gas\n", + "R = 8.314 #Ideal gas constant, bar.L/(mol.K)\n", + "#For reverssible Isothermal expansion \n", + "Pi1 = 25.0 #Initial Pressure of ideal gas, bar\n", + "Vi1 = 4.50 #Initial volume of ideal gas, L\n", + "Pf1 = 4.50 #Fianl Pressure of ideal gas, bar\n", + "Pext = 4.50 #External pressure, bar \n", + "Pint = 11.0 #Intermediate pressure, bar\n", + "\n", + "#Calcualtions reverssible Isothermal expansion \n", + "T1 = Pi1*Vi1/(n*R)\n", + "Vf1 = n*R*T1/Pf1\n", + "w = -n*R*T1*log(Vf1/Vi1)\n", + "\n", + "#Results\n", + "print 'For reverssible Isothermal expansion'\n", + "print 'Work done = %4.2e J'%w\n", + "\n", + "#Calcualtions Single step irreverssible expansion \n", + "\n", + "w = -Pext*1e5*(Vf1-Vi1)*1e-3\n", + "\n", + "#Results\n", + "print 'For Single step reverssible expansion'\n", + "print 'Work done = %4.2e J'%w\n", + "\n", + "#Calcualtions Two step irreverssible expansion \n", + "Vint = n*R*T1/(Pint)\n", + "w = -Pint*1e5*(Vint-Vi1)*1e-3 - Pf1*1e5*(Vf1-Vint)*1e-3\n", + "\n", + "#Results\n", + "print 'For Two step reverssible expansion'\n", + "print 'Work done = %4.2e J'%w\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.5:pg-37" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "For Path q w DU DH \n", + "1-2 139463.96 -39840.00 99623.96 139463.96\n", + "2-3 -99623.96 0.00 -99623.96 -139463.96\n", + "3-1 -5343.33 5343.33 0.00 0.00\n", + "Overall 34496.67 -34496.67 0.00 0.00\n", + "all values are in J\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "n = 2.5 #moles of ideal gas\n", + "R = 0.08314 #Ideal gas constant, bar.L/(mol.K)\n", + "cvm = 20.79 #Heat Capacity at constant volume, J/(mol.K)\n", + "\n", + "p1 = 16.6 #Pressure at point 1, bar\n", + "v1 = 1.00 #Volume at point 1, L\n", + "p2 = 16.6 #Pressure at point 2, bar\n", + "v2 = 25.0 #Volume at point 2, L \n", + "v3 = 25.0 #Volume at point 3, L\n", + "\n", + "#Calculations\n", + "T1 = p1*v1/(n*R)\n", + "T2 = p2*v2/(n*R)\n", + "T3 = T1 #from problem statement\n", + " #for path 1-2\n", + "DU12 = n*cvm*(T2-T1)\n", + "w12 = -p1*1e5*(v2-v1)*1e-3\n", + "q12 = DU12 - w12\n", + "DH12 = DU12 + n*R*(T2-T1)*1e2\n", + "\n", + " #for path 2-3\n", + "w23 = 0.0\n", + "DU23 = q23 = n*cvm*(T3-T2)\n", + "DH23 = -DH12\n", + "\n", + "\n", + " #for path 3-1\n", + "DU31 = 0.0 #Isothemal process\n", + "DH31 = 0.0\n", + "w31 = -n*R*1e2*T1*log(v1/v3)\n", + "q31 = -w31\n", + "\n", + "DU = DU12+DU23+DU31\n", + "w = w12+w23+w31\n", + "q = q12+q23+q31\n", + "DH = DH12+DH23+DH31\n", + "\n", + "#Results\n", + "print 'For Path q w DU DH '\n", + "print '1-2 %7.2f %7.2f %7.2f %7.2f'%(q12,w12,DU12,DH12)\n", + "print '2-3 %7.2f %7.2f %7.2f %7.2f'%(q23,w23,DU23,DH23)\n", + "print '3-1 %7.2f %7.2f %7.2f %7.2f'%(q31,w31,DU31,DH31)\n", + "print 'Overall %7.2f %7.2f %7.2f %7.2f'%(q,w,DU,DH)\n", + "print 'all values are in J'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.6:pg-38" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The final temperature at end of adiabatic procees is 268.5 K\n", + "The enthalpy change of adiabatic procees is -2937.0 J\n", + "The Internal energy change of adiabatic procees is -1762.2 J\n", + "The work done in expansion of adiabatic procees is -1762.2 J\n" + ] + } + ], + "source": [ + "\n", + "import math #Part d\n", + "n = 2.5 #moles of ideal gas\n", + "R = 8.314 #Ideal gas constant, J/(mol.K)\n", + "cvm = 12.47 #Heat Capacity at constant volume, J/(mol.K)\n", + "\n", + "pext = 1.00 #External Pressure, bar\n", + "Ti = 325. #Initial Temeprature, K\n", + "pi = 2.50 #Initial Pressure, bar\n", + "pf = 1.25 #Final pressure, bar \n", + "\n", + "#Calculations Adiabatic process q = 0; DU = w\n", + "q = 0.0 \n", + "Tf = Ti*(cvm + R*pext/pi)/(cvm + R*pext/pf )\n", + "DU = w = n*cvm*(Tf-Ti)\n", + "DH = DU + n*R*(Tf-Ti)\n", + "\n", + "#Results\n", + "print 'The final temperature at end of adiabatic procees is %4.1f K'%Tf\n", + "print 'The enthalpy change of adiabatic procees is %4.1f J'%DH\n", + "print 'The Internal energy change of adiabatic procees is %4.1f J'%DU\n", + "print 'The work done in expansion of adiabatic procees is %4.1f J'%w\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex2.7:pg-40" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Final temperature of cloud 265.2 K\n", + "You can expect cloud\n" + ] + } + ], + "source": [ + "from math import log, exp\n", + " #Part d\n", + "h1 = 1000.0 #initial Altitude of cloud, m \n", + "hf = 3500.0 #Final Altitude of cloud, m \n", + "p1 = 0.802 #Pressure at h1, atm \n", + "pf = 0.602 #Pressure at hf, atm\n", + "T1 = 288.0 #Initial temperature of cloud, K\n", + "cp = 28.86 #Specific heat of air, J/mol.K\n", + "R = 8.314 #Gas constant, J/mol.K\n", + "\n", + "#Calculations\n", + "Tf = exp(-(cp/(cp-R)-1)/(cp/(cp-R))*log(p1/pf))*T1\n", + "#Results\n", + "print 'Final temperature of cloud %4.1f K'%Tf\n", + "if Tf < 273:\n", + " print 'You can expect cloud'\n", + "else:\n", + " print 'You can not expect cloud'" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_eAEoe4s.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_eAEoe4s.ipynb new file mode 100644 index 00000000..7f1b328b --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_eAEoe4s.ipynb @@ -0,0 +1,314 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 11: Electrochemical Cells, Batteries, and Fuel Cells" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.1:pg-265" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The potential of H+/H2 half cell 0.0083 V\n" + ] + } + ], + "source": [ + "from math import log, sqrt\n", + "\n", + "#Variable Declaration\n", + "aH = 0.770 #Activity of \n", + "fH2 = 1.13 #Fugacity of Hydrogen gas\n", + "E0 = 0.0 #Std. electrode potential, V\n", + "n = 1.0 #Number of electrons transfered\n", + "\n", + "#Calculations\n", + "E = E0 - (0.05916/n)*log(aH/sqrt(fH2),10)\n", + "\n", + "#Results\n", + "print 'The potential of H+/H2 half cell %5.4f V'%E" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.2:pg-266" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.689 1.019\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "E0r1 = -0.877 #Std Electrod potential for Rx2 : Al3+ + 3e- ------> Al (s) \n", + "E0r2 = -1.660 #Std Electrod potential for Rx2 : Al3+ + 3e- ------> Al (s)\n", + "E0r3 = +0.071 #Std Electrod potential for Rx3 : AgBr (s) + e- ------> Ag(s) +Br- (aq.)\n", + "\n", + "#Calculations\n", + "#3Fe(OH)2 (s)+ 2Al (s) <---------> 3Fe (s) + 6(OH-) + 2Al3+\n", + "E0a = 3*E0r1 + (-2)*E0r2\n", + "#Fe (s) + 2OH- + 2AgBr (s) -------> Fe(OH)2 (s) + 2Ag(s) + 2Br- (aq.)\n", + "E0b = -E0r1 + (2)*E0r3\n", + "\n", + "#Results\n", + "print '%5.3f %5.3f'%(E0a,E0b)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.3:pg-267" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "E0 for overall reaction is -0.041 V\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "E01 = 0.771 #Rx1 : Fe3+ + e- -----> Fe2+\n", + "E02 = -0.447 #Rx2 : Fe2+ + 2e- -----> Fe\n", + "F = 96485 #Faraday constant, C/mol\n", + "n1,n2,n3 = 1.,2.,3.\n", + "\n", + "#Calculations\n", + "dG01 = -n1*F*E01\n", + "dG02 = -n2*F*E02\n", + " #For overall reaction\n", + "dG0 = dG01 + dG02\n", + "E0Fe3byFe = -dG0/(n3*F)\n", + "\n", + "#Results\n", + "print 'E0 for overall reaction is %5.3f V'%(E0Fe3byFe)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.4:pg-268" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Std. entropy change of reaction from dE0bydT is -2.32e+02 and\n", + "Std entropy values is -2.41e+02 V\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "E01 = +1.36 #Std. electrode potential for Cl2/Cl\n", + "dE0bydT = -1.20e-3 #V/K\n", + "F = 96485 #Faraday constant, C/mol\n", + "n = 2.\n", + "S0H = 0.0 #Std. entropy J/(K.mol) for H+ ,Cl-,H2, Cl2 \n", + "S0Cl = 56.5\n", + "S0H2 = 130.7\n", + "S0Cl2 = 223.1\n", + "nH, nCl, nH2, nCl2 = 2, 2, -1,-1\n", + "#Calculations\n", + "dS01 = n*F*dE0bydT\n", + "dS02 =nH*S0H + nCl*S0Cl + nH2*S0H2 + nCl2*S0Cl2\n", + "\n", + "#Results\n", + "print 'Std. entropy change of reaction from dE0bydT is %4.2e and\\nStd entropy values is %4.2e V'%(dS01,dS02)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.5:pg-269" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Equilibrium constant for reaction is 1.55e+37\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declaration\n", + "E0 = +1.10 #Std. electrode potential for Danniel cell, V\n", + " #Zn(s) + Cu++ -----> Zn2+ + Cu\n", + "T = 298.15 #V/K\n", + "F = 96485 #Faraday constant, C/mol\n", + "n = 2.\n", + "R = 8.314 #Gas constant, J/(mol.K)\n", + "\n", + "#Calculations\n", + "K = exp(n*F*E0/(R*T))\n", + "\n", + "#Results\n", + "print 'Equilibrium constant for reaction is %4.2e'%(K)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.6:pg-269" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Equilibrium constant for reaction is 1.57e-10\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "E = +0.29 #Cell emf, V\n", + "n = 2.\n", + "\n", + "#Calculations\n", + "Ksp = 10**(-n*E/0.05916)\n", + "\n", + "#Results\n", + "print 'Equilibrium constant for reaction is %4.2e'%(Ksp)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex11.8:pg-272" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cell potentials for Zn, Ag, Au are 2.27 V, 0.71 V, and -0.18 V\n", + "Zn has positive cell potential of 2.272 V and Can be oxidized bypermangnate ion\n", + "Ag has positive cell potential of 0.710 V and Can be oxidized bypermangnate ion\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "E = +1.51 #EMF for reduction of permangnet, V\n", + "E01 = -0.7618 #Zn2+ + 2e- --------> Zn (s)\n", + "E02 = +0.7996 #Ag+ + e- --------> Ag (s)\n", + "E03 = +1.6920 #Au+ + e- --------> Au (s) \n", + "\n", + "#Calculations\n", + "EZn = E - E01\n", + "EAg = E - E02\n", + "EAu = E - E03\n", + "animals = {\"parrot\": 2, \"fish\": 6}\n", + "Er = {\"Zn\":EZn,\"Ag\":EAg,\"Au\":EAu}\n", + "#Results\n", + "print 'Cell potentials for Zn, Ag, Au are %4.2f V, %4.2f V, and %4.2f V'%(EZn, EAg,EAu)\n", + "for i in Er:\n", + " if Er[i] >0.0:\n", + " print '%s has positive cell potential of %4.3f V and Can be oxidized bypermangnate ion' %(i,Er[i])\n", + " " + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_ezyRCsC.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_ezyRCsC.ipynb new file mode 100644 index 00000000..6d251294 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_ezyRCsC.ipynb @@ -0,0 +1,508 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 17: Transport Phenomena" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.1:pg-427" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Diffusion coefficient of Argon 1.1e-05 m2/s\n" + ] + } + ], + "source": [ + "from scipy import constants\n", + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "M = 0.040 #Molecualar wt of Argon, kh/mol\n", + "P, T = 101325.0, 298.0 #Pressure and Temperature, Pa, K\n", + "sigm = 3.6e-19 #\n", + "R = 8.314 #Molar Gas constant, mol^-1 K^-1\n", + "N_A = 6.02214129e+23 #mol^-1\n", + "#Calculations\n", + "DAr = (1./3)*sqrt(8*R*T/(pi*M))*(R*T/(P*N_A*sqrt(2)*sigm))\n", + "\n", + "#Results\n", + "print 'Diffusion coefficient of Argon %3.1e m2/s'%DAr" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.2:pg-428" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Ratio of collision cross sections of Helium to Argon 0.790\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "\n", + "#Variable Declaration\n", + "DHebyAr = 4.0 \n", + "MAr, MHe = 39.9, 4.0 #Molecualar wt of Argon and Neon, kg/mol\n", + "P, T = 101325.0, 298.0 #Pressure and Temperature, Pa, K\n", + "sigm = 3.6e-19 #\n", + "R = 8.314 #Molar Gas constant, mol^-1 K^-1\n", + "N_A = 6.02214129e+23 #mol^-1\n", + "#Calculations\n", + "sigHebyAr = (1./DHebyAr)*sqrt(MAr/MHe)\n", + "\n", + "#Results\n", + "print 'Ratio of collision cross sections of Helium to Argon %4.3f'%sigHebyAr" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.3:pg-430" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "rms displacement at 1000 and 10000 is 0.141 and 0.447 m respectively\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "\n", + "#Variable Declaration\n", + "D = 1.0e-5 #Diffusion coefficient, m2/s \n", + "t1 = 1000 #Time, s\n", + "t10 = 10000 #Time, s\n", + "\n", + "#Calculations\n", + "xrms1 = sqrt(2*D*t1)\n", + "xrms10 = sqrt(2*D*t10)\n", + "\n", + "#Results\n", + "print 'rms displacement at %4d and %4d is %4.3f and %4.3f m respectively'%(t1,t10,xrms1,xrms10)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.4:pg-432" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Time per random walk is 2.045e-11 s or 20.45 ps\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "D = 2.2e-5 #Diffusion coefficient of benzene, cm2/s \n", + "x0 = 0.3 #molecular diameter of benzene, nm\n", + "\n", + "#Calculations\n", + "t = (x0*1e-9)**2/(2*D*1e-4)\n", + "\n", + "#Results\n", + "print 'Time per random walk is %4.3e s or %4.2f ps'%(t,t/1e-12)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.5:pg-434" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Mean free path 2.627e-07 m and collisional cross section 1.10e-19 m2\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "P = 101325 #Pressure, Pa\n", + "kt = 0.0177 #Thermal conductivity, J/(K.m.s)\n", + "T = 300.0 #Temperature, K\n", + "k = 1.3806488e-23 #Boltzmanconstant,J K^-1\n", + "sigm = 3.6e-19 #\n", + "R = 8.314 #Molar Gas constant, mol^-1 K^-1\n", + "NA = 6.02214129e+23 #mol^-1\n", + "M = 39.9 #Molecualar wt of Argon and Neon, kg/mol\n", + "\n", + "#Calculations\n", + "CvmbyNA = 3.*k/2\n", + "nuavg = sqrt(8*R*T/(pi*M*1e-3))\n", + "N = NA*P/(R*T)\n", + "labda = 3*kt/(CvmbyNA*nuavg*N)\n", + "sigm = 1/(sqrt(2)*N*labda)\n", + "\n", + "#Results\n", + "print 'Mean free path %4.3e m and collisional cross section %4.2e m2'%(labda, sigm)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.6:pg-437" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Collisional cross section 2.74e-19 m2\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "eta = 227. #Viscosity of Ar, muP\n", + "P = 101325 #Pressure, Pa\n", + "kt = 0.0177 #Thermal conductivity, J/(K.m.s)\n", + "T = 300.0 #Temperature, K\n", + "k = 1.3806488e-23 #Boltzmanconstant,J K^-1\n", + "R = 8.314 #Molar Gas constant, mol^-1 K^-1\n", + "NA = 6.02214129e+23 #mol^-1\n", + "M = 39.9 #Molecualar wt of Argon and Neon, kg/mol\n", + "\n", + "#Calculations\n", + "nuavg = sqrt(8*R*T/(pi*M*1e-3))\n", + "N = NA*P/(R*T)\n", + "m = M*1e-3/NA\n", + "labda = 3.*eta*1e-7/(nuavg*N*m) #viscosity in kg m s units\n", + "sigm = 1./(sqrt(2)*N*labda)\n", + "\n", + "#Results\n", + "print 'Collisional cross section %4.2e m2'%(sigm)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.7:pg-439" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Flow rate is 2.762e-06 m3/s\n", + "Cylinder can be used for 4.381e+06 s nearly 50.7 days\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "m = 22.7 #Mass of CO2, kg\n", + "T = 293.0 #Temperature, K\n", + "L = 1.0 #length of the tube, m\n", + "d = 0.75 #Diameter of the tube, mm\n", + "eta = 146 #Viscosity of CO2, muP\n", + "p1 = 1.05 #Inlet pressure, atm\n", + "p2 = 1.00 #Outlet pressure, atm\n", + "atm2pa = 101325 #Conversion for pressure from atm to Pa \n", + "M = 0.044 #Molecular wt of CO2, kg/mol\n", + "R = 8.314 #Molar Gas constant, J mol^-1 K^-1\n", + "\n", + "#Calculations\n", + "p1 = p1*atm2pa\n", + "p2 = p2*atm2pa\n", + "F = pi*(d*1e-3/2)**4*(p1**2-p2**2)/(16.*eta/1.e7*L*p2)\n", + "nCO2 = m/M\n", + "v = nCO2*R*T/((p1+p2)/2)\n", + "t = v/F\n", + "\n", + "#Results\n", + "print 'Flow rate is %4.3e m3/s'%(F)\n", + "print 'Cylinder can be used for %4.3e s nearly %3.1f days'%(t, t/(24*3600))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.8:pg-441" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Radius of protein is 3.550 nm\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "eta = 0.891 #Viscosity of hemoglobin in water, cP\n", + "T = 298.0 #Temperature, K\n", + "k = 1.3806488e-23 #Boltzmanconstant,J K^-1\n", + "R = 8.314 #Molar Gas constant, mol^-1 K^-1\n", + "D = 6.9e-11 #Diffusion coefficient, m2/s \n", + "\n", + "#Calculations\n", + "r = k*T/(6*pi*eta*1e-3*D)\n", + "\n", + "#Results\n", + "print 'Radius of protein is %4.3f nm'%(r/1e-9)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.9:pg-442" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Radius of Lysozyme particle is 1.937 nm\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "\n", + "#Variable Declaration\n", + "s = 1.91e-13 #Sedimentation constant, s\n", + "NA = 6.02214129e+23 #mol^-1\n", + "M = 14100.0 #Molecualr wt of lysozyme, g/mol\n", + "rho = 0.998 #Density of water, kg/m3\n", + "eta = 1.002 #Viscosity lysozyme in water, cP\n", + "T = 293.15 #Temperature, K\n", + "vbar = 0.703 #Specific volume of cm3/g\n", + "\n", + "#Calculations\n", + "m = M/NA\n", + "f = m*(1.-vbar*rho)/s\n", + "r = f/(6*pi*eta)\n", + "\n", + "#Results\n", + "print 'Radius of Lysozyme particle is %4.3f nm'%(r/1e-9)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.10:pg-443" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZYAAAETCAYAAAAVhSD9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xl4lOW9//H3F2lcqlCXU5SAEINbUVBQREGJCwrYymnP\nUq22im3FBVFxrb3yKz2prfZYXIqniFKXqgWXKlTREsW4YNkKAWQRiIFCIigqm1YCyff3x/0g0ymB\nkEzyzPJ5XZeXM8/cM/OZXMZvvnM/z32buyMiIpIqreIOICIi2UWFRUREUkqFRUREUkqFRUREUkqF\nRUREUkqFRUREUiq2wmJmA8xsiZktNbNb6xlzv5ktM7NyMzsh4XhbM3vGzBab2UIzO6XlkouIyK7E\nUljMrBUwGjgP6ApcZGbHJI0ZCBS6+5HAUGBMwsP3AZPd/VigO7C4RYKLiMhuxdWx9AKWuftKd98K\njAcGJ40ZDDwO4O4zgLZm1s7M2gCnu/sj0WPb3H1jC2YXEZFdiKuw5AOrEu6vjo7takxVdKwAWGdm\nj5jZHDMba2b7NmtaERFpsEycvG8N9AAecPcewOfAbfFGEhGR7VrH9L5VwOEJ9ztEx5LHdKxnzCp3\nnx3dfhaob/JfC6GJiOwhd7emPD+ujmUW0MXMOplZHnAhMClpzCTgBwBm1htY7+5r3X0tsMrMjorG\nnQ0squ+N3D2t//nZz34WewblVE7lVM7t/6RCLB2Lu9ea2TBgCqG4jXP3xWY2NDzsY919spkNMrPl\nwGfAkISXGA48aWZfAd5PekxERGIU11dhuPsrwNFJxx5Muj+snufOA05uvnQiItJYmTh5n1WKiori\njtAgyplayplaypleLFXfqaUjM/Ns/nwiIqlmZniGTt6LiEiWUmEREZGUUmEREZGUUmEREckwlSsq\nuWT4JZx52ZlcMvwSKldUxh3pn2jyXkQkg1SuqKT/sP5UdK+APKAGCucVUjq6lILOBU1+fU3ei4jk\nmOJRxTuKCkAeVHSvoHhUcay5EqmwiIhkiC1b4K3yqh1FZbs8qN5YHUumnVFhERHJAH/7G/TsCXUb\n8qEm6cEaaN+mfSy5dkaFRUQkjdXUwP/7fzBwIPzkJ/DGCyUUzivcUVyiOZaSESWx5kykyXsRkTRV\nXg6XXgqHHw4PPgjto6akckUlxaOKqd5YTfs27SkZUZKSiXtIzeS9CouISJrZuhV+9Sv47W/h7rvh\nBz8Aa9L/6hsuFYUlttWNRUTkXy1YELqUdu1g7lzo0CHuRHtOcywiImlg2zb45S/hrLPgmmtg8uTM\nLCqgjkVEJHaLFoUu5WtfC2d/HX747p+TztSxiIjEpLYWfv1rOOMM+NGPYMqUzC8qoI5FRCQW770H\nl10G++4Ls2ZBQWpO6koL6lhERFpQbS2MGgV9+sAll8Crr2ZXUQF1LCIiLWbZMhgyBFq1ghkzoLAw\n7kTNQx2LiEgzq6uD+++HU0+F//ovKCvL3qIC6lhERJrV+++HLmXbNnjnHTjqqLgTNT91LCIizaCu\nDn73OzjlFLjgAnjzzdwoKqCORUQk5VauhB/+EDZtgrfegmOOiTtRy1LHIiKSIu7w0ENw0knQvz9M\nm5Z7RQXUsYiIpMSqVeEix48/DpPzXbvGnSg+6lhERJrAHR55BHr0CFfQ//WvuV1UQB2LiEijVVXB\nFVdAdTW89hp06xZ3ovQQW8diZgPMbImZLTWzW+sZc7+ZLTOzcjM7MeH4CjObZ2ZzzWxmy6UWEQld\nyh/+ACeeCL16wcyZKiqJYulYzKwVMBo4G6gGZpnZRHdfkjBmIFDo7kea2SnA74De0cN1QJG7f9rC\n0UUkx61ZA0OHQmUl/OUvobjIP4urY+kFLHP3le6+FRgPDE4aMxh4HMDdZwBtzaxd9Jih+SERaUHu\n8Mc/QvfuoTuZPVtFpT5xzbHkA6sS7q8mFJtdjamKjq0FHCg1s1pgrLs/1IxZRSTHffghXHUVLFkC\nL70UTieW+mXqX/193L0HMAi4xsz6xh1IRLLTM8+EDuWoo8ImXCoquxdXx1IFJG5n0yE6ljym487G\nuPsH0b8/MrPnCd3O2zt7o5EjR355u6ioiKKioqYlF5GcsG5d2CJ43jyYODEszZKNysrKKCsrS+lr\nmrun9AUb9KZmewHvESbvPwBmAhe5++KEMYOAa9z9fDPrDdzr7r3NbD+glbtvNrOvAlOAn7v7lJ28\nj8fx+UQksz3/PFx9ddgv5X/+J2zGlSvMDHe3prxGLB2Lu9ea2TBCUWgFjHP3xWY2NDzsY919spkN\nMrPlwGfAkOjp7YDnzcyj/E/urKiIiOypjz+G4cPDjo7PPhs245I9F0vH0lLUsYhIQ02aFCbo//u/\n4Y47YL/94k4Uj4ztWERE0sWnn8L118Pbb4fTic84I+5EmS9TzwoTEWmyyZPh+OOhTRuYP19FJVXU\nsYhIztmwAUaMgKlTw9IsZ54Zd6Lsoo5FRHLKlCmhS8nLC12KikrqqWMRkZywaRPcdBO88gqMGxc2\n4pLmoY5FRLLea6+FLqWuLnQpKirNSx2LiGStzZvh1lvDqcRjx8LAgXEnyg3qWEQkK73xRliJ+PPP\nYcECFZWWpI5FRLLKZ5/B7bfDc8/BmDHwzW/GnSj3qLCISMaqXFFJ8ahiqjZWkd8mnwtOL+GntxfQ\nu3eYSznooLgT5iYt6SIiGalyRSX9h/WnonsF5AE1sNfEQkZfW8qVQwvijpexUrGki+ZYRCQjFY8q\n3lFUAPKgdnAFby8sjjWXqLCISIZatb5qR1HZLg+qN1bHkkd2UGERkYwzaxaUv50PNUkP1ED7Nu1j\nySQ7qLCISMbYsgV++tNwplfJDSUUzivcUVxqoHBeISUjSmLNKJq8F5EMMWcOXHopFBaG04gPPXTH\nWWHVG6tp36Y9JSNKKOisifumSMXkvQqLiKS1mpqw8daYMTBqFHzve2BN+t+e7Io2+hKRrDZvXuhS\nOnaEuXOhvaZPMoLmWEQk7WzdCiUlYbHIG24Ia32pqGQOdSwiklbefTd0KV//ephX6dAh7kSyp9Sx\niEha2LYNfvWrsPHW1VeHbYNVVDKTOhYRid3ixaFLadMGZs+GTp3iTiRNoY5FRGJTWwv/+79w+ulw\n+eVQWqqikg3UsYhILN57D4YMgb33DlfSF+jyk6yhjkVEWlRtLdxzD/TpE65Jee01FZVso45FRFrM\n8uWhSwGYPh26dIk3jzQPdSwi0uzq6uC3v4XeveE//iNsG6yikr3UsYhIs3r//TAxX1MD77wDRx0V\ndyJpbupYRKRZ1NXB734HvXqF1YjfektFJVfE1rGY2QDgXkJxG+fud+1kzP3AQOAz4DJ3L094rBUw\nG1jt7he0TGoRaYiVK+GHP4RNm0JBOfbYuBNJS4qlY4mKwmjgPKArcJGZHZM0ZiBQ6O5HAkOBMUkv\ncx2wqAXiikgDucNDD8FJJ8E558C0aSoquSiujqUXsMzdVwKY2XhgMLAkYcxg4HEAd59hZm3NrJ27\nrzWzDsAg4A5gRMtGF5GdWbUKfvxjWLcOXn8djjsu7kQSl7jmWPKBVQn3V0fHdjWmKmHMPcDNgDZb\nEYmZOzzyCPToAX37wl//qqKS6zLurDAzOx9Y6+7lZlYE7HJDmpEjR355u6ioiKKiouaMJ5JTqqtD\nl1JdDa++Ct27x51I9lRZWRllZWUpfc1YdpA0s97ASHcfEN2/DfDECXwzGwO87u4TovtLgH6EuZVL\ngG3AvsABwJ/c/Qc7eR/tICnSDNzhiSfgxhvDSsS33w55eXGnklTI2K2JzWwv4D3gbOADYCZwkbsv\nThgzCLjG3c+PCtG97t476XX6ATfWd1aYCotI6q1ZA0OHQmUlPPpo+ApMskcqCksscyzuXgsMA6YA\nC4Hx7r7YzIaa2RXRmMlApZktBx4Ero4jq4gE7vDHP4avu44/PiwcqaIiOxNLx9JS1LGIpMaHH8JV\nV8GSJaFLOfnkuBNJc8nYjkVEMsczz0C3bnDkkfC3v6moyO5l3FlhItIy1q2DYcOgvBxeeCEsICnS\nEOpYRORfPP986FI6dIC5c1VUZM+oYxGRL33yCQwfDjNmhK/A+vSJO5FkInUsIgLAn/8czvY65BCY\nN09FRRpPHYtIjlu/Hq6/PqxC/NRT0K9f3Ikk06ljEclhL78cupT99w9dioqKpII6FpEctGFDWI7l\ntdfgscfgrLPiTiTZRB2LSI4pLQ1nfLVuDfPnq6hI6qljEckRmzbBzTeHr78eegjOPTfuRJKt1LGI\n5ICpU0OXsm1b6FJUVKQ5NbhjMbP9CMvVH0coSPsAdcBmYDrwrLvXNUdIEWmczZvhtttg4kQYOxYG\nDow7keSCBhUWM+sPHAu85O5jd/J4d2CEmZW6+7wUZxSRRnjzTRgyBE4/PXQpBx4YdyLJFbtd3djM\n9gE6uPvy3b6Y2fHuviBV4ZpKqxtLLqhcUUnxqGKqNlaR3yaf268qYeyDBTzzDIwZA9/6VtwJJZPE\nutGXmXUE2hG2CV61u/FxUGGRbFe5opL+w/pT0b0C8oAaaD2pkPMLS/n97ws46KC4E0qmSUVhadRZ\nYWY2FNibML/yNTOrdff7mhJERPZc8ajiHUUFIA+2XVDB/puKOeigJ2LNJrmrsacbV7j7q9vvmNmZ\nKcojInugamMVHJx0MA+qN1bHkkcEGl9YNprZ3cC+wAZgcuoiiUhDfPEFfFiRD/ns6FgAaqB9m/Zx\nxRJp3HUs7j7T3W8ClgNtgb1SmkpEdmnWLOjZEzruX0LnOYVQEz1QA4XzCikZURJrPsltjZq8N7NR\nwGxgo7u/aGbnuvuUlKdrIk3eS7bZsgVKSsKV8/fdB9/9LqxYGc4Kq95YTfs27SkZUUJB54K4o0qG\niuWsMDMrAGqB/YE+wL8BC919YlOCNAcVFskmc+bAZZdBQQE8+CAcemjciSQbpaKwNOarsJuAI9x9\nEbAYeCMdi4pItqipgZEjYcAAuOWWsP+8ioqks8ZM3s8EOptZgbu/bWb/nupQIhLMmxe6lPbtobw8\n/Fsk3TWmY+lImCocYWZTgZNSG0lEtm6FX/wCzjkHrrsOXnxRRUUyR2M6lvcJC04+ZWYHA99JcSaR\nnPbuu6FLOeSQMK/SsWPciUT2TGM6lglA1+j2EYC+7RVJgW3b4M474cwz4corw74pKiqSiRqyCOXR\nQG1DFqFMNzorTDLF4sWhSzngABg3Djp1ijuR5KqWOiusgjBZf42ZXWlmPZvyhiKyQ20t3H03nHFG\nWOK+tFRFRTJfY65j6QX0BAx4Dyhz99o9fmOzAcC9hOI2zt3v2smY+4GBwGfAZe5ebmZ7A28SFrHI\nAya6++31vIc6FklbS5eGLmXvveH3vw/Xp4jELdZl86MARwNFwFeAKuAv7v55A57XClgKnA1UA7OA\nC919ScKYgcAwdz/fzE4B7nP33tFj+7n752a2FzANuNHdp+3kfVRYJO3U1cH994ezvkaOhKuvhlba\nJFzSRGzL5m/n7u8RuhbM7DDgm8DTDXhqL2CZu6+MnjseGAwsSRgzGHg8ep8ZZtbWzNq5+9qE4rU3\noeP5tCmfQ6SlLF8Ol18O7jB9OnTpEncikdRL2d9J7v6BuzekqEBYjzVxc7DV0bFdjanaPsbMWpnZ\nXGAN4au4RY1LLdIy6upg9Gjo3Ru+8x0oK1NRkezVpI7FzG4ACoFn3P2N1ETaPXevA040szbAFDPr\nV9/7jxw58svbRUVFFBUVtUhGke0qK0OXsmULTJsGRx8ddyKRHcrKyigrK0vpa8ayurGZ9QZGuvuA\n6P5tgCdO4JvZGOB1d58Q3V8C9HP3tUmvVQx87u6/2cn7aI5FYuMeFossLoZbb4UbboC9tMGEpLk4\n51hGAW2APmZ2O7BwD58/C+hiZp2AD4ALgYuSxkwCrgEmRIVovbuvNbNDgK3uvsHM9gX6Az9v5OcQ\naRYrV8KPfgQbNsCbb8Kxx8adSKTl7HFhiZbN/8DdVwONmttw91ozGwZMYcfpxovNbGh42Me6+2Qz\nG2RmywmnGw+Jnn4Y8JiZWfTcP7j7a43JIZJq7uECx5/8BG68EW66CVo36QtnkczTmOtYHiDMqZSZ\nWV+gzt3faZZ0TaSvwqQlrV4dupSPPoLHHoPjjos7kciei2s/ln9aNh/4elMCiGQ6d3j0UejRA/r2\nDacRq6hILmtMk96RsMLxCDPrCrwDvJDSVCIZoroarrgidCulpdC9e9yJROLXmI5l+7L51wL/BaxM\nbSSR9OcOTzwBJ5wAPXvCzJkqKiLbNaZjmQB0A+aiZfMlB61ZE5a1r6iAV14JX4GJyA677VjMbO9o\nQy8gnNHl7nOj27PcvSRhrHaPkKzlDuPHh86ka1eYPVtFRWRndtuxuPsWM+tvZgcAL7j7P5LHmNnX\ngP8mnH68KvlxkUz34YdhschFi8I2wSefHHcikfTV4NONzexQ4HLCWWD7EIpSLfA5Ya2vh919QzPl\nbBSdbiyp8OyzMGwYXHop/PznsM8+cScSaT6xL5uf7lRYpCnWrQsFZe7ccDrxqafGnUik+cVyHYuZ\n3ZJ0v6OZPRZt3CWSFV54Abp1g/x8KC9XURHZE405K+xgM3sRuCVarn4EcAdwWkqTicTgk09g+HCY\nMQOefjpc8Cgie6ZRV967+zeB7btJdAKWAx+lLJVIDF58EY4/Hg45BObNU1ERaazGdCw9zKwdcICZ\nLSQUln2Br6Y0mUgLWb8err8e3noLnnoK+vWLO5FIZmtMx3If4SywCYSiMggYjrYHlgz08suhS9l/\n/9ClqKiINF1jVjc2whL2JwHz3X1McwRLBZ0VJvXZsCEsa//aa2GZ+7POijuRSHqIa3XjG4F/AM8B\n/zCzEU0JINLSSkvDGV+tW8P8+SoqIqnWmDmWZe4+cfsdM/tuCvOINJtNm+Dmm8PXXw89BOeeG3ci\nkezUmI6li5n1MrMjzKwfYSFKkbQ2dWroUrZtC12KiopI82lMxzIGuAk4GXgXeD2liURSaPNmuO02\nmDgRxo6FgQPjTiSS/RpUWMzsauBSwt7zANsndk6Jjh+W+mgiDVe5opLiUcVUbawiv00+JSNKWPX3\nAoYMgdNPD13KgQfGnVIkNzS0Y1kK9HX3rckPaCkXiVvlikr6D+tPRfcKOBiogRcvnE5eZSnjHi7g\nW9+KO6FIbtEilJLxLhl+CU8e8CTkJRysgf/8+GKeGfNEbLlEMlFcpxuLpJWqjVX/XFQA8uDjL6pj\nySOS61RYJOPl1eRDTdLBGmjfpn0seURynQqLZKwvvghnfP2ttIR20wp3FJcaKJxXSMmIkl0+X0Sa\nhwqLZKRZs6BnT1i2DBYtLOCvj5Zy8aaLObPyTC7edDGlo0sp6FwQd0yRnKTJe8koW7ZASUm4cv6+\n++C73wVr0jSjiCRKxeR9Yy6QFInFnDlw2WVQUBBWIj700LgTicjO6KswSXs1NTByJAwYALfcErYN\nVlERSV+xFRYzG2BmS8xsqZndWs+Y+81smZmVm9kJ0bEOZjbVzBaa2QIzG96yyaUlzZsHp5wS5lTK\ny+GSS/TVl0i6i6WwmFkrYDRwHtAVuMjMjkkaMxAodPcjgaGENcoAtgEj3L0rcCpwTfJzJfNt3Qq/\n+AWccw5cd13YNri9zh4WyQhxzbH0Iiy/vxLAzMYDg4ElCWMGA48DuPsMM2trZu3cfQ2wJjq+2cwW\nA/lJz5UM9u67YS7lkEPCvErHjnEnEpE9EddXYfnAqoT7q6NjuxpTlTzGzDoDJwAzUp5QWty2bXDn\nnXDmmXDllWHfFBUVkcyTsWeFmdn+wLPAde6+ub5xI0eO/PJ2UVERRUVFzZ5N9tzixaFLOeAAmD0b\nOnWKO5FIbigrK6OsrCylrxnLdSxm1hsY6e4Dovu3Ae7udyWMGQO87u4TovtLgH7uvtbMWgMvAi+7\n+327eB9dx5LmamvhnnvgrrvC9SlDh2pyXiROmXwdyyzCTpSdgA+AC4GLksZMAq4BJkSFaL27r40e\n+z2waFdFRdLf0qWhS9l7b5g5M1yfIiKZL5Y5FnevBYYBU4CFwHh3X2xmQ83simjMZKDSzJYDDwJX\nAZhZH+Bi4Cwzm2tmc7QnTGapq4N774XTToPvfQ9ee01FRSSbaEkXaVHLl8Pll4M7PPIIdOkSdyIR\nSaT9WCRj1NXB6NHQuzd8+9tQVqaiIpKtMvasMMkclZWhS/niC5g2DY4+Ou5EItKc1LFIs3GHMWPg\n5JNh0CB4+20VFZFcoI5FmsXKlfCjH8GGDfDmm/CNb8SdSERaijoWSSl3ePhhOOkkOOsseOcdFRWR\nXKOORVJm9erQpXz0EUydCscfH3ciEYmDOhZpMnd49FE48UTo0wemT1dREcll6likSaqr4YorQrdS\nWgonnBB3IhGJmzoWaRR3eOKJUEh69gxLsqioiAioY5FGWLMmLGtfURGWtu/ZM+5EIpJO1LFIg7nD\n+PHQvTt07RqWt1dREZFk6likQT78EK6+GhYtgj//GXr1ijuRiKQrdSyyW88+C926QWFh2CpYRUVE\ndkUdi9Rr3ToYNgzmzoXnn4dTT407kYhkAnUsslMvvBC6lPx8KC9XURGRhlPHIv/kk09g+PBwkePT\nT0PfvnEnEpFMo45FvvTii+GK+YMPhnnzVFREpHHUsQjr18P114dViJ98EoqK4k4kIplMHUuOe/nl\n0KV89aswf76Kiog0nTqWHLVhA9x4I7z6alhA8uyz404kItlCHUsOKi0NZ3zttVfoUlRURCSV1LHk\nkE2b4OabYfJkeOghOO+8uBOJSDZSx5Ijpk4NXcrWrbBggYqKiDQfdSxZbvNmuO22cMHj2LEwaFDc\niUQk26mwZJHKFZUUjyqmamMV+W3y+WafEn56ewF9+4Yu5cAD404oIrnA3D3uDM3GzDybP1+iyhWV\n9B/Wn4ruFZAH1MBeEwv5v+tKueLHBXHHE5EMYWa4uzXlNTTHkiWKRxXvKCoAeVA7uII3FxTHmktE\nco8KS5ZYtb5qR1HZLg+qN1bHkkdEcldshcXMBpjZEjNbama31jPmfjNbZmblZnZiwvFxZrbWzOa3\nXOL0NWMGzH0rH2qSHqiB9m3ax5JJRHJXLIXFzFoBo4HzgK7ARWZ2TNKYgUChux8JDAV+l/DwI9Fz\nc9oXX4Qzvi64AO64sYTCeYU7iksNFM4rpGRESawZRST3xNWx9AKWuftKd98KjAcGJ40ZDDwO4O4z\ngLZm1i66/zbwaQvmTTvb95tfujRcPX/tsAJKR5dy8aaLObPyTC7edDGlo0sp6KyJexFpWXGdbpwP\nrEq4v5pQbHY1pio6trZ5o6W3LVugpCRck3LvvXDRRWDR+RsFnQt44v4n4g0oIjlP17FkkLlz4dJL\noXPnsF/KYYfFnUhE5F/FVViqgMMT7neIjiWP6bibMbs1cuTIL28XFRVRlIHrwm/dCr/8JTzwANx9\nN3z/+zu6FBGRpigrK6OsrCylrxnLBZJmthfwHnA28AEwE7jI3RcnjBkEXOPu55tZb+Bed++d8Hhn\n4M/ufvwu3ifjL5CcPz90KYcdFhaOzM+PO5GIZLOMvUDS3WuBYcAUYCEw3t0Xm9lQM7siGjMZqDSz\n5cCDwNXbn29mTwHvAEeZ2d/NbEiLf4hmtm0b3HFHWNL+2mvhpZdUVEQkM2hJlzS0cGHoUg46CB5+\nGA4/fPfPERFJhYztWGTntm2Du+4K2wNfcQX85S8qKiKSeXRWWJpYsgQuuyzsPT97NnTqFHciEZHG\nUccSs9pa+M1voG/f8PVXaamKiohkNnUsMVq6FIYMga98BWbOhCOOiDuRiEjTqWOJQV0d3HcfnHYa\nXHhh2DZYRUVEsoU6lhZWURG6lLo6mD4dunSJO5GISGqpY2khdXXhyvlTToFvfxveeENFRUSykzqW\nFrBiBVx+OfzjHzBtGhx9dNyJRESajzqWZuQODz4IJ58MAwfC22+rqIhI9lPH0kz+/nf44Q9hw4bw\ntdc3vhF3IhGRlqGOJcXcYdy4sAnXWWfBO++oqIhIblHHkkKrV8OPfwwffhhOIT6+3nWXRUSylzqW\nFHCHxx6DHj3CtSnTp6uoiEjuUsfSRNXVMHQorFoFU6bACSfEnUhEJF7qWBrJHZ58Ek48MXQqM2eq\nqIiIgDqWRlm7Fq68EpYvh8mTw0S9iIgE6lj2gDtMmADdu4czvWbPVlEREUmmjqWBPvoIrr467O44\naRL06hV3IhGR9KSOpQGeew66dQsrEM+Zo6IiIrIr6lh24eOPYdiwUEz+9Cc49dS4E4mIpD91LPWY\nODFci9K+PZSXq6iIiDSUOpYkn3wC110XLnJ8+umwZbCIiDScOpYEL74Y5lIOOih0KSoqIiJ7Th0L\nsH493HBDWIX4iSegqCjuRCIimSvnO5ZXXglzKfvtB/Pnq6iIiDRVznYsGzfCjTdCaSk8+iicfXbc\niUREskNOdiyvvhq6lFatQpeioiIikjo51bFs2gS33AIvvQQPPQTnnRd3IhGR7BNbx2JmA8xsiZkt\nNbNb6xlzv5ktM7NyMzthT56b7PXXwxlfNTWwYIGKiohIc4mlsJhZK2A0cB7QFbjIzI5JGjMQKHT3\nI4GhwJiGPjfRZ5/BtdfC978PDzwQtg1u27ZZPlajlJWVxR2hQZQztZQztZQzvcTVsfQClrn7Snff\nCowHBieNGQw8DuDuM4C2Ztaugc/90qHfuISq6koWLIBBg5rjozRNpvyHppyppZyppZzpJa7Ckg+s\nSri/OjrWkDENee6XNl/yJPO39Gf9hsomBRYRkYbJpLPCrFHPyoOK7hUUjypOcRwREdkZc/eWf1Oz\n3sBIdx8Q3b8NcHe/K2HMGOB1d58Q3V8C9AMKdvfchNdo+Q8nIpLh3L1xf8hH4jrdeBbQxcw6AR8A\nFwIXJY2ZBFwDTIgK0Xp3X2tm6xrwXKDpPxwREdlzsRQWd681s2HAFMLXcePcfbGZDQ0P+1h3n2xm\ng8xsOfAZMGRXz43jc4iIyL+K5aswERHJXpk0ed9gjbmAsiWYWQczm2pmC81sgZkNj44faGZTzOw9\nM/uLmcXHWmlpAAAGVElEQVR+pY2ZtTKzOWY2KV0zAphZWzN7xswWRz/XU9Itq5n9JMo238yeNLO8\ndMhoZuPMbK2ZzU84Vm+u6HMsi37W58ac89dRjnIze87M2qRjzoTHbjSzOjM7KF1zmtm1UZYFZnZn\nk3K6e1b9QyiWy4FOwFeAcuCYuHNF2Q4FTohu7w+8BxwD3AXcEh2/FbgzDbLeADwBTIrup13GKMuj\nwJDodmugbTpljf47fB/Ii+5PAC5Nh4xAX+AEYH7CsZ3mAr4BzI1+xp2j3zGLMec5QKvo9p3Ar9Ix\nZ3S8A/AKUAkcFB07Np1yAkWE6YXW0f1DmpIzGzuWPbqAsiW5+xp3L49ubwYWE/6jGww8Fg17DPj3\neBIGZtYBGAQ8nHA4rTICRH+lnu7ujwC4+zZ330B6Zd0I1ABfNbPWwL5AFWmQ0d3fBj5NOlxfrguA\n8dHPeAWwjPC7FktOd3/V3euiu9MJv0dplzNyD3Bz0rHBpFfOqwh/RGyLxqxrSs5sLCx7dAFlXMys\nM+GvhulAO3dfC6H4AF+PLxmw4xchcQIu3TJCOPV8nZk9En1tN9bM9iONsrr7p8BvgL8TCsoGd381\nnTIm+Xo9uZJ/r6pIn9+ry4HJ0e20ymlmFwCr3H1B0kNplRM4CjjDzKab2etm1jM63qic2VhY0p6Z\n7Q88C1wXdS7JZ1DEdkaFmZ0PrI06q12drp0OZ320BnoAD7h7D8LZg7eRXj/PIwhfK3YC2hM6l4t3\nkikdfp47k665ADCznwJb3f2PcWdJZmb7ArcDP4s7SwO0Bg50997ALcAzTXmxbCwsVcDhCfc7RMfS\nQvR1yLPAH9x9YnR4bbQOGmZ2KPBhXPmAPsAFZvY+8EfgLDP7A7AmjTJut5rw1+Ds6P5zhEKTTj/P\nk4Bp7v6Ju9cCzwOnpVnGRPXlqgI6JoyL/ffKzC4jfGX7vYTD6ZSzkDAvMc/MKqMsc8zs66Tf/6dW\nAX8CcPdZQK2ZHUwjc2ZjYfny4kszyyNcQDkp5kyJfg8scvf7Eo5NAi6Lbl8KTEx+Uktx99vd/XB3\nP4Lws5vq7t8H/kyaZNwu+spmlZkdFR06G1hIGv08CSdo9DazfczMCBkXkT4ZjX/uTOvLNQm4MDqj\nrQDoAsxsqZAk5TSzAYSvay9w9y0J49Imp7u/6+6HuvsR7l5A+EPoRHf/MMr53XTIGXkBOAsg+n3K\nc/ePG52zJc5CaOl/gAGEX+hlwG1x50nI1QeoJZypNheYE2U9CHg1yjwF+FrcWaO8/dhxVli6ZuxO\n+GOinPAXV9t0y0r4H+BCYD5hQvwr6ZAReAqoBrYQ5oCGAAfWlwv4CeGsoMXAuTHnXAasjH6H5gD/\nl445kx5/n+issHTLSfgq7A/AAmA20K8pOXWBpIiIpFQ2fhUmIiIxUmEREZGUUmEREZGUUmEREZGU\nUmEREZGUUmEREZGUUmEREZGUUmEREZGUUmERqYeZHWlmL5vZFWZWamYPm9nQaCXlp2PK1NrMnorj\nvUUaKpY970UyxImEtai2mtl3gF+7+1IzW+/uE+II5GG/jO/tdqBIjNSxiNRvqYfN4gCOcvel0e33\n4gokkgnUsYjUw6PdPs2sC2ERvu37q5xhZoXu/pyZ9QX+Eygj/KFWBLwM/Fv0Go9HzxtA2OZ1C/Cc\nR5tpbdeQ14ne+5uEBQTXJIw3oKu7/yLlPwSRRlDHIrJ7vdixVPihwMfA3kljqtz9T0A34C3gRcIO\noZjZ4cBP3f0eYAmw/y7eq97XSXjvvKTxzxOWMxdJCyosIrvXC5gB4O7vEPYBnxTdfxsodPdZ0Y6B\n6zzsCnoKYflxCPvGL4t256xz94rkN2jI6yS+d9L4NsDnzfXhRfaUCovI7p1M1LGY2QGE7XqPi+7v\nA/wjGncSYW8YgPOBN8yse/T4RHd/CXjLzA41s86Jb9CA1+mW+N5J4wcBk83stJR9YpEmUGERqYeZ\ndTezmwhfS33HzP6NMC+5hh1fhR0HvBndPh54Pbq9AuhP2NzraaCbmQ0i7MrZirCZVqLdvc6CpPdO\nHL+ZsH1sdVM+r0iqaKMvkRiYWT93fyPuHCLNQR2LSDySJ/9FsoY6FhERSSl1LCIiklIqLCIiklIq\nLCIiklIqLCIiklIqLCIiklIqLCIiklIqLCIiklIqLCIiklL/H8qUwV6V+bCZAAAAAElFTkSuQmCC\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x9adf8d0>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Slope is 3.78e-04 1/min or 6.299e-06 1/s \n", + "Sedimentation factor is 1.899e-13 s\n" + ] + } + ], + "source": [ + "from numpy import arange,array,ones,linalg,log, exp, size\n", + "from matplotlib.pylab import plot,show,xlabel,ylabel\n", + "import math\n", + "%matplotlib inline\n", + "\n", + "#Variable Declaration\n", + "t = array([0.0,30.0,60.0,90.0,120.0,150.0]) #Time, min\n", + "xb = array([6.00,6.07,6.14,6.21,6.28,6.35]) #Location of boundary layer, cm\n", + "rpm = 55000. #RPM of centrifuge \n", + "\n", + "#Calculations\n", + "nx = xb/xb[0]\n", + "lnx = log(nx)\n", + "A = array([ t, ones(size(t))])\n", + "# linearly generated sequence\n", + "[slope, intercept] = linalg.lstsq(A.T,lnx)[0] # obtaining the parameters\n", + "# Use w[0] and w[1] for your calculations and give good structure to this ipython notebook\n", + "# plotting the line\n", + "line = slope*t+intercept # regression line\n", + "\n", + "#Results\n", + "plot(t,line,'-',t,lnx,'o')\n", + "xlabel('$ Time, min $')\n", + "ylabel('$ \\log(x_b/x_{b0}) $')\n", + "show()\n", + "sbar = (slope/60)/(rpm*2*pi/60)**2\n", + "print 'Slope is %6.2e 1/min or %4.3e 1/s '%(slope, slope/60)\n", + "print 'Sedimentation factor is %4.3e s'%(sbar)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex17.11:pg-449" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Molar conductivity of MgCl2 on infinite dilution is 0.0258 S.m2/mol\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "LMg = 0.0106 #Ionic conductance for Mg, S.m2/mol\n", + "LCl = 0.0076 #Ionic conductance for Cl, S.m2/mol\n", + "nMg, nCl = 1, 2 #Coefficients of Mg and Cl \n", + "\n", + "#Calculations\n", + "LMgCl2 = nMg*LMg + nCl*LCl\n", + "\n", + "#Results\n", + "print 'Molar conductivity of MgCl2 on infinite dilution is %5.4f S.m2/mol'%(LMgCl2)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_jHUJFvU.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_jHUJFvU.ipynb new file mode 100644 index 00000000..382b0ea4 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_jHUJFvU.ipynb @@ -0,0 +1,508 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 14: Ensemble and Molecular Partition Function" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.1:pg-344" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Difference in energy levels is 3.10e-38 J or 1.56e-15 1/cm\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "l = 0.01 #Box length, m \n", + "n1,n2 = 2,1 #Energy levels states\n", + "m = 5.31e-26 #mass of oxygen molecule, kg\n", + "\n", + "#Calculations \n", + "dE = (n1+n2)*h**2/(8*m*l**2)\n", + "dEcm = dE/(h*c*1e2)\n", + "#Results\n", + "print 'Difference in energy levels is %3.2e J or %3.2e 1/cm'%(dE,dEcm)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.2:pg-345" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Thermal wave length is 1.60e-11 m and\n", + "Translational partition function is 2.44e+29\n" + ] + } + ], + "source": [ + "from math import pi, sqrt\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "v = 1.0 #Volume, L\n", + "T = 298.0 #Temeprature of Ar, K\n", + "m = 6.63e-26 #Mass of Argon molecule, kg \n", + "\n", + "#Calculations \n", + "GAMA = h/sqrt(2*pi*m*k*T)\n", + "v = v*1e-3\n", + "qT3D = v/GAMA**3\n", + "\n", + "#Results\n", + "print 'Thermal wave length is %3.2e m and\\nTranslational partition function is %3.2e'%(GAMA,qT3D)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.4:pg-350" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Spectrum will be observed at 494 K\n" + ] + } + ], + "source": [ + "#Variable Declarations\n", + "import math\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "\n", + "J = 4 #Rotational energy level\n", + "B = 8.46 #Spectrum, 1/cm\n", + "\n", + "#Calculations \n", + "T = (2*J+1)**2*h*c*100*B/(2*k)\n", + "#Results\n", + "print 'Spectrum will be observed at %4.0f K'%(T)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.5:pg-352" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rotation partition function of H2 at 1000 is 5.729\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "\n", + "B = 60.589 #Spectrum for H2, 1/cm\n", + "T = 1000 #Temperture of Hydrogen, K\n", + "#Calculations \n", + "qR = k*T/(2*h*c*100*B)\n", + "qRs = 0.0\n", + "#for J in range(101):\n", + "# print J\n", + "# if (J%2 == 0):\n", + "# qRs = qRs + (2*J+1)*exp(-h*c*100*B*J*(J+1)/(k*T)\n", + "# else:\n", + "# qRs = qRs + 3*(2*J+1)*exp(-h*c*100*B*J*(J+1)/(k*T))\n", + "#print qRs/4\n", + "\n", + "#Results\n", + "print 'Rotation partition function of H2 at %4.0f is %4.3f'%(T,qR)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.6:pg-353" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rotation partition function of H2 at 100 K is 928.121\n" + ] + } + ], + "source": [ + "#Variable Declarations\n", + "import math\n", + "\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "B = 0.0374 #Spectrum for H2, 1/cm\n", + "T = 100.0 #Temperture of Hydrogen, K\n", + "sigma = 2.\n", + "\n", + "#Calculations\n", + "ThetaR = h*c*100*B/k\n", + "qR = T/(sigma*ThetaR)\n", + "\n", + "#Results\n", + "print 'Rotation partition function of H2 at %4.0f K is %4.3f'%(T,qR)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.7:pg-354" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rotation partition function for OCS, ONCI, CH2O at 298 K are 140, 16926, and 712 respectively\n" + ] + } + ], + "source": [ + "from math import pi, sqrt\n", + "\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "Ba = 1.48 #Spectrum for OCS, 1/cm\n", + "Bb = [2.84,0.191,0.179] #Spectrum for ONCI, 1/cm\n", + "Bc = [9.40,1.29,1.13] #Spectrum for CH2O, 1/cm\n", + "T = 298.0 #Temperture of Hydrogen, K\n", + "sigmab = 1\n", + "sigmac = 2\n", + "\n", + "#Calculations\n", + "qRa = k*T/(h*c*100*Ba)\n", + "qRb = (sqrt(pi)/sigmab)*(k*T/(h*c*100))**(3./2)*sqrt(1/Bb[0])*sqrt(1/Bb[1])*sqrt(1/Bb[2])\n", + "qRc = (sqrt(pi)/sigmac)*(k*T/(h*c*100))**(3./2)*sqrt(1/Bc[0])*sqrt(1/Bc[1])*sqrt(1/Bc[2])\n", + "\n", + "#Results\n", + "print 'Rotation partition function for OCS, ONCI, CH2O at %4.0f K are %4.0f, %4.0f, and %4.0f respectively'%(T,qRa,qRb,qRc)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.8:pg-356" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Vibrational partition function for I2 at 298 and 1000 are 1.58 K and 3.86 respectively\n" + ] + } + ], + "source": [ + "from math import pi, exp\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "\n", + "Ba = 1.48 #Frequency for OCS, 1/cm\n", + "Bb = [2.84,0.191,0.179] #Frequency for ONCI, 1/cm\n", + "Bc = [9.40,1.29,1.13] #Frequency for CH2O, 1/cm\n", + "T298 = 298.0 #Temperture of Hydrogen, K\n", + "T1000 = 1000 #Temperture of Hydrogen, K\n", + "nubar = 208\n", + "\n", + "#Calculations\n", + "qv298 = 1./(1.-exp(-h*c*100*nubar/(k*T298)))\n", + "qv1000 = 1./(1.-exp(-h*c*100*nubar/(k*T1000)))\n", + "\n", + "#Results\n", + "print 'Vibrational partition function for I2 at %4d and %4d are %4.2f K and %4.2f respectively'%(T298, T1000,qv298, qv1000)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.9:pg-357" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "At 450 1/cm the q = 1.128\n", + "At 945 1/cm the q = 1.010\n", + "At 1100 1/cm the q = 1.005\n", + "Total Vibrational partition function for OClO at 298.0 K is 1.146 respectively\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "\n", + "T = 298 #Temeprature, K\n", + "nubar = [450, 945, 1100] #Vibrational mode frequencies for OClO, 1/cm\n", + "\n", + "#Calculations\n", + "Qv = 1.\n", + "for i in nubar:\n", + " qv = 1./(1.-exp(-h*c*100*i/(k*T)))\n", + " print 'At %4.0f 1/cm the q = %4.3f'%(i,qv)\n", + " Qv = Qv*qv\n", + "#Results\n", + "print 'Total Vibrational partition function for OClO at %4.1f K is %4.3f'%(T, Qv)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.10:pg-359" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Vibrational partition function for F2 at 298.0 K is 10.508\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "T = 298 #Temeprature, K\n", + "nubar = 917 #Vibrational mode frequencies for F2, 1/cm\n", + "\n", + "#Calculations\n", + "ThetaV = h*c*100*nubar/k\n", + "Th = 10*ThetaV\n", + "qv = 1/(1.-exp(-ThetaV/Th))\n", + "\n", + "#Results\n", + "print 'Vibrational partition function for F2 at %4.1f K is %4.3f'%(T, qv)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.11:pg-360" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "At 1388 1/cm the q = 1.157\n", + "At 667 1/cm the q = 1.619\n", + "At 667 1/cm the q = 1.619\n", + "At 2349 1/cm the q = 1.035\n", + "Total Vibrational partition function for OClO at 1000.0 K is 3.139\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "T = 1000 #Temeprature, K\n", + "nubar = [1388, 667.4,667.4,2349] #Vibrational mode frequencies for CO2, 1/cm\n", + "\n", + "#Calculations\n", + "Qv = 1.\n", + "for i in nubar:\n", + " qv = 1./(1.-exp(-h*c*100*i/(k*T)))\n", + " print 'At %4.0f 1/cm the q = %4.3f'%(i,qv)\n", + " Qv = Qv*qv\n", + "#Results\n", + "print 'Total Vibrational partition function for OClO at %4.1f K is %4.3f'%(T, Qv)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex14.12:pg-363" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Electronic partition function for F2 at 298.0 K is 9.45\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "#Variable Declarations\n", + "h = 6.626e-34 #Planks constant, J.s\n", + "k = 1.38e-23 #Boltzman constant, J/K\n", + "c = 3.0e8 #speed of light, m/s\n", + "T = 298. #Temeprature, K\n", + "n = [0,1,2,3,4,5,6,7,8] #Energy levels\n", + "E0 = [0,137.38,323.46,552.96,2112.28,2153.21,2220.11,2311.36,2424.78] #Energies, 1/cm\n", + "g0 = [4,6,8,10,2,4,6,8,10]\n", + "\n", + "#Calculations\n", + "qE = 0.0\n", + "for i in range(9):\n", + " a =g0[i]*exp(-h*c*100*E0[i]/(k*T))\n", + " qE = qE + a\n", + "\n", + "#Results\n", + "print 'Electronic partition function for F2 at %4.1f K is %4.2f'%(T, qE)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_rQOLXRQ.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_rQOLXRQ.ipynb new file mode 100644 index 00000000..2b5ef632 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_rQOLXRQ.ipynb @@ -0,0 +1,71 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 10: Electrolyte Solutions" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex10.2:Pg-252" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Ionic streangth for NaCl solution is 0.050 and for Na2SO4 solution is 0.150, mol/kg\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "M = 0.050 #Molarity for NaCl and Na2SO4 solution, mol/kg\n", + "npa, zpa = 1, 1\n", + "nma, zma = 1, 1\n", + "npb, zpb = 2, 1\n", + "nmb, zmb = 1, 2\n", + "\n", + "#Calculations\n", + "Ia = M*(npa*zpa**2 + nma*zma**2)/2\n", + "Ib = M*(npb*zpb**2 + nmb*zmb**2)/2\n", + "\n", + "#Results\n", + "print 'Ionic streangth for NaCl solution is %4.3f and for Na2SO4 solution is %4.3f, mol/kg'%(Ia,Ib)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_vVWK1Pz.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_vVWK1Pz.ipynb new file mode 100644 index 00000000..504b170b --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_vVWK1Pz.ipynb @@ -0,0 +1,468 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 09: Ideal and Real Solutions" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.2:pg-212" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Gibbs energy change of mixing is -1.371e+04 J\n", + "Gibbs energy change of mixing is < 0, hence the mixing is spontaneous\n", + "Entropy change of mixing is 45.99 J/K\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#Variable Declaration\n", + "nb = 5.00 #Number of moles of Benzene, mol\n", + "nt = 3.25 #Number of moles of Toluene, mol\n", + "T = 298.15 #Temperature, K\n", + "P = 1.0 #Pressure, bar\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "\n", + "#Calculations\n", + "n = nb + nt\n", + "xb = nb/n\n", + "xt = 1. - xb\n", + "dGmix = n*R*T*(xb*log(xb)+xt*log(xt))\n", + "dSmix = -n*R*(xb*log(xb)+xt*log(xt))\n", + "\n", + "#Results\n", + "print 'Gibbs energy change of mixing is %4.3e J'%dGmix\n", + "print 'Gibbs energy change of mixing is < 0, hence the mixing is spontaneous'\n", + "print 'Entropy change of mixing is %4.2f J/K'%dSmix" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.3:pg-214" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total pressure of the vapor is 69.8 torr\n", + "Benzene fraction in vapor is 0.837 \n", + "Toulene fraction in vapor is 0.163 \n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "nb = 5.00 #Number of moles of Benzene, mol\n", + "nt = 3.25 #Number of moles of Toluene, mol\n", + "T = 298.15 #Temperature, K\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "P0b = 96.4 #Vapor pressure of Benzene, torr\n", + "P0t = 28.9 #Vapor pressure of Toluene, torr\n", + "\n", + "#Calculations\n", + "n = nb + nt\n", + "xb = nb/n\n", + "xt = 1. - xb\n", + "P = xb*P0b + xt*P0t\n", + "y = (P0b*P - P0t*P0b)/(P*(P0b-P0t))\n", + "yt = 1.-y\n", + "\n", + "#Results\n", + "print 'Total pressure of the vapor is %4.1f torr'%P\n", + "print 'Benzene fraction in vapor is %4.3f '%y\n", + "print 'Toulene fraction in vapor is %4.3f '%yt" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.4:pg-215" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Mass Balance: 6.75*x + 1.5*y - 5.0\n", + "Pressure and x: P - 67.5*x - 28.9\n", + "Pressure and y: y - 0.0148148148148148*(96.4*P - 2785.96)/P\n", + "Pressure is 66.8 torr\n", + "Mole fraction of benzene in liquid phase 0.561\n", + "Mole fraction of benzene in vapor phase 0.810\n" + ] + } + ], + "source": [ + "from sympy import symbols, solve\n", + "import math\n", + "#Variable Declaration\n", + "nb = 5.00 #Number of moles of Benzene, mol\n", + "nt = 3.25 #Number of moles of Toluene, mol\n", + "T = 298.15 #Temperature, K\n", + "R = 8.314 #Ideal Gas Constant, J/(mol.K)\n", + "P0b = 96.4 #Vapor pressure of Benzene, torr\n", + "P0t = 28.9 #Vapor pressure of Toluene, torr\n", + "nv = 1.5 #moles vaporized, mol\n", + "\n", + "#Calculations\n", + "n = nb + nt\n", + "nl = n - nv\n", + "zb = nb/n\n", + "\n", + "x,y, P = symbols('x y P')\n", + "e1 = nv*(y-zb)-nl*(zb-x)\n", + "print 'Mass Balance:', e1\n", + "e2 = P - (x*P0b + (1-x)*P0t)\n", + "print 'Pressure and x:',e2\n", + "e3 = y - (P0b*P - P0t*P0b)/(P*(P0b-P0t))\n", + "print 'Pressure and y:', e3\n", + "equations = [e1,e2,e3]\n", + "sol = solve(equations)\n", + "\n", + "#Results\n", + "for i in sol:\n", + " if ((i[x] > 0.0 and i[x] <1.0) and (i[P] > 0.0) and (i[y]>zb and i[y]<1.0)):\n", + " print 'Pressure is %4.1f torr' %i[P]\n", + " print 'Mole fraction of benzene in liquid phase %4.3f' %i[x]\n", + " print 'Mole fraction of benzene in vapor phase %4.3f' %i[y]\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.6:pg-222" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Freezing point depression -3.94 K\n", + "Molecualr wt of solute 274.2 g/mol\n", + "Vapor pressure of solvent is reduced by a factor of 0.980\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "m = 4.50 #Mass of substance dissolved, g\n", + "ms = 125.0 #Mass of slovent (CCl4), g\n", + "TbE = 0.65 #Boiling point elevation, °C\n", + "Kf, Kb = 30.0, 4.95 #Constants for freezing point elevation \n", + " # and boiling point depression for CCl4, K kg/mol\n", + "Msolvent = 153.8 #Molecualr wt of solvent, g/mol\n", + "#Calculations\n", + "DTf = -Kf*TbE/Kb\n", + "Msolute = Kb*m/(ms*1e-3*TbE)\n", + "nsolute = m/Msolute\n", + "nsolvent = ms/Msolvent \n", + "x = 1.0 - nsolute/(nsolute + nsolvent)\n", + "\n", + "#Results\n", + "print 'Freezing point depression %5.2f K'%DTf\n", + "print 'Molecualr wt of solute %4.1f g/mol'%Msolute\n", + "print 'Vapor pressure of solvent is reduced by a factor of %4.3f'%x" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.7:pg-223" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Osmotic pressure 12.23 atm\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "csolute = 0.500 #Concentration of solute, g/L\n", + "R = 8.206e-2 #Gas constant L.atm/(mol.K)\n", + "T = 298.15 #Temperature of the solution, K\n", + "\n", + "#Calculations\n", + "pii = csolute*R*T\n", + "\n", + "#Results\n", + "print 'Osmotic pressure %4.2f atm'%pii\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.8:pg-230" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Activity of CS2 0.6994 atm\n", + "Activity coefficinet of CS2 1.9971 atm\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "xCS2 = 0.3502 #Mol fraction of CS2, g/L\n", + "pCS2 = 358.3 #Partial pressure of CS2, torr\n", + "p0CS2 = 512.3 #Total pressure, torr\n", + "\n", + "#Calculations\n", + "alpha = pCS2/p0CS2\n", + "gama = alpha/xCS2\n", + "\n", + "#Results\n", + "print 'Activity of CS2 %5.4f atm'%alpha\n", + "print 'Activity coefficinet of CS2 %5.4f atm'%gama" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.9:pg-230" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Activity of CS2 0.1783 atm\n", + "Activity coefficinet of CS2 0.5090 atm\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "xCS2 = 0.3502 #Mol fraction of CS2, g/L\n", + "pCS2 = 358.3 #Partial pressure of CS2, torr\n", + "kHCS2 = 2010. #Total pressure, torr\n", + "\n", + "#Calculations\n", + "alpha = pCS2/kHCS2\n", + "gama = alpha/xCS2\n", + "\n", + "#Results\n", + "print 'Activity of CS2 %5.4f atm'%alpha\n", + "print 'Activity coefficinet of CS2 %5.4f atm'%gama" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.10:pg-231" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Henrys constant = 143.38 torr\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "rho = 789.9 #Density of acetone, g/L\n", + "n = 1.0 #moles of acetone, mol\n", + "M = 58.08 #Molecular wt of acetone, g/mol\n", + "kHacetone = 1950 #Henrys law constant, torr\n", + "#Calculations\n", + "H = n*M*kHacetone/rho\n", + "\n", + "#Results\n", + "print 'Henrys constant = %5.2f torr'%H" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.11:pg-232" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Activity coefficient = 0.969\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "m = 0.5 #Mass of water, kg\n", + "ms = 24.0 #Mass of solute, g\n", + "Ms = 241.0 #Molecular wt of solute, g/mol\n", + "Tfd = 0.359 #Freezinf point depression, °C or K\n", + "kf = 1.86 #Constants for freezing point depression for water, K kg/mol\n", + "\n", + "#Calculations\n", + "msolute = ms/(Ms*m)\n", + "gama = Tfd/(kf*msolute)\n", + "\n", + "#Results\n", + "print 'Activity coefficient = %4.3f'%gama" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex9.12:pg-233" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of moles of nitrogen in blood at 1 and 50 bar are 2.46e-03,0.123 mol\n", + "Volume of nitrogen released from blood at reduced pressure 2.981 L\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "import math\n", + "m = 70.0 #Mass of human body, kg\n", + "V = 5.00 #Volume of blood, L\n", + "HN2 = 9.04e4 #Henry law constant for N2 solubility in blood, bar\n", + "T = 298.0 #Temperature, K\n", + "rho = 1.00 #density of blood, kg/L\n", + "Mw = 18.02 #Molecualr wt of water, g/mol\n", + "X = 80 #Percent of N2 at sea level\n", + "p1, p2 = 1.0, 50.0 #Pressures, bar\n", + "R = 8.314e-2 #Ideal Gas constant, L.bar/(mol.K)\n", + "#Calculations\n", + "nN21 = (V*rho*1e3/Mw)*(p1*X/100)/HN2\n", + "nN22 = (V*rho*1e3/Mw)*(p2*X/100)/HN2\n", + "V = (nN22-nN21)*R*T/p1\n", + "#Results\n", + "print 'Number of moles of nitrogen in blood at 1 and 50 bar are %3.2e,%3.3f mol'%(nN21,nN22)\n", + "print 'Volume of nitrogen released from blood at reduced pressure %4.3f L'%V" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_ys4AGAJ.ipynb b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_ys4AGAJ.ipynb new file mode 100644 index 00000000..430c21a8 --- /dev/null +++ b/Thermodynamics,_Statistical_Thermodynamics_and_Kinetics_by_T._Engel_and_P._Reid/Chapte_ys4AGAJ.ipynb @@ -0,0 +1,484 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 12: Probability" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.1:pg-295" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Probability of picking up any one ball is 1.0\n" + ] + } + ], + "source": [ + "import math\n", + "#Varible declaration\n", + "n = range(1,51,1)\n", + "Prob = 0\n", + "for x in n:\n", + " Prob = 1./len(n) + Prob\n", + "\n", + "#Results\n", + "print 'Probability of picking up any one ball is %3.1f'%Prob" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.2:pg-296" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Probability of one (heart)card picked from a std. stack of 52 cards is 1/4\n" + ] + } + ], + "source": [ + "from fractions import Fraction\n", + "import math\n", + "#Variable Declaration\n", + "n = 52 #Total cards\n", + "nheart = 13 #Number of cards with hearts\n", + "\n", + "#Calculations\n", + "Pe = Fraction(nheart,n)\n", + "\n", + "#Results\n", + "print 'Probability of one (heart)card picked from a std. stack of %d cards is'%n,Pe" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.3:pg-297" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total number of Five card arrangment from a deck of 52 cards is 311875200\n" + ] + } + ], + "source": [ + "#Variable Declaration\n", + "n = 52 #Total cards\n", + "import math\n", + "#Calculations\n", + "TotalM = n*(n-1)*(n-2)*(n-3)*(n-4)\n", + "#Results\n", + "print 'Total number of Five card arrangment from a deck of 52 cards is %d'%TotalM" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.4:pg-297" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Possible spin states for excited state are 4\n" + ] + } + ], + "source": [ + "import math\n", + "#Variable Declaration\n", + "n1 = 2 #Two spin states for 1st electron in orbit 1\n", + "n2 = 2 #Two spin states for 2nd electron in orbit 2\n", + "\n", + "#Calculation\n", + "M = n1*n1\n", + "\n", + "#Results\n", + "print 'Possible spin states for excited state are %2d'%M" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.5:pg-298" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum Possible permutations for 5 player to play are 95040\n" + ] + } + ], + "source": [ + "from math import factorial\n", + "\n", + "#Variable Declaration\n", + "n = 12 #Total Number of players \n", + "j = 5 #Number player those can play match\n", + "\n", + "#Calculation\n", + "P = factorial(n)/factorial(n-j)\n", + "\n", + "#Results\n", + "print 'Maximum Possible permutations for 5 player to play are %8d'%P" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.6:pg-299" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum Possible 5-card combinations are 2598960\n" + ] + } + ], + "source": [ + "from math import factorial\n", + "\n", + "#Variable Declaration\n", + "n = 52 #Number of cards in std . pack\n", + "j = 5 #Number of cards in subset\n", + "\n", + "#Calculation\n", + "C = factorial(n)/(factorial(j)*factorial(n-j))\n", + "\n", + "#Results\n", + "print 'Maximum Possible 5-card combinations are %8d'%C" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.7:pg-300" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total number of quantum states are 15\n" + ] + } + ], + "source": [ + "from math import factorial\n", + "\n", + "#Variable Declaration\n", + "x = 6 #Number of electrons\n", + "n = 2 #Number of states\n", + "\n", + "#Calculation\n", + "P = factorial(x)/(factorial(n)*factorial(x-n))\n", + "\n", + "#Results\n", + "print 'Total number of quantum states are %3d'%P" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.8:pg-301" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Probability of getting 25 head out of 50 tossing is 0.112\n", + "Probability of getting 10 head out of 50 tossing is 9.124e-06\n" + ] + } + ], + "source": [ + "from math import factorial\n", + "from fractions import Fraction\n", + "\n", + "#Variable Declaration\n", + "n = 50 #Number of separate experiments\n", + "j1 = 25 #Number of sucessful expt with heads up\n", + "j2 = 10 #Number of sucessful expt with heads up\n", + "\n", + "#Calculation\n", + "C25 = factorial(n)/(factorial(j1)*factorial(n-j1))\n", + "PE25 = Fraction(1,2)**j1\n", + "PEC25 = (1-Fraction(1,2))**(n-j1)\n", + "P25 = C25*PE25*PEC25\n", + "\n", + "C10 = factorial(n)/(factorial(j2)*factorial(n-j2))\n", + "PE10 = Fraction(1,2)**j2\n", + "PEC10 = (1-Fraction(1,2))**(n-j2)\n", + "P10 = C10*PE10*PEC10\n", + "\n", + "#Results\n", + "print 'Probability of getting 25 head out of 50 tossing is %4.3f'%(float(P25))\n", + "print 'Probability of getting 10 head out of 50 tossing is %4.3e'%(float(P10))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.9:pg-302" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " N ln(N!) ln(N!)sterling Error\n", + " 10 15.10 13.03 2.08\n", + " 50 148.48 145.60 2.88\n", + "100 363.74 360.52 3.22\n" + ] + } + ], + "source": [ + "from math import factorial, log\n", + "#Variable Declaration\n", + "N = [10,50,100] #Valures for N\n", + "\n", + "#Calculations\n", + "print ' N ln(N!) ln(N!)sterling Error'\n", + "for i in N:\n", + " lnN = log(factorial(i))\n", + " lnNs = i*log(i)-i\n", + " err = abs(lnN-lnNs)\n", + " print '%3d %5.2f %5.2f %4.2f'%(i,lnN,lnNs, err)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.10:pg-305" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Probability of receiving any card 1/52\n" + ] + } + ], + "source": [ + "from fractions import Fraction\n", + "\n", + "#Variable Declaration\n", + "fi = 1 #Probability of receiving any card\n", + "n = 52 #Number od Cards\n", + "\n", + "#Calculations\n", + "sum = 0\n", + "for i in range(52):\n", + " sum = sum + fi\n", + "\n", + "Pxi = Fraction(fi,sum)\n", + "\n", + "#Results\n", + "print 'Probability of receiving any card', Pxi" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.11:pg-307" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sum of Px considering it as discrete function 20.4\n", + "Sum of Px considering it as contineous function 19.9\n" + ] + } + ], + "source": [ + "from math import exp\n", + "from scipy import integrate\n", + "#Variable Declaration\n", + "\n", + "#Calculations\n", + "fun = lambda x: exp(-0.05*x)\n", + "Pt = 0\n", + "for i in range(0,101):\n", + " Pt = Pt + fun(i)\n", + " \n", + "Ptot = integrate.quad(fun, 0.0, 100.)\n", + "\n", + "#Results\n", + "print 'Sum of Px considering it as discrete function %4.1f'%Pt\n", + "print 'Sum of Px considering it as contineous function %4.1f'%Ptot[0]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex12.12:pg-308" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "from sympy import Symbol\n", + "import math\n", + "\n", + "#Variable Declaration\n", + "r = Symbol('r') #Radius of inner circle\n", + "C = [5,2,0]\n", + "#Calculations\n", + "A1 = pi*r**2\n", + "A2 = pi*(2*r)**2 - A1\n", + "A3 = pi*(3*r)**2 - (A1 + A2)\n", + "At = A1 + A2 + A3\n", + "f1 = A1/At\n", + "f2 = A2/At\n", + "f3 = A3/At\n", + "sf = f1 + f2 + f3\n", + "\n", + "ns = (f1*C[0]+f2*C[1]+f3*C[2])/sf\n", + "\n", + "#Results\n", + "print 'A1, A2, A3: ', A1,', ', A2,', ', A3\n", + "print 'f1, f2, f3: ', f1,f2,f3\n", + "print 'Average payout $', round(float(ns),2)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} |