diff options
author | kinitrupti | 2017-05-12 18:40:35 +0530 |
---|---|---|
committer | kinitrupti | 2017-05-12 18:40:35 +0530 |
commit | d36fc3b8f88cc3108ffff6151e376b619b9abb01 (patch) | |
tree | 9806b0d68a708d2cfc4efc8ae3751423c56b7721 /backup/Thermodynamics_for_Engineers_version_backup | |
parent | 1b1bb67e9ea912be5c8591523c8b328766e3680f (diff) | |
download | Python-Textbook-Companions-d36fc3b8f88cc3108ffff6151e376b619b9abb01.tar.gz Python-Textbook-Companions-d36fc3b8f88cc3108ffff6151e376b619b9abb01.tar.bz2 Python-Textbook-Companions-d36fc3b8f88cc3108ffff6151e376b619b9abb01.zip |
Revised list of TBCs
Diffstat (limited to 'backup/Thermodynamics_for_Engineers_version_backup')
68 files changed, 24993 insertions, 0 deletions
diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_10.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_10.ipynb new file mode 100755 index 00000000..6a9f7f74 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_10.ipynb @@ -0,0 +1,579 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:cbda57f5092671910369ce2a43538fa17705152cf0ccb12e90ebe176631fb4e1"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 10 - Vapors"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 154"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the specific volume, enthalpy and entropy of the gas\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p=3000. #psia\n",
+ "T=250. #F\n",
+ "#calculations\n",
+ "print '%s' %(\"From table 1, keenan and keynes,\")\n",
+ "vf=0.01700\n",
+ "print '%s' %(\"From table 4,\")\n",
+ "dvf=-18.3*math.pow(10,-5)\n",
+ "v=vf+dvf\n",
+ "print '%s' %(\"From table 1,\")\n",
+ "hf=218.48\n",
+ "print '%s' %(\"From table 4,\")\n",
+ "dhf=6.13\n",
+ "h=hf+dhf\n",
+ "sf=0.3675\n",
+ "dsf=-4.34*math.pow(10,-3)\n",
+ "s=sf+dsf\n",
+ "#results\n",
+ "print '%s %.5f %s' %(\"Specific volume =\",v,\" cu ft/lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Enthalpy =\",h,\" Btu/lb\")\n",
+ "print '%s %.4f %s' %(\"\\n Entropy =\",s,\" Btu/lb per deg R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1, keenan and keynes,\n",
+ "From table 4,\n",
+ "From table 1,\n",
+ "From table 4,\n",
+ "Specific volume = 0.01682 cu ft/lb\n",
+ "\n",
+ " Enthalpy = 224.61 Btu/lb\n",
+ "\n",
+ " Entropy = 0.3632 Btu/lb per deg R\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of the gas and moisture content\n",
+ "#Initialization of variables\n",
+ "h=1100 #Btu/lb\n",
+ "P=100 #psia\n",
+ "#calculations\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "hg=1187.2 #Btu/lb\n",
+ "hfg=888.8 #Btu/lb\n",
+ "y=-(h-hg)/hfg*100\n",
+ "#results\n",
+ "print '%s %.2f %s %.2f %s' %(\"The state is\",P,\"psia with a moisture content of\",y,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state is 100.00 psia with a moisture content of 9.81 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "v1=0.2688\n",
+ "#calculations\n",
+ "v2=3.060\n",
+ "p2=200 #psia\n",
+ "t2=600 #F\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"State of steam is\",p2, \"psia and\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "State of steam is 200 psia and 600 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "t1=439.60 #F\n",
+ "u1=1118.4 #Btu/lb\n",
+ "#calculations\n",
+ "p2=380 #psia\n",
+ "#results\n",
+ "print '%s %d %s %.2f %s' %(\"The state of steam is saturated at\",p2,\"psia and\",t1,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state of steam is saturated at 380 psia and 439.60 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the state of steam and moisture content\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "p1=1 #in of Hg\n",
+ "s=1.9812 \n",
+ "#calculations\n",
+ "sf=2.0387\n",
+ "sfg=1.9473\n",
+ "y=-(s-sf)/sfg*100\n",
+ "#results\n",
+ "print '%s %d %s %.2f %s' %(\"The state is\",p1, \"in of Hg with a moisture content of\",y, \"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state is 1 in of Hg with a moisture content of 2.95 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 161"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final state of steam and temperature. Also calculate the final enthalpy\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "h1=1204.8 #Btu/lb\n",
+ "q=174. #Btu/lb\n",
+ "#calculations\n",
+ "h2=h1+q\n",
+ "p2=30. #psia\n",
+ "t2=720. #F\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"Final state of steam is\",p2,\"psia and\",t2,\" F\")\n",
+ "print '%s %.1f %s' %(\"\\n Final enthalpy is\",h2,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final state of steam is 30 psia and 720 F\n",
+ "\n",
+ " Final enthalpy is 1378.8 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 161"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final specific volume and final state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "p=70 #psia\n",
+ "x=0.1\n",
+ "p2=198 #psia\n",
+ "#calculations\n",
+ "v1=6.206\n",
+ "v2=0.017\n",
+ "vx=v1-x*(v1-v2)\n",
+ "t2=1400 #F\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Final specific volume =\",vx,\"cu ft\")\n",
+ "print '%s %d %s %d %s' %(\"\\n Final state is\",p2,\"psia and\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final specific volume = 5.587 cu ft\n",
+ "\n",
+ " Final state is 198 psia and 1400 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 162"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "p=400 #psia\n",
+ "t1=700 #F\n",
+ "p2=85 #psia\n",
+ "#calculations\n",
+ "s2=1.6398 #units/lb\n",
+ "t2=350 #F\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"Final state of steam is\",p2,\"psia and\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final state of steam is 85 psia and 350 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 162"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the work of compression and heat removed\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=20. #psia\n",
+ "p2=140. #psia\n",
+ "J=778.\n",
+ "t2=150. #F\n",
+ "t1=30. #F\n",
+ "#calculations\n",
+ "print '%s' %(\"From Table A-3,\")\n",
+ "v1=2.0884 #cu ft/lb\n",
+ "v2=0.33350 #cu ft/lb\n",
+ "h2=95.709\n",
+ "h1=81.842\n",
+ "n=math.log(p2/p1) /math.log(v1/v2)\n",
+ "W=(p2*v2-p1*v1)*144/(1-n)\n",
+ "du=h2-h1 + (p1*v1-p2*v2)*144/J\n",
+ "Q=du+W/J\n",
+ "s2=0.17718\n",
+ "s1=0.18126\n",
+ "Q2=((t2+t1)/2 +460) *(s2-s1)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Work of compression =\",W,\"ft-lb\")\n",
+ "print '%s %.3f %s' %(\"\\n Heat removed per pound of refrigerant =\",Q,\" Btu/lb\")\n",
+ "print '%s %.4f %s' %(\"\\n Heat removed in case 2 =\",Q2,\" Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From Table A-3,\n",
+ "Work of compression = -11671 ft-lb\n",
+ "\n",
+ " Heat removed per pound of refrigerant = -2.046 Btu/lb\n",
+ "\n",
+ " Heat removed in case 2 = -2.2440 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 163"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the specific enthalpy of exhaust steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "intt=440000 #lb/hr\n",
+ "out=255000 #lb/hr\n",
+ "p1=400 #psia\n",
+ "t1=700 #F\n",
+ "p2=35 #psia\n",
+ "t2=290 #F\n",
+ "vel=500 #ft/s\n",
+ "hp=44000 #hp\n",
+ "ent=1362.7 #Btu/lb\n",
+ "#calculations\n",
+ "ein=ent*intt\n",
+ "eout=hp*2544 + out*1183 + 925000.\n",
+ "h2= (ein-eout)/185000.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Specific enthalpy of exhaust steam =\",h2,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Specific enthalpy of exhaust steam = 1000 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 165"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the final state of steam and loss of available energy\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "h1=1351.1 #Btu/lb\n",
+ "p1=600. #psia\n",
+ "t1=700. #F\n",
+ "p2=234. #psia\n",
+ "h2=1.6865\n",
+ "h1=1.5875\n",
+ "t3=101.74\n",
+ "#calculations\n",
+ "t2=660. #F\n",
+ "loss= (h2-h1)*(t3+459.69)\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"Final state of steam is\",p2,\" psia and\",t2,\"F\")\n",
+ "print '%s %.1f %s' %(\"\\n Loss of available energy =\",loss,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final state of steam is 234 psia and 660 F\n",
+ "\n",
+ " Loss of available energy = 55.6 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 165"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of vapor and also the quality\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "p1=98.87 #psia\n",
+ "p2=31.78 #psia\n",
+ "t1=80 #F\n",
+ "h2=26.365 #btu/lb\n",
+ "h1=11.554 #btu/lb\n",
+ "hfg=67.203 #btu/lb\n",
+ "#calculations\n",
+ "x=(h2-h1)/hfg*100\n",
+ "#results\n",
+ "print '%s %.2f %s %.2f %s' %(\"The state of vapor leaving is\",p2, \"psia with a quality of\",x, \" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state of vapor leaving is 31.78 psia with a quality of 22.04 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 167"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the mean state in the line and also the moisture content\n",
+ "#Initialization of variables\n",
+ "ps=216 #psig\n",
+ "pb=29.12 #in of Hg\n",
+ "p2=0.4 #in\n",
+ "t2=244 #F\n",
+ "#calculations\n",
+ "pa=0.491*pb\n",
+ "pabs=pa + p2*0.491\n",
+ "plb=pa+ ps\n",
+ "hcal=1166.5 #Btu/lb\n",
+ "h2=1200.1 #Btu/lb\n",
+ "h3=831.9 #Btu/lb\n",
+ "y=-(hcal-h2)/h3*100\n",
+ "#results\n",
+ "print '%s %.1f %s %.2f %s' %(\"Mean state in the line is\",plb,\" psia with a moisture content of\",y,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mean state in the line is 230.3 psia with a moisture content of 4.04 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_10_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_10_1.ipynb new file mode 100755 index 00000000..6a9f7f74 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_10_1.ipynb @@ -0,0 +1,579 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:cbda57f5092671910369ce2a43538fa17705152cf0ccb12e90ebe176631fb4e1"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 10 - Vapors"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 154"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the specific volume, enthalpy and entropy of the gas\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p=3000. #psia\n",
+ "T=250. #F\n",
+ "#calculations\n",
+ "print '%s' %(\"From table 1, keenan and keynes,\")\n",
+ "vf=0.01700\n",
+ "print '%s' %(\"From table 4,\")\n",
+ "dvf=-18.3*math.pow(10,-5)\n",
+ "v=vf+dvf\n",
+ "print '%s' %(\"From table 1,\")\n",
+ "hf=218.48\n",
+ "print '%s' %(\"From table 4,\")\n",
+ "dhf=6.13\n",
+ "h=hf+dhf\n",
+ "sf=0.3675\n",
+ "dsf=-4.34*math.pow(10,-3)\n",
+ "s=sf+dsf\n",
+ "#results\n",
+ "print '%s %.5f %s' %(\"Specific volume =\",v,\" cu ft/lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Enthalpy =\",h,\" Btu/lb\")\n",
+ "print '%s %.4f %s' %(\"\\n Entropy =\",s,\" Btu/lb per deg R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1, keenan and keynes,\n",
+ "From table 4,\n",
+ "From table 1,\n",
+ "From table 4,\n",
+ "Specific volume = 0.01682 cu ft/lb\n",
+ "\n",
+ " Enthalpy = 224.61 Btu/lb\n",
+ "\n",
+ " Entropy = 0.3632 Btu/lb per deg R\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of the gas and moisture content\n",
+ "#Initialization of variables\n",
+ "h=1100 #Btu/lb\n",
+ "P=100 #psia\n",
+ "#calculations\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "hg=1187.2 #Btu/lb\n",
+ "hfg=888.8 #Btu/lb\n",
+ "y=-(h-hg)/hfg*100\n",
+ "#results\n",
+ "print '%s %.2f %s %.2f %s' %(\"The state is\",P,\"psia with a moisture content of\",y,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state is 100.00 psia with a moisture content of 9.81 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "v1=0.2688\n",
+ "#calculations\n",
+ "v2=3.060\n",
+ "p2=200 #psia\n",
+ "t2=600 #F\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"State of steam is\",p2, \"psia and\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "State of steam is 200 psia and 600 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "t1=439.60 #F\n",
+ "u1=1118.4 #Btu/lb\n",
+ "#calculations\n",
+ "p2=380 #psia\n",
+ "#results\n",
+ "print '%s %d %s %.2f %s' %(\"The state of steam is saturated at\",p2,\"psia and\",t1,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state of steam is saturated at 380 psia and 439.60 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the state of steam and moisture content\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "p1=1 #in of Hg\n",
+ "s=1.9812 \n",
+ "#calculations\n",
+ "sf=2.0387\n",
+ "sfg=1.9473\n",
+ "y=-(s-sf)/sfg*100\n",
+ "#results\n",
+ "print '%s %d %s %.2f %s' %(\"The state is\",p1, \"in of Hg with a moisture content of\",y, \"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state is 1 in of Hg with a moisture content of 2.95 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 161"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final state of steam and temperature. Also calculate the final enthalpy\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "h1=1204.8 #Btu/lb\n",
+ "q=174. #Btu/lb\n",
+ "#calculations\n",
+ "h2=h1+q\n",
+ "p2=30. #psia\n",
+ "t2=720. #F\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"Final state of steam is\",p2,\"psia and\",t2,\" F\")\n",
+ "print '%s %.1f %s' %(\"\\n Final enthalpy is\",h2,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final state of steam is 30 psia and 720 F\n",
+ "\n",
+ " Final enthalpy is 1378.8 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 161"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final specific volume and final state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "p=70 #psia\n",
+ "x=0.1\n",
+ "p2=198 #psia\n",
+ "#calculations\n",
+ "v1=6.206\n",
+ "v2=0.017\n",
+ "vx=v1-x*(v1-v2)\n",
+ "t2=1400 #F\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Final specific volume =\",vx,\"cu ft\")\n",
+ "print '%s %d %s %d %s' %(\"\\n Final state is\",p2,\"psia and\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final specific volume = 5.587 cu ft\n",
+ "\n",
+ " Final state is 198 psia and 1400 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 162"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "p=400 #psia\n",
+ "t1=700 #F\n",
+ "p2=85 #psia\n",
+ "#calculations\n",
+ "s2=1.6398 #units/lb\n",
+ "t2=350 #F\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"Final state of steam is\",p2,\"psia and\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final state of steam is 85 psia and 350 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 162"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the work of compression and heat removed\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=20. #psia\n",
+ "p2=140. #psia\n",
+ "J=778.\n",
+ "t2=150. #F\n",
+ "t1=30. #F\n",
+ "#calculations\n",
+ "print '%s' %(\"From Table A-3,\")\n",
+ "v1=2.0884 #cu ft/lb\n",
+ "v2=0.33350 #cu ft/lb\n",
+ "h2=95.709\n",
+ "h1=81.842\n",
+ "n=math.log(p2/p1) /math.log(v1/v2)\n",
+ "W=(p2*v2-p1*v1)*144/(1-n)\n",
+ "du=h2-h1 + (p1*v1-p2*v2)*144/J\n",
+ "Q=du+W/J\n",
+ "s2=0.17718\n",
+ "s1=0.18126\n",
+ "Q2=((t2+t1)/2 +460) *(s2-s1)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Work of compression =\",W,\"ft-lb\")\n",
+ "print '%s %.3f %s' %(\"\\n Heat removed per pound of refrigerant =\",Q,\" Btu/lb\")\n",
+ "print '%s %.4f %s' %(\"\\n Heat removed in case 2 =\",Q2,\" Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From Table A-3,\n",
+ "Work of compression = -11671 ft-lb\n",
+ "\n",
+ " Heat removed per pound of refrigerant = -2.046 Btu/lb\n",
+ "\n",
+ " Heat removed in case 2 = -2.2440 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 163"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the specific enthalpy of exhaust steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "intt=440000 #lb/hr\n",
+ "out=255000 #lb/hr\n",
+ "p1=400 #psia\n",
+ "t1=700 #F\n",
+ "p2=35 #psia\n",
+ "t2=290 #F\n",
+ "vel=500 #ft/s\n",
+ "hp=44000 #hp\n",
+ "ent=1362.7 #Btu/lb\n",
+ "#calculations\n",
+ "ein=ent*intt\n",
+ "eout=hp*2544 + out*1183 + 925000.\n",
+ "h2= (ein-eout)/185000.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Specific enthalpy of exhaust steam =\",h2,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Specific enthalpy of exhaust steam = 1000 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 165"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the final state of steam and loss of available energy\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "h1=1351.1 #Btu/lb\n",
+ "p1=600. #psia\n",
+ "t1=700. #F\n",
+ "p2=234. #psia\n",
+ "h2=1.6865\n",
+ "h1=1.5875\n",
+ "t3=101.74\n",
+ "#calculations\n",
+ "t2=660. #F\n",
+ "loss= (h2-h1)*(t3+459.69)\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"Final state of steam is\",p2,\" psia and\",t2,\"F\")\n",
+ "print '%s %.1f %s' %(\"\\n Loss of available energy =\",loss,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final state of steam is 234 psia and 660 F\n",
+ "\n",
+ " Loss of available energy = 55.6 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 165"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of vapor and also the quality\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "p1=98.87 #psia\n",
+ "p2=31.78 #psia\n",
+ "t1=80 #F\n",
+ "h2=26.365 #btu/lb\n",
+ "h1=11.554 #btu/lb\n",
+ "hfg=67.203 #btu/lb\n",
+ "#calculations\n",
+ "x=(h2-h1)/hfg*100\n",
+ "#results\n",
+ "print '%s %.2f %s %.2f %s' %(\"The state of vapor leaving is\",p2, \"psia with a quality of\",x, \" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state of vapor leaving is 31.78 psia with a quality of 22.04 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 167"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the mean state in the line and also the moisture content\n",
+ "#Initialization of variables\n",
+ "ps=216 #psig\n",
+ "pb=29.12 #in of Hg\n",
+ "p2=0.4 #in\n",
+ "t2=244 #F\n",
+ "#calculations\n",
+ "pa=0.491*pb\n",
+ "pabs=pa + p2*0.491\n",
+ "plb=pa+ ps\n",
+ "hcal=1166.5 #Btu/lb\n",
+ "h2=1200.1 #Btu/lb\n",
+ "h3=831.9 #Btu/lb\n",
+ "y=-(hcal-h2)/h3*100\n",
+ "#results\n",
+ "print '%s %.1f %s %.2f %s' %(\"Mean state in the line is\",plb,\" psia with a moisture content of\",y,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mean state in the line is 230.3 psia with a moisture content of 4.04 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_10_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_10_2.ipynb new file mode 100755 index 00000000..6a9f7f74 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_10_2.ipynb @@ -0,0 +1,579 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:cbda57f5092671910369ce2a43538fa17705152cf0ccb12e90ebe176631fb4e1"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 10 - Vapors"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 154"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the specific volume, enthalpy and entropy of the gas\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p=3000. #psia\n",
+ "T=250. #F\n",
+ "#calculations\n",
+ "print '%s' %(\"From table 1, keenan and keynes,\")\n",
+ "vf=0.01700\n",
+ "print '%s' %(\"From table 4,\")\n",
+ "dvf=-18.3*math.pow(10,-5)\n",
+ "v=vf+dvf\n",
+ "print '%s' %(\"From table 1,\")\n",
+ "hf=218.48\n",
+ "print '%s' %(\"From table 4,\")\n",
+ "dhf=6.13\n",
+ "h=hf+dhf\n",
+ "sf=0.3675\n",
+ "dsf=-4.34*math.pow(10,-3)\n",
+ "s=sf+dsf\n",
+ "#results\n",
+ "print '%s %.5f %s' %(\"Specific volume =\",v,\" cu ft/lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Enthalpy =\",h,\" Btu/lb\")\n",
+ "print '%s %.4f %s' %(\"\\n Entropy =\",s,\" Btu/lb per deg R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1, keenan and keynes,\n",
+ "From table 4,\n",
+ "From table 1,\n",
+ "From table 4,\n",
+ "Specific volume = 0.01682 cu ft/lb\n",
+ "\n",
+ " Enthalpy = 224.61 Btu/lb\n",
+ "\n",
+ " Entropy = 0.3632 Btu/lb per deg R\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of the gas and moisture content\n",
+ "#Initialization of variables\n",
+ "h=1100 #Btu/lb\n",
+ "P=100 #psia\n",
+ "#calculations\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "hg=1187.2 #Btu/lb\n",
+ "hfg=888.8 #Btu/lb\n",
+ "y=-(h-hg)/hfg*100\n",
+ "#results\n",
+ "print '%s %.2f %s %.2f %s' %(\"The state is\",P,\"psia with a moisture content of\",y,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state is 100.00 psia with a moisture content of 9.81 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "v1=0.2688\n",
+ "#calculations\n",
+ "v2=3.060\n",
+ "p2=200 #psia\n",
+ "t2=600 #F\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"State of steam is\",p2, \"psia and\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "State of steam is 200 psia and 600 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "t1=439.60 #F\n",
+ "u1=1118.4 #Btu/lb\n",
+ "#calculations\n",
+ "p2=380 #psia\n",
+ "#results\n",
+ "print '%s %d %s %.2f %s' %(\"The state of steam is saturated at\",p2,\"psia and\",t1,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state of steam is saturated at 380 psia and 439.60 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the state of steam and moisture content\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "p1=1 #in of Hg\n",
+ "s=1.9812 \n",
+ "#calculations\n",
+ "sf=2.0387\n",
+ "sfg=1.9473\n",
+ "y=-(s-sf)/sfg*100\n",
+ "#results\n",
+ "print '%s %d %s %.2f %s' %(\"The state is\",p1, \"in of Hg with a moisture content of\",y, \"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state is 1 in of Hg with a moisture content of 2.95 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 161"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final state of steam and temperature. Also calculate the final enthalpy\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "h1=1204.8 #Btu/lb\n",
+ "q=174. #Btu/lb\n",
+ "#calculations\n",
+ "h2=h1+q\n",
+ "p2=30. #psia\n",
+ "t2=720. #F\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"Final state of steam is\",p2,\"psia and\",t2,\" F\")\n",
+ "print '%s %.1f %s' %(\"\\n Final enthalpy is\",h2,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final state of steam is 30 psia and 720 F\n",
+ "\n",
+ " Final enthalpy is 1378.8 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 161"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final specific volume and final state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "p=70 #psia\n",
+ "x=0.1\n",
+ "p2=198 #psia\n",
+ "#calculations\n",
+ "v1=6.206\n",
+ "v2=0.017\n",
+ "vx=v1-x*(v1-v2)\n",
+ "t2=1400 #F\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Final specific volume =\",vx,\"cu ft\")\n",
+ "print '%s %d %s %d %s' %(\"\\n Final state is\",p2,\"psia and\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final specific volume = 5.587 cu ft\n",
+ "\n",
+ " Final state is 198 psia and 1400 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 162"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "p=400 #psia\n",
+ "t1=700 #F\n",
+ "p2=85 #psia\n",
+ "#calculations\n",
+ "s2=1.6398 #units/lb\n",
+ "t2=350 #F\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"Final state of steam is\",p2,\"psia and\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final state of steam is 85 psia and 350 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 162"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the work of compression and heat removed\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=20. #psia\n",
+ "p2=140. #psia\n",
+ "J=778.\n",
+ "t2=150. #F\n",
+ "t1=30. #F\n",
+ "#calculations\n",
+ "print '%s' %(\"From Table A-3,\")\n",
+ "v1=2.0884 #cu ft/lb\n",
+ "v2=0.33350 #cu ft/lb\n",
+ "h2=95.709\n",
+ "h1=81.842\n",
+ "n=math.log(p2/p1) /math.log(v1/v2)\n",
+ "W=(p2*v2-p1*v1)*144/(1-n)\n",
+ "du=h2-h1 + (p1*v1-p2*v2)*144/J\n",
+ "Q=du+W/J\n",
+ "s2=0.17718\n",
+ "s1=0.18126\n",
+ "Q2=((t2+t1)/2 +460) *(s2-s1)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Work of compression =\",W,\"ft-lb\")\n",
+ "print '%s %.3f %s' %(\"\\n Heat removed per pound of refrigerant =\",Q,\" Btu/lb\")\n",
+ "print '%s %.4f %s' %(\"\\n Heat removed in case 2 =\",Q2,\" Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From Table A-3,\n",
+ "Work of compression = -11671 ft-lb\n",
+ "\n",
+ " Heat removed per pound of refrigerant = -2.046 Btu/lb\n",
+ "\n",
+ " Heat removed in case 2 = -2.2440 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 163"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the specific enthalpy of exhaust steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "intt=440000 #lb/hr\n",
+ "out=255000 #lb/hr\n",
+ "p1=400 #psia\n",
+ "t1=700 #F\n",
+ "p2=35 #psia\n",
+ "t2=290 #F\n",
+ "vel=500 #ft/s\n",
+ "hp=44000 #hp\n",
+ "ent=1362.7 #Btu/lb\n",
+ "#calculations\n",
+ "ein=ent*intt\n",
+ "eout=hp*2544 + out*1183 + 925000.\n",
+ "h2= (ein-eout)/185000.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Specific enthalpy of exhaust steam =\",h2,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Specific enthalpy of exhaust steam = 1000 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 165"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the final state of steam and loss of available energy\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "h1=1351.1 #Btu/lb\n",
+ "p1=600. #psia\n",
+ "t1=700. #F\n",
+ "p2=234. #psia\n",
+ "h2=1.6865\n",
+ "h1=1.5875\n",
+ "t3=101.74\n",
+ "#calculations\n",
+ "t2=660. #F\n",
+ "loss= (h2-h1)*(t3+459.69)\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"Final state of steam is\",p2,\" psia and\",t2,\"F\")\n",
+ "print '%s %.1f %s' %(\"\\n Loss of available energy =\",loss,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final state of steam is 234 psia and 660 F\n",
+ "\n",
+ " Loss of available energy = 55.6 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 165"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of vapor and also the quality\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "p1=98.87 #psia\n",
+ "p2=31.78 #psia\n",
+ "t1=80 #F\n",
+ "h2=26.365 #btu/lb\n",
+ "h1=11.554 #btu/lb\n",
+ "hfg=67.203 #btu/lb\n",
+ "#calculations\n",
+ "x=(h2-h1)/hfg*100\n",
+ "#results\n",
+ "print '%s %.2f %s %.2f %s' %(\"The state of vapor leaving is\",p2, \"psia with a quality of\",x, \" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state of vapor leaving is 31.78 psia with a quality of 22.04 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 167"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the mean state in the line and also the moisture content\n",
+ "#Initialization of variables\n",
+ "ps=216 #psig\n",
+ "pb=29.12 #in of Hg\n",
+ "p2=0.4 #in\n",
+ "t2=244 #F\n",
+ "#calculations\n",
+ "pa=0.491*pb\n",
+ "pabs=pa + p2*0.491\n",
+ "plb=pa+ ps\n",
+ "hcal=1166.5 #Btu/lb\n",
+ "h2=1200.1 #Btu/lb\n",
+ "h3=831.9 #Btu/lb\n",
+ "y=-(hcal-h2)/h3*100\n",
+ "#results\n",
+ "print '%s %.1f %s %.2f %s' %(\"Mean state in the line is\",plb,\" psia with a moisture content of\",y,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mean state in the line is 230.3 psia with a moisture content of 4.04 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_10_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_10_3.ipynb new file mode 100755 index 00000000..6a9f7f74 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_10_3.ipynb @@ -0,0 +1,579 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:cbda57f5092671910369ce2a43538fa17705152cf0ccb12e90ebe176631fb4e1"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 10 - Vapors"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 154"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the specific volume, enthalpy and entropy of the gas\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p=3000. #psia\n",
+ "T=250. #F\n",
+ "#calculations\n",
+ "print '%s' %(\"From table 1, keenan and keynes,\")\n",
+ "vf=0.01700\n",
+ "print '%s' %(\"From table 4,\")\n",
+ "dvf=-18.3*math.pow(10,-5)\n",
+ "v=vf+dvf\n",
+ "print '%s' %(\"From table 1,\")\n",
+ "hf=218.48\n",
+ "print '%s' %(\"From table 4,\")\n",
+ "dhf=6.13\n",
+ "h=hf+dhf\n",
+ "sf=0.3675\n",
+ "dsf=-4.34*math.pow(10,-3)\n",
+ "s=sf+dsf\n",
+ "#results\n",
+ "print '%s %.5f %s' %(\"Specific volume =\",v,\" cu ft/lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Enthalpy =\",h,\" Btu/lb\")\n",
+ "print '%s %.4f %s' %(\"\\n Entropy =\",s,\" Btu/lb per deg R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1, keenan and keynes,\n",
+ "From table 4,\n",
+ "From table 1,\n",
+ "From table 4,\n",
+ "Specific volume = 0.01682 cu ft/lb\n",
+ "\n",
+ " Enthalpy = 224.61 Btu/lb\n",
+ "\n",
+ " Entropy = 0.3632 Btu/lb per deg R\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of the gas and moisture content\n",
+ "#Initialization of variables\n",
+ "h=1100 #Btu/lb\n",
+ "P=100 #psia\n",
+ "#calculations\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "hg=1187.2 #Btu/lb\n",
+ "hfg=888.8 #Btu/lb\n",
+ "y=-(h-hg)/hfg*100\n",
+ "#results\n",
+ "print '%s %.2f %s %.2f %s' %(\"The state is\",P,\"psia with a moisture content of\",y,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state is 100.00 psia with a moisture content of 9.81 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "v1=0.2688\n",
+ "#calculations\n",
+ "v2=3.060\n",
+ "p2=200 #psia\n",
+ "t2=600 #F\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"State of steam is\",p2, \"psia and\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "State of steam is 200 psia and 600 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "t1=439.60 #F\n",
+ "u1=1118.4 #Btu/lb\n",
+ "#calculations\n",
+ "p2=380 #psia\n",
+ "#results\n",
+ "print '%s %d %s %.2f %s' %(\"The state of steam is saturated at\",p2,\"psia and\",t1,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state of steam is saturated at 380 psia and 439.60 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 157"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the state of steam and moisture content\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "p1=1 #in of Hg\n",
+ "s=1.9812 \n",
+ "#calculations\n",
+ "sf=2.0387\n",
+ "sfg=1.9473\n",
+ "y=-(s-sf)/sfg*100\n",
+ "#results\n",
+ "print '%s %d %s %.2f %s' %(\"The state is\",p1, \"in of Hg with a moisture content of\",y, \"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state is 1 in of Hg with a moisture content of 2.95 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 161"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final state of steam and temperature. Also calculate the final enthalpy\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "h1=1204.8 #Btu/lb\n",
+ "q=174. #Btu/lb\n",
+ "#calculations\n",
+ "h2=h1+q\n",
+ "p2=30. #psia\n",
+ "t2=720. #F\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"Final state of steam is\",p2,\"psia and\",t2,\" F\")\n",
+ "print '%s %.1f %s' %(\"\\n Final enthalpy is\",h2,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final state of steam is 30 psia and 720 F\n",
+ "\n",
+ " Final enthalpy is 1378.8 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 161"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final specific volume and final state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "p=70 #psia\n",
+ "x=0.1\n",
+ "p2=198 #psia\n",
+ "#calculations\n",
+ "v1=6.206\n",
+ "v2=0.017\n",
+ "vx=v1-x*(v1-v2)\n",
+ "t2=1400 #F\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Final specific volume =\",vx,\"cu ft\")\n",
+ "print '%s %d %s %d %s' %(\"\\n Final state is\",p2,\"psia and\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final specific volume = 5.587 cu ft\n",
+ "\n",
+ " Final state is 198 psia and 1400 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 162"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final state of steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "p=400 #psia\n",
+ "t1=700 #F\n",
+ "p2=85 #psia\n",
+ "#calculations\n",
+ "s2=1.6398 #units/lb\n",
+ "t2=350 #F\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"Final state of steam is\",p2,\"psia and\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final state of steam is 85 psia and 350 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 162"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the work of compression and heat removed\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=20. #psia\n",
+ "p2=140. #psia\n",
+ "J=778.\n",
+ "t2=150. #F\n",
+ "t1=30. #F\n",
+ "#calculations\n",
+ "print '%s' %(\"From Table A-3,\")\n",
+ "v1=2.0884 #cu ft/lb\n",
+ "v2=0.33350 #cu ft/lb\n",
+ "h2=95.709\n",
+ "h1=81.842\n",
+ "n=math.log(p2/p1) /math.log(v1/v2)\n",
+ "W=(p2*v2-p1*v1)*144/(1-n)\n",
+ "du=h2-h1 + (p1*v1-p2*v2)*144/J\n",
+ "Q=du+W/J\n",
+ "s2=0.17718\n",
+ "s1=0.18126\n",
+ "Q2=((t2+t1)/2 +460) *(s2-s1)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Work of compression =\",W,\"ft-lb\")\n",
+ "print '%s %.3f %s' %(\"\\n Heat removed per pound of refrigerant =\",Q,\" Btu/lb\")\n",
+ "print '%s %.4f %s' %(\"\\n Heat removed in case 2 =\",Q2,\" Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From Table A-3,\n",
+ "Work of compression = -11671 ft-lb\n",
+ "\n",
+ " Heat removed per pound of refrigerant = -2.046 Btu/lb\n",
+ "\n",
+ " Heat removed in case 2 = -2.2440 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 163"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the specific enthalpy of exhaust steam\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "intt=440000 #lb/hr\n",
+ "out=255000 #lb/hr\n",
+ "p1=400 #psia\n",
+ "t1=700 #F\n",
+ "p2=35 #psia\n",
+ "t2=290 #F\n",
+ "vel=500 #ft/s\n",
+ "hp=44000 #hp\n",
+ "ent=1362.7 #Btu/lb\n",
+ "#calculations\n",
+ "ein=ent*intt\n",
+ "eout=hp*2544 + out*1183 + 925000.\n",
+ "h2= (ein-eout)/185000.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Specific enthalpy of exhaust steam =\",h2,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Specific enthalpy of exhaust steam = 1000 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 165"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the final state of steam and loss of available energy\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 1 of keenan and keynes,\")\n",
+ "h1=1351.1 #Btu/lb\n",
+ "p1=600. #psia\n",
+ "t1=700. #F\n",
+ "p2=234. #psia\n",
+ "h2=1.6865\n",
+ "h1=1.5875\n",
+ "t3=101.74\n",
+ "#calculations\n",
+ "t2=660. #F\n",
+ "loss= (h2-h1)*(t3+459.69)\n",
+ "#results\n",
+ "print '%s %d %s %d %s' %(\"Final state of steam is\",p2,\" psia and\",t2,\"F\")\n",
+ "print '%s %.1f %s' %(\"\\n Loss of available energy =\",loss,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 1 of keenan and keynes,\n",
+ "Final state of steam is 234 psia and 660 F\n",
+ "\n",
+ " Loss of available energy = 55.6 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 165"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the state of vapor and also the quality\n",
+ "#Initialization of variables\n",
+ "print '%s' %(\"From table 2 of keenan and keynes,\")\n",
+ "p1=98.87 #psia\n",
+ "p2=31.78 #psia\n",
+ "t1=80 #F\n",
+ "h2=26.365 #btu/lb\n",
+ "h1=11.554 #btu/lb\n",
+ "hfg=67.203 #btu/lb\n",
+ "#calculations\n",
+ "x=(h2-h1)/hfg*100\n",
+ "#results\n",
+ "print '%s %.2f %s %.2f %s' %(\"The state of vapor leaving is\",p2, \"psia with a quality of\",x, \" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 2 of keenan and keynes,\n",
+ "The state of vapor leaving is 31.78 psia with a quality of 22.04 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 167"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the mean state in the line and also the moisture content\n",
+ "#Initialization of variables\n",
+ "ps=216 #psig\n",
+ "pb=29.12 #in of Hg\n",
+ "p2=0.4 #in\n",
+ "t2=244 #F\n",
+ "#calculations\n",
+ "pa=0.491*pb\n",
+ "pabs=pa + p2*0.491\n",
+ "plb=pa+ ps\n",
+ "hcal=1166.5 #Btu/lb\n",
+ "h2=1200.1 #Btu/lb\n",
+ "h3=831.9 #Btu/lb\n",
+ "y=-(hcal-h2)/h3*100\n",
+ "#results\n",
+ "print '%s %.1f %s %.2f %s' %(\"Mean state in the line is\",plb,\" psia with a moisture content of\",y,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mean state in the line is 230.3 psia with a moisture content of 4.04 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_11.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_11.ipynb new file mode 100755 index 00000000..3a5ea2bf --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_11.ipynb @@ -0,0 +1,656 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:902aab6334eafa9c076aa9433328b057ddfc9db48d6910774ed6bb3aa051c994"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 11 - Thermodynamics of Fluid flow"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 181"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the reynolds number\n",
+ "#Initialization of variables\n",
+ "d=2.067 #in\n",
+ "P=20 #psia\n",
+ "R=53.35 \n",
+ "T=600 #R\n",
+ "mu=0.0486 #lb /ft.hr\n",
+ "v=50 #ft/s\n",
+ "#calculations\n",
+ "rho=P*144./(R*T)\n",
+ "Re=d*v*rho*3600./(12*mu)\n",
+ "#results\n",
+ "print '%s %d' %(\"Reynolds number = \",Re)\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Reynolds number = 57398\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 184"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in pressure and the percent change\n",
+ "#Initialization of variables\n",
+ "eps=0.00015 \n",
+ "D=2.067/12. #ft\n",
+ "l=100 #ft\n",
+ "P=20 #psia\n",
+ "R=53.35 \n",
+ "T=600 #R\n",
+ "mu=0.0486 #lb /ft.hr\n",
+ "v=50 #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "rho=P*144/(R*T)\n",
+ "Re=D*v*rho*3600./(mu)\n",
+ "ed=eps/D\n",
+ "print '%s' %(\"From figure 11.5\")\n",
+ "f=0.0235\n",
+ "dp=f*l*rho*v*v /(2*D*g) /144.\n",
+ "change=dp/P *100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Change in pressure =\",dp,\"psi\")\n",
+ "print '%s %.2f %s' %(\"\\n Percentage change in pressure =\",change,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From figure 11.5\n",
+ "Change in pressure = 0.33 psi\n",
+ "\n",
+ " Percentage change in pressure = 1.66 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 190"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final pressure\n",
+ "#Initialization of variables\n",
+ "v1=60. #ft/s\n",
+ "d1=10. #in\n",
+ "d2=15. #in\n",
+ "P=15. #psia\n",
+ "R=53.35\n",
+ "T=540. #R\n",
+ "g=32.17 #ft/s^2\n",
+ "v1=60. #ft/s\n",
+ "#calculations\n",
+ "v2=v1*d1*d1 /d2/d2\n",
+ "rho=P*144/(R*T)\n",
+ "dp=rho*(v2*v2 -v1*v1)/(2*g) /144.\n",
+ "p2=P-dp\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Final pressure =\",p2,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Final pressure = 15.02 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 192"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "J=778 #ft.lb/Btu\n",
+ "D=2.067/12. #ft\n",
+ "l=100 #ft\n",
+ "P=20 #psia\n",
+ "R=53.35 \n",
+ "T=600 #R\n",
+ "mu=0.0486 #lb /ft.hr\n",
+ "v=50 #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "f=0.0235\n",
+ "ds=f*v*v *l /(J*2*D*g*T)\n",
+ "#results\n",
+ "print '%s %.6f %s' %(\"Change in entropy =\",ds,\" Btu/lbm R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.001136 Btu/lbm R\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 193"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the pressure, enthalpy, entropy, temperature and density of the gas\n",
+ "#Initialization of variables\n",
+ "v=210 #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "p=200. #psia\n",
+ "z=5. #ft\n",
+ "x=2.361\n",
+ "h=1210.3\n",
+ "J=778.\n",
+ "#calculations\n",
+ "P0=p + v*v /(2*g*144*x) + z/(144*x)\n",
+ "h0=h + v*v /(2*J*g) +z/J\n",
+ "S=1.5594 #units/lb\n",
+ "S0=S\n",
+ "t0=401.9 #F\n",
+ "v0=2.342 #cu ft/lb\n",
+ "rho0=1./v0\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Pressure =\",P0,\"psia\")\n",
+ "print '%s %.2f %s' %(\"\\n Enthalpy =\",h0,\" Btu/lb\")\n",
+ "print '%s %.4f %s' %(\"\\n Entropy =\",S0,\"units/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Temperature =\",t0,\" F\")\n",
+ "print '%s %.3f %s' %(\"\\n Density =\",rho0,\" lb/cu ft\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Pressure = 202 psia\n",
+ "\n",
+ " Enthalpy = 1211.19 Btu/lb\n",
+ "\n",
+ " Entropy = 1.5594 units/lb\n",
+ "\n",
+ " Temperature = 401.9 F\n",
+ "\n",
+ " Density = 0.427 lb/cu ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 197"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the exit temperature\n",
+ "#Initialization of variables\n",
+ "%matplotlib inline\n",
+ "import matplotlib\n",
+ "from matplotlib import pyplot\n",
+ "import math\n",
+ "p1=40. #psia\n",
+ "t1=80. #F\n",
+ "p2=30. #psia\n",
+ "ar=0.5 #sq ft\n",
+ "v1=200. #ft/s\n",
+ "R=53.35\n",
+ "cp=0.24\n",
+ "g=32.17\n",
+ "J=778.\n",
+ "#calculations\n",
+ "rho1=144*p1/(R*(t1+460))\n",
+ "G=rho1*v1\n",
+ "h10= cp*t1 + p1*p1 /(2*g*rho1*rho1 *J)\n",
+ "t2=78 #F\n",
+ "h2=cp*t2\n",
+ "g2=h10-h2\n",
+ "rho2=math.sqrt(p1*p1 /(2*g*g2*J))\n",
+ "P2=rho2*R*(t2+460)/144. \n",
+ "ds2=cp*math.log((t2+460.)/(t1+460.)) - R/J *math.log(P2/p1)\n",
+ "t3=77 #F\n",
+ "h3=cp*t3\n",
+ "g3=h10-h3\n",
+ "rho3=math.sqrt(p1*p1 /(2*g*g3*J))\n",
+ "P3=rho3*R*(t3+460)/144. \n",
+ "ds3=cp*math.log((t3+460.)/(t1+460.)) - R/J *math.log(P3/p1)\n",
+ "t4=79 #F\n",
+ "h4=cp*t4\n",
+ "g4=h10-h4\n",
+ "rho4=math.sqrt(p1*p1 /(2*g*g4*J))\n",
+ "P4=rho4*R*(t4+460)/144. \n",
+ "ds4=cp*math.log((t4+460)/(t1+460.)) - R/J *math.log(P4/p1)\n",
+ "h5=18.62\n",
+ "t5=h5/cp\n",
+ "Gv=([h4, h2, h3])\n",
+ "Pv=([P4, P2, P3])\n",
+ "Sv=([ds4, ds2, ds3])\n",
+ "pyplot.figure(1)\n",
+ "pyplot.title(\"Fanno line diagram , Enthalpy vs Entropy\")\n",
+ "pyplot.xlabel(\"Entropy\")\n",
+ "pyplot.ylabel(\"Enthalpy Btu/lb\")\n",
+ "pyplot.plot(Sv,Gv)\n",
+ "\n",
+ "pyplot.figure(2)\n",
+ "pyplot.title(\"Fanno line diagram , Pressure vs Entropy\")\n",
+ "pyplot.xlabel(\"Entropy\")\n",
+ "pyplot.ylabel(\"Pressure psia\")\n",
+ "pyplot.plot(Sv,Pv)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Temperature at exit =\",t5,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Populating the interactive namespace from numpy and matplotlib\n",
+ "Temperature at exit = 77.6 F"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stderr",
+ "text": [
+ "WARNING: pylab import has clobbered these variables: ['f']\n",
+ "`%matplotlib` prevents importing * from pylab and numpy\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x5bd2c30>"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x5bf3270>"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 199"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the velocity required\n",
+ "#Initialization of variables\n",
+ "p1=40 #psia\n",
+ "t1=80. #F\n",
+ "p2=30 #psia\n",
+ "ar=0.5 #sq ft\n",
+ "v1=200 #ft/s\n",
+ "R=53.35\n",
+ "cp=0.24\n",
+ "g=32.17\n",
+ "J=778.\n",
+ "t2=78. #F\n",
+ "#calculations\n",
+ "G=40 #lb/sq ft/sec\n",
+ "rho2=144*p2/(R*(t2+460.))\n",
+ "v2=p1/rho2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Velocity =\",v2,\"ft/s\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Velocity = 265 ft/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 206"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the velocity, diameter, specific volume, density and diameter of nozzle\n",
+ "#Initialization of variables\n",
+ "%matplotlib inline\n",
+ "import math\n",
+ "import numpy\n",
+ "import matplotlib\n",
+ "from matplotlib import pyplot\n",
+ "P2=([180., 160., 140., 120., 100., 80., 60., 40., 20.])\n",
+ "k=1.4\n",
+ "p1=200 #psia\n",
+ "t1=240+460. #R\n",
+ "cp=0.24\n",
+ "J=778.\n",
+ "gc=32.2\n",
+ "R=53.35\n",
+ "m=4. #lb/sec\n",
+ "#calculations\n",
+ "b = len(P2)\n",
+ "pr=numpy.zeros(b);\n",
+ "prr=numpy.zeros(b);\n",
+ "T2=numpy.zeros(b);\n",
+ "dt=numpy.zeros(b);\n",
+ "dh=numpy.zeros(b);\n",
+ "v2=numpy.zeros(b);\n",
+ "vol=numpy.zeros(b);\n",
+ "A2=numpy.zeros(b);\n",
+ "dia=numpy.zeros(b);\n",
+ "rad=numpy.zeros(b);\n",
+ "den=numpy.zeros(b);\n",
+ "for i in range (0,b):\n",
+ "\tpr[i] = p1/P2[i]\n",
+ "\tprr[i]=math.pow(pr[i],((k-1)/k))\n",
+ "\tT2[i]=t1 /prr[i]\n",
+ "\tdt[i]= t1 -T2[i]\n",
+ "\tdh[i]=dt[i]*cp\n",
+ "\tv2[i]=math.sqrt(2*gc*J*dh[i])\n",
+ "\tvol[i]=(R*T2[i]) /(P2[i]*144.)\n",
+ "\tA2[i]=m*vol[i]*144. /v2[i]\n",
+ "\tdia[i]=math.sqrt(4/ math.pi *A2[i])\n",
+ "\trad[i]=dia[i]/2.\n",
+ "\tden[i]=1. /vol[i]\n",
+ "\n",
+ "pyplot.figure(1)\n",
+ "pyplot.title ('Velocity vs pressure')\n",
+ "pyplot.xlabel('Pressure in psia')\n",
+ "pyplot.ylabel('velocity in ft/s')\n",
+ "pyplot.plot(P2,v2)\n",
+ "\n",
+ "pyplot.figure(2)\n",
+ "pyplot.title('specific volume vs pressure')\n",
+ "pyplot.xlabel('Pressure in psia')\n",
+ "pyplot.ylabel('specific volume in cu ft/lb')\n",
+ "pyplot.plot(P2,vol)\n",
+ "\n",
+ "pyplot.figure(3)\n",
+ "pyplot.title('Radius vs Pressure')\n",
+ "pyplot.xlabel('Pressure in psia')\n",
+ "pyplot.ylabel('Radius in in')\n",
+ "plot(P2,rad)\n",
+ "#results\n",
+ "print '%s' %('Velocity in ft/s')\n",
+ "print (v2)\n",
+ "print '%s' %('Specific volume in cu ft/lb')\n",
+ "print (vol)\n",
+ "print '%s' %('Density in lb/cu ft')\n",
+ "print (den)\n",
+ "print '%s' %('Diameter of nozzle in in')\n",
+ "print (dia)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Populating the interactive namespace from numpy and matplotlib\n",
+ "Velocity in ft/s"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "[ 499.61112617 721.04131991 903.0653517 1069.14361272 1229.75524527\n",
+ " 1392.40468067 1565.24666139 1761.46433404 2014.34825773]\n",
+ "Specific volume in cu ft/lb\n",
+ "[ 1.39805384 1.52076257 1.6729549 1.86768387 2.12745999 2.4950706\n",
+ " 3.06425423 4.09358926 6.71623201]\n",
+ "Density in lb/cu ft\n",
+ "[ 0.71528003 0.65756484 0.59774475 0.53542252 0.47004409 0.40079026\n",
+ " 0.32634368 0.2442844 0.14889301]\n",
+ "Diameter of nozzle in in\n",
+ "[ 1.43255795 1.24370371 1.16559809 1.1318789 1.12638708 1.14637045\n",
+ " 1.19822204 1.30551392 1.56373036]\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7b96290>"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "iVBORw0KGgoAAAANSUhEUgAAAX4AAAEZCAYAAACQK04eAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmcHFW5//HPNwtbCCSQQNiTsIhC2A0g2wgY9j3KJip4\n9Ypo8KqoeIUE8YeCclH0KirigqyyLxfZZGTfAiGBsCcBEiAJSwibmOX5/XFqmMpkZtLTM93VPf19\nv179mq7qmjpPz/Kc06dOnaOIwMzMGkefogMwM7PqcuI3M2swTvxmZg3Gid/MrME48ZuZNRgnfjOz\nBuPEb90m6W1Jw7PnK0q6XtI8SZdLOkrSzVWMpUnSS9Uqz6we9Ss6AKt/ETEwtzkWWANYLSIWZ/su\nrn5UZtYRt/itp20APJNL+lYlkgptyClTZAxWGif+XkjSdyXNlDRf0lOSds/2T5B0haRLs9cmStoi\n931rS7pS0hxJ0yR9PfdaH0nfl/Rc9r0PS1one22xpA0lnQacAhyedf8cJ+kLku7KnWczSbdKel3S\nq5JObif+7SW9kk8ikg6R9Fj2fHlJP5c0K3ucI2m5Dn4WiyWNzG3/SdLp2fOm7Od0UvaeX5Z0sKR9\nJT2Txfi93PdK0veyn8Frki6TNLiDcp+UtF9uu5+kuZK2krSCpL9m53hT0oOS1ujgPDOyMp+Q9Iak\nCyQt3yb+70h6BfhDZzF2Vm72e3o++91Ok3RU7m/mwlw8w7OfaZ9su1nSjyTdA7wLjJC0ae53/JSk\nT7f33qw4Tvy9jKSPACcA20XEKsAYYEbukAOBy4HBpC6YayT1zf6RrwceBdYG9gC+IWlM9n3fAo4A\n9snOexzwfu68ERHjgTOASyNiYERc0Ca2gcBtwP8BawEbAbe3fQ8R8QApieyR230UcFH2/L+B0cCW\n2WM08INSfj5AZI8WawLLZ/GcCpwPHA1sDewCnCppg+zYcaSf367Z8W8C/9tBORcDR+a29wLmRMQk\n4PPAKsC6wGrAf7Lkz7Kto0i/xw2BTVjyva5J+l2un52nsxjbLVfSAOAXwN7Z73ZHYFL2PaXM6fJZ\n4D+AlYHXgVuBvwJDSX8zv5b00RLOY9USEX70ogcpmc4mJc3+bV6bANyb2xbwMrAzsD3wQpvjTwYu\nyJ4/DRzQQZmLgZG5Mi7MvfYF4K7s+ZHAxBLfx+nAH7LnA4F3gPWy7edISarl2DHA9Ox5E/BSe7Fl\n238ETs8d+x6gXDmLgY/njn8YODB7/iSwe+61tYB/A33aiX9DYD6wQrZ9EfCD7PmxwD3AqBJ+DtOB\nL+e29wGey8X/AbBc7vWpHcTYt6NygQGkCuJQYMV2/mbyv8/h2c+oT7Z9BzAh9/rhwJ1tzvFb4NSi\n/zf8aH24xd/LRMRzwDdI/7CzJV0iaa3cITNzx0a2vTapxbh21gXwpqQ3SYm/pQtiXeD5boa3HjCt\nxGMvBg7NunAOJVUYLaN11gZeyB37YravHK9nPwdobXXPzr3+PqklC+n6xdW5n89UYCGp1b2EiHie\nVFEcKGkl4ABaL3JfCNwMXJp1VZ2pzvvn86OU2r7XuRHx79z28A5iXKOjciPiXVLC/grwsqQbsk+O\npcrHtwGwfZu/o6No52dkxXHi74Ui4pKI2IX0TxjAmbmX12t5knXvrAvMIv3zTo+IwbnHKhGxf3b4\nS6RPE93xIjBymUel9/AkKbnvQ0oc+ZFBL5MSXIv1s33teQ9YKbe9FqV1X7TnRdInjfzPaKWIeKWD\n4y8hfco5CHgiIqYBRMTCiPhhRGwGfALYH/hcJ+Wu3+Z5/r22fS8dxthZuRFxS0SMAYYBTwG/z873\nLkv+/Ia1E18+hheBf7Ypf2BEnNDJ+7Mqc+LvZSRtImn37ALgB8C/gEW5Q7bNLpT2I30y+BdwP/AQ\n8HZ2oXDFrN9/c0nbZd93PnC6pI2yC4hbSFqti+HdCKwl6USlC7QDJY3u5PiLsxh3Af6W238J8ANJ\nQyQNIfXNX9jO90Pqqz46ez97k/q+y3UecIak9QEkDZV0YCfHX0rq2/8KuYoruyg7SlJf4G1gAUv+\njvIEfFXSOtnP+7+z83Y5xo7KlbSGpIOyvv4FpGTfEs8kYFdJ60lalfQpsL0YW9wAbCLps5L6Z4+P\nS9q0k5itypz4e5/lgR8Dc4FXgCG0/rMGcC3pY/0bpIuYh0bEoohYRGoBbkXqjpkL/I50MRDgf0gX\nhW8B3iK1CFfInZfc83a3I+Jt4FOkbo9XgGdI/dQduYSUqG+PiDdy+39E6nufnD0ezvbly2xxYlZe\nS5fD1W3KaNti7uzTwC+A64BbJM0H7iNdWG5XRLwK3Eu6WHpZ7qVhpIrsLVJXTDMdV1xBqjRuIXW1\nPUvH73VZMXZUbh/gv0if/F4nVbTHZ+/h1iz2yaTGwfXtlPnhdkS8Q7rmckR2vldIf4/tjrqyYrRc\n1KrMyVM/Yb51MhI4JSLOrVih1iFJ44GNIuKYomOx0kiaDnwxIv5RdCzWe1T0ho+IeJo0LK6lP3kW\nS7e4rHp8c42ZVbWrZ0/g+dzIDKu+tt0wZtaAKtrVs0RB0gXAwxHx66oUaGZm7apK4s/GYs8CPhYR\ncyteoJmZdahakzrtQ7oBZ4mkL8ndDmZmZYiIsq/ZVauP/0jS0LylFH3rcimP8ePHFx6D43ScjtMx\ntjy6q+KJP7spZE/gqkqXZWZmy1bxrp5I84AMqXQ5ZmZWGt+5W4KmpqaiQyiJ4+xZjrNn1UOc9RBj\nT6jacM52C5eiyPLNzOqRJKIOLu6amVmNcOI3M2swTvxmZg3Gid/MrMEUnvgnTVr2MWZm1nMKT/y/\n/GXREZiZNZbCh3MOGhQ8+ywM8S1eZmYlqfvhnIceCr///bKPMzOznlF4i//RR4MDDoBp06B//8JC\nMTOrG3Xf4t9qKxgxAq65puhIzMwaQ+GJH2DcOF/kNTOrlppI/AcfDDNmwKOPFh2JmVnvVxOJv18/\n+OpX3eo3M6uGwi/utpT/2muw8cbwzDMwdGhhIZmZ1by6v7jbYsgQD+00M6uGmmnxQ5q+wUM7zcw6\n12ta/JCGdo4c6aGdZmaVVFOJH9LQznPPLToKM7Peq+YS/0EHwQsvwCOPFB2JmVnvVHOJ30M7zcwq\nq6Yu7rbw0E4zs471qou7LYYMgcMO89BOM7NKqMkWP8Bjj8F++8H06R7aaWaW1ytb/ABbbgkbbQRX\nX110JGZmvUvNJn6Ar3/dQzvNzHpaTSf+gw6CF1+EiROLjsTMrPeoaOKXNEjSFZKelDRV0g5d+f5+\n/eCEEzy008ysJ1X04q6kPwP/jIgLJPUDBkTEW7nXO7y42+L111Nf/9NPwxprVCxUM7O6UbMXdyWt\nCuwSERcARMTCfNIv1eqrw9ixHtppZtZTKtbil7QV8FtgKrAlMBE4MSLeyx2zzBY/wOTJsM8+aZUu\nD+00s0ZXsy1+oB+wDfDriNgGeBf4Xjkn2mKLdCfvVVf1ZHhmZo2pXwXPPROYGREPZdtX0E7inzBh\nwofPm5qaaGpqavdk48bB2WfD4Yf3eJxmZjWtubmZ5ubmHjtfpS/u3gn8R0Q8I2kCsGJEfDf3ekld\nPQALF8KGG6ZW/7bbViZeM7N60N2unkon/i2B84HlgOeBY7s6qifvrLNg6lT40596OlIzs/pR04l/\nmYV3MfG/8UZq9Xtop5k1slq+uNvjVlstDe383e+KjsTMrH7VVYsfPLTTzKyhWvyQhnZusglceWXR\nkZiZ1ae6S/yQhnZ6/h4zs/LUZeI/4ACYNQsefrjoSMzM6k9dJn4vyG5mVr66u7jbomVo51NPwZpr\n9nBgZmY1rOEu7rZYbTX49Kc9tNPMrKuW2eKXNAQYD+wMBHAX8MOIeL3bhXejxQ8wZQrsvbeHdppZ\nY6lGi/9SYA5wKDAWmAtcVm6BPWnUKPjIRzy008ysK0pp8T8eEZu32TclIkZ1u/ButvgBrr4afvpT\nuPfe7kZjZlYfqtHiv0XSkZL6ZI/DgVvKLbCnHXAAvPwyPPTQso81M7NOWvyS3iH16QMMABZnz/sA\n70bEwG4X3gMtfkgt/ilT4C9/6fapzMxqXkPNztkRD+00s0ZSscQvaZvOvjEiHim30FwZPZL4Af7z\nP2HddeGUU3rkdGZmNauSib+Z1q6epUTEJ8stNFdGjyX+xx+HMWPS0M7lluuRU5qZ1aRKJv51ImJW\n2ZGVUngPJn6A3XeHL30Jjjyyx05pZlZzKjmq5/eSHpD0E0lNkiq5MHuPGDcOzj236CjMzGpbpxd3\nJa0INAH7AJ8AXgJuAv4eES92u/AebvEvWpQu8l5+OYwe3WOnNTOrKVUd1SNpJKkS2AsYFhHdSq89\nnfgBfvYzeOwxuPDCHj2tmVnNqHjil3RmRHy3zb6zgB9ExL/LLTg7T48n/jffhJEj4cknYdiwHj21\nmVlNqMadu2Pa2bdPd5N+pQweDJ/5jGftNDPrSGejeo4HvgpsCDyfe2kgcE9EHN3twivQ4gcP7TSz\n3q2Swzl3BmYCPwG+C7QU8nZPTMmclVGRxA+wxx7wxS/CUUdV5PRmZoWpZOKfGBHbSno0IrYuO8LO\nCq9g4r/2Wvjxj+H++ytyejOzwlQy8T8ATAYOIs3Jny8kImJcuYXmyqhY4l+0CDbaCC67zEM7zax3\nqeTF3f2B24H3gYnZ4+Hc85rWty+ccIIXZDcza6uU4ZxbRcSkihRewRY/eGinmfVOFR/OWamkXw2D\nB8Phh8Nvf1t0JGZmtaPi8/FLmgHMBxYBC/J3+1a6xQ/wxBOw557wwgse2mlmvUM1buDqrgCaImLr\n7k7xUI7NNkuPv/2t2iWbmdWmUvr4x7ezOyLihyUVIE0Htmtv7H81WvwA110HZ5zhoZ1m1jtUo8X/\nLvBO9lhEmqRteBfKCOA2SQ9L+lKXI+wB++0Hs2fDAw8UUbqZWW1Z5hz7EfGz/LaknwK3dKGMnSLi\nFUlDgVslPRURd7W8OGHChA8PbGpqoqmpqQunLk3fvvC1r6Whndtv3+OnNzOrqObmZpqbm3vsfF2+\nuCtpNeDBiNioy4WlbqN3IuLsbLsqXT3QOrRz6lRYa62qFGlmVhEV7+qRNCX3eAJ4GvhFicGtJGlg\n9nwAaabPKeUG2x2DB8MRR3hop5lZKRd3h+c2FwKzI2JBSSeXRgBXZ5v9gIsi4se516vW4ofU2t9j\nDw/tNLP6Vo2FWHYApkbE/Gx7FeCjEdHtS6XVTvyQxvQfeywc3e1Jpc3MilGNUT3nkUb0tHg321eX\nvCC7mTW6km7giojFueeLgL4Vi6jC9tsP5s710E4za1ylJP7pksZJ6i9pOUknAtMqHViltAztdKvf\nzBpVKX38awLnAp/Mdt0OnBgRc7pdeAF9/ADz5sGIER7aaWb1qeIXdyupqMQPcPzxsOaakLt/zMys\nLjjxl2nqVNh99zS0c/nlCwnBzKws9TA7Z0362Mdg1CjP2mlmjadhEz+koZ2/+AUU+KHHzKzqSrm4\nuwJwGGlGzpZJ3UqelnkZ5y6sqwfSguybbAIXXQQ77FBYGGZmXVKNrp5rgQOBBbROz/xuuQXWEg/t\nNLNGVEqL//GI2LwihRfc4ofWoZ1PPAFrr11oKGZmJalGi/9eSVuUW0CtGzQIjjzSs3aaWeMopcX/\nJLARMB34INsdEdHtyqAWWvzgoZ1mVl+qMTvn8Pb2R8SMcgvNnbsmEj/AmDFwzDHpYWZWyyrW1ZNN\nvwwwv4NHr9Iya2eN1ENmZhXTYYtf0o0RsZ+kGaQF0/MiIkZ2u/AaavF7aKeZ1QtP2dCDzjkHHnoI\nLr646EjMzDrmxN+DPLTTzOqB5+rpQYMGwVFHwXl1u76YmdmyucXfxpNPwic/6aGdZla7qtLil7SL\npGOz50MljSi3wFr30Y/CFlvAZZcVHYmZWWUsM/FLmgB8Bzg527Uc8NcKxlQ4D+00s96slBb/IcBB\nZBOzRcQsYGAlgyravvumC7333190JGZmPa+UxP9BRCxu2ZA0oILx1IQ+fTxrp5n1XqUk/r9J+i0w\nSNKXSYutn1/ZsIp37LFw880wa1bRkZiZ9aySRvVIGgOMyTZvjohbe6TwGhzVk/e1r8HgwXD66UVH\nYmbWqmo3cElalbQCVwBExBvlFpo7Z00n/qeegt12S0M7V1ih6GjMzJKKD+eU9J+SXgUmAw8DE7Ov\nvd6mm8JWW8HllxcdiZlZzyllWubngB0i4rWyCpD6kiqKmRFxQJvXarrFD3DjjfDtb8Pdd8Pqqxcd\njZlZdW7gmga8X24BwInAVJae4bMu7LsvHHAA7LILvPRS0dGYmXVfvxKO+R5wn6T7gH9n+yIixi3r\nGyWtC+wL/D/gm2VHWSAJzjoLhg6FnXdOI3023bToqMzMyldK4v8dcBswBVgMiNJb7+cAJwGrLOvA\nWnfSSSn5NzXBddfB6NFFR2RmVp5SEn/fiOhya13S/sCciHhUUlNHx02YMOHD501NTTQ1dXho4b7w\nhdTPv99+ac7+T32q6IjMrBE0NzfT3NzcY+cr5eLuGcALwHW0Lra+zOGc2fcdAywEViC1+q+MiM/l\njqn5i7vtuftuOOywdGfv4YcXHY2ZNZpqLLY+g3a6diKi5Bk6Je0GfLseR/V0ZPLkdOH35JPhhBOK\njsbMGkl3E/8yu3oiYni5J297qh46T03YYgu46y4YMwbmzIEJE9KFYDOzWldKi//ztN/i/0u3C6/j\nFn+L2bNhn33SAu2//CX07Vt0RGbW21Wjq+dXtCb+FYHdgUciYmy5hebOXfeJH2D+fDj4YBgyBC68\n0Ct3mVllVX2xdUmDgMsiYq9yC82dq1ckfoB//QuOPjpVAlddBQN79YoFZlakIhZbfw/otUsvlmuF\nFdKcPiNGwO67w9y5RUdkZta+Urp6rs9t9gE+BlweEd/tduG9qMXfIgJOOQX+9je45RbYYIOiIzKz\n3qbio3qAs3PPFwIvRIRnremABD/6UesUD3//O2y2WdFRmZm16nIff48W3gtb/HkXXQTf+hZcfTXs\nuGPR0ZhZb1Gxi7uS3qHjsfcREd2ef6e3J36Am26Cz30O/vKXNOzTzKy7qj6qpyc1QuIHuO++NNzz\n7LPhs58tOhozq3fV6ONH0pbArqRPAHdFxGPlFtiIdtwR/vGP1OJ/7TX4xjeKjsjMGlkpSy+eCFwE\nDAXWBP4qaZlz8duSNtssTe523nnw/e+n0T9mZkUoZTjnFNLSi+9m2wOA+yNiVLcLb5Cunry5c9Pk\nblttBb/5DfQr6TOXmVmrat3AtbiD59ZFQ4embp8ZM+Azn0l3/JqZVVMpif+PwAOSJkg6DbgfuKCy\nYfVuAwfCDTdA//6w997w1ltFR2RmjaSkUT2StgV2pvXi7qM9UngDdvXkLVoE48bBvfemG73WXLPo\niMysHlRjds5fApdExL3lFtLJuRs68UO6yPvDH6ZZPW+5BUaOLDoiM6t11ejjnwj8QNI0ST+TtF25\nhdnSJBg/Hr75Tdhll7Syl5lZJZV8A5ek1YFDgSOB9SNio24X7hb/Ei67DL7+dbjyylQJmJm1p5rT\nMm8EbApsADxZboHWscMPT/P7HHooXHdd0dGYWW9VSh//WcAhwDTgUuDqiJjXI4W7xd+uhx6CAw6A\nH/8Yjj226GjMrNZUY8qG54EdI+K1cguxrvn4x6G5OQ31fO01OOmkoiMys97Ek7TVsJkzYa+90p2+\nZ52VLgSbmXl2zl7u9ddh//3hIx+B88/3FA9mVsyau1ZFq68Ot90Gs2fDIYfAe+8VHZGZ1btSZufc\nUdIque1VJG1f2bAsb8CANMpn1VVT18+8Hrm0bmaNqpQW/2+Ad3Lb7wLnVSYc60j//mkVr223hV13\nhVdeKToiM6tXJXX1RMTi3PNFQN+KRWQd6tMHzjkHjjgCdtoJnn226IjMrB6VkvinSxonqb+k5bKF\nWaZVOjBrn5QWcjn5ZNhtN3jkkaIjMrN6U0ri/wqwEzALmAnsAHy5kkHZsn3pS/CrX6Wx/nfcUXQ0\nZlZPKjqcU9IKwD+B5YHlgGsj4uTc6x7O2U133JGmejjvvDTVg5n1fhUbxy/puxFxZjYtc1sRESWt\nuytppYh4T1I/4G7g2xFxd/aaE38PeOSRNNb/W99Kk7wtt1zREZlZJVVyHP/U7OtE4OHcY2L2KElE\ntIw8X450UfiNrodpndlmG7jzzjSf/0c+An/4AyxYUHRUZlarOmvxXxgRx0j6RkT8vOwCpD7AI8CG\nwG8i4ju519zi72H33JPm958+HU45BT77Wd/ta9bbVLKrZyqwJ/B3oKnt6xHRpZa7pFWBm4HvRURz\nti/Gjx//4TFNTU00NS1VlJXhzjvh1FNh1qz09cgjXQGY1avm5maam5s/3D7ttNMqlvjHAccDI4GX\n27wcEdHlRQIlnQK8HxE/y7bd4q+wO+5IiX/OnPRJ4PDDoa/vwjCra9VYc/e8iPhKWSeXhgALI2Ke\npBVJLf7TIuL27HUn/iqIgNtvTxXAvHmpAvj0p9MNYWZWfyrZ1bNKRMzPllxc6qBSunokjQL+TLqI\n3Ae4MCJ+mnvdib+KItIF4FNPhXffhQkT0hBQVwBm9aWSif/GiNhP0gzaT/wjyi00V4YTfwEi4Kab\nUgWwYEGqAA4+2PP9m9ULz8dvZYuAG25IXT8RcNppaclHVwBmta0affyHAHe0rLMraRDQFBHXlFto\n7txO/DUgAq69NlUA/funCmDffV0BmNWqaiT+xyJiyzb7JkXEVuUWmjuPE38NWbwYrr46VQADBqQK\nYK+9XAGY1ZpqrMDV3sk9ILAX6tMHDjsMJk9O0z9885vwiU/ArbemTwVm1juU0uL/I/Am8L+kSuAE\nYHBEfKHbhbvFX9MWLYLLL08t/yFD4Ic/hE9+0p8AzIpWja6elYFTgD2yXbcCP4qId8stNHduJ/46\nsGgRXHJJqgDWWSd93W23oqMya1xVG9UjaUBPJPs253TiryMLF8JFF6WW//DhqQLYeeeiozJrPBXv\n45f0iWzenqey7S0l/brcAq1+9esHn/88PPUUHH00HHMMjBkD991XdGRm1hWlXNz9ObA38BpARDwG\n+IN+A+vfH447Dp5+Ok39cMQRsM8+8OCDRUdmZqUodbH1F9vsWliBWKzOLLdcWgLymWfgoIPSiKD9\n94eJJa/WYGZFKCXxvyhpJ4BssfVvA09WNiyrJ8svD1/5Cjz7bFoD+MADU0Xw6KNFR2Zm7Skl8R9P\nGsK5DmnB9a2zbbMlrLACfO1r8NxzsPvusN9+aRK4yZOLjszM8jxXj1XMe++lReDPOgt22SXdEbz5\n5kVHZVb/qjGqZ0NJ10t6TdJcSddK6vIiLNZ4Vlop3f37/PMwejTssUe6EPzww74T2KxIpdzA9QDw\nK+DSbNfhwNcjYvtuF+4Wf0N55x341a/g/PPTTWFjx6YLwqNHe00As66oxp27kyNiizb7lpq4razC\nnfgbUkTq97/iivR4551UARx2WJobyEtDmnWuGon/TGAecEm263BgMHAWdH3R9TbnduI3pk5trQTm\nzk0XhA87DHbd1QvEm7WnGol/Bu2swJUpa9H13Lmd+G0JzzwDV16ZHi++mFYGO+ywNEqof/+iozOr\nDV6By3qt6dNbK4Fnnkmrg40dC5/6VLp3wKxRVaPF/2ng5mzh9VNI4/h/FBGPlFto7txO/FaSl16C\nq65KlcCUKWmFsLFj0w1jK65YdHRm1VWNxD8lIkZJ2hn4EfAz4NSIGF1uoblzO/Fbl73ySlop7Mor\n09DQvfZKlcC++8LKKxcdnVnlVSPxT4qIrST9BJgSERdJejQiti630Ny5nfitW+bOTesFX3EF3Htv\nuldg7Ng0Z9CqqxYdnVllVCPx30iaquFTpG6efwEPeDin1Zo33oDrr0+VwD//mUYFjR2b5g5abbWi\nozPrOdVI/ANI0zJPjohnJa0FjIqIW8otNHduJ36riPnz4YYbUiVw++2www6pEjj4YBg6tOjozLrH\no3rMluGdd+Cmm1IlcPPNsM02qRI45BBYa62iozPrOid+sy54//2U/K+4Am68MU0aN3ZsumlsvfWK\njs6sNE78ZmX64AO47bY0Oujaa2HjjVvnDxoxoujozDrmxG/WAxYsgDvuSJXA1Ven1v/ee8NOO8GO\nO8LgwUVHaNaqphO/pPWAvwBrkKZ9+F1EnJt73Ynfas7ChXD33fCPf8A996S1hDfYIFUCO+0EO++c\nPhGo7H87s+6p9cQ/DBgWEZMkrQxMBA6OiCez1534reYtWACPPZYqgZbH4sWtFcFOO8HWW3suIaue\nmk78SxUmXQP8MiJuz7ad+K3uRMALL7RWAnffDdOmwXbbtX4i2HFHGDSo6Eitt6qbxC9pOPBPYLOI\neCfb58RvvcK8eXD//a2VwUMPwfDhS34qcPeQ9ZS6SPxZN08zaXK3a3L7nfitV8p3D919d/oaseR1\ngq22cveQlafmE7+k/sANwE0R8fM2r8X48eM/3G5qaqKpqami8ZgVIQJmzFjyOsH06a3dQy2jh9w9\nZO1pbm6mubn5w+3TTjutdhO/JAF/Bl6PiP9q53W3+K1htXQPtXwiePhhdw9ZaWq6xZ9N5XwnMJnW\nVbxOjoi/Z6878ZtlFiyASZOW/FQAS1YE7h4yqPHEv8zCnfjNOtTSPdTyieCee9K2u4fMid+sgcyb\nB/fdt+TooWHDYNSoNO/Q5pun5xtv7E8GvZkTv1kDW7gQnnsuLUf5+OPpMWVKWqpy442XrhDWXx/6\n9Ck6ausuJ34zW8p778FTTy1dIbz1Fmy22dIVwhprFB2xdYUTv5mV7M034Yknlq4Q+vVrrQRaKoTN\nNoNVVik6YmuPE7+ZdUtEWsC+pRJoqRCmTk2rlbWtEDbdFJZfvuioG5sTv5lVxKJF6SazthXCtGnp\n/oK2FcLIkdC3b9FRNwYnfjOrqg8+gKefXrpCmDMHPvrRJa8dbL45rL22b0LraU78ZlYT5s9P3UNt\nK4QFC9L1go03Tp8KNtwwPUaOhNVXd6VQDid+M6tpc+akC8rPPZe6iZ5/vvUR0VoJ5L9uuGFaBa1f\nv6Kjr01RCx3vAAAJv0lEQVRO/GZWt954I1UA+Qqh5fns2Sn5t/2U0PJ14MCioy+OE7+Z9UoffJCm\nqGivYpg2DVZeeelPCS3Phw3r3TeqOfGbWcNpGYLaUiG0rRjefjuNPGqvG2nEiPofjurEb2bWxttv\nt34yaFsxvPRSulO5ve6jerng7MRvZtYFCxem5J+vEPJfP/gA1l2388fQocV2JTnxm5n1oLffhlmz\n0mPmzPYf8+en+xPWWafjymHYsMqNSnLiNzOrsvffh5dfXrpCyFcWr72WupQ6qhjWWSdVHuVcb3Di\nNzOrQQsWpAvQHX1qmDkTXn0VBg/uvFtpnXVgpZWWPHd3E79vjzAzq4D+/dP6B+uv3/ExixalG9za\nVgiPP77kp4gBA5asDLrLid/MrCB9+8Jaa6XHxz/e/jERqdsoXzF0l7t6zMzqTHe7enrxvW1mZtYe\nJ34zswbjxG9m1mCc+M3MGowTv5lZg3HiNzNrME78ZmYNxonfzKzBVDTxS7pA0mxJUypZjpmZla7S\nLf4/AntXuIyKa25uLjqEkjjOnuU4e1Y9xFkPMfaEiib+iLgLeLOSZVRDvfwxOM6e5Th7Vj3EWQ8x\n9gT38ZuZNRgnfjOzBlPx2TklDQeuj4hR7bzmqTnNzMpQtwuxdCdwMzMrT6WHc14C3AtsIuklScdW\nsjwzM1u2QhdiMTOz6qvaxV1J60m6Q9ITkh6XNC7bv5qkWyU9I+kWSYOqFVNnJPWV9Kik67PtmotT\n0iBJV0h6UtJUSdvXWpySTs5+51MkXSxp+VqIsb2bCzuLK3sfz0p6StKYguP8afY7f0zSVZJWrcU4\nc699S9JiSavVapySvp79TB+XdGYtxilptKQHs7z0kKSP517rWpwRUZUHMAzYKnu+MvA08FHgLOA7\n2f7vAj+pVkzLiPebwEXAddl2zcUJ/Bk4LnveD1i1luIEhgPTgOWz7cuAz9dCjMAuwNbAlNy+duMC\nPgZMAvpn7+k5oE+BcX6qpXzgJ7UaZ7Z/PeDvwHRgtVqME/gkcCvQP9seWqNxNgN7Zc/3Ae4oN86q\ntfgj4tWImJQ9fwd4ElgHOJCUwMi+HlytmDoiaV1gX+B8oOUCdE3FmbXydomICwAiYmFEvEVtxTkf\nWACsJKkfsBLwMjUQY7R/c2FHcR0EXBIRCyJiBukfa3RRcUbErRGxONt8AFi3FuPM/A/wnTb7ai3O\n44EfR8SC7Ji5NRrnK6TGHcAgYFa5cRYyjj8b4rk16Y92zYiYnb00G1iziJjaOAc4CVic21drcY4A\n5kr6o6RHJP1e0gBqKM6IeAM4G3iRlPDnRcSt1FCMbXQU19rAzNxxM0mNllpwHPB/2fOailPSQcDM\niJjc5qWaihPYGNhV0v2SmiVtl+2vtTi/B5wt6UXgp8DJ2f4ux1n1xC9pZeBK4MSIeDv/WqTPLYVe\nbZa0PzAnIh6ltbW/hFqIk9S1sw3w64jYBniX9IfxoaLjlLQh8A3Sx8+1gZUlfTZ/TNExdqSEuAqP\nWdJ/A/+OiIs7OayQOCWtBHwfGJ/f3cm3FPnz7AcMjogdSA2+yzs5tsg4/wCMi4j1gf8CLujk2E7j\nrGril9SflPQvjIhrst2zJQ3LXl8LmFPNmNrxCeBASdOBS4DdJV1I7cU5k9SaeijbvoJUEbxaQ3Fu\nB9wbEa9HxELgKmDHGosxr6Pf8SxSX3WLdWn9mF0ISV8gdUcendtdS3FuSKrwH8v+l9YFJkpak9qK\nE9L/0lUA2f/TYklDqL04R0fE1dnzK2jtzulynNUc1SNSjTU1In6ee+k60gU/sq/XtP3eaoqI70fE\nehExAjgC+EdEHEPtxfkq8JKkTbJdewJPANdTO3E+BewgacXs978nMJXaijGvo9/xdcARkpaTNILU\nNfBgAfEBIGlvUsv0oIj4V+6lmokzIqZExJoRMSL7X5oJbJN1pdVMnJlrgN0Bsv+n5SLiNWovzuck\n7ZY93x14Jnve9TircYU6u/K8M6nPfBLwaPbYG1gNuC17E7cAg6oVUwkx70brqJ6aixPYEngIeIzU\nYlm11uIkXdh7AphCumDavxZiJH2aexn4N/AScGxncZG6LZ4jVWZ7FRjnccCzwAu5/6Nf11CcH7T8\nPNu8Po1sVE+txZn9TV6Y/Y1OBJpqKM783+d2pOuik4D7gK3LjdM3cJmZNRjPzmlm1mCc+M3MGowT\nv5lZg3HiNzNrME78ZmYNxonfzKzBOPFb4SQtyqaanSLpckkrFh3TskhaW9LfKnj+bSX9olLnt8bm\ncfxWOElvR8TA7PlfgYkRcU7u9X6RpnyoRixVK8usKG7xW625C9hI0m6S7pJ0LfC4pD7ZAiQPZguQ\nfBnSnDqS7sx9YtgpO/ZP2fZkSSdmxzZL2jZ7PiSbQwZJX5B0naTbgVslrZQthPFANvPpgW2DlDS8\nZZGM7PuvknST0iIuZ7Y9PjtuhqQzs5geyCaxQ9Kns1gnSWrO9jWpdRGg0ZLuzWK5JzdNh1lZCl1s\n3Swvm7N/X1qnGd4a2CwiXsgS/byIGC1peeBuSbcAhwJ/j4gzsvmABmTft3ZEjMrOu0p2vs5m3Nwa\nGBUR8ySdAdweEccprcL1gKTbIuK9TsLfEtiKdIv905LOjYi2E2VF9h62kHQM8HPgAOAUYExEvJKL\nNe9J0toLiyTtCZwBjO0kFrNOOfFbLVhR0qPZ8ztJ083uBDwYES9k+8cAoyS1JLxVgI1IcxVdkM38\nek1EPCbpeWCkpHOBG0nz7izLrRExL1fWAZK+nW0vT5r98OlOvv/2yKYZlzSVNDNlezMkXpJ9vZS0\n7gPAPcCfJV1ONktkG4OAv0jaiFR59C/h/Zh1yInfasH7EbF1fkdqvPNum+O+FmkhF9ocuwuwP/An\nSf8TERdK2hLYC/gK8Bngi8BCWrs3V2hzmrZlHRoRz3bhPXyQe74I6FvC9wRARBwvaTSwH2nq4m3b\nHHc6qWI5RNIGpCX4zMrmPn6rFzcDX826g5C0SdYXvz4wNyLOJy2VuY2k1YG+EXEVqRulpVKZQZrh\nEDrvKrkZGNeyIWnrTo7tSEeLjhye+3pvdv4NI+LBiBgPzKV1KcUWq5BmaoQ0S6NZt7jFb7WgvX73\ntv3x55O6Tx7J+vLnAIcATcBJkhYAbwOfIy0790dJLQ2blpXJfgZcnl0vuDF3/rZlnQ78XNJkUuNo\nGmk93o7ibu/aQUfXEgZLegz4F3Bktu8sSRuTKovbImJyNu96yznOInUF/aBN3GZl8XBOsyrJRhFt\nG2ktYrPCuKvHrHrcyrKa4Ba/mVmDcYvfzKzBOPGbmTUYJ34zswbjxG9m1mCc+M3MGowTv5lZg/n/\n4hzkiETAuWYAAAAASUVORK5CYII=\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x5d968d0>"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\nRK5CYII=\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x5d7e810>"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 210"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the nozzle exit area\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=200. #psia\n",
+ "t1=480. #F\n",
+ "eff=0.95\n",
+ "g=32.2 #ft/s^2\n",
+ "J=778.\n",
+ "mf=3.4 #lb/s\n",
+ "#calculations\n",
+ "print '%s' %(\"From steam tables,\")\n",
+ "h1=1257.8 \n",
+ "h2=1210.5 \n",
+ "dh=eff*(h1-h2)\n",
+ "ve=math.sqrt(2*g*J*dh)\n",
+ "h3=h1-dh\n",
+ "vs=3.961\n",
+ "Ae=mf*vs/ve *144.\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Nozzle exit area =\",Ae,\"sq.in\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam tables,\n",
+ "Nozzle exit area = 1.292 sq.in\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 216"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final temperature, pressure and exit velocity in both cases\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "import numpy\n",
+ "from numpy import roots\n",
+ "R=53.35\n",
+ "v=300. #ft/s\n",
+ "p=100 #psia\n",
+ "t1=200 #F\n",
+ "q=500 #Btu/s\n",
+ "gc=32.2 #ft/s^2\n",
+ "J=778\n",
+ "#calculations\n",
+ "rho1=p*144/(R*(460.+t1))\n",
+ "s=([1., -0.206, 0.00535])\n",
+ "vec=numpy.roots(s)\n",
+ "rho2=vec[0]\n",
+ "t2=(236.6 - 0.301/rho2/rho2)/0.248\n",
+ "P2=rho2*R*(t2+462) /144.\n",
+ "v2=math.sqrt(2*gc*J*(236.6-0.248*t2))\n",
+ "v22=rho1*v/rho2\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Final temperature =\",t2,\" F\")\n",
+ "print '%s %.1f %s' %(\"\\n Final pressure =\",P2,\" psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Exit velocity in case 1 =\",v2,\"ft/s\")\n",
+ "print '%s %.1f %s' %(\"\\n Exit velocity in case 2 =\",v22,\" ft/s\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Final temperature = 914.6 F\n",
+ "\n",
+ " Final pressure = 89.5 psia\n",
+ "\n",
+ " Exit velocity in case 1 = 699.7 ft/s\n",
+ "\n",
+ " Exit velocity in case 2 = 699.0 ft/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 20
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_11_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_11_1.ipynb new file mode 100755 index 00000000..3a5ea2bf --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_11_1.ipynb @@ -0,0 +1,656 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:902aab6334eafa9c076aa9433328b057ddfc9db48d6910774ed6bb3aa051c994"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 11 - Thermodynamics of Fluid flow"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 181"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the reynolds number\n",
+ "#Initialization of variables\n",
+ "d=2.067 #in\n",
+ "P=20 #psia\n",
+ "R=53.35 \n",
+ "T=600 #R\n",
+ "mu=0.0486 #lb /ft.hr\n",
+ "v=50 #ft/s\n",
+ "#calculations\n",
+ "rho=P*144./(R*T)\n",
+ "Re=d*v*rho*3600./(12*mu)\n",
+ "#results\n",
+ "print '%s %d' %(\"Reynolds number = \",Re)\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Reynolds number = 57398\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 184"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in pressure and the percent change\n",
+ "#Initialization of variables\n",
+ "eps=0.00015 \n",
+ "D=2.067/12. #ft\n",
+ "l=100 #ft\n",
+ "P=20 #psia\n",
+ "R=53.35 \n",
+ "T=600 #R\n",
+ "mu=0.0486 #lb /ft.hr\n",
+ "v=50 #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "rho=P*144/(R*T)\n",
+ "Re=D*v*rho*3600./(mu)\n",
+ "ed=eps/D\n",
+ "print '%s' %(\"From figure 11.5\")\n",
+ "f=0.0235\n",
+ "dp=f*l*rho*v*v /(2*D*g) /144.\n",
+ "change=dp/P *100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Change in pressure =\",dp,\"psi\")\n",
+ "print '%s %.2f %s' %(\"\\n Percentage change in pressure =\",change,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From figure 11.5\n",
+ "Change in pressure = 0.33 psi\n",
+ "\n",
+ " Percentage change in pressure = 1.66 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 190"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final pressure\n",
+ "#Initialization of variables\n",
+ "v1=60. #ft/s\n",
+ "d1=10. #in\n",
+ "d2=15. #in\n",
+ "P=15. #psia\n",
+ "R=53.35\n",
+ "T=540. #R\n",
+ "g=32.17 #ft/s^2\n",
+ "v1=60. #ft/s\n",
+ "#calculations\n",
+ "v2=v1*d1*d1 /d2/d2\n",
+ "rho=P*144/(R*T)\n",
+ "dp=rho*(v2*v2 -v1*v1)/(2*g) /144.\n",
+ "p2=P-dp\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Final pressure =\",p2,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Final pressure = 15.02 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 192"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "J=778 #ft.lb/Btu\n",
+ "D=2.067/12. #ft\n",
+ "l=100 #ft\n",
+ "P=20 #psia\n",
+ "R=53.35 \n",
+ "T=600 #R\n",
+ "mu=0.0486 #lb /ft.hr\n",
+ "v=50 #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "f=0.0235\n",
+ "ds=f*v*v *l /(J*2*D*g*T)\n",
+ "#results\n",
+ "print '%s %.6f %s' %(\"Change in entropy =\",ds,\" Btu/lbm R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.001136 Btu/lbm R\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 193"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the pressure, enthalpy, entropy, temperature and density of the gas\n",
+ "#Initialization of variables\n",
+ "v=210 #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "p=200. #psia\n",
+ "z=5. #ft\n",
+ "x=2.361\n",
+ "h=1210.3\n",
+ "J=778.\n",
+ "#calculations\n",
+ "P0=p + v*v /(2*g*144*x) + z/(144*x)\n",
+ "h0=h + v*v /(2*J*g) +z/J\n",
+ "S=1.5594 #units/lb\n",
+ "S0=S\n",
+ "t0=401.9 #F\n",
+ "v0=2.342 #cu ft/lb\n",
+ "rho0=1./v0\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Pressure =\",P0,\"psia\")\n",
+ "print '%s %.2f %s' %(\"\\n Enthalpy =\",h0,\" Btu/lb\")\n",
+ "print '%s %.4f %s' %(\"\\n Entropy =\",S0,\"units/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Temperature =\",t0,\" F\")\n",
+ "print '%s %.3f %s' %(\"\\n Density =\",rho0,\" lb/cu ft\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Pressure = 202 psia\n",
+ "\n",
+ " Enthalpy = 1211.19 Btu/lb\n",
+ "\n",
+ " Entropy = 1.5594 units/lb\n",
+ "\n",
+ " Temperature = 401.9 F\n",
+ "\n",
+ " Density = 0.427 lb/cu ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 197"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the exit temperature\n",
+ "#Initialization of variables\n",
+ "%matplotlib inline\n",
+ "import matplotlib\n",
+ "from matplotlib import pyplot\n",
+ "import math\n",
+ "p1=40. #psia\n",
+ "t1=80. #F\n",
+ "p2=30. #psia\n",
+ "ar=0.5 #sq ft\n",
+ "v1=200. #ft/s\n",
+ "R=53.35\n",
+ "cp=0.24\n",
+ "g=32.17\n",
+ "J=778.\n",
+ "#calculations\n",
+ "rho1=144*p1/(R*(t1+460))\n",
+ "G=rho1*v1\n",
+ "h10= cp*t1 + p1*p1 /(2*g*rho1*rho1 *J)\n",
+ "t2=78 #F\n",
+ "h2=cp*t2\n",
+ "g2=h10-h2\n",
+ "rho2=math.sqrt(p1*p1 /(2*g*g2*J))\n",
+ "P2=rho2*R*(t2+460)/144. \n",
+ "ds2=cp*math.log((t2+460.)/(t1+460.)) - R/J *math.log(P2/p1)\n",
+ "t3=77 #F\n",
+ "h3=cp*t3\n",
+ "g3=h10-h3\n",
+ "rho3=math.sqrt(p1*p1 /(2*g*g3*J))\n",
+ "P3=rho3*R*(t3+460)/144. \n",
+ "ds3=cp*math.log((t3+460.)/(t1+460.)) - R/J *math.log(P3/p1)\n",
+ "t4=79 #F\n",
+ "h4=cp*t4\n",
+ "g4=h10-h4\n",
+ "rho4=math.sqrt(p1*p1 /(2*g*g4*J))\n",
+ "P4=rho4*R*(t4+460)/144. \n",
+ "ds4=cp*math.log((t4+460)/(t1+460.)) - R/J *math.log(P4/p1)\n",
+ "h5=18.62\n",
+ "t5=h5/cp\n",
+ "Gv=([h4, h2, h3])\n",
+ "Pv=([P4, P2, P3])\n",
+ "Sv=([ds4, ds2, ds3])\n",
+ "pyplot.figure(1)\n",
+ "pyplot.title(\"Fanno line diagram , Enthalpy vs Entropy\")\n",
+ "pyplot.xlabel(\"Entropy\")\n",
+ "pyplot.ylabel(\"Enthalpy Btu/lb\")\n",
+ "pyplot.plot(Sv,Gv)\n",
+ "\n",
+ "pyplot.figure(2)\n",
+ "pyplot.title(\"Fanno line diagram , Pressure vs Entropy\")\n",
+ "pyplot.xlabel(\"Entropy\")\n",
+ "pyplot.ylabel(\"Pressure psia\")\n",
+ "pyplot.plot(Sv,Pv)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Temperature at exit =\",t5,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Populating the interactive namespace from numpy and matplotlib\n",
+ "Temperature at exit = 77.6 F"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stderr",
+ "text": [
+ "WARNING: pylab import has clobbered these variables: ['f']\n",
+ "`%matplotlib` prevents importing * from pylab and numpy\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x5bd2c30>"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x5bf3270>"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 199"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the velocity required\n",
+ "#Initialization of variables\n",
+ "p1=40 #psia\n",
+ "t1=80. #F\n",
+ "p2=30 #psia\n",
+ "ar=0.5 #sq ft\n",
+ "v1=200 #ft/s\n",
+ "R=53.35\n",
+ "cp=0.24\n",
+ "g=32.17\n",
+ "J=778.\n",
+ "t2=78. #F\n",
+ "#calculations\n",
+ "G=40 #lb/sq ft/sec\n",
+ "rho2=144*p2/(R*(t2+460.))\n",
+ "v2=p1/rho2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Velocity =\",v2,\"ft/s\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Velocity = 265 ft/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 206"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the velocity, diameter, specific volume, density and diameter of nozzle\n",
+ "#Initialization of variables\n",
+ "%matplotlib inline\n",
+ "import math\n",
+ "import numpy\n",
+ "import matplotlib\n",
+ "from matplotlib import pyplot\n",
+ "P2=([180., 160., 140., 120., 100., 80., 60., 40., 20.])\n",
+ "k=1.4\n",
+ "p1=200 #psia\n",
+ "t1=240+460. #R\n",
+ "cp=0.24\n",
+ "J=778.\n",
+ "gc=32.2\n",
+ "R=53.35\n",
+ "m=4. #lb/sec\n",
+ "#calculations\n",
+ "b = len(P2)\n",
+ "pr=numpy.zeros(b);\n",
+ "prr=numpy.zeros(b);\n",
+ "T2=numpy.zeros(b);\n",
+ "dt=numpy.zeros(b);\n",
+ "dh=numpy.zeros(b);\n",
+ "v2=numpy.zeros(b);\n",
+ "vol=numpy.zeros(b);\n",
+ "A2=numpy.zeros(b);\n",
+ "dia=numpy.zeros(b);\n",
+ "rad=numpy.zeros(b);\n",
+ "den=numpy.zeros(b);\n",
+ "for i in range (0,b):\n",
+ "\tpr[i] = p1/P2[i]\n",
+ "\tprr[i]=math.pow(pr[i],((k-1)/k))\n",
+ "\tT2[i]=t1 /prr[i]\n",
+ "\tdt[i]= t1 -T2[i]\n",
+ "\tdh[i]=dt[i]*cp\n",
+ "\tv2[i]=math.sqrt(2*gc*J*dh[i])\n",
+ "\tvol[i]=(R*T2[i]) /(P2[i]*144.)\n",
+ "\tA2[i]=m*vol[i]*144. /v2[i]\n",
+ "\tdia[i]=math.sqrt(4/ math.pi *A2[i])\n",
+ "\trad[i]=dia[i]/2.\n",
+ "\tden[i]=1. /vol[i]\n",
+ "\n",
+ "pyplot.figure(1)\n",
+ "pyplot.title ('Velocity vs pressure')\n",
+ "pyplot.xlabel('Pressure in psia')\n",
+ "pyplot.ylabel('velocity in ft/s')\n",
+ "pyplot.plot(P2,v2)\n",
+ "\n",
+ "pyplot.figure(2)\n",
+ "pyplot.title('specific volume vs pressure')\n",
+ "pyplot.xlabel('Pressure in psia')\n",
+ "pyplot.ylabel('specific volume in cu ft/lb')\n",
+ "pyplot.plot(P2,vol)\n",
+ "\n",
+ "pyplot.figure(3)\n",
+ "pyplot.title('Radius vs Pressure')\n",
+ "pyplot.xlabel('Pressure in psia')\n",
+ "pyplot.ylabel('Radius in in')\n",
+ "plot(P2,rad)\n",
+ "#results\n",
+ "print '%s' %('Velocity in ft/s')\n",
+ "print (v2)\n",
+ "print '%s' %('Specific volume in cu ft/lb')\n",
+ "print (vol)\n",
+ "print '%s' %('Density in lb/cu ft')\n",
+ "print (den)\n",
+ "print '%s' %('Diameter of nozzle in in')\n",
+ "print (dia)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Populating the interactive namespace from numpy and matplotlib\n",
+ "Velocity in ft/s"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "[ 499.61112617 721.04131991 903.0653517 1069.14361272 1229.75524527\n",
+ " 1392.40468067 1565.24666139 1761.46433404 2014.34825773]\n",
+ "Specific volume in cu ft/lb\n",
+ "[ 1.39805384 1.52076257 1.6729549 1.86768387 2.12745999 2.4950706\n",
+ " 3.06425423 4.09358926 6.71623201]\n",
+ "Density in lb/cu ft\n",
+ "[ 0.71528003 0.65756484 0.59774475 0.53542252 0.47004409 0.40079026\n",
+ " 0.32634368 0.2442844 0.14889301]\n",
+ "Diameter of nozzle in in\n",
+ "[ 1.43255795 1.24370371 1.16559809 1.1318789 1.12638708 1.14637045\n",
+ " 1.19822204 1.30551392 1.56373036]\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7b96290>"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "iVBORw0KGgoAAAANSUhEUgAAAX4AAAEZCAYAAACQK04eAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmcHFW5//HPNwtbCCSQQNiTsIhC2A0g2wgY9j3KJip4\n9Ypo8KqoeIUE8YeCclH0KirigqyyLxfZZGTfAiGBsCcBEiAJSwibmOX5/XFqmMpkZtLTM93VPf19\nv179mq7qmjpPz/Kc06dOnaOIwMzMGkefogMwM7PqcuI3M2swTvxmZg3Gid/MrME48ZuZNRgnfjOz\nBuPEb90m6W1Jw7PnK0q6XtI8SZdLOkrSzVWMpUnSS9Uqz6we9Ss6AKt/ETEwtzkWWANYLSIWZ/su\nrn5UZtYRt/itp20APJNL+lYlkgptyClTZAxWGif+XkjSdyXNlDRf0lOSds/2T5B0haRLs9cmStoi\n931rS7pS0hxJ0yR9PfdaH0nfl/Rc9r0PS1one22xpA0lnQacAhyedf8cJ+kLku7KnWczSbdKel3S\nq5JObif+7SW9kk8ikg6R9Fj2fHlJP5c0K3ucI2m5Dn4WiyWNzG3/SdLp2fOm7Od0UvaeX5Z0sKR9\nJT2Txfi93PdK0veyn8Frki6TNLiDcp+UtF9uu5+kuZK2krSCpL9m53hT0oOS1ujgPDOyMp+Q9Iak\nCyQt3yb+70h6BfhDZzF2Vm72e3o++91Ok3RU7m/mwlw8w7OfaZ9su1nSjyTdA7wLjJC0ae53/JSk\nT7f33qw4Tvy9jKSPACcA20XEKsAYYEbukAOBy4HBpC6YayT1zf6RrwceBdYG9gC+IWlM9n3fAo4A\n9snOexzwfu68ERHjgTOASyNiYERc0Ca2gcBtwP8BawEbAbe3fQ8R8QApieyR230UcFH2/L+B0cCW\n2WM08INSfj5AZI8WawLLZ/GcCpwPHA1sDewCnCppg+zYcaSf367Z8W8C/9tBORcDR+a29wLmRMQk\n4PPAKsC6wGrAf7Lkz7Kto0i/xw2BTVjyva5J+l2un52nsxjbLVfSAOAXwN7Z73ZHYFL2PaXM6fJZ\n4D+AlYHXgVuBvwJDSX8zv5b00RLOY9USEX70ogcpmc4mJc3+bV6bANyb2xbwMrAzsD3wQpvjTwYu\nyJ4/DRzQQZmLgZG5Mi7MvfYF4K7s+ZHAxBLfx+nAH7LnA4F3gPWy7edISarl2DHA9Ox5E/BSe7Fl\n238ETs8d+x6gXDmLgY/njn8YODB7/iSwe+61tYB/A33aiX9DYD6wQrZ9EfCD7PmxwD3AqBJ+DtOB\nL+e29wGey8X/AbBc7vWpHcTYt6NygQGkCuJQYMV2/mbyv8/h2c+oT7Z9BzAh9/rhwJ1tzvFb4NSi\n/zf8aH24xd/LRMRzwDdI/7CzJV0iaa3cITNzx0a2vTapxbh21gXwpqQ3SYm/pQtiXeD5boa3HjCt\nxGMvBg7NunAOJVUYLaN11gZeyB37YravHK9nPwdobXXPzr3+PqklC+n6xdW5n89UYCGp1b2EiHie\nVFEcKGkl4ABaL3JfCNwMXJp1VZ2pzvvn86OU2r7XuRHx79z28A5iXKOjciPiXVLC/grwsqQbsk+O\npcrHtwGwfZu/o6No52dkxXHi74Ui4pKI2IX0TxjAmbmX12t5knXvrAvMIv3zTo+IwbnHKhGxf3b4\nS6RPE93xIjBymUel9/AkKbnvQ0oc+ZFBL5MSXIv1s33teQ9YKbe9FqV1X7TnRdInjfzPaKWIeKWD\n4y8hfco5CHgiIqYBRMTCiPhhRGwGfALYH/hcJ+Wu3+Z5/r22fS8dxthZuRFxS0SMAYYBTwG/z873\nLkv+/Ia1E18+hheBf7Ypf2BEnNDJ+7Mqc+LvZSRtImn37ALgB8C/gEW5Q7bNLpT2I30y+BdwP/AQ\n8HZ2oXDFrN9/c0nbZd93PnC6pI2yC4hbSFqti+HdCKwl6USlC7QDJY3u5PiLsxh3Af6W238J8ANJ\nQyQNIfXNX9jO90Pqqz46ez97k/q+y3UecIak9QEkDZV0YCfHX0rq2/8KuYoruyg7SlJf4G1gAUv+\njvIEfFXSOtnP+7+z83Y5xo7KlbSGpIOyvv4FpGTfEs8kYFdJ60lalfQpsL0YW9wAbCLps5L6Z4+P\nS9q0k5itypz4e5/lgR8Dc4FXgCG0/rMGcC3pY/0bpIuYh0bEoohYRGoBbkXqjpkL/I50MRDgf0gX\nhW8B3iK1CFfInZfc83a3I+Jt4FOkbo9XgGdI/dQduYSUqG+PiDdy+39E6nufnD0ezvbly2xxYlZe\nS5fD1W3KaNti7uzTwC+A64BbJM0H7iNdWG5XRLwK3Eu6WHpZ7qVhpIrsLVJXTDMdV1xBqjRuIXW1\nPUvH73VZMXZUbh/gv0if/F4nVbTHZ+/h1iz2yaTGwfXtlPnhdkS8Q7rmckR2vldIf4/tjrqyYrRc\n1KrMyVM/Yb51MhI4JSLOrVih1iFJ44GNIuKYomOx0kiaDnwxIv5RdCzWe1T0ho+IeJo0LK6lP3kW\nS7e4rHp8c42ZVbWrZ0/g+dzIDKu+tt0wZtaAKtrVs0RB0gXAwxHx66oUaGZm7apK4s/GYs8CPhYR\ncyteoJmZdahakzrtQ7oBZ4mkL8ndDmZmZYiIsq/ZVauP/0jS0LylFH3rcimP8ePHFx6D43ScjtMx\ntjy6q+KJP7spZE/gqkqXZWZmy1bxrp5I84AMqXQ5ZmZWGt+5W4KmpqaiQyiJ4+xZjrNn1UOc9RBj\nT6jacM52C5eiyPLNzOqRJKIOLu6amVmNcOI3M2swTvxmZg3Gid/MrMEUnvgnTVr2MWZm1nMKT/y/\n/GXREZiZNZbCh3MOGhQ8+ywM8S1eZmYlqfvhnIceCr///bKPMzOznlF4i//RR4MDDoBp06B//8JC\nMTOrG3Xf4t9qKxgxAq65puhIzMwaQ+GJH2DcOF/kNTOrlppI/AcfDDNmwKOPFh2JmVnvVxOJv18/\n+OpX3eo3M6uGwi/utpT/2muw8cbwzDMwdGhhIZmZ1by6v7jbYsgQD+00M6uGmmnxQ5q+wUM7zcw6\n12ta/JCGdo4c6aGdZmaVVFOJH9LQznPPLToKM7Peq+YS/0EHwQsvwCOPFB2JmVnvVHOJ30M7zcwq\nq6Yu7rbw0E4zs471qou7LYYMgcMO89BOM7NKqMkWP8Bjj8F++8H06R7aaWaW1ytb/ABbbgkbbQRX\nX110JGZmvUvNJn6Ar3/dQzvNzHpaTSf+gw6CF1+EiROLjsTMrPeoaOKXNEjSFZKelDRV0g5d+f5+\n/eCEEzy008ysJ1X04q6kPwP/jIgLJPUDBkTEW7nXO7y42+L111Nf/9NPwxprVCxUM7O6UbMXdyWt\nCuwSERcARMTCfNIv1eqrw9ixHtppZtZTKtbil7QV8FtgKrAlMBE4MSLeyx2zzBY/wOTJsM8+aZUu\nD+00s0ZXsy1+oB+wDfDriNgGeBf4Xjkn2mKLdCfvVVf1ZHhmZo2pXwXPPROYGREPZdtX0E7inzBh\nwofPm5qaaGpqavdk48bB2WfD4Yf3eJxmZjWtubmZ5ubmHjtfpS/u3gn8R0Q8I2kCsGJEfDf3ekld\nPQALF8KGG6ZW/7bbViZeM7N60N2unkon/i2B84HlgOeBY7s6qifvrLNg6lT40596OlIzs/pR04l/\nmYV3MfG/8UZq9Xtop5k1slq+uNvjVlstDe383e+KjsTMrH7VVYsfPLTTzKyhWvyQhnZusglceWXR\nkZiZ1ae6S/yQhnZ6/h4zs/LUZeI/4ACYNQsefrjoSMzM6k9dJn4vyG5mVr66u7jbomVo51NPwZpr\n9nBgZmY1rOEu7rZYbTX49Kc9tNPMrKuW2eKXNAQYD+wMBHAX8MOIeL3bhXejxQ8wZQrsvbeHdppZ\nY6lGi/9SYA5wKDAWmAtcVm6BPWnUKPjIRzy008ysK0pp8T8eEZu32TclIkZ1u/ButvgBrr4afvpT\nuPfe7kZjZlYfqtHiv0XSkZL6ZI/DgVvKLbCnHXAAvPwyPPTQso81M7NOWvyS3iH16QMMABZnz/sA\n70bEwG4X3gMtfkgt/ilT4C9/6fapzMxqXkPNztkRD+00s0ZSscQvaZvOvjEiHim30FwZPZL4Af7z\nP2HddeGUU3rkdGZmNauSib+Z1q6epUTEJ8stNFdGjyX+xx+HMWPS0M7lluuRU5qZ1aRKJv51ImJW\n2ZGVUngPJn6A3XeHL30Jjjyyx05pZlZzKjmq5/eSHpD0E0lNkiq5MHuPGDcOzj236CjMzGpbpxd3\nJa0INAH7AJ8AXgJuAv4eES92u/AebvEvWpQu8l5+OYwe3WOnNTOrKVUd1SNpJKkS2AsYFhHdSq89\nnfgBfvYzeOwxuPDCHj2tmVnNqHjil3RmRHy3zb6zgB9ExL/LLTg7T48n/jffhJEj4cknYdiwHj21\nmVlNqMadu2Pa2bdPd5N+pQweDJ/5jGftNDPrSGejeo4HvgpsCDyfe2kgcE9EHN3twivQ4gcP7TSz\n3q2Swzl3BmYCPwG+C7QU8nZPTMmclVGRxA+wxx7wxS/CUUdV5PRmZoWpZOKfGBHbSno0IrYuO8LO\nCq9g4r/2Wvjxj+H++ytyejOzwlQy8T8ATAYOIs3Jny8kImJcuYXmyqhY4l+0CDbaCC67zEM7zax3\nqeTF3f2B24H3gYnZ4+Hc85rWty+ccIIXZDcza6uU4ZxbRcSkihRewRY/eGinmfVOFR/OWamkXw2D\nB8Phh8Nvf1t0JGZmtaPi8/FLmgHMBxYBC/J3+1a6xQ/wxBOw557wwgse2mlmvUM1buDqrgCaImLr\n7k7xUI7NNkuPv/2t2iWbmdWmUvr4x7ezOyLihyUVIE0Htmtv7H81WvwA110HZ5zhoZ1m1jtUo8X/\nLvBO9lhEmqRteBfKCOA2SQ9L+lKXI+wB++0Hs2fDAw8UUbqZWW1Z5hz7EfGz/LaknwK3dKGMnSLi\nFUlDgVslPRURd7W8OGHChA8PbGpqoqmpqQunLk3fvvC1r6Whndtv3+OnNzOrqObmZpqbm3vsfF2+\nuCtpNeDBiNioy4WlbqN3IuLsbLsqXT3QOrRz6lRYa62qFGlmVhEV7+qRNCX3eAJ4GvhFicGtJGlg\n9nwAaabPKeUG2x2DB8MRR3hop5lZKRd3h+c2FwKzI2JBSSeXRgBXZ5v9gIsi4se516vW4ofU2t9j\nDw/tNLP6Vo2FWHYApkbE/Gx7FeCjEdHtS6XVTvyQxvQfeywc3e1Jpc3MilGNUT3nkUb0tHg321eX\nvCC7mTW6km7giojFueeLgL4Vi6jC9tsP5s710E4za1ylJP7pksZJ6i9pOUknAtMqHViltAztdKvf\nzBpVKX38awLnAp/Mdt0OnBgRc7pdeAF9/ADz5sGIER7aaWb1qeIXdyupqMQPcPzxsOaakLt/zMys\nLjjxl2nqVNh99zS0c/nlCwnBzKws9TA7Z0362Mdg1CjP2mlmjadhEz+koZ2/+AUU+KHHzKzqSrm4\nuwJwGGlGzpZJ3UqelnkZ5y6sqwfSguybbAIXXQQ77FBYGGZmXVKNrp5rgQOBBbROz/xuuQXWEg/t\nNLNGVEqL//GI2LwihRfc4ofWoZ1PPAFrr11oKGZmJalGi/9eSVuUW0CtGzQIjjzSs3aaWeMopcX/\nJLARMB34INsdEdHtyqAWWvzgoZ1mVl+qMTvn8Pb2R8SMcgvNnbsmEj/AmDFwzDHpYWZWyyrW1ZNN\nvwwwv4NHr9Iya2eN1ENmZhXTYYtf0o0RsZ+kGaQF0/MiIkZ2u/AaavF7aKeZ1QtP2dCDzjkHHnoI\nLr646EjMzDrmxN+DPLTTzOqB5+rpQYMGwVFHwXl1u76YmdmyucXfxpNPwic/6aGdZla7qtLil7SL\npGOz50MljSi3wFr30Y/CFlvAZZcVHYmZWWUsM/FLmgB8Bzg527Uc8NcKxlQ4D+00s96slBb/IcBB\nZBOzRcQsYGAlgyravvumC7333190JGZmPa+UxP9BRCxu2ZA0oILx1IQ+fTxrp5n1XqUk/r9J+i0w\nSNKXSYutn1/ZsIp37LFw880wa1bRkZiZ9aySRvVIGgOMyTZvjohbe6TwGhzVk/e1r8HgwXD66UVH\nYmbWqmo3cElalbQCVwBExBvlFpo7Z00n/qeegt12S0M7V1ih6GjMzJKKD+eU9J+SXgUmAw8DE7Ov\nvd6mm8JWW8HllxcdiZlZzyllWubngB0i4rWyCpD6kiqKmRFxQJvXarrFD3DjjfDtb8Pdd8Pqqxcd\njZlZdW7gmga8X24BwInAVJae4bMu7LsvHHAA7LILvPRS0dGYmXVfvxKO+R5wn6T7gH9n+yIixi3r\nGyWtC+wL/D/gm2VHWSAJzjoLhg6FnXdOI3023bToqMzMyldK4v8dcBswBVgMiNJb7+cAJwGrLOvA\nWnfSSSn5NzXBddfB6NFFR2RmVp5SEn/fiOhya13S/sCciHhUUlNHx02YMOHD501NTTQ1dXho4b7w\nhdTPv99+ac7+T32q6IjMrBE0NzfT3NzcY+cr5eLuGcALwHW0Lra+zOGc2fcdAywEViC1+q+MiM/l\njqn5i7vtuftuOOywdGfv4YcXHY2ZNZpqLLY+g3a6diKi5Bk6Je0GfLseR/V0ZPLkdOH35JPhhBOK\njsbMGkl3E/8yu3oiYni5J297qh46T03YYgu46y4YMwbmzIEJE9KFYDOzWldKi//ztN/i/0u3C6/j\nFn+L2bNhn33SAu2//CX07Vt0RGbW21Wjq+dXtCb+FYHdgUciYmy5hebOXfeJH2D+fDj4YBgyBC68\n0Ct3mVllVX2xdUmDgMsiYq9yC82dq1ckfoB//QuOPjpVAlddBQN79YoFZlakIhZbfw/otUsvlmuF\nFdKcPiNGwO67w9y5RUdkZta+Urp6rs9t9gE+BlweEd/tduG9qMXfIgJOOQX+9je45RbYYIOiIzKz\n3qbio3qAs3PPFwIvRIRnremABD/6UesUD3//O2y2WdFRmZm16nIff48W3gtb/HkXXQTf+hZcfTXs\nuGPR0ZhZb1Gxi7uS3qHjsfcREd2ef6e3J36Am26Cz30O/vKXNOzTzKy7qj6qpyc1QuIHuO++NNzz\n7LPhs58tOhozq3fV6ONH0pbArqRPAHdFxGPlFtiIdtwR/vGP1OJ/7TX4xjeKjsjMGlkpSy+eCFwE\nDAXWBP4qaZlz8duSNtssTe523nnw/e+n0T9mZkUoZTjnFNLSi+9m2wOA+yNiVLcLb5Cunry5c9Pk\nblttBb/5DfQr6TOXmVmrat3AtbiD59ZFQ4embp8ZM+Azn0l3/JqZVVMpif+PwAOSJkg6DbgfuKCy\nYfVuAwfCDTdA//6w997w1ltFR2RmjaSkUT2StgV2pvXi7qM9UngDdvXkLVoE48bBvfemG73WXLPo\niMysHlRjds5fApdExL3lFtLJuRs68UO6yPvDH6ZZPW+5BUaOLDoiM6t11ejjnwj8QNI0ST+TtF25\nhdnSJBg/Hr75Tdhll7Syl5lZJZV8A5ek1YFDgSOB9SNio24X7hb/Ei67DL7+dbjyylQJmJm1p5rT\nMm8EbApsADxZboHWscMPT/P7HHooXHdd0dGYWW9VSh//WcAhwDTgUuDqiJjXI4W7xd+uhx6CAw6A\nH/8Yjj226GjMrNZUY8qG54EdI+K1cguxrvn4x6G5OQ31fO01OOmkoiMys97Ek7TVsJkzYa+90p2+\nZ52VLgSbmXl2zl7u9ddh//3hIx+B88/3FA9mVsyau1ZFq68Ot90Gs2fDIYfAe+8VHZGZ1btSZufc\nUdIque1VJG1f2bAsb8CANMpn1VVT18+8Hrm0bmaNqpQW/2+Ad3Lb7wLnVSYc60j//mkVr223hV13\nhVdeKToiM6tXJXX1RMTi3PNFQN+KRWQd6tMHzjkHjjgCdtoJnn226IjMrB6VkvinSxonqb+k5bKF\nWaZVOjBrn5QWcjn5ZNhtN3jkkaIjMrN6U0ri/wqwEzALmAnsAHy5kkHZsn3pS/CrX6Wx/nfcUXQ0\nZlZPKjqcU9IKwD+B5YHlgGsj4uTc6x7O2U133JGmejjvvDTVg5n1fhUbxy/puxFxZjYtc1sRESWt\nuytppYh4T1I/4G7g2xFxd/aaE38PeOSRNNb/W99Kk7wtt1zREZlZJVVyHP/U7OtE4OHcY2L2KElE\ntIw8X450UfiNrodpndlmG7jzzjSf/0c+An/4AyxYUHRUZlarOmvxXxgRx0j6RkT8vOwCpD7AI8CG\nwG8i4ju519zi72H33JPm958+HU45BT77Wd/ta9bbVLKrZyqwJ/B3oKnt6xHRpZa7pFWBm4HvRURz\nti/Gjx//4TFNTU00NS1VlJXhzjvh1FNh1qz09cgjXQGY1avm5maam5s/3D7ttNMqlvjHAccDI4GX\n27wcEdHlRQIlnQK8HxE/y7bd4q+wO+5IiX/OnPRJ4PDDoa/vwjCra9VYc/e8iPhKWSeXhgALI2Ke\npBVJLf7TIuL27HUn/iqIgNtvTxXAvHmpAvj0p9MNYWZWfyrZ1bNKRMzPllxc6qBSunokjQL+TLqI\n3Ae4MCJ+mnvdib+KItIF4FNPhXffhQkT0hBQVwBm9aWSif/GiNhP0gzaT/wjyi00V4YTfwEi4Kab\nUgWwYEGqAA4+2PP9m9ULz8dvZYuAG25IXT8RcNppaclHVwBmta0affyHAHe0rLMraRDQFBHXlFto\n7txO/DUgAq69NlUA/funCmDffV0BmNWqaiT+xyJiyzb7JkXEVuUWmjuPE38NWbwYrr46VQADBqQK\nYK+9XAGY1ZpqrMDV3sk9ILAX6tMHDjsMJk9O0z9885vwiU/ArbemTwVm1juU0uL/I/Am8L+kSuAE\nYHBEfKHbhbvFX9MWLYLLL08t/yFD4Ic/hE9+0p8AzIpWja6elYFTgD2yXbcCP4qId8stNHduJ/46\nsGgRXHJJqgDWWSd93W23oqMya1xVG9UjaUBPJPs253TiryMLF8JFF6WW//DhqQLYeeeiozJrPBXv\n45f0iWzenqey7S0l/brcAq1+9esHn/88PPUUHH00HHMMjBkD991XdGRm1hWlXNz9ObA38BpARDwG\n+IN+A+vfH447Dp5+Ok39cMQRsM8+8OCDRUdmZqUodbH1F9vsWliBWKzOLLdcWgLymWfgoIPSiKD9\n94eJJa/WYGZFKCXxvyhpJ4BssfVvA09WNiyrJ8svD1/5Cjz7bFoD+MADU0Xw6KNFR2Zm7Skl8R9P\nGsK5DmnB9a2zbbMlrLACfO1r8NxzsPvusN9+aRK4yZOLjszM8jxXj1XMe++lReDPOgt22SXdEbz5\n5kVHZVb/qjGqZ0NJ10t6TdJcSddK6vIiLNZ4Vlop3f37/PMwejTssUe6EPzww74T2KxIpdzA9QDw\nK+DSbNfhwNcjYvtuF+4Wf0N55x341a/g/PPTTWFjx6YLwqNHe00As66oxp27kyNiizb7lpq4razC\nnfgbUkTq97/iivR4551UARx2WJobyEtDmnWuGon/TGAecEm263BgMHAWdH3R9TbnduI3pk5trQTm\nzk0XhA87DHbd1QvEm7WnGol/Bu2swJUpa9H13Lmd+G0JzzwDV16ZHi++mFYGO+ywNEqof/+iozOr\nDV6By3qt6dNbK4Fnnkmrg40dC5/6VLp3wKxRVaPF/2ng5mzh9VNI4/h/FBGPlFto7txO/FaSl16C\nq65KlcCUKWmFsLFj0w1jK65YdHRm1VWNxD8lIkZJ2hn4EfAz4NSIGF1uoblzO/Fbl73ySlop7Mor\n09DQvfZKlcC++8LKKxcdnVnlVSPxT4qIrST9BJgSERdJejQiti630Ny5nfitW+bOTesFX3EF3Htv\nuldg7Ng0Z9CqqxYdnVllVCPx30iaquFTpG6efwEPeDin1Zo33oDrr0+VwD//mUYFjR2b5g5abbWi\nozPrOdVI/ANI0zJPjohnJa0FjIqIW8otNHduJ36riPnz4YYbUiVw++2www6pEjj4YBg6tOjozLrH\no3rMluGdd+Cmm1IlcPPNsM02qRI45BBYa62iozPrOid+sy54//2U/K+4Am68MU0aN3ZsumlsvfWK\njs6sNE78ZmX64AO47bY0Oujaa2HjjVvnDxoxoujozDrmxG/WAxYsgDvuSJXA1Ven1v/ee8NOO8GO\nO8LgwUVHaNaqphO/pPWAvwBrkKZ9+F1EnJt73Ynfas7ChXD33fCPf8A996S1hDfYIFUCO+0EO++c\nPhGo7H87s+6p9cQ/DBgWEZMkrQxMBA6OiCez1534reYtWACPPZYqgZbH4sWtFcFOO8HWW3suIaue\nmk78SxUmXQP8MiJuz7ad+K3uRMALL7RWAnffDdOmwXbbtX4i2HFHGDSo6Eitt6qbxC9pOPBPYLOI\neCfb58RvvcK8eXD//a2VwUMPwfDhS34qcPeQ9ZS6SPxZN08zaXK3a3L7nfitV8p3D919d/oaseR1\ngq22cveQlafmE7+k/sANwE0R8fM2r8X48eM/3G5qaqKpqami8ZgVIQJmzFjyOsH06a3dQy2jh9w9\nZO1pbm6mubn5w+3TTjutdhO/JAF/Bl6PiP9q53W3+K1htXQPtXwiePhhdw9ZaWq6xZ9N5XwnMJnW\nVbxOjoi/Z6878ZtlFiyASZOW/FQAS1YE7h4yqPHEv8zCnfjNOtTSPdTyieCee9K2u4fMid+sgcyb\nB/fdt+TooWHDYNSoNO/Q5pun5xtv7E8GvZkTv1kDW7gQnnsuLUf5+OPpMWVKWqpy442XrhDWXx/6\n9Ck6ausuJ34zW8p778FTTy1dIbz1Fmy22dIVwhprFB2xdYUTv5mV7M034Yknlq4Q+vVrrQRaKoTN\nNoNVVik6YmuPE7+ZdUtEWsC+pRJoqRCmTk2rlbWtEDbdFJZfvuioG5sTv5lVxKJF6SazthXCtGnp\n/oK2FcLIkdC3b9FRNwYnfjOrqg8+gKefXrpCmDMHPvrRJa8dbL45rL22b0LraU78ZlYT5s9P3UNt\nK4QFC9L1go03Tp8KNtwwPUaOhNVXd6VQDid+M6tpc+akC8rPPZe6iZ5/vvUR0VoJ5L9uuGFaBa1f\nv6Kjr01RCx3vAAAJv0lEQVRO/GZWt954I1UA+Qqh5fns2Sn5t/2U0PJ14MCioy+OE7+Z9UoffJCm\nqGivYpg2DVZeeelPCS3Phw3r3TeqOfGbWcNpGYLaUiG0rRjefjuNPGqvG2nEiPofjurEb2bWxttv\nt34yaFsxvPRSulO5ve6jerng7MRvZtYFCxem5J+vEPJfP/gA1l2388fQocV2JTnxm5n1oLffhlmz\n0mPmzPYf8+en+xPWWafjymHYsMqNSnLiNzOrsvffh5dfXrpCyFcWr72WupQ6qhjWWSdVHuVcb3Di\nNzOrQQsWpAvQHX1qmDkTXn0VBg/uvFtpnXVgpZWWPHd3E79vjzAzq4D+/dP6B+uv3/ExixalG9za\nVgiPP77kp4gBA5asDLrLid/MrCB9+8Jaa6XHxz/e/jERqdsoXzF0l7t6zMzqTHe7enrxvW1mZtYe\nJ34zswbjxG9m1mCc+M3MGowTv5lZg3HiNzNrME78ZmYNxonfzKzBVDTxS7pA0mxJUypZjpmZla7S\nLf4/AntXuIyKa25uLjqEkjjOnuU4e1Y9xFkPMfaEiib+iLgLeLOSZVRDvfwxOM6e5Th7Vj3EWQ8x\n9gT38ZuZNRgnfjOzBlPx2TklDQeuj4hR7bzmqTnNzMpQtwuxdCdwMzMrT6WHc14C3AtsIuklScdW\nsjwzM1u2QhdiMTOz6qvaxV1J60m6Q9ITkh6XNC7bv5qkWyU9I+kWSYOqFVNnJPWV9Kik67PtmotT\n0iBJV0h6UtJUSdvXWpySTs5+51MkXSxp+VqIsb2bCzuLK3sfz0p6StKYguP8afY7f0zSVZJWrcU4\nc699S9JiSavVapySvp79TB+XdGYtxilptKQHs7z0kKSP517rWpwRUZUHMAzYKnu+MvA08FHgLOA7\n2f7vAj+pVkzLiPebwEXAddl2zcUJ/Bk4LnveD1i1luIEhgPTgOWz7cuAz9dCjMAuwNbAlNy+duMC\nPgZMAvpn7+k5oE+BcX6qpXzgJ7UaZ7Z/PeDvwHRgtVqME/gkcCvQP9seWqNxNgN7Zc/3Ae4oN86q\ntfgj4tWImJQ9fwd4ElgHOJCUwMi+HlytmDoiaV1gX+B8oOUCdE3FmbXydomICwAiYmFEvEVtxTkf\nWACsJKkfsBLwMjUQY7R/c2FHcR0EXBIRCyJiBukfa3RRcUbErRGxONt8AFi3FuPM/A/wnTb7ai3O\n44EfR8SC7Ji5NRrnK6TGHcAgYFa5cRYyjj8b4rk16Y92zYiYnb00G1iziJjaOAc4CVic21drcY4A\n5kr6o6RHJP1e0gBqKM6IeAM4G3iRlPDnRcSt1FCMbXQU19rAzNxxM0mNllpwHPB/2fOailPSQcDM\niJjc5qWaihPYGNhV0v2SmiVtl+2vtTi/B5wt6UXgp8DJ2f4ux1n1xC9pZeBK4MSIeDv/WqTPLYVe\nbZa0PzAnIh6ltbW/hFqIk9S1sw3w64jYBniX9IfxoaLjlLQh8A3Sx8+1gZUlfTZ/TNExdqSEuAqP\nWdJ/A/+OiIs7OayQOCWtBHwfGJ/f3cm3FPnz7AcMjogdSA2+yzs5tsg4/wCMi4j1gf8CLujk2E7j\nrGril9SflPQvjIhrst2zJQ3LXl8LmFPNmNrxCeBASdOBS4DdJV1I7cU5k9SaeijbvoJUEbxaQ3Fu\nB9wbEa9HxELgKmDHGosxr6Pf8SxSX3WLdWn9mF0ISV8gdUcendtdS3FuSKrwH8v+l9YFJkpak9qK\nE9L/0lUA2f/TYklDqL04R0fE1dnzK2jtzulynNUc1SNSjTU1In6ee+k60gU/sq/XtP3eaoqI70fE\nehExAjgC+EdEHEPtxfkq8JKkTbJdewJPANdTO3E+BewgacXs978nMJXaijGvo9/xdcARkpaTNILU\nNfBgAfEBIGlvUsv0oIj4V+6lmokzIqZExJoRMSL7X5oJbJN1pdVMnJlrgN0Bsv+n5SLiNWovzuck\n7ZY93x14Jnve9TircYU6u/K8M6nPfBLwaPbYG1gNuC17E7cAg6oVUwkx70brqJ6aixPYEngIeIzU\nYlm11uIkXdh7AphCumDavxZiJH2aexn4N/AScGxncZG6LZ4jVWZ7FRjnccCzwAu5/6Nf11CcH7T8\nPNu8Po1sVE+txZn9TV6Y/Y1OBJpqKM783+d2pOuik4D7gK3LjdM3cJmZNRjPzmlm1mCc+M3MGowT\nv5lZg3HiNzNrME78ZmYNxonfzKzBOPFb4SQtyqaanSLpckkrFh3TskhaW9LfKnj+bSX9olLnt8bm\ncfxWOElvR8TA7PlfgYkRcU7u9X6RpnyoRixVK8usKG7xW625C9hI0m6S7pJ0LfC4pD7ZAiQPZguQ\nfBnSnDqS7sx9YtgpO/ZP2fZkSSdmxzZL2jZ7PiSbQwZJX5B0naTbgVslrZQthPFANvPpgW2DlDS8\nZZGM7PuvknST0iIuZ7Y9PjtuhqQzs5geyCaxQ9Kns1gnSWrO9jWpdRGg0ZLuzWK5JzdNh1lZCl1s\n3Swvm7N/X1qnGd4a2CwiXsgS/byIGC1peeBuSbcAhwJ/j4gzsvmABmTft3ZEjMrOu0p2vs5m3Nwa\nGBUR8ySdAdweEccprcL1gKTbIuK9TsLfEtiKdIv905LOjYi2E2VF9h62kHQM8HPgAOAUYExEvJKL\nNe9J0toLiyTtCZwBjO0kFrNOOfFbLVhR0qPZ8ztJ083uBDwYES9k+8cAoyS1JLxVgI1IcxVdkM38\nek1EPCbpeWCkpHOBG0nz7izLrRExL1fWAZK+nW0vT5r98OlOvv/2yKYZlzSVNDNlezMkXpJ9vZS0\n7gPAPcCfJV1ONktkG4OAv0jaiFR59C/h/Zh1yInfasH7EbF1fkdqvPNum+O+FmkhF9ocuwuwP/An\nSf8TERdK2hLYC/gK8Bngi8BCWrs3V2hzmrZlHRoRz3bhPXyQe74I6FvC9wRARBwvaTSwH2nq4m3b\nHHc6qWI5RNIGpCX4zMrmPn6rFzcDX826g5C0SdYXvz4wNyLOJy2VuY2k1YG+EXEVqRulpVKZQZrh\nEDrvKrkZGNeyIWnrTo7tSEeLjhye+3pvdv4NI+LBiBgPzKV1KcUWq5BmaoQ0S6NZt7jFb7WgvX73\ntv3x55O6Tx7J+vLnAIcATcBJkhYAbwOfIy0790dJLQ2blpXJfgZcnl0vuDF3/rZlnQ78XNJkUuNo\nGmk93o7ibu/aQUfXEgZLegz4F3Bktu8sSRuTKovbImJyNu96yznOInUF/aBN3GZl8XBOsyrJRhFt\nG2ktYrPCuKvHrHrcyrKa4Ba/mVmDcYvfzKzBOPGbmTUYJ34zswbjxG9m1mCc+M3MGowTv5lZg/n/\n4hzkiETAuWYAAAAASUVORK5CYII=\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x5d968d0>"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\nRK5CYII=\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x5d7e810>"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 210"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the nozzle exit area\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=200. #psia\n",
+ "t1=480. #F\n",
+ "eff=0.95\n",
+ "g=32.2 #ft/s^2\n",
+ "J=778.\n",
+ "mf=3.4 #lb/s\n",
+ "#calculations\n",
+ "print '%s' %(\"From steam tables,\")\n",
+ "h1=1257.8 \n",
+ "h2=1210.5 \n",
+ "dh=eff*(h1-h2)\n",
+ "ve=math.sqrt(2*g*J*dh)\n",
+ "h3=h1-dh\n",
+ "vs=3.961\n",
+ "Ae=mf*vs/ve *144.\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Nozzle exit area =\",Ae,\"sq.in\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam tables,\n",
+ "Nozzle exit area = 1.292 sq.in\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 216"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final temperature, pressure and exit velocity in both cases\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "import numpy\n",
+ "from numpy import roots\n",
+ "R=53.35\n",
+ "v=300. #ft/s\n",
+ "p=100 #psia\n",
+ "t1=200 #F\n",
+ "q=500 #Btu/s\n",
+ "gc=32.2 #ft/s^2\n",
+ "J=778\n",
+ "#calculations\n",
+ "rho1=p*144/(R*(460.+t1))\n",
+ "s=([1., -0.206, 0.00535])\n",
+ "vec=numpy.roots(s)\n",
+ "rho2=vec[0]\n",
+ "t2=(236.6 - 0.301/rho2/rho2)/0.248\n",
+ "P2=rho2*R*(t2+462) /144.\n",
+ "v2=math.sqrt(2*gc*J*(236.6-0.248*t2))\n",
+ "v22=rho1*v/rho2\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Final temperature =\",t2,\" F\")\n",
+ "print '%s %.1f %s' %(\"\\n Final pressure =\",P2,\" psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Exit velocity in case 1 =\",v2,\"ft/s\")\n",
+ "print '%s %.1f %s' %(\"\\n Exit velocity in case 2 =\",v22,\" ft/s\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Final temperature = 914.6 F\n",
+ "\n",
+ " Final pressure = 89.5 psia\n",
+ "\n",
+ " Exit velocity in case 1 = 699.7 ft/s\n",
+ "\n",
+ " Exit velocity in case 2 = 699.0 ft/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 20
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_11_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_11_2.ipynb new file mode 100755 index 00000000..3a5ea2bf --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_11_2.ipynb @@ -0,0 +1,656 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:902aab6334eafa9c076aa9433328b057ddfc9db48d6910774ed6bb3aa051c994"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 11 - Thermodynamics of Fluid flow"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 181"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the reynolds number\n",
+ "#Initialization of variables\n",
+ "d=2.067 #in\n",
+ "P=20 #psia\n",
+ "R=53.35 \n",
+ "T=600 #R\n",
+ "mu=0.0486 #lb /ft.hr\n",
+ "v=50 #ft/s\n",
+ "#calculations\n",
+ "rho=P*144./(R*T)\n",
+ "Re=d*v*rho*3600./(12*mu)\n",
+ "#results\n",
+ "print '%s %d' %(\"Reynolds number = \",Re)\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Reynolds number = 57398\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 184"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in pressure and the percent change\n",
+ "#Initialization of variables\n",
+ "eps=0.00015 \n",
+ "D=2.067/12. #ft\n",
+ "l=100 #ft\n",
+ "P=20 #psia\n",
+ "R=53.35 \n",
+ "T=600 #R\n",
+ "mu=0.0486 #lb /ft.hr\n",
+ "v=50 #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "rho=P*144/(R*T)\n",
+ "Re=D*v*rho*3600./(mu)\n",
+ "ed=eps/D\n",
+ "print '%s' %(\"From figure 11.5\")\n",
+ "f=0.0235\n",
+ "dp=f*l*rho*v*v /(2*D*g) /144.\n",
+ "change=dp/P *100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Change in pressure =\",dp,\"psi\")\n",
+ "print '%s %.2f %s' %(\"\\n Percentage change in pressure =\",change,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From figure 11.5\n",
+ "Change in pressure = 0.33 psi\n",
+ "\n",
+ " Percentage change in pressure = 1.66 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 190"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final pressure\n",
+ "#Initialization of variables\n",
+ "v1=60. #ft/s\n",
+ "d1=10. #in\n",
+ "d2=15. #in\n",
+ "P=15. #psia\n",
+ "R=53.35\n",
+ "T=540. #R\n",
+ "g=32.17 #ft/s^2\n",
+ "v1=60. #ft/s\n",
+ "#calculations\n",
+ "v2=v1*d1*d1 /d2/d2\n",
+ "rho=P*144/(R*T)\n",
+ "dp=rho*(v2*v2 -v1*v1)/(2*g) /144.\n",
+ "p2=P-dp\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Final pressure =\",p2,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Final pressure = 15.02 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 192"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "J=778 #ft.lb/Btu\n",
+ "D=2.067/12. #ft\n",
+ "l=100 #ft\n",
+ "P=20 #psia\n",
+ "R=53.35 \n",
+ "T=600 #R\n",
+ "mu=0.0486 #lb /ft.hr\n",
+ "v=50 #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "f=0.0235\n",
+ "ds=f*v*v *l /(J*2*D*g*T)\n",
+ "#results\n",
+ "print '%s %.6f %s' %(\"Change in entropy =\",ds,\" Btu/lbm R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.001136 Btu/lbm R\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 193"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the pressure, enthalpy, entropy, temperature and density of the gas\n",
+ "#Initialization of variables\n",
+ "v=210 #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "p=200. #psia\n",
+ "z=5. #ft\n",
+ "x=2.361\n",
+ "h=1210.3\n",
+ "J=778.\n",
+ "#calculations\n",
+ "P0=p + v*v /(2*g*144*x) + z/(144*x)\n",
+ "h0=h + v*v /(2*J*g) +z/J\n",
+ "S=1.5594 #units/lb\n",
+ "S0=S\n",
+ "t0=401.9 #F\n",
+ "v0=2.342 #cu ft/lb\n",
+ "rho0=1./v0\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Pressure =\",P0,\"psia\")\n",
+ "print '%s %.2f %s' %(\"\\n Enthalpy =\",h0,\" Btu/lb\")\n",
+ "print '%s %.4f %s' %(\"\\n Entropy =\",S0,\"units/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Temperature =\",t0,\" F\")\n",
+ "print '%s %.3f %s' %(\"\\n Density =\",rho0,\" lb/cu ft\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Pressure = 202 psia\n",
+ "\n",
+ " Enthalpy = 1211.19 Btu/lb\n",
+ "\n",
+ " Entropy = 1.5594 units/lb\n",
+ "\n",
+ " Temperature = 401.9 F\n",
+ "\n",
+ " Density = 0.427 lb/cu ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 197"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the exit temperature\n",
+ "#Initialization of variables\n",
+ "%matplotlib inline\n",
+ "import matplotlib\n",
+ "from matplotlib import pyplot\n",
+ "import math\n",
+ "p1=40. #psia\n",
+ "t1=80. #F\n",
+ "p2=30. #psia\n",
+ "ar=0.5 #sq ft\n",
+ "v1=200. #ft/s\n",
+ "R=53.35\n",
+ "cp=0.24\n",
+ "g=32.17\n",
+ "J=778.\n",
+ "#calculations\n",
+ "rho1=144*p1/(R*(t1+460))\n",
+ "G=rho1*v1\n",
+ "h10= cp*t1 + p1*p1 /(2*g*rho1*rho1 *J)\n",
+ "t2=78 #F\n",
+ "h2=cp*t2\n",
+ "g2=h10-h2\n",
+ "rho2=math.sqrt(p1*p1 /(2*g*g2*J))\n",
+ "P2=rho2*R*(t2+460)/144. \n",
+ "ds2=cp*math.log((t2+460.)/(t1+460.)) - R/J *math.log(P2/p1)\n",
+ "t3=77 #F\n",
+ "h3=cp*t3\n",
+ "g3=h10-h3\n",
+ "rho3=math.sqrt(p1*p1 /(2*g*g3*J))\n",
+ "P3=rho3*R*(t3+460)/144. \n",
+ "ds3=cp*math.log((t3+460.)/(t1+460.)) - R/J *math.log(P3/p1)\n",
+ "t4=79 #F\n",
+ "h4=cp*t4\n",
+ "g4=h10-h4\n",
+ "rho4=math.sqrt(p1*p1 /(2*g*g4*J))\n",
+ "P4=rho4*R*(t4+460)/144. \n",
+ "ds4=cp*math.log((t4+460)/(t1+460.)) - R/J *math.log(P4/p1)\n",
+ "h5=18.62\n",
+ "t5=h5/cp\n",
+ "Gv=([h4, h2, h3])\n",
+ "Pv=([P4, P2, P3])\n",
+ "Sv=([ds4, ds2, ds3])\n",
+ "pyplot.figure(1)\n",
+ "pyplot.title(\"Fanno line diagram , Enthalpy vs Entropy\")\n",
+ "pyplot.xlabel(\"Entropy\")\n",
+ "pyplot.ylabel(\"Enthalpy Btu/lb\")\n",
+ "pyplot.plot(Sv,Gv)\n",
+ "\n",
+ "pyplot.figure(2)\n",
+ "pyplot.title(\"Fanno line diagram , Pressure vs Entropy\")\n",
+ "pyplot.xlabel(\"Entropy\")\n",
+ "pyplot.ylabel(\"Pressure psia\")\n",
+ "pyplot.plot(Sv,Pv)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Temperature at exit =\",t5,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Populating the interactive namespace from numpy and matplotlib\n",
+ "Temperature at exit = 77.6 F"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stderr",
+ "text": [
+ "WARNING: pylab import has clobbered these variables: ['f']\n",
+ "`%matplotlib` prevents importing * from pylab and numpy\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x5bd2c30>"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x5bf3270>"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 199"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the velocity required\n",
+ "#Initialization of variables\n",
+ "p1=40 #psia\n",
+ "t1=80. #F\n",
+ "p2=30 #psia\n",
+ "ar=0.5 #sq ft\n",
+ "v1=200 #ft/s\n",
+ "R=53.35\n",
+ "cp=0.24\n",
+ "g=32.17\n",
+ "J=778.\n",
+ "t2=78. #F\n",
+ "#calculations\n",
+ "G=40 #lb/sq ft/sec\n",
+ "rho2=144*p2/(R*(t2+460.))\n",
+ "v2=p1/rho2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Velocity =\",v2,\"ft/s\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Velocity = 265 ft/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 206"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the velocity, diameter, specific volume, density and diameter of nozzle\n",
+ "#Initialization of variables\n",
+ "%matplotlib inline\n",
+ "import math\n",
+ "import numpy\n",
+ "import matplotlib\n",
+ "from matplotlib import pyplot\n",
+ "P2=([180., 160., 140., 120., 100., 80., 60., 40., 20.])\n",
+ "k=1.4\n",
+ "p1=200 #psia\n",
+ "t1=240+460. #R\n",
+ "cp=0.24\n",
+ "J=778.\n",
+ "gc=32.2\n",
+ "R=53.35\n",
+ "m=4. #lb/sec\n",
+ "#calculations\n",
+ "b = len(P2)\n",
+ "pr=numpy.zeros(b);\n",
+ "prr=numpy.zeros(b);\n",
+ "T2=numpy.zeros(b);\n",
+ "dt=numpy.zeros(b);\n",
+ "dh=numpy.zeros(b);\n",
+ "v2=numpy.zeros(b);\n",
+ "vol=numpy.zeros(b);\n",
+ "A2=numpy.zeros(b);\n",
+ "dia=numpy.zeros(b);\n",
+ "rad=numpy.zeros(b);\n",
+ "den=numpy.zeros(b);\n",
+ "for i in range (0,b):\n",
+ "\tpr[i] = p1/P2[i]\n",
+ "\tprr[i]=math.pow(pr[i],((k-1)/k))\n",
+ "\tT2[i]=t1 /prr[i]\n",
+ "\tdt[i]= t1 -T2[i]\n",
+ "\tdh[i]=dt[i]*cp\n",
+ "\tv2[i]=math.sqrt(2*gc*J*dh[i])\n",
+ "\tvol[i]=(R*T2[i]) /(P2[i]*144.)\n",
+ "\tA2[i]=m*vol[i]*144. /v2[i]\n",
+ "\tdia[i]=math.sqrt(4/ math.pi *A2[i])\n",
+ "\trad[i]=dia[i]/2.\n",
+ "\tden[i]=1. /vol[i]\n",
+ "\n",
+ "pyplot.figure(1)\n",
+ "pyplot.title ('Velocity vs pressure')\n",
+ "pyplot.xlabel('Pressure in psia')\n",
+ "pyplot.ylabel('velocity in ft/s')\n",
+ "pyplot.plot(P2,v2)\n",
+ "\n",
+ "pyplot.figure(2)\n",
+ "pyplot.title('specific volume vs pressure')\n",
+ "pyplot.xlabel('Pressure in psia')\n",
+ "pyplot.ylabel('specific volume in cu ft/lb')\n",
+ "pyplot.plot(P2,vol)\n",
+ "\n",
+ "pyplot.figure(3)\n",
+ "pyplot.title('Radius vs Pressure')\n",
+ "pyplot.xlabel('Pressure in psia')\n",
+ "pyplot.ylabel('Radius in in')\n",
+ "plot(P2,rad)\n",
+ "#results\n",
+ "print '%s' %('Velocity in ft/s')\n",
+ "print (v2)\n",
+ "print '%s' %('Specific volume in cu ft/lb')\n",
+ "print (vol)\n",
+ "print '%s' %('Density in lb/cu ft')\n",
+ "print (den)\n",
+ "print '%s' %('Diameter of nozzle in in')\n",
+ "print (dia)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Populating the interactive namespace from numpy and matplotlib\n",
+ "Velocity in ft/s"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "[ 499.61112617 721.04131991 903.0653517 1069.14361272 1229.75524527\n",
+ " 1392.40468067 1565.24666139 1761.46433404 2014.34825773]\n",
+ "Specific volume in cu ft/lb\n",
+ "[ 1.39805384 1.52076257 1.6729549 1.86768387 2.12745999 2.4950706\n",
+ " 3.06425423 4.09358926 6.71623201]\n",
+ "Density in lb/cu ft\n",
+ "[ 0.71528003 0.65756484 0.59774475 0.53542252 0.47004409 0.40079026\n",
+ " 0.32634368 0.2442844 0.14889301]\n",
+ "Diameter of nozzle in in\n",
+ "[ 1.43255795 1.24370371 1.16559809 1.1318789 1.12638708 1.14637045\n",
+ " 1.19822204 1.30551392 1.56373036]\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7b96290>"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n4hzkiETAuWYAAAAASUVORK5CYII=\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x5d968d0>"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\nRK5CYII=\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x5d7e810>"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 210"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the nozzle exit area\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=200. #psia\n",
+ "t1=480. #F\n",
+ "eff=0.95\n",
+ "g=32.2 #ft/s^2\n",
+ "J=778.\n",
+ "mf=3.4 #lb/s\n",
+ "#calculations\n",
+ "print '%s' %(\"From steam tables,\")\n",
+ "h1=1257.8 \n",
+ "h2=1210.5 \n",
+ "dh=eff*(h1-h2)\n",
+ "ve=math.sqrt(2*g*J*dh)\n",
+ "h3=h1-dh\n",
+ "vs=3.961\n",
+ "Ae=mf*vs/ve *144.\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Nozzle exit area =\",Ae,\"sq.in\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam tables,\n",
+ "Nozzle exit area = 1.292 sq.in\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 216"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final temperature, pressure and exit velocity in both cases\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "import numpy\n",
+ "from numpy import roots\n",
+ "R=53.35\n",
+ "v=300. #ft/s\n",
+ "p=100 #psia\n",
+ "t1=200 #F\n",
+ "q=500 #Btu/s\n",
+ "gc=32.2 #ft/s^2\n",
+ "J=778\n",
+ "#calculations\n",
+ "rho1=p*144/(R*(460.+t1))\n",
+ "s=([1., -0.206, 0.00535])\n",
+ "vec=numpy.roots(s)\n",
+ "rho2=vec[0]\n",
+ "t2=(236.6 - 0.301/rho2/rho2)/0.248\n",
+ "P2=rho2*R*(t2+462) /144.\n",
+ "v2=math.sqrt(2*gc*J*(236.6-0.248*t2))\n",
+ "v22=rho1*v/rho2\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Final temperature =\",t2,\" F\")\n",
+ "print '%s %.1f %s' %(\"\\n Final pressure =\",P2,\" psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Exit velocity in case 1 =\",v2,\"ft/s\")\n",
+ "print '%s %.1f %s' %(\"\\n Exit velocity in case 2 =\",v22,\" ft/s\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Final temperature = 914.6 F\n",
+ "\n",
+ " Final pressure = 89.5 psia\n",
+ "\n",
+ " Exit velocity in case 1 = 699.7 ft/s\n",
+ "\n",
+ " Exit velocity in case 2 = 699.0 ft/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 20
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_11_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_11_3.ipynb new file mode 100755 index 00000000..6b765040 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_11_3.ipynb @@ -0,0 +1,649 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:44e64b4537965942393829519dc8a0f03d9e3358f94636d1404b1281c73e5622"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 11 - Thermodynamics of Fluid flow"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 181"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the reynolds number\n",
+ "#Initialization of variables\n",
+ "d=2.067 #in\n",
+ "P=20 #psia\n",
+ "R=53.35 \n",
+ "T=600 #R\n",
+ "mu=0.0486 #lb /ft.hr\n",
+ "v=50 #ft/s\n",
+ "#calculations\n",
+ "rho=P*144./(R*T)\n",
+ "Re=d*v*rho*3600./(12*mu)\n",
+ "#results\n",
+ "print '%s %d' %(\"Reynolds number = \",Re)\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Reynolds number = 57398\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 184"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in pressure and the percent change\n",
+ "#Initialization of variables\n",
+ "eps=0.00015 \n",
+ "D=2.067/12. #ft\n",
+ "l=100 #ft\n",
+ "P=20 #psia\n",
+ "R=53.35 \n",
+ "T=600 #R\n",
+ "mu=0.0486 #lb /ft.hr\n",
+ "v=50 #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "rho=P*144/(R*T)\n",
+ "Re=D*v*rho*3600./(mu)\n",
+ "ed=eps/D\n",
+ "print '%s' %(\"From figure 11.5\")\n",
+ "f=0.0235\n",
+ "dp=f*l*rho*v*v /(2*D*g) /144.\n",
+ "change=dp/P *100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Change in pressure =\",dp,\"psi\")\n",
+ "print '%s %.2f %s' %(\"\\n Percentage change in pressure =\",change,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From figure 11.5\n",
+ "Change in pressure = 0.33 psi\n",
+ "\n",
+ " Percentage change in pressure = 1.66 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 190"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final pressure\n",
+ "#Initialization of variables\n",
+ "v1=60. #ft/s\n",
+ "d1=10. #in\n",
+ "d2=15. #in\n",
+ "P=15. #psia\n",
+ "R=53.35\n",
+ "T=540. #R\n",
+ "g=32.17 #ft/s^2\n",
+ "v1=60. #ft/s\n",
+ "#calculations\n",
+ "v2=v1*d1*d1 /d2/d2\n",
+ "rho=P*144/(R*T)\n",
+ "dp=rho*(v2*v2 -v1*v1)/(2*g) /144.\n",
+ "p2=P-dp\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Final pressure =\",p2,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Final pressure = 15.02 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 192"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "J=778 #ft.lb/Btu\n",
+ "D=2.067/12. #ft\n",
+ "l=100 #ft\n",
+ "P=20 #psia\n",
+ "R=53.35 \n",
+ "T=600 #R\n",
+ "mu=0.0486 #lb /ft.hr\n",
+ "v=50 #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "f=0.0235\n",
+ "ds=f*v*v *l /(J*2*D*g*T)\n",
+ "#results\n",
+ "print '%s %.6f %s' %(\"Change in entropy =\",ds,\" Btu/lbm R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.001136 Btu/lbm R\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 193"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the pressure, enthalpy, entropy, temperature and density of the gas\n",
+ "#Initialization of variables\n",
+ "v=210 #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "p=200. #psia\n",
+ "z=5. #ft\n",
+ "x=2.361\n",
+ "h=1210.3\n",
+ "J=778.\n",
+ "#calculations\n",
+ "P0=p + v*v /(2*g*144*x) + z/(144*x)\n",
+ "h0=h + v*v /(2*J*g) +z/J\n",
+ "S=1.5594 #units/lb\n",
+ "S0=S\n",
+ "t0=401.9 #F\n",
+ "v0=2.342 #cu ft/lb\n",
+ "rho0=1./v0\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Pressure =\",P0,\"psia\")\n",
+ "print '%s %.2f %s' %(\"\\n Enthalpy =\",h0,\" Btu/lb\")\n",
+ "print '%s %.4f %s' %(\"\\n Entropy =\",S0,\"units/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Temperature =\",t0,\" F\")\n",
+ "print '%s %.3f %s' %(\"\\n Density =\",rho0,\" lb/cu ft\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Pressure = 202 psia\n",
+ "\n",
+ " Enthalpy = 1211.19 Btu/lb\n",
+ "\n",
+ " Entropy = 1.5594 units/lb\n",
+ "\n",
+ " Temperature = 401.9 F\n",
+ "\n",
+ " Density = 0.427 lb/cu ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 197"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the exit temperature\n",
+ "#Initialization of variables\n",
+ "%pylab inline\n",
+ "import matplotlib\n",
+ "from matplotlib import pyplot\n",
+ "import math\n",
+ "p1=40. #psia\n",
+ "t1=80. #F\n",
+ "p2=30. #psia\n",
+ "ar=0.5 #sq ft\n",
+ "v1=200. #ft/s\n",
+ "R=53.35\n",
+ "cp=0.24\n",
+ "g=32.17\n",
+ "J=778.\n",
+ "#calculations\n",
+ "rho1=144*p1/(R*(t1+460))\n",
+ "G=rho1*v1\n",
+ "h10= cp*t1 + p1*p1 /(2*g*rho1*rho1 *J)\n",
+ "t2=78 #F\n",
+ "h2=cp*t2\n",
+ "g2=h10-h2\n",
+ "rho2=math.sqrt(p1*p1 /(2*g*g2*J))\n",
+ "P2=rho2*R*(t2+460)/144. \n",
+ "ds2=cp*math.log((t2+460.)/(t1+460.)) - R/J *math.log(P2/p1)\n",
+ "t3=77 #F\n",
+ "h3=cp*t3\n",
+ "g3=h10-h3\n",
+ "rho3=math.sqrt(p1*p1 /(2*g*g3*J))\n",
+ "P3=rho3*R*(t3+460)/144. \n",
+ "ds3=cp*math.log((t3+460.)/(t1+460.)) - R/J *math.log(P3/p1)\n",
+ "t4=79 #F\n",
+ "h4=cp*t4\n",
+ "g4=h10-h4\n",
+ "rho4=math.sqrt(p1*p1 /(2*g*g4*J))\n",
+ "P4=rho4*R*(t4+460)/144. \n",
+ "ds4=cp*math.log((t4+460)/(t1+460.)) - R/J *math.log(P4/p1)\n",
+ "h5=18.62\n",
+ "t5=h5/cp\n",
+ "Gv=([h4, h2, h3])\n",
+ "Pv=([P4, P2, P3])\n",
+ "Sv=([ds4, ds2, ds3])\n",
+ "pyplot.figure(1)\n",
+ "pyplot.title(\"Fanno line diagram , Enthalpy vs Entropy\")\n",
+ "pyplot.xlabel(\"Entropy\")\n",
+ "pyplot.ylabel(\"Enthalpy Btu/lb\")\n",
+ "pyplot.plot(Sv,Gv)\n",
+ "\n",
+ "pyplot.figure(2)\n",
+ "pyplot.title(\"Fanno line diagram , Pressure vs Entropy\")\n",
+ "pyplot.xlabel(\"Entropy\")\n",
+ "pyplot.ylabel(\"Pressure psia\")\n",
+ "pyplot.plot(Sv,Pv)\n",
+ "warn=False\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Temperature at exit =\",t5,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Populating the interactive namespace from numpy and matplotlib\n",
+ "Temperature at exit = 77.6 F"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x54be390>"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x55ca1b0>"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 199"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the velocity required\n",
+ "#Initialization of variables\n",
+ "p1=40 #psia\n",
+ "t1=80. #F\n",
+ "p2=30 #psia\n",
+ "ar=0.5 #sq ft\n",
+ "v1=200 #ft/s\n",
+ "R=53.35\n",
+ "cp=0.24\n",
+ "g=32.17\n",
+ "J=778.\n",
+ "t2=78. #F\n",
+ "#calculations\n",
+ "G=40 #lb/sq ft/sec\n",
+ "rho2=144*p2/(R*(t2+460.))\n",
+ "v2=p1/rho2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Velocity =\",v2,\"ft/s\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Velocity = 265 ft/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 206"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the velocity, diameter, specific volume, density and diameter of nozzle\n",
+ "#Initialization of variables\n",
+ "%pylab inline\n",
+ "import math\n",
+ "import numpy\n",
+ "import matplotlib\n",
+ "from matplotlib import pyplot\n",
+ "P2=([180., 160., 140., 120., 100., 80., 60., 40., 20.])\n",
+ "k=1.4\n",
+ "p1=200 #psia\n",
+ "t1=240+460. #R\n",
+ "cp=0.24\n",
+ "J=778.\n",
+ "gc=32.2\n",
+ "R=53.35\n",
+ "m=4. #lb/sec\n",
+ "#calculations\n",
+ "b = len(P2)\n",
+ "pr=numpy.zeros(b);\n",
+ "prr=numpy.zeros(b);\n",
+ "T2=numpy.zeros(b);\n",
+ "dt=numpy.zeros(b);\n",
+ "dh=numpy.zeros(b);\n",
+ "v2=numpy.zeros(b);\n",
+ "vol=numpy.zeros(b);\n",
+ "A2=numpy.zeros(b);\n",
+ "dia=numpy.zeros(b);\n",
+ "rad=numpy.zeros(b);\n",
+ "den=numpy.zeros(b);\n",
+ "for i in range (0,b):\n",
+ "\tpr[i] = p1/P2[i]\n",
+ "\tprr[i]=math.pow(pr[i],((k-1)/k))\n",
+ "\tT2[i]=t1 /prr[i]\n",
+ "\tdt[i]= t1 -T2[i]\n",
+ "\tdh[i]=dt[i]*cp\n",
+ "\tv2[i]=math.sqrt(2*gc*J*dh[i])\n",
+ "\tvol[i]=(R*T2[i]) /(P2[i]*144.)\n",
+ "\tA2[i]=m*vol[i]*144. /v2[i]\n",
+ "\tdia[i]=math.sqrt(4/ math.pi *A2[i])\n",
+ "\trad[i]=dia[i]/2.\n",
+ "\tden[i]=1. /vol[i]\n",
+ "\n",
+ "pyplot.figure(1)\n",
+ "pyplot.title ('Velocity vs pressure')\n",
+ "pyplot.xlabel('Pressure in psia')\n",
+ "pyplot.ylabel('velocity in ft/s')\n",
+ "pyplot.plot(P2,v2)\n",
+ "\n",
+ "pyplot.figure(2)\n",
+ "pyplot.title('specific volume vs pressure')\n",
+ "pyplot.xlabel('Pressure in psia')\n",
+ "pyplot.ylabel('specific volume in cu ft/lb')\n",
+ "pyplot.plot(P2,vol)\n",
+ "\n",
+ "pyplot.figure(3)\n",
+ "pyplot.title('Radius vs Pressure')\n",
+ "pyplot.xlabel('Pressure in psia')\n",
+ "pyplot.ylabel('Radius in in')\n",
+ "plot(P2,rad)\n",
+ "#results\n",
+ "print '%s' %('Velocity in ft/s')\n",
+ "print (v2)\n",
+ "print '%s' %('Specific volume in cu ft/lb')\n",
+ "print (vol)\n",
+ "print '%s' %('Density in lb/cu ft')\n",
+ "print (den)\n",
+ "print '%s' %('Diameter of nozzle in in')\n",
+ "print (dia)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Populating the interactive namespace from numpy and matplotlib\n",
+ "Velocity in ft/s"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "[ 499.61112617 721.04131991 903.0653517 1069.14361272 1229.75524527\n",
+ " 1392.40468067 1565.24666139 1761.46433404 2014.34825773]\n",
+ "Specific volume in cu ft/lb\n",
+ "[ 1.39805384 1.52076257 1.6729549 1.86768387 2.12745999 2.4950706\n",
+ " 3.06425423 4.09358926 6.71623201]\n",
+ "Density in lb/cu ft\n",
+ "[ 0.71528003 0.65756484 0.59774475 0.53542252 0.47004409 0.40079026\n",
+ " 0.32634368 0.2442844 0.14889301]\n",
+ "Diameter of nozzle in in\n",
+ "[ 1.43255795 1.24370371 1.16559809 1.1318789 1.12638708 1.14637045\n",
+ " 1.19822204 1.30551392 1.56373036]\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7b96290>"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "iVBORw0KGgoAAAANSUhEUgAAAX4AAAEZCAYAAACQK04eAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmcHFW5//HPNwtbCCSQQNiTsIhC2A0g2wgY9j3KJip4\n9Ypo8KqoeIUE8YeCclH0KirigqyyLxfZZGTfAiGBsCcBEiAJSwibmOX5/XFqmMpkZtLTM93VPf19\nv179mq7qmjpPz/Kc06dOnaOIwMzMGkefogMwM7PqcuI3M2swTvxmZg3Gid/MrME48ZuZNRgnfjOz\nBuPEb90m6W1Jw7PnK0q6XtI8SZdLOkrSzVWMpUnSS9Uqz6we9Ss6AKt/ETEwtzkWWANYLSIWZ/su\nrn5UZtYRt/itp20APJNL+lYlkgptyClTZAxWGif+XkjSdyXNlDRf0lOSds/2T5B0haRLs9cmStoi\n931rS7pS0hxJ0yR9PfdaH0nfl/Rc9r0PS1one22xpA0lnQacAhyedf8cJ+kLku7KnWczSbdKel3S\nq5JObif+7SW9kk8ikg6R9Fj2fHlJP5c0K3ucI2m5Dn4WiyWNzG3/SdLp2fOm7Od0UvaeX5Z0sKR9\nJT2Txfi93PdK0veyn8Frki6TNLiDcp+UtF9uu5+kuZK2krSCpL9m53hT0oOS1ujgPDOyMp+Q9Iak\nCyQt3yb+70h6BfhDZzF2Vm72e3o++91Ok3RU7m/mwlw8w7OfaZ9su1nSjyTdA7wLjJC0ae53/JSk\nT7f33qw4Tvy9jKSPACcA20XEKsAYYEbukAOBy4HBpC6YayT1zf6RrwceBdYG9gC+IWlM9n3fAo4A\n9snOexzwfu68ERHjgTOASyNiYERc0Ca2gcBtwP8BawEbAbe3fQ8R8QApieyR230UcFH2/L+B0cCW\n2WM08INSfj5AZI8WawLLZ/GcCpwPHA1sDewCnCppg+zYcaSf367Z8W8C/9tBORcDR+a29wLmRMQk\n4PPAKsC6wGrAf7Lkz7Kto0i/xw2BTVjyva5J+l2un52nsxjbLVfSAOAXwN7Z73ZHYFL2PaXM6fJZ\n4D+AlYHXgVuBvwJDSX8zv5b00RLOY9USEX70ogcpmc4mJc3+bV6bANyb2xbwMrAzsD3wQpvjTwYu\nyJ4/DRzQQZmLgZG5Mi7MvfYF4K7s+ZHAxBLfx+nAH7LnA4F3gPWy7edISarl2DHA9Ox5E/BSe7Fl\n238ETs8d+x6gXDmLgY/njn8YODB7/iSwe+61tYB/A33aiX9DYD6wQrZ9EfCD7PmxwD3AqBJ+DtOB\nL+e29wGey8X/AbBc7vWpHcTYt6NygQGkCuJQYMV2/mbyv8/h2c+oT7Z9BzAh9/rhwJ1tzvFb4NSi\n/zf8aH24xd/LRMRzwDdI/7CzJV0iaa3cITNzx0a2vTapxbh21gXwpqQ3SYm/pQtiXeD5boa3HjCt\nxGMvBg7NunAOJVUYLaN11gZeyB37YravHK9nPwdobXXPzr3+PqklC+n6xdW5n89UYCGp1b2EiHie\nVFEcKGkl4ABaL3JfCNwMXJp1VZ2pzvvn86OU2r7XuRHx79z28A5iXKOjciPiXVLC/grwsqQbsk+O\npcrHtwGwfZu/o6No52dkxXHi74Ui4pKI2IX0TxjAmbmX12t5knXvrAvMIv3zTo+IwbnHKhGxf3b4\nS6RPE93xIjBymUel9/AkKbnvQ0oc+ZFBL5MSXIv1s33teQ9YKbe9FqV1X7TnRdInjfzPaKWIeKWD\n4y8hfco5CHgiIqYBRMTCiPhhRGwGfALYH/hcJ+Wu3+Z5/r22fS8dxthZuRFxS0SMAYYBTwG/z873\nLkv+/Ia1E18+hheBf7Ypf2BEnNDJ+7Mqc+LvZSRtImn37ALgB8C/gEW5Q7bNLpT2I30y+BdwP/AQ\n8HZ2oXDFrN9/c0nbZd93PnC6pI2yC4hbSFqti+HdCKwl6USlC7QDJY3u5PiLsxh3Af6W238J8ANJ\nQyQNIfXNX9jO90Pqqz46ez97k/q+y3UecIak9QEkDZV0YCfHX0rq2/8KuYoruyg7SlJf4G1gAUv+\njvIEfFXSOtnP+7+z83Y5xo7KlbSGpIOyvv4FpGTfEs8kYFdJ60lalfQpsL0YW9wAbCLps5L6Z4+P\nS9q0k5itypz4e5/lgR8Dc4FXgCG0/rMGcC3pY/0bpIuYh0bEoohYRGoBbkXqjpkL/I50MRDgf0gX\nhW8B3iK1CFfInZfc83a3I+Jt4FOkbo9XgGdI/dQduYSUqG+PiDdy+39E6nufnD0ezvbly2xxYlZe\nS5fD1W3KaNti7uzTwC+A64BbJM0H7iNdWG5XRLwK3Eu6WHpZ7qVhpIrsLVJXTDMdV1xBqjRuIXW1\nPUvH73VZMXZUbh/gv0if/F4nVbTHZ+/h1iz2yaTGwfXtlPnhdkS8Q7rmckR2vldIf4/tjrqyYrRc\n1KrMyVM/Yb51MhI4JSLOrVih1iFJ44GNIuKYomOx0kiaDnwxIv5RdCzWe1T0ho+IeJo0LK6lP3kW\nS7e4rHp8c42ZVbWrZ0/g+dzIDKu+tt0wZtaAKtrVs0RB0gXAwxHx66oUaGZm7apK4s/GYs8CPhYR\ncyteoJmZdahakzrtQ7oBZ4mkL8ndDmZmZYiIsq/ZVauP/0jS0LylFH3rcimP8ePHFx6D43ScjtMx\ntjy6q+KJP7spZE/gqkqXZWZmy1bxrp5I84AMqXQ5ZmZWGt+5W4KmpqaiQyiJ4+xZjrNn1UOc9RBj\nT6jacM52C5eiyPLNzOqRJKIOLu6amVmNcOI3M2swTvxmZg3Gid/MrMEUnvgnTVr2MWZm1nMKT/y/\n/GXREZiZNZbCh3MOGhQ8+ywM8S1eZmYlqfvhnIceCr///bKPMzOznlF4i//RR4MDDoBp06B//8JC\nMTOrG3Xf4t9qKxgxAq65puhIzMwaQ+GJH2DcOF/kNTOrlppI/AcfDDNmwKOPFh2JmVnvVxOJv18/\n+OpX3eo3M6uGwi/utpT/2muw8cbwzDMwdGhhIZmZ1by6v7jbYsgQD+00M6uGmmnxQ5q+wUM7zcw6\n12ta/JCGdo4c6aGdZmaVVFOJH9LQznPPLToKM7Peq+YS/0EHwQsvwCOPFB2JmVnvVHOJ30M7zcwq\nq6Yu7rbw0E4zs471qou7LYYMgcMO89BOM7NKqMkWP8Bjj8F++8H06R7aaWaW1ytb/ABbbgkbbQRX\nX110JGZmvUvNJn6Ar3/dQzvNzHpaTSf+gw6CF1+EiROLjsTMrPeoaOKXNEjSFZKelDRV0g5d+f5+\n/eCEEzy008ysJ1X04q6kPwP/jIgLJPUDBkTEW7nXO7y42+L111Nf/9NPwxprVCxUM7O6UbMXdyWt\nCuwSERcARMTCfNIv1eqrw9ixHtppZtZTKtbil7QV8FtgKrAlMBE4MSLeyx2zzBY/wOTJsM8+aZUu\nD+00s0ZXsy1+oB+wDfDriNgGeBf4Xjkn2mKLdCfvVVf1ZHhmZo2pXwXPPROYGREPZdtX0E7inzBh\nwofPm5qaaGpqavdk48bB2WfD4Yf3eJxmZjWtubmZ5ubmHjtfpS/u3gn8R0Q8I2kCsGJEfDf3ekld\nPQALF8KGG6ZW/7bbViZeM7N60N2unkon/i2B84HlgOeBY7s6qifvrLNg6lT40596OlIzs/pR04l/\nmYV3MfG/8UZq9Xtop5k1slq+uNvjVlstDe383e+KjsTMrH7VVYsfPLTTzKyhWvyQhnZusglceWXR\nkZiZ1ae6S/yQhnZ6/h4zs/LUZeI/4ACYNQsefrjoSMzM6k9dJn4vyG5mVr66u7jbomVo51NPwZpr\n9nBgZmY1rOEu7rZYbTX49Kc9tNPMrKuW2eKXNAQYD+wMBHAX8MOIeL3bhXejxQ8wZQrsvbeHdppZ\nY6lGi/9SYA5wKDAWmAtcVm6BPWnUKPjIRzy008ysK0pp8T8eEZu32TclIkZ1u/ButvgBrr4afvpT\nuPfe7kZjZlYfqtHiv0XSkZL6ZI/DgVvKLbCnHXAAvPwyPPTQso81M7NOWvyS3iH16QMMABZnz/sA\n70bEwG4X3gMtfkgt/ilT4C9/6fapzMxqXkPNztkRD+00s0ZSscQvaZvOvjEiHim30FwZPZL4Af7z\nP2HddeGUU3rkdGZmNauSib+Z1q6epUTEJ8stNFdGjyX+xx+HMWPS0M7lluuRU5qZ1aRKJv51ImJW\n2ZGVUngPJn6A3XeHL30Jjjyyx05pZlZzKjmq5/eSHpD0E0lNkiq5MHuPGDcOzj236CjMzGpbpxd3\nJa0INAH7AJ8AXgJuAv4eES92u/AebvEvWpQu8l5+OYwe3WOnNTOrKVUd1SNpJKkS2AsYFhHdSq89\nnfgBfvYzeOwxuPDCHj2tmVnNqHjil3RmRHy3zb6zgB9ExL/LLTg7T48n/jffhJEj4cknYdiwHj21\nmVlNqMadu2Pa2bdPd5N+pQweDJ/5jGftNDPrSGejeo4HvgpsCDyfe2kgcE9EHN3twivQ4gcP7TSz\n3q2Swzl3BmYCPwG+C7QU8nZPTMmclVGRxA+wxx7wxS/CUUdV5PRmZoWpZOKfGBHbSno0IrYuO8LO\nCq9g4r/2Wvjxj+H++ytyejOzwlQy8T8ATAYOIs3Jny8kImJcuYXmyqhY4l+0CDbaCC67zEM7zax3\nqeTF3f2B24H3gYnZ4+Hc85rWty+ccIIXZDcza6uU4ZxbRcSkihRewRY/eGinmfVOFR/OWamkXw2D\nB8Phh8Nvf1t0JGZmtaPi8/FLmgHMBxYBC/J3+1a6xQ/wxBOw557wwgse2mlmvUM1buDqrgCaImLr\n7k7xUI7NNkuPv/2t2iWbmdWmUvr4x7ezOyLihyUVIE0Htmtv7H81WvwA110HZ5zhoZ1m1jtUo8X/\nLvBO9lhEmqRteBfKCOA2SQ9L+lKXI+wB++0Hs2fDAw8UUbqZWW1Z5hz7EfGz/LaknwK3dKGMnSLi\nFUlDgVslPRURd7W8OGHChA8PbGpqoqmpqQunLk3fvvC1r6Whndtv3+OnNzOrqObmZpqbm3vsfF2+\nuCtpNeDBiNioy4WlbqN3IuLsbLsqXT3QOrRz6lRYa62qFGlmVhEV7+qRNCX3eAJ4GvhFicGtJGlg\n9nwAaabPKeUG2x2DB8MRR3hop5lZKRd3h+c2FwKzI2JBSSeXRgBXZ5v9gIsi4se516vW4ofU2t9j\nDw/tNLP6Vo2FWHYApkbE/Gx7FeCjEdHtS6XVTvyQxvQfeywc3e1Jpc3MilGNUT3nkUb0tHg321eX\nvCC7mTW6km7giojFueeLgL4Vi6jC9tsP5s710E4za1ylJP7pksZJ6i9pOUknAtMqHViltAztdKvf\nzBpVKX38awLnAp/Mdt0OnBgRc7pdeAF9/ADz5sGIER7aaWb1qeIXdyupqMQPcPzxsOaakLt/zMys\nLjjxl2nqVNh99zS0c/nlCwnBzKws9TA7Z0362Mdg1CjP2mlmjadhEz+koZ2/+AUU+KHHzKzqSrm4\nuwJwGGlGzpZJ3UqelnkZ5y6sqwfSguybbAIXXQQ77FBYGGZmXVKNrp5rgQOBBbROz/xuuQXWEg/t\nNLNGVEqL//GI2LwihRfc4ofWoZ1PPAFrr11oKGZmJalGi/9eSVuUW0CtGzQIjjzSs3aaWeMopcX/\nJLARMB34INsdEdHtyqAWWvzgoZ1mVl+qMTvn8Pb2R8SMcgvNnbsmEj/AmDFwzDHpYWZWyyrW1ZNN\nvwwwv4NHr9Iya2eN1ENmZhXTYYtf0o0RsZ+kGaQF0/MiIkZ2u/AaavF7aKeZ1QtP2dCDzjkHHnoI\nLr646EjMzDrmxN+DPLTTzOqB5+rpQYMGwVFHwXl1u76YmdmyucXfxpNPwic/6aGdZla7qtLil7SL\npGOz50MljSi3wFr30Y/CFlvAZZcVHYmZWWUsM/FLmgB8Bzg527Uc8NcKxlQ4D+00s96slBb/IcBB\nZBOzRcQsYGAlgyravvumC7333190JGZmPa+UxP9BRCxu2ZA0oILx1IQ+fTxrp5n1XqUk/r9J+i0w\nSNKXSYutn1/ZsIp37LFw880wa1bRkZiZ9aySRvVIGgOMyTZvjohbe6TwGhzVk/e1r8HgwXD66UVH\nYmbWqmo3cElalbQCVwBExBvlFpo7Z00n/qeegt12S0M7V1ih6GjMzJKKD+eU9J+SXgUmAw8DE7Ov\nvd6mm8JWW8HllxcdiZlZzyllWubngB0i4rWyCpD6kiqKmRFxQJvXarrFD3DjjfDtb8Pdd8Pqqxcd\njZlZdW7gmga8X24BwInAVJae4bMu7LsvHHAA7LILvPRS0dGYmXVfvxKO+R5wn6T7gH9n+yIixi3r\nGyWtC+wL/D/gm2VHWSAJzjoLhg6FnXdOI3023bToqMzMyldK4v8dcBswBVgMiNJb7+cAJwGrLOvA\nWnfSSSn5NzXBddfB6NFFR2RmVp5SEn/fiOhya13S/sCciHhUUlNHx02YMOHD501NTTQ1dXho4b7w\nhdTPv99+ac7+T32q6IjMrBE0NzfT3NzcY+cr5eLuGcALwHW0Lra+zOGc2fcdAywEViC1+q+MiM/l\njqn5i7vtuftuOOywdGfv4YcXHY2ZNZpqLLY+g3a6diKi5Bk6Je0GfLseR/V0ZPLkdOH35JPhhBOK\njsbMGkl3E/8yu3oiYni5J297qh46T03YYgu46y4YMwbmzIEJE9KFYDOzWldKi//ztN/i/0u3C6/j\nFn+L2bNhn33SAu2//CX07Vt0RGbW21Wjq+dXtCb+FYHdgUciYmy5hebOXfeJH2D+fDj4YBgyBC68\n0Ct3mVllVX2xdUmDgMsiYq9yC82dq1ckfoB//QuOPjpVAlddBQN79YoFZlakIhZbfw/otUsvlmuF\nFdKcPiNGwO67w9y5RUdkZta+Urp6rs9t9gE+BlweEd/tduG9qMXfIgJOOQX+9je45RbYYIOiIzKz\n3qbio3qAs3PPFwIvRIRnremABD/6UesUD3//O2y2WdFRmZm16nIff48W3gtb/HkXXQTf+hZcfTXs\nuGPR0ZhZb1Gxi7uS3qHjsfcREd2ef6e3J36Am26Cz30O/vKXNOzTzKy7qj6qpyc1QuIHuO++NNzz\n7LPhs58tOhozq3fV6ONH0pbArqRPAHdFxGPlFtiIdtwR/vGP1OJ/7TX4xjeKjsjMGlkpSy+eCFwE\nDAXWBP4qaZlz8duSNtssTe523nnw/e+n0T9mZkUoZTjnFNLSi+9m2wOA+yNiVLcLb5Cunry5c9Pk\nblttBb/5DfQr6TOXmVmrat3AtbiD59ZFQ4embp8ZM+Azn0l3/JqZVVMpif+PwAOSJkg6DbgfuKCy\nYfVuAwfCDTdA//6w997w1ltFR2RmjaSkUT2StgV2pvXi7qM9UngDdvXkLVoE48bBvfemG73WXLPo\niMysHlRjds5fApdExL3lFtLJuRs68UO6yPvDH6ZZPW+5BUaOLDoiM6t11ejjnwj8QNI0ST+TtF25\nhdnSJBg/Hr75Tdhll7Syl5lZJZV8A5ek1YFDgSOB9SNio24X7hb/Ei67DL7+dbjyylQJmJm1p5rT\nMm8EbApsADxZboHWscMPT/P7HHooXHdd0dGYWW9VSh//WcAhwDTgUuDqiJjXI4W7xd+uhx6CAw6A\nH/8Yjj226GjMrNZUY8qG54EdI+K1cguxrvn4x6G5OQ31fO01OOmkoiMys97Ek7TVsJkzYa+90p2+\nZ52VLgSbmXl2zl7u9ddh//3hIx+B88/3FA9mVsyau1ZFq68Ot90Gs2fDIYfAe+8VHZGZ1btSZufc\nUdIque1VJG1f2bAsb8CANMpn1VVT18+8Hrm0bmaNqpQW/2+Ad3Lb7wLnVSYc60j//mkVr223hV13\nhVdeKToiM6tXJXX1RMTi3PNFQN+KRWQd6tMHzjkHjjgCdtoJnn226IjMrB6VkvinSxonqb+k5bKF\nWaZVOjBrn5QWcjn5ZNhtN3jkkaIjMrN6U0ri/wqwEzALmAnsAHy5kkHZsn3pS/CrX6Wx/nfcUXQ0\nZlZPKjqcU9IKwD+B5YHlgGsj4uTc6x7O2U133JGmejjvvDTVg5n1fhUbxy/puxFxZjYtc1sRESWt\nuytppYh4T1I/4G7g2xFxd/aaE38PeOSRNNb/W99Kk7wtt1zREZlZJVVyHP/U7OtE4OHcY2L2KElE\ntIw8X450UfiNrodpndlmG7jzzjSf/0c+An/4AyxYUHRUZlarOmvxXxgRx0j6RkT8vOwCpD7AI8CG\nwG8i4ju519zi72H33JPm958+HU45BT77Wd/ta9bbVLKrZyqwJ/B3oKnt6xHRpZa7pFWBm4HvRURz\nti/Gjx//4TFNTU00NS1VlJXhzjvh1FNh1qz09cgjXQGY1avm5maam5s/3D7ttNMqlvjHAccDI4GX\n27wcEdHlRQIlnQK8HxE/y7bd4q+wO+5IiX/OnPRJ4PDDoa/vwjCra9VYc/e8iPhKWSeXhgALI2Ke\npBVJLf7TIuL27HUn/iqIgNtvTxXAvHmpAvj0p9MNYWZWfyrZ1bNKRMzPllxc6qBSunokjQL+TLqI\n3Ae4MCJ+mnvdib+KItIF4FNPhXffhQkT0hBQVwBm9aWSif/GiNhP0gzaT/wjyi00V4YTfwEi4Kab\nUgWwYEGqAA4+2PP9m9ULz8dvZYuAG25IXT8RcNppaclHVwBmta0affyHAHe0rLMraRDQFBHXlFto\n7txO/DUgAq69NlUA/funCmDffV0BmNWqaiT+xyJiyzb7JkXEVuUWmjuPE38NWbwYrr46VQADBqQK\nYK+9XAGY1ZpqrMDV3sk9ILAX6tMHDjsMJk9O0z9885vwiU/ArbemTwVm1juU0uL/I/Am8L+kSuAE\nYHBEfKHbhbvFX9MWLYLLL08t/yFD4Ic/hE9+0p8AzIpWja6elYFTgD2yXbcCP4qId8stNHduJ/46\nsGgRXHJJqgDWWSd93W23oqMya1xVG9UjaUBPJPs253TiryMLF8JFF6WW//DhqQLYeeeiozJrPBXv\n45f0iWzenqey7S0l/brcAq1+9esHn/88PPUUHH00HHMMjBkD991XdGRm1hWlXNz9ObA38BpARDwG\n+IN+A+vfH447Dp5+Ok39cMQRsM8+8OCDRUdmZqUodbH1F9vsWliBWKzOLLdcWgLymWfgoIPSiKD9\n94eJJa/WYGZFKCXxvyhpJ4BssfVvA09WNiyrJ8svD1/5Cjz7bFoD+MADU0Xw6KNFR2Zm7Skl8R9P\nGsK5DmnB9a2zbbMlrLACfO1r8NxzsPvusN9+aRK4yZOLjszM8jxXj1XMe++lReDPOgt22SXdEbz5\n5kVHZVb/qjGqZ0NJ10t6TdJcSddK6vIiLNZ4Vlop3f37/PMwejTssUe6EPzww74T2KxIpdzA9QDw\nK+DSbNfhwNcjYvtuF+4Wf0N55x341a/g/PPTTWFjx6YLwqNHe00As66oxp27kyNiizb7lpq4razC\nnfgbUkTq97/iivR4551UARx2WJobyEtDmnWuGon/TGAecEm263BgMHAWdH3R9TbnduI3pk5trQTm\nzk0XhA87DHbd1QvEm7WnGol/Bu2swJUpa9H13Lmd+G0JzzwDV16ZHi++mFYGO+ywNEqof/+iozOr\nDV6By3qt6dNbK4Fnnkmrg40dC5/6VLp3wKxRVaPF/2ng5mzh9VNI4/h/FBGPlFto7txO/FaSl16C\nq65KlcCUKWmFsLFj0w1jK65YdHRm1VWNxD8lIkZJ2hn4EfAz4NSIGF1uoblzO/Fbl73ySlop7Mor\n09DQvfZKlcC++8LKKxcdnVnlVSPxT4qIrST9BJgSERdJejQiti630Ny5nfitW+bOTesFX3EF3Htv\nuldg7Ng0Z9CqqxYdnVllVCPx30iaquFTpG6efwEPeDin1Zo33oDrr0+VwD//mUYFjR2b5g5abbWi\nozPrOdVI/ANI0zJPjohnJa0FjIqIW8otNHduJ36riPnz4YYbUiVw++2www6pEjj4YBg6tOjozLrH\no3rMluGdd+Cmm1IlcPPNsM02qRI45BBYa62iozPrOid+sy54//2U/K+4Am68MU0aN3ZsumlsvfWK\njs6sNE78ZmX64AO47bY0Oujaa2HjjVvnDxoxoujozDrmxG/WAxYsgDvuSJXA1Ven1v/ee8NOO8GO\nO8LgwUVHaNaqphO/pPWAvwBrkKZ9+F1EnJt73Ynfas7ChXD33fCPf8A996S1hDfYIFUCO+0EO++c\nPhGo7H87s+6p9cQ/DBgWEZMkrQxMBA6OiCez1534reYtWACPPZYqgZbH4sWtFcFOO8HWW3suIaue\nmk78SxUmXQP8MiJuz7ad+K3uRMALL7RWAnffDdOmwXbbtX4i2HFHGDSo6Eitt6qbxC9pOPBPYLOI\neCfb58RvvcK8eXD//a2VwUMPwfDhS34qcPeQ9ZS6SPxZN08zaXK3a3L7nfitV8p3D919d/oaseR1\ngq22cveQlafmE7+k/sANwE0R8fM2r8X48eM/3G5qaqKpqami8ZgVIQJmzFjyOsH06a3dQy2jh9w9\nZO1pbm6mubn5w+3TTjutdhO/JAF/Bl6PiP9q53W3+K1htXQPtXwiePhhdw9ZaWq6xZ9N5XwnMJnW\nVbxOjoi/Z6878ZtlFiyASZOW/FQAS1YE7h4yqPHEv8zCnfjNOtTSPdTyieCee9K2u4fMid+sgcyb\nB/fdt+TooWHDYNSoNO/Q5pun5xtv7E8GvZkTv1kDW7gQnnsuLUf5+OPpMWVKWqpy442XrhDWXx/6\n9Ck6ausuJ34zW8p778FTTy1dIbz1Fmy22dIVwhprFB2xdYUTv5mV7M034Yknlq4Q+vVrrQRaKoTN\nNoNVVik6YmuPE7+ZdUtEWsC+pRJoqRCmTk2rlbWtEDbdFJZfvuioG5sTv5lVxKJF6SazthXCtGnp\n/oK2FcLIkdC3b9FRNwYnfjOrqg8+gKefXrpCmDMHPvrRJa8dbL45rL22b0LraU78ZlYT5s9P3UNt\nK4QFC9L1go03Tp8KNtwwPUaOhNVXd6VQDid+M6tpc+akC8rPPZe6iZ5/vvUR0VoJ5L9uuGFaBa1f\nv6Kjr01RCx3vAAAJv0lEQVRO/GZWt954I1UA+Qqh5fns2Sn5t/2U0PJ14MCioy+OE7+Z9UoffJCm\nqGivYpg2DVZeeelPCS3Phw3r3TeqOfGbWcNpGYLaUiG0rRjefjuNPGqvG2nEiPofjurEb2bWxttv\nt34yaFsxvPRSulO5ve6jerng7MRvZtYFCxem5J+vEPJfP/gA1l2388fQocV2JTnxm5n1oLffhlmz\n0mPmzPYf8+en+xPWWafjymHYsMqNSnLiNzOrsvffh5dfXrpCyFcWr72WupQ6qhjWWSdVHuVcb3Di\nNzOrQQsWpAvQHX1qmDkTXn0VBg/uvFtpnXVgpZWWPHd3E79vjzAzq4D+/dP6B+uv3/ExixalG9za\nVgiPP77kp4gBA5asDLrLid/MrCB9+8Jaa6XHxz/e/jERqdsoXzF0l7t6zMzqTHe7enrxvW1mZtYe\nJ34zswbjxG9m1mCc+M3MGowTv5lZg3HiNzNrME78ZmYNxonfzKzBVDTxS7pA0mxJUypZjpmZla7S\nLf4/AntXuIyKa25uLjqEkjjOnuU4e1Y9xFkPMfaEiib+iLgLeLOSZVRDvfwxOM6e5Th7Vj3EWQ8x\n9gT38ZuZNRgnfjOzBlPx2TklDQeuj4hR7bzmqTnNzMpQtwuxdCdwMzMrT6WHc14C3AtsIuklScdW\nsjwzM1u2QhdiMTOz6qvaxV1J60m6Q9ITkh6XNC7bv5qkWyU9I+kWSYOqFVNnJPWV9Kik67PtmotT\n0iBJV0h6UtJUSdvXWpySTs5+51MkXSxp+VqIsb2bCzuLK3sfz0p6StKYguP8afY7f0zSVZJWrcU4\nc699S9JiSavVapySvp79TB+XdGYtxilptKQHs7z0kKSP517rWpwRUZUHMAzYKnu+MvA08FHgLOA7\n2f7vAj+pVkzLiPebwEXAddl2zcUJ/Bk4LnveD1i1luIEhgPTgOWz7cuAz9dCjMAuwNbAlNy+duMC\nPgZMAvpn7+k5oE+BcX6qpXzgJ7UaZ7Z/PeDvwHRgtVqME/gkcCvQP9seWqNxNgN7Zc/3Ae4oN86q\ntfgj4tWImJQ9fwd4ElgHOJCUwMi+HlytmDoiaV1gX+B8oOUCdE3FmbXydomICwAiYmFEvEVtxTkf\nWACsJKkfsBLwMjUQY7R/c2FHcR0EXBIRCyJiBukfa3RRcUbErRGxONt8AFi3FuPM/A/wnTb7ai3O\n44EfR8SC7Ji5NRrnK6TGHcAgYFa5cRYyjj8b4rk16Y92zYiYnb00G1iziJjaOAc4CVic21drcY4A\n5kr6o6RHJP1e0gBqKM6IeAM4G3iRlPDnRcSt1FCMbXQU19rAzNxxM0mNllpwHPB/2fOailPSQcDM\niJjc5qWaihPYGNhV0v2SmiVtl+2vtTi/B5wt6UXgp8DJ2f4ux1n1xC9pZeBK4MSIeDv/WqTPLYVe\nbZa0PzAnIh6ltbW/hFqIk9S1sw3w64jYBniX9IfxoaLjlLQh8A3Sx8+1gZUlfTZ/TNExdqSEuAqP\nWdJ/A/+OiIs7OayQOCWtBHwfGJ/f3cm3FPnz7AcMjogdSA2+yzs5tsg4/wCMi4j1gf8CLujk2E7j\nrGril9SflPQvjIhrst2zJQ3LXl8LmFPNmNrxCeBASdOBS4DdJV1I7cU5k9SaeijbvoJUEbxaQ3Fu\nB9wbEa9HxELgKmDHGosxr6Pf8SxSX3WLdWn9mF0ISV8gdUcendtdS3FuSKrwH8v+l9YFJkpak9qK\nE9L/0lUA2f/TYklDqL04R0fE1dnzK2jtzulynNUc1SNSjTU1In6ee+k60gU/sq/XtP3eaoqI70fE\nehExAjgC+EdEHEPtxfkq8JKkTbJdewJPANdTO3E+BewgacXs978nMJXaijGvo9/xdcARkpaTNILU\nNfBgAfEBIGlvUsv0oIj4V+6lmokzIqZExJoRMSL7X5oJbJN1pdVMnJlrgN0Bsv+n5SLiNWovzuck\n7ZY93x14Jnve9TircYU6u/K8M6nPfBLwaPbYG1gNuC17E7cAg6oVUwkx70brqJ6aixPYEngIeIzU\nYlm11uIkXdh7AphCumDavxZiJH2aexn4N/AScGxncZG6LZ4jVWZ7FRjnccCzwAu5/6Nf11CcH7T8\nPNu8Po1sVE+txZn9TV6Y/Y1OBJpqKM783+d2pOuik4D7gK3LjdM3cJmZNRjPzmlm1mCc+M3MGowT\nv5lZg3HiNzNrME78ZmYNxonfzKzBOPFb4SQtyqaanSLpckkrFh3TskhaW9LfKnj+bSX9olLnt8bm\ncfxWOElvR8TA7PlfgYkRcU7u9X6RpnyoRixVK8usKG7xW625C9hI0m6S7pJ0LfC4pD7ZAiQPZguQ\nfBnSnDqS7sx9YtgpO/ZP2fZkSSdmxzZL2jZ7PiSbQwZJX5B0naTbgVslrZQthPFANvPpgW2DlDS8\nZZGM7PuvknST0iIuZ7Y9PjtuhqQzs5geyCaxQ9Kns1gnSWrO9jWpdRGg0ZLuzWK5JzdNh1lZCl1s\n3Swvm7N/X1qnGd4a2CwiXsgS/byIGC1peeBuSbcAhwJ/j4gzsvmABmTft3ZEjMrOu0p2vs5m3Nwa\nGBUR8ySdAdweEccprcL1gKTbIuK9TsLfEtiKdIv905LOjYi2E2VF9h62kHQM8HPgAOAUYExEvJKL\nNe9J0toLiyTtCZwBjO0kFrNOOfFbLVhR0qPZ8ztJ083uBDwYES9k+8cAoyS1JLxVgI1IcxVdkM38\nek1EPCbpeWCkpHOBG0nz7izLrRExL1fWAZK+nW0vT5r98OlOvv/2yKYZlzSVNDNlezMkXpJ9vZS0\n7gPAPcCfJV1ONktkG4OAv0jaiFR59C/h/Zh1yInfasH7EbF1fkdqvPNum+O+FmkhF9ocuwuwP/An\nSf8TERdK2hLYC/gK8Bngi8BCWrs3V2hzmrZlHRoRz3bhPXyQe74I6FvC9wRARBwvaTSwH2nq4m3b\nHHc6qWI5RNIGpCX4zMrmPn6rFzcDX826g5C0SdYXvz4wNyLOJy2VuY2k1YG+EXEVqRulpVKZQZrh\nEDrvKrkZGNeyIWnrTo7tSEeLjhye+3pvdv4NI+LBiBgPzKV1KcUWq5BmaoQ0S6NZt7jFb7WgvX73\ntv3x55O6Tx7J+vLnAIcATcBJkhYAbwOfIy0790dJLQ2blpXJfgZcnl0vuDF3/rZlnQ78XNJkUuNo\nGmk93o7ibu/aQUfXEgZLegz4F3Bktu8sSRuTKovbImJyNu96yznOInUF/aBN3GZl8XBOsyrJRhFt\nG2ktYrPCuKvHrHrcyrKa4Ba/mVmDcYvfzKzBOPGbmTUYJ34zswbjxG9m1mCc+M3MGowTv5lZg/n/\n4hzkiETAuWYAAAAASUVORK5CYII=\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x5d968d0>"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\nRK5CYII=\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x5d7e810>"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 210"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the nozzle exit area\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=200. #psia\n",
+ "t1=480. #F\n",
+ "eff=0.95\n",
+ "g=32.2 #ft/s^2\n",
+ "J=778.\n",
+ "mf=3.4 #lb/s\n",
+ "#calculations\n",
+ "print '%s' %(\"From steam tables,\")\n",
+ "h1=1257.8 \n",
+ "h2=1210.5 \n",
+ "dh=eff*(h1-h2)\n",
+ "ve=math.sqrt(2*g*J*dh)\n",
+ "h3=h1-dh\n",
+ "vs=3.961\n",
+ "Ae=mf*vs/ve *144.\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Nozzle exit area =\",Ae,\"sq.in\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam tables,\n",
+ "Nozzle exit area = 1.292 sq.in\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 216"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final temperature, pressure and exit velocity in both cases\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "import numpy\n",
+ "from numpy import roots\n",
+ "R=53.35\n",
+ "v=300. #ft/s\n",
+ "p=100 #psia\n",
+ "t1=200 #F\n",
+ "q=500 #Btu/s\n",
+ "gc=32.2 #ft/s^2\n",
+ "J=778\n",
+ "#calculations\n",
+ "rho1=p*144/(R*(460.+t1))\n",
+ "s=([1., -0.206, 0.00535])\n",
+ "vec=numpy.roots(s)\n",
+ "rho2=vec[0]\n",
+ "t2=(236.6 - 0.301/rho2/rho2)/0.248\n",
+ "P2=rho2*R*(t2+462) /144.\n",
+ "v2=math.sqrt(2*gc*J*(236.6-0.248*t2))\n",
+ "v22=rho1*v/rho2\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Final temperature =\",t2,\" F\")\n",
+ "print '%s %.1f %s' %(\"\\n Final pressure =\",P2,\" psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Exit velocity in case 1 =\",v2,\"ft/s\")\n",
+ "print '%s %.1f %s' %(\"\\n Exit velocity in case 2 =\",v22,\" ft/s\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Final temperature = 914.6 F\n",
+ "\n",
+ " Final pressure = 89.5 psia\n",
+ "\n",
+ " Exit velocity in case 1 = 699.7 ft/s\n",
+ "\n",
+ " Exit velocity in case 2 = 699.0 ft/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 20
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_12.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_12.ipynb new file mode 100755 index 00000000..adf56744 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_12.ipynb @@ -0,0 +1,585 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:aa78c4fecb9e6170fff80d7d4acf98ab991ec2677f1baef191ee2d45ad66490b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 12 - Heat Transfer"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 229"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the interface temperature\n",
+ "#Initialization of variables\n",
+ "km1=0.62\n",
+ "km2=0.16\n",
+ "km3=0.4\n",
+ "l1=8. #in\n",
+ "l2=4. #in\n",
+ "l3=4. #in\n",
+ "Tf=1600. #F\n",
+ "Tc=100. #F\n",
+ "#calculations\n",
+ "Rw=l1/12./km1 +l2/12./km2 +l3/12./km3\n",
+ "Rb=l1/12./km1\n",
+ "Ti=Tf-Rb/Rw *(Tf-Tc)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Interface temperature =\",Ti,\"F\")\n",
+ "print '%s' %(\"The answers might differ a bit from textbook due to rounding off error.\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Interface temperature = 1196.0 F\n",
+ "The answers might differ a bit from textbook due to rounding off error.\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 231"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat flow and the interface temperature\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "th=350. #F\n",
+ "tc=150. #F\n",
+ "od1=4.5\n",
+ "id1=4.026\n",
+ "od2=6.5\n",
+ "id2=4.5\n",
+ "k1=32.\n",
+ "k2=0.042\n",
+ "#calculations\n",
+ "Q=2*math.pi*(th-tc)/(math.log(od1/id1) /k1 + math.log(od2/id2) /k2)\n",
+ "r1=math.log(od1/id1) /k1\n",
+ "rt=math.log(od1/id1) /k1 + math.log(od2/id2) /k2\n",
+ "ti=th-r1/rt*(th-tc)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Heat flow =\",Q,\"Btu/hr\")\n",
+ "print '%s %.2f %s' %(\"\\n Interface temperature =\",ti,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat flow = 143.5 Btu/hr\n",
+ "\n",
+ " Interface temperature = 349.92 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 239"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the net energy exchange in the process\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Fa=0.045\n",
+ "l=4. #m\n",
+ "b=4. #m\n",
+ "Fe=1.\n",
+ "Ta=540.+460 #R\n",
+ "Tb=1540.+460 #R\n",
+ "#calculations\n",
+ "A=l*b\n",
+ "Q=0.173*A*Fa*Fe*(math.pow((Tb/100.),4) -math.pow((Ta/100.),4))\n",
+ "Q2=416000.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"In case 1, Net energy exchange =\",Q,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n In case 2, Net energy exchange =\",Q2,\"Btu/hr\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1, Net energy exchange = 18684 Btu/hr\n",
+ "\n",
+ " In case 2, Net energy exchange = 416000 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 239"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the net energy exchange\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "ea=0.8\n",
+ "eb=0.7\n",
+ "Fa=0.045\n",
+ "l=4. #m\n",
+ "b=4. #m\n",
+ "Fe=1.\n",
+ "Ta=540.+460 #R\n",
+ "Tb=1540.+460 #R\n",
+ "#calculations\n",
+ "A=l*b\n",
+ "ef=ea*eb\n",
+ "Q=0.173*A*Fa*Fe*ef*(math.pow((Tb/100),4) -math.pow((Ta/100),4))\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Net energy exchange =\",\tQ,\"Btu/hr\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Net energy exchange = 10463 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 246"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the inside film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "den=61.995 #lb/cu ft\n",
+ "vel=6 #ft/s\n",
+ "t1=100. #F\n",
+ "t2=160. #F\n",
+ "de=2.067 #in\n",
+ "mu=1.238\n",
+ "pr=3.3\n",
+ "#calculations\n",
+ "G=den*vel*3600.\n",
+ "tm=(t1+t2)/2\n",
+ "hc=0.023*0.377/(de/12.) *math.pow(de/12 *G/mu,0.8) *math.pow(pr,0.4)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Inside film coefficient =\",hc,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Inside film coefficient = 1335 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 247"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the inside film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "d=0.5 #in\n",
+ "tm=1000. #F\n",
+ "v=5#ft/s\n",
+ "k=38.2\n",
+ "den=51.2\n",
+ "mu=0.3\n",
+ "#calculations\n",
+ "Nu=7+ 0.025*math.pow((d/12 *v*den*mu/k*3600),0.8)\n",
+ "h=Nu*k/(d/12.)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Inside film coefficient =\",h,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Inside film coefficient = 8624 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 249"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the convective film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "do=2 #in\n",
+ "tf=120. #F\n",
+ "ti=80. #F\n",
+ "rho=0.0709\n",
+ "g=32.17\n",
+ "bet=1/560.\n",
+ "cp=0.24\n",
+ "mu=0.0461\n",
+ "k=0.0157\n",
+ "d=2. #in\n",
+ "Cd=0.45\n",
+ "#calculations\n",
+ "GrPr=math.pow(d/12.,3) *rho*rho *g*3600*3600. *bet*(tf-ti)*cp/(mu*k)\n",
+ "hc=Cd*k/math.pow(d/12.,(1./4.)) *math.pow(GrPr,(1./4.))\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Convective film coefficient =\",hc,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Convective film coefficient = 0.242 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 251"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the outer film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "tf=220. #F\n",
+ "ti=200. #F\n",
+ "d=2. #in\n",
+ "C=103.7\n",
+ "k=0.394\n",
+ "rho=59.37\n",
+ "hfg=965.2\n",
+ "mu=0.70\n",
+ "#calculations\n",
+ "h=C*math.pow(k*k*k *rho*rho *hfg/((d/12.) *mu*(tf-ti)),(1./4.))\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Outer film coefficient =\",h,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Outer film coefficient = 1792 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 252"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the boiling film coefficient\n",
+ "#Initialization of variables\n",
+ "tf=225. #F\n",
+ "a=190.\n",
+ "b=0.043\n",
+ "ti=212. #F\n",
+ "#calculations\n",
+ "hc=a/(1-b*(tf-ti))\n",
+ "hcti=hc*1.25\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"For a flat copper plate, boiling film coefficient =\",hc,\" Btu/sq ft hr F\")\n",
+ "print '%s %d %s' %(\"\\n For an inclined copper plate, boiling film coefficient =\",hcti,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "For a flat copper plate, boiling film coefficient = 430.8 Btu/sq ft hr F\n",
+ "\n",
+ " For an inclined copper plate, boiling film coefficient = 538 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 255"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat transferred per foot length of pipe\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Do=2.375 #in\n",
+ "hi=1200.\n",
+ "Di=2.067 #in\n",
+ "km=29.2\n",
+ "h0=1500.\n",
+ "L=2.375 #in\n",
+ "t1=220. #F\n",
+ "t4=140. #F\n",
+ "#calculations\n",
+ "U0= 1/(Do/(Di*hi) + (Do/12. *math.log(Do/Di) /(2*km)) + 1./h0)\n",
+ "Q=U0*L*math.pi*(t1-t4)/12.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat transferred per foot length of pipe =\",Q,\"btu/hr\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat transferred per foot length of pipe = 23744 btu/hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 255"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the temperature of inner and outer surfaces of pipe\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Do=2.375 #in\n",
+ "hi=1200.\n",
+ "Di=2.067 #in\n",
+ "km=29.2\n",
+ "h0=1500.\n",
+ "L=2.375 #in\n",
+ "t1=220. #F\n",
+ "t4=140. #F\n",
+ "#calculations\n",
+ "Re=Do/(Di*hi)\n",
+ "R0=Do/(Di*hi) + (Do/12. *math.log(Do/Di) /(2*km)) + 1./h0\n",
+ "td=Re/R0 *(t1-t4)\n",
+ "ti=t4+td\n",
+ "Req=1./h0\n",
+ "td2=Req/R0 *(t1-t4)\n",
+ "to=t1-td2\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"The temperature of the inner surface of pipe =\",ti,\" F\")\n",
+ "print '%s %.1f %s' %(\"\\n The temperature of the outer surface of pipe =\",to,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The temperature of the inner surface of pipe = 176.6 F\n",
+ "\n",
+ " The temperature of the outer surface of pipe = 194.5 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 259"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Logarithmic Mean temperature difference \n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "th1=800. #F\n",
+ "th2=300. #F\n",
+ "tc1=100. #F\n",
+ "tc2=400. #F\n",
+ "#calculations\n",
+ "lmtd= ((th1-tc2) - (th2-tc1) )/(math.log((th1-tc2)/(th2-tc1)))\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Logarithmic Mean temperature difference =\",lmtd,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Logarithmic Mean temperature difference = 288 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 262"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the True Mean temperature difference\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "th1=200. #F\n",
+ "th2=100. #F\n",
+ "tc1=80. #F\n",
+ "tc2=110. #F\n",
+ "#calculations\n",
+ "print '%s' %(\"From the lmtd graph,\")\n",
+ "R=(tc1-tc2)/(th2-th1)\n",
+ "P=(th2-th1)/(tc1-th1)\n",
+ "F=0.62\n",
+ "lmtd= F* ((th1-tc2) - (th2-tc1) )/(math.log((th1-tc2)/(th2-tc1)))\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"True Mean temperature difference =\",lmtd,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From the lmtd graph,\n",
+ "True Mean temperature difference = 28.9 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_12_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_12_1.ipynb new file mode 100755 index 00000000..adf56744 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_12_1.ipynb @@ -0,0 +1,585 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:aa78c4fecb9e6170fff80d7d4acf98ab991ec2677f1baef191ee2d45ad66490b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 12 - Heat Transfer"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 229"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the interface temperature\n",
+ "#Initialization of variables\n",
+ "km1=0.62\n",
+ "km2=0.16\n",
+ "km3=0.4\n",
+ "l1=8. #in\n",
+ "l2=4. #in\n",
+ "l3=4. #in\n",
+ "Tf=1600. #F\n",
+ "Tc=100. #F\n",
+ "#calculations\n",
+ "Rw=l1/12./km1 +l2/12./km2 +l3/12./km3\n",
+ "Rb=l1/12./km1\n",
+ "Ti=Tf-Rb/Rw *(Tf-Tc)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Interface temperature =\",Ti,\"F\")\n",
+ "print '%s' %(\"The answers might differ a bit from textbook due to rounding off error.\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Interface temperature = 1196.0 F\n",
+ "The answers might differ a bit from textbook due to rounding off error.\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 231"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat flow and the interface temperature\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "th=350. #F\n",
+ "tc=150. #F\n",
+ "od1=4.5\n",
+ "id1=4.026\n",
+ "od2=6.5\n",
+ "id2=4.5\n",
+ "k1=32.\n",
+ "k2=0.042\n",
+ "#calculations\n",
+ "Q=2*math.pi*(th-tc)/(math.log(od1/id1) /k1 + math.log(od2/id2) /k2)\n",
+ "r1=math.log(od1/id1) /k1\n",
+ "rt=math.log(od1/id1) /k1 + math.log(od2/id2) /k2\n",
+ "ti=th-r1/rt*(th-tc)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Heat flow =\",Q,\"Btu/hr\")\n",
+ "print '%s %.2f %s' %(\"\\n Interface temperature =\",ti,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat flow = 143.5 Btu/hr\n",
+ "\n",
+ " Interface temperature = 349.92 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 239"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the net energy exchange in the process\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Fa=0.045\n",
+ "l=4. #m\n",
+ "b=4. #m\n",
+ "Fe=1.\n",
+ "Ta=540.+460 #R\n",
+ "Tb=1540.+460 #R\n",
+ "#calculations\n",
+ "A=l*b\n",
+ "Q=0.173*A*Fa*Fe*(math.pow((Tb/100.),4) -math.pow((Ta/100.),4))\n",
+ "Q2=416000.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"In case 1, Net energy exchange =\",Q,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n In case 2, Net energy exchange =\",Q2,\"Btu/hr\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1, Net energy exchange = 18684 Btu/hr\n",
+ "\n",
+ " In case 2, Net energy exchange = 416000 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 239"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the net energy exchange\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "ea=0.8\n",
+ "eb=0.7\n",
+ "Fa=0.045\n",
+ "l=4. #m\n",
+ "b=4. #m\n",
+ "Fe=1.\n",
+ "Ta=540.+460 #R\n",
+ "Tb=1540.+460 #R\n",
+ "#calculations\n",
+ "A=l*b\n",
+ "ef=ea*eb\n",
+ "Q=0.173*A*Fa*Fe*ef*(math.pow((Tb/100),4) -math.pow((Ta/100),4))\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Net energy exchange =\",\tQ,\"Btu/hr\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Net energy exchange = 10463 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 246"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the inside film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "den=61.995 #lb/cu ft\n",
+ "vel=6 #ft/s\n",
+ "t1=100. #F\n",
+ "t2=160. #F\n",
+ "de=2.067 #in\n",
+ "mu=1.238\n",
+ "pr=3.3\n",
+ "#calculations\n",
+ "G=den*vel*3600.\n",
+ "tm=(t1+t2)/2\n",
+ "hc=0.023*0.377/(de/12.) *math.pow(de/12 *G/mu,0.8) *math.pow(pr,0.4)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Inside film coefficient =\",hc,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Inside film coefficient = 1335 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 247"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the inside film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "d=0.5 #in\n",
+ "tm=1000. #F\n",
+ "v=5#ft/s\n",
+ "k=38.2\n",
+ "den=51.2\n",
+ "mu=0.3\n",
+ "#calculations\n",
+ "Nu=7+ 0.025*math.pow((d/12 *v*den*mu/k*3600),0.8)\n",
+ "h=Nu*k/(d/12.)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Inside film coefficient =\",h,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Inside film coefficient = 8624 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 249"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the convective film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "do=2 #in\n",
+ "tf=120. #F\n",
+ "ti=80. #F\n",
+ "rho=0.0709\n",
+ "g=32.17\n",
+ "bet=1/560.\n",
+ "cp=0.24\n",
+ "mu=0.0461\n",
+ "k=0.0157\n",
+ "d=2. #in\n",
+ "Cd=0.45\n",
+ "#calculations\n",
+ "GrPr=math.pow(d/12.,3) *rho*rho *g*3600*3600. *bet*(tf-ti)*cp/(mu*k)\n",
+ "hc=Cd*k/math.pow(d/12.,(1./4.)) *math.pow(GrPr,(1./4.))\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Convective film coefficient =\",hc,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Convective film coefficient = 0.242 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 251"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the outer film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "tf=220. #F\n",
+ "ti=200. #F\n",
+ "d=2. #in\n",
+ "C=103.7\n",
+ "k=0.394\n",
+ "rho=59.37\n",
+ "hfg=965.2\n",
+ "mu=0.70\n",
+ "#calculations\n",
+ "h=C*math.pow(k*k*k *rho*rho *hfg/((d/12.) *mu*(tf-ti)),(1./4.))\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Outer film coefficient =\",h,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Outer film coefficient = 1792 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 252"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the boiling film coefficient\n",
+ "#Initialization of variables\n",
+ "tf=225. #F\n",
+ "a=190.\n",
+ "b=0.043\n",
+ "ti=212. #F\n",
+ "#calculations\n",
+ "hc=a/(1-b*(tf-ti))\n",
+ "hcti=hc*1.25\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"For a flat copper plate, boiling film coefficient =\",hc,\" Btu/sq ft hr F\")\n",
+ "print '%s %d %s' %(\"\\n For an inclined copper plate, boiling film coefficient =\",hcti,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "For a flat copper plate, boiling film coefficient = 430.8 Btu/sq ft hr F\n",
+ "\n",
+ " For an inclined copper plate, boiling film coefficient = 538 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 255"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat transferred per foot length of pipe\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Do=2.375 #in\n",
+ "hi=1200.\n",
+ "Di=2.067 #in\n",
+ "km=29.2\n",
+ "h0=1500.\n",
+ "L=2.375 #in\n",
+ "t1=220. #F\n",
+ "t4=140. #F\n",
+ "#calculations\n",
+ "U0= 1/(Do/(Di*hi) + (Do/12. *math.log(Do/Di) /(2*km)) + 1./h0)\n",
+ "Q=U0*L*math.pi*(t1-t4)/12.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat transferred per foot length of pipe =\",Q,\"btu/hr\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat transferred per foot length of pipe = 23744 btu/hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 255"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the temperature of inner and outer surfaces of pipe\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Do=2.375 #in\n",
+ "hi=1200.\n",
+ "Di=2.067 #in\n",
+ "km=29.2\n",
+ "h0=1500.\n",
+ "L=2.375 #in\n",
+ "t1=220. #F\n",
+ "t4=140. #F\n",
+ "#calculations\n",
+ "Re=Do/(Di*hi)\n",
+ "R0=Do/(Di*hi) + (Do/12. *math.log(Do/Di) /(2*km)) + 1./h0\n",
+ "td=Re/R0 *(t1-t4)\n",
+ "ti=t4+td\n",
+ "Req=1./h0\n",
+ "td2=Req/R0 *(t1-t4)\n",
+ "to=t1-td2\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"The temperature of the inner surface of pipe =\",ti,\" F\")\n",
+ "print '%s %.1f %s' %(\"\\n The temperature of the outer surface of pipe =\",to,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The temperature of the inner surface of pipe = 176.6 F\n",
+ "\n",
+ " The temperature of the outer surface of pipe = 194.5 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 259"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Logarithmic Mean temperature difference \n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "th1=800. #F\n",
+ "th2=300. #F\n",
+ "tc1=100. #F\n",
+ "tc2=400. #F\n",
+ "#calculations\n",
+ "lmtd= ((th1-tc2) - (th2-tc1) )/(math.log((th1-tc2)/(th2-tc1)))\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Logarithmic Mean temperature difference =\",lmtd,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Logarithmic Mean temperature difference = 288 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 262"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the True Mean temperature difference\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "th1=200. #F\n",
+ "th2=100. #F\n",
+ "tc1=80. #F\n",
+ "tc2=110. #F\n",
+ "#calculations\n",
+ "print '%s' %(\"From the lmtd graph,\")\n",
+ "R=(tc1-tc2)/(th2-th1)\n",
+ "P=(th2-th1)/(tc1-th1)\n",
+ "F=0.62\n",
+ "lmtd= F* ((th1-tc2) - (th2-tc1) )/(math.log((th1-tc2)/(th2-tc1)))\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"True Mean temperature difference =\",lmtd,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From the lmtd graph,\n",
+ "True Mean temperature difference = 28.9 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_12_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_12_2.ipynb new file mode 100755 index 00000000..adf56744 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_12_2.ipynb @@ -0,0 +1,585 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:aa78c4fecb9e6170fff80d7d4acf98ab991ec2677f1baef191ee2d45ad66490b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 12 - Heat Transfer"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 229"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the interface temperature\n",
+ "#Initialization of variables\n",
+ "km1=0.62\n",
+ "km2=0.16\n",
+ "km3=0.4\n",
+ "l1=8. #in\n",
+ "l2=4. #in\n",
+ "l3=4. #in\n",
+ "Tf=1600. #F\n",
+ "Tc=100. #F\n",
+ "#calculations\n",
+ "Rw=l1/12./km1 +l2/12./km2 +l3/12./km3\n",
+ "Rb=l1/12./km1\n",
+ "Ti=Tf-Rb/Rw *(Tf-Tc)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Interface temperature =\",Ti,\"F\")\n",
+ "print '%s' %(\"The answers might differ a bit from textbook due to rounding off error.\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Interface temperature = 1196.0 F\n",
+ "The answers might differ a bit from textbook due to rounding off error.\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 231"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat flow and the interface temperature\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "th=350. #F\n",
+ "tc=150. #F\n",
+ "od1=4.5\n",
+ "id1=4.026\n",
+ "od2=6.5\n",
+ "id2=4.5\n",
+ "k1=32.\n",
+ "k2=0.042\n",
+ "#calculations\n",
+ "Q=2*math.pi*(th-tc)/(math.log(od1/id1) /k1 + math.log(od2/id2) /k2)\n",
+ "r1=math.log(od1/id1) /k1\n",
+ "rt=math.log(od1/id1) /k1 + math.log(od2/id2) /k2\n",
+ "ti=th-r1/rt*(th-tc)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Heat flow =\",Q,\"Btu/hr\")\n",
+ "print '%s %.2f %s' %(\"\\n Interface temperature =\",ti,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat flow = 143.5 Btu/hr\n",
+ "\n",
+ " Interface temperature = 349.92 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 239"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the net energy exchange in the process\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Fa=0.045\n",
+ "l=4. #m\n",
+ "b=4. #m\n",
+ "Fe=1.\n",
+ "Ta=540.+460 #R\n",
+ "Tb=1540.+460 #R\n",
+ "#calculations\n",
+ "A=l*b\n",
+ "Q=0.173*A*Fa*Fe*(math.pow((Tb/100.),4) -math.pow((Ta/100.),4))\n",
+ "Q2=416000.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"In case 1, Net energy exchange =\",Q,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n In case 2, Net energy exchange =\",Q2,\"Btu/hr\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1, Net energy exchange = 18684 Btu/hr\n",
+ "\n",
+ " In case 2, Net energy exchange = 416000 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 239"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the net energy exchange\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "ea=0.8\n",
+ "eb=0.7\n",
+ "Fa=0.045\n",
+ "l=4. #m\n",
+ "b=4. #m\n",
+ "Fe=1.\n",
+ "Ta=540.+460 #R\n",
+ "Tb=1540.+460 #R\n",
+ "#calculations\n",
+ "A=l*b\n",
+ "ef=ea*eb\n",
+ "Q=0.173*A*Fa*Fe*ef*(math.pow((Tb/100),4) -math.pow((Ta/100),4))\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Net energy exchange =\",\tQ,\"Btu/hr\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Net energy exchange = 10463 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 246"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the inside film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "den=61.995 #lb/cu ft\n",
+ "vel=6 #ft/s\n",
+ "t1=100. #F\n",
+ "t2=160. #F\n",
+ "de=2.067 #in\n",
+ "mu=1.238\n",
+ "pr=3.3\n",
+ "#calculations\n",
+ "G=den*vel*3600.\n",
+ "tm=(t1+t2)/2\n",
+ "hc=0.023*0.377/(de/12.) *math.pow(de/12 *G/mu,0.8) *math.pow(pr,0.4)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Inside film coefficient =\",hc,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Inside film coefficient = 1335 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 247"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the inside film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "d=0.5 #in\n",
+ "tm=1000. #F\n",
+ "v=5#ft/s\n",
+ "k=38.2\n",
+ "den=51.2\n",
+ "mu=0.3\n",
+ "#calculations\n",
+ "Nu=7+ 0.025*math.pow((d/12 *v*den*mu/k*3600),0.8)\n",
+ "h=Nu*k/(d/12.)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Inside film coefficient =\",h,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Inside film coefficient = 8624 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 249"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the convective film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "do=2 #in\n",
+ "tf=120. #F\n",
+ "ti=80. #F\n",
+ "rho=0.0709\n",
+ "g=32.17\n",
+ "bet=1/560.\n",
+ "cp=0.24\n",
+ "mu=0.0461\n",
+ "k=0.0157\n",
+ "d=2. #in\n",
+ "Cd=0.45\n",
+ "#calculations\n",
+ "GrPr=math.pow(d/12.,3) *rho*rho *g*3600*3600. *bet*(tf-ti)*cp/(mu*k)\n",
+ "hc=Cd*k/math.pow(d/12.,(1./4.)) *math.pow(GrPr,(1./4.))\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Convective film coefficient =\",hc,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Convective film coefficient = 0.242 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 251"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the outer film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "tf=220. #F\n",
+ "ti=200. #F\n",
+ "d=2. #in\n",
+ "C=103.7\n",
+ "k=0.394\n",
+ "rho=59.37\n",
+ "hfg=965.2\n",
+ "mu=0.70\n",
+ "#calculations\n",
+ "h=C*math.pow(k*k*k *rho*rho *hfg/((d/12.) *mu*(tf-ti)),(1./4.))\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Outer film coefficient =\",h,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Outer film coefficient = 1792 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 252"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the boiling film coefficient\n",
+ "#Initialization of variables\n",
+ "tf=225. #F\n",
+ "a=190.\n",
+ "b=0.043\n",
+ "ti=212. #F\n",
+ "#calculations\n",
+ "hc=a/(1-b*(tf-ti))\n",
+ "hcti=hc*1.25\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"For a flat copper plate, boiling film coefficient =\",hc,\" Btu/sq ft hr F\")\n",
+ "print '%s %d %s' %(\"\\n For an inclined copper plate, boiling film coefficient =\",hcti,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "For a flat copper plate, boiling film coefficient = 430.8 Btu/sq ft hr F\n",
+ "\n",
+ " For an inclined copper plate, boiling film coefficient = 538 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 255"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat transferred per foot length of pipe\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Do=2.375 #in\n",
+ "hi=1200.\n",
+ "Di=2.067 #in\n",
+ "km=29.2\n",
+ "h0=1500.\n",
+ "L=2.375 #in\n",
+ "t1=220. #F\n",
+ "t4=140. #F\n",
+ "#calculations\n",
+ "U0= 1/(Do/(Di*hi) + (Do/12. *math.log(Do/Di) /(2*km)) + 1./h0)\n",
+ "Q=U0*L*math.pi*(t1-t4)/12.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat transferred per foot length of pipe =\",Q,\"btu/hr\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat transferred per foot length of pipe = 23744 btu/hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 255"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the temperature of inner and outer surfaces of pipe\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Do=2.375 #in\n",
+ "hi=1200.\n",
+ "Di=2.067 #in\n",
+ "km=29.2\n",
+ "h0=1500.\n",
+ "L=2.375 #in\n",
+ "t1=220. #F\n",
+ "t4=140. #F\n",
+ "#calculations\n",
+ "Re=Do/(Di*hi)\n",
+ "R0=Do/(Di*hi) + (Do/12. *math.log(Do/Di) /(2*km)) + 1./h0\n",
+ "td=Re/R0 *(t1-t4)\n",
+ "ti=t4+td\n",
+ "Req=1./h0\n",
+ "td2=Req/R0 *(t1-t4)\n",
+ "to=t1-td2\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"The temperature of the inner surface of pipe =\",ti,\" F\")\n",
+ "print '%s %.1f %s' %(\"\\n The temperature of the outer surface of pipe =\",to,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The temperature of the inner surface of pipe = 176.6 F\n",
+ "\n",
+ " The temperature of the outer surface of pipe = 194.5 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 259"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Logarithmic Mean temperature difference \n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "th1=800. #F\n",
+ "th2=300. #F\n",
+ "tc1=100. #F\n",
+ "tc2=400. #F\n",
+ "#calculations\n",
+ "lmtd= ((th1-tc2) - (th2-tc1) )/(math.log((th1-tc2)/(th2-tc1)))\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Logarithmic Mean temperature difference =\",lmtd,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Logarithmic Mean temperature difference = 288 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 262"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the True Mean temperature difference\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "th1=200. #F\n",
+ "th2=100. #F\n",
+ "tc1=80. #F\n",
+ "tc2=110. #F\n",
+ "#calculations\n",
+ "print '%s' %(\"From the lmtd graph,\")\n",
+ "R=(tc1-tc2)/(th2-th1)\n",
+ "P=(th2-th1)/(tc1-th1)\n",
+ "F=0.62\n",
+ "lmtd= F* ((th1-tc2) - (th2-tc1) )/(math.log((th1-tc2)/(th2-tc1)))\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"True Mean temperature difference =\",lmtd,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From the lmtd graph,\n",
+ "True Mean temperature difference = 28.9 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_12_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_12_3.ipynb new file mode 100755 index 00000000..adf56744 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_12_3.ipynb @@ -0,0 +1,585 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:aa78c4fecb9e6170fff80d7d4acf98ab991ec2677f1baef191ee2d45ad66490b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 12 - Heat Transfer"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 229"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the interface temperature\n",
+ "#Initialization of variables\n",
+ "km1=0.62\n",
+ "km2=0.16\n",
+ "km3=0.4\n",
+ "l1=8. #in\n",
+ "l2=4. #in\n",
+ "l3=4. #in\n",
+ "Tf=1600. #F\n",
+ "Tc=100. #F\n",
+ "#calculations\n",
+ "Rw=l1/12./km1 +l2/12./km2 +l3/12./km3\n",
+ "Rb=l1/12./km1\n",
+ "Ti=Tf-Rb/Rw *(Tf-Tc)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Interface temperature =\",Ti,\"F\")\n",
+ "print '%s' %(\"The answers might differ a bit from textbook due to rounding off error.\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Interface temperature = 1196.0 F\n",
+ "The answers might differ a bit from textbook due to rounding off error.\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 231"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat flow and the interface temperature\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "th=350. #F\n",
+ "tc=150. #F\n",
+ "od1=4.5\n",
+ "id1=4.026\n",
+ "od2=6.5\n",
+ "id2=4.5\n",
+ "k1=32.\n",
+ "k2=0.042\n",
+ "#calculations\n",
+ "Q=2*math.pi*(th-tc)/(math.log(od1/id1) /k1 + math.log(od2/id2) /k2)\n",
+ "r1=math.log(od1/id1) /k1\n",
+ "rt=math.log(od1/id1) /k1 + math.log(od2/id2) /k2\n",
+ "ti=th-r1/rt*(th-tc)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Heat flow =\",Q,\"Btu/hr\")\n",
+ "print '%s %.2f %s' %(\"\\n Interface temperature =\",ti,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat flow = 143.5 Btu/hr\n",
+ "\n",
+ " Interface temperature = 349.92 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 239"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the net energy exchange in the process\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Fa=0.045\n",
+ "l=4. #m\n",
+ "b=4. #m\n",
+ "Fe=1.\n",
+ "Ta=540.+460 #R\n",
+ "Tb=1540.+460 #R\n",
+ "#calculations\n",
+ "A=l*b\n",
+ "Q=0.173*A*Fa*Fe*(math.pow((Tb/100.),4) -math.pow((Ta/100.),4))\n",
+ "Q2=416000.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"In case 1, Net energy exchange =\",Q,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n In case 2, Net energy exchange =\",Q2,\"Btu/hr\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1, Net energy exchange = 18684 Btu/hr\n",
+ "\n",
+ " In case 2, Net energy exchange = 416000 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 239"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the net energy exchange\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "ea=0.8\n",
+ "eb=0.7\n",
+ "Fa=0.045\n",
+ "l=4. #m\n",
+ "b=4. #m\n",
+ "Fe=1.\n",
+ "Ta=540.+460 #R\n",
+ "Tb=1540.+460 #R\n",
+ "#calculations\n",
+ "A=l*b\n",
+ "ef=ea*eb\n",
+ "Q=0.173*A*Fa*Fe*ef*(math.pow((Tb/100),4) -math.pow((Ta/100),4))\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Net energy exchange =\",\tQ,\"Btu/hr\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Net energy exchange = 10463 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 246"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the inside film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "den=61.995 #lb/cu ft\n",
+ "vel=6 #ft/s\n",
+ "t1=100. #F\n",
+ "t2=160. #F\n",
+ "de=2.067 #in\n",
+ "mu=1.238\n",
+ "pr=3.3\n",
+ "#calculations\n",
+ "G=den*vel*3600.\n",
+ "tm=(t1+t2)/2\n",
+ "hc=0.023*0.377/(de/12.) *math.pow(de/12 *G/mu,0.8) *math.pow(pr,0.4)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Inside film coefficient =\",hc,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Inside film coefficient = 1335 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 247"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the inside film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "d=0.5 #in\n",
+ "tm=1000. #F\n",
+ "v=5#ft/s\n",
+ "k=38.2\n",
+ "den=51.2\n",
+ "mu=0.3\n",
+ "#calculations\n",
+ "Nu=7+ 0.025*math.pow((d/12 *v*den*mu/k*3600),0.8)\n",
+ "h=Nu*k/(d/12.)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Inside film coefficient =\",h,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Inside film coefficient = 8624 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 249"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the convective film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "do=2 #in\n",
+ "tf=120. #F\n",
+ "ti=80. #F\n",
+ "rho=0.0709\n",
+ "g=32.17\n",
+ "bet=1/560.\n",
+ "cp=0.24\n",
+ "mu=0.0461\n",
+ "k=0.0157\n",
+ "d=2. #in\n",
+ "Cd=0.45\n",
+ "#calculations\n",
+ "GrPr=math.pow(d/12.,3) *rho*rho *g*3600*3600. *bet*(tf-ti)*cp/(mu*k)\n",
+ "hc=Cd*k/math.pow(d/12.,(1./4.)) *math.pow(GrPr,(1./4.))\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Convective film coefficient =\",hc,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Convective film coefficient = 0.242 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 251"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the outer film coefficient\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "tf=220. #F\n",
+ "ti=200. #F\n",
+ "d=2. #in\n",
+ "C=103.7\n",
+ "k=0.394\n",
+ "rho=59.37\n",
+ "hfg=965.2\n",
+ "mu=0.70\n",
+ "#calculations\n",
+ "h=C*math.pow(k*k*k *rho*rho *hfg/((d/12.) *mu*(tf-ti)),(1./4.))\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Outer film coefficient =\",h,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Outer film coefficient = 1792 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 252"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the boiling film coefficient\n",
+ "#Initialization of variables\n",
+ "tf=225. #F\n",
+ "a=190.\n",
+ "b=0.043\n",
+ "ti=212. #F\n",
+ "#calculations\n",
+ "hc=a/(1-b*(tf-ti))\n",
+ "hcti=hc*1.25\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"For a flat copper plate, boiling film coefficient =\",hc,\" Btu/sq ft hr F\")\n",
+ "print '%s %d %s' %(\"\\n For an inclined copper plate, boiling film coefficient =\",hcti,\"Btu/sq ft hr F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "For a flat copper plate, boiling film coefficient = 430.8 Btu/sq ft hr F\n",
+ "\n",
+ " For an inclined copper plate, boiling film coefficient = 538 Btu/sq ft hr F\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 255"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat transferred per foot length of pipe\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Do=2.375 #in\n",
+ "hi=1200.\n",
+ "Di=2.067 #in\n",
+ "km=29.2\n",
+ "h0=1500.\n",
+ "L=2.375 #in\n",
+ "t1=220. #F\n",
+ "t4=140. #F\n",
+ "#calculations\n",
+ "U0= 1/(Do/(Di*hi) + (Do/12. *math.log(Do/Di) /(2*km)) + 1./h0)\n",
+ "Q=U0*L*math.pi*(t1-t4)/12.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat transferred per foot length of pipe =\",Q,\"btu/hr\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat transferred per foot length of pipe = 23744 btu/hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 255"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the temperature of inner and outer surfaces of pipe\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Do=2.375 #in\n",
+ "hi=1200.\n",
+ "Di=2.067 #in\n",
+ "km=29.2\n",
+ "h0=1500.\n",
+ "L=2.375 #in\n",
+ "t1=220. #F\n",
+ "t4=140. #F\n",
+ "#calculations\n",
+ "Re=Do/(Di*hi)\n",
+ "R0=Do/(Di*hi) + (Do/12. *math.log(Do/Di) /(2*km)) + 1./h0\n",
+ "td=Re/R0 *(t1-t4)\n",
+ "ti=t4+td\n",
+ "Req=1./h0\n",
+ "td2=Req/R0 *(t1-t4)\n",
+ "to=t1-td2\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"The temperature of the inner surface of pipe =\",ti,\" F\")\n",
+ "print '%s %.1f %s' %(\"\\n The temperature of the outer surface of pipe =\",to,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The temperature of the inner surface of pipe = 176.6 F\n",
+ "\n",
+ " The temperature of the outer surface of pipe = 194.5 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 259"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Logarithmic Mean temperature difference \n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "th1=800. #F\n",
+ "th2=300. #F\n",
+ "tc1=100. #F\n",
+ "tc2=400. #F\n",
+ "#calculations\n",
+ "lmtd= ((th1-tc2) - (th2-tc1) )/(math.log((th1-tc2)/(th2-tc1)))\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Logarithmic Mean temperature difference =\",lmtd,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Logarithmic Mean temperature difference = 288 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 262"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the True Mean temperature difference\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "th1=200. #F\n",
+ "th2=100. #F\n",
+ "tc1=80. #F\n",
+ "tc2=110. #F\n",
+ "#calculations\n",
+ "print '%s' %(\"From the lmtd graph,\")\n",
+ "R=(tc1-tc2)/(th2-th1)\n",
+ "P=(th2-th1)/(tc1-th1)\n",
+ "F=0.62\n",
+ "lmtd= F* ((th1-tc2) - (th2-tc1) )/(math.log((th1-tc2)/(th2-tc1)))\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"True Mean temperature difference =\",lmtd,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From the lmtd graph,\n",
+ "True Mean temperature difference = 28.9 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_13.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_13.ipynb new file mode 100755 index 00000000..388f458f --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_13.ipynb @@ -0,0 +1,667 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:390a761bad4c193a32a4fcd413c61db0b9a1c29b46bfad9c3be94c1204cb558b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 13 - Nonreactive and reactive gaseous mixtures"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 271"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the mass and partial volumes of of oxygen, nitrogen\n",
+ "#Initialization of variables\n",
+ "P=70. #psia\n",
+ "Pt=110. #psia\n",
+ "V=20. #cu ft\n",
+ "R0=1545. #Universal gas constant\n",
+ "T=540. #R\n",
+ "M=32. #Molecular weight of Oxygen\n",
+ "M2=28. #Molecular weight of Nitrgoen\n",
+ "#calculations\n",
+ "N=P*V*144/(R0*T)\n",
+ "mo=M*N\n",
+ "Pn=Pt-P\n",
+ "N2=Pn*V*144/(R0*T)\n",
+ "mn=N2*M2\n",
+ "Vo=N*R0*T/(144*Pt)\n",
+ "Vn=N2*R0*T/(144*Pt)\n",
+ "Vn2=V-Vo\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Mass of oxygen =\",mo,\" lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Mass of nitrogen =\",mn,\" lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Partial volume of oxygen =\",Vo,\" cu ft\")\n",
+ "print '%s %.2f %s' %(\"\\n Partial volume of nitrogen =\",Vn,\" cu ft\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2, Partial volume of nitrogen =\",Vn2,\" cu ft\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mass of oxygen = 7.73 lb\n",
+ "\n",
+ " Mass of nitrogen = 3.87 lb\n",
+ "\n",
+ " Partial volume of oxygen = 12.73 cu ft\n",
+ "\n",
+ " Partial volume of nitrogen = 7.27 cu ft\n",
+ "\n",
+ " In case 2, Partial volume of nitrogen = 7.27 cu ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 274"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "P=50. #psia\n",
+ "V=4. #cu ft\n",
+ "dv=3. #cu ft\n",
+ "J=778.\n",
+ "T=560. #R\n",
+ "#calculation\n",
+ "ds= 144*P*V*math.log((V+dv)/V) /(J*T)\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Change in entropy =\",ds,\"unit\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.037 unit\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 275"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=50. #psia\n",
+ "t1=100+460. #R\n",
+ "R1=48.3\n",
+ "R2=55.2\n",
+ "v1=4. #cu ft\n",
+ "p2=100. #psia\n",
+ "v2=3. #cu ft\n",
+ "t2=200.+460 #R\n",
+ "cv1=0.157\n",
+ "cv2=0.177\n",
+ "cpm=0.219\n",
+ "J=778.\n",
+ "#calculations\n",
+ "m1=144*p1*v1/(R1*t1)\n",
+ "m2=144*p2*v2/(R2*t2)\n",
+ "tf=(m1*cv1*(t1-460) + m2*cv2*(t2-460))/(m1*cv1+m2*cv2)\n",
+ "Po2=v1/(v1+v2) *(tf+460)/t1 *p1\n",
+ "ds=cpm*math.log((tf+460)/t1) - R1/J *math.log(Po2/p1)\n",
+ "dss=ds*m1\n",
+ "#results\n",
+ "print '%s %.4f %s' %(\"Change in entropy =\",dss,\"unit\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.0528 unit\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 277"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=30 #psia\n",
+ "t1=80.+460 #R\n",
+ "R1=48.3\n",
+ "R2=55.2\n",
+ "m1=20. #lb/min\n",
+ "p2=50. #psia\n",
+ "m2=35. #lb/min\n",
+ "t2=160.+460 #R\n",
+ "cp1=0.219\n",
+ "cp2=0.248\n",
+ "J=778\n",
+ "#calculations\n",
+ "tf=(m1*cp1*(t1-460) + m2*cp2*(t2-460))/(m1*cp1+m2*cp2)\n",
+ "Po2=m1/32/(m1/32+m2/28) *p1\n",
+ "ds=cp1*math.log((tf+460)/t1) - R1/J *math.log(Po2/p1)\n",
+ "dss=ds*m1\n",
+ "#results\n",
+ "print '%s %.4f %s' %(\"Change in entropy =\",dss,\"units/min\")\n",
+ "print '%s' %(\"The answer is a bit different fromm textbook due to rounding off error in textbook\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 1.7754 units/min\n",
+ "The answer is a bit different fromm textbook due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 278"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the weight per mole and also the gas constant\n",
+ "#Initialization of variables\n",
+ "import numpy\n",
+ "x=([0.15, 0.08, 0.77])\n",
+ "M=([44, 32, 28])\n",
+ "#calculations\n",
+ "b=len(x)\n",
+ "y=numpy.zeros(b)\n",
+ "yt=numpy.zeros(b)\n",
+ "mt=numpy.zeros(b)\n",
+ "per=numpy.zeros(b)\n",
+ "wt=numpy.zeros(b)\n",
+ "R=numpy.zeros(b)\n",
+ "for i in range (0,b):\n",
+ "\ty[i]=x[i]/M[i]\n",
+ "\n",
+ "yt=sum(y)\n",
+ "for i in range (0,b):\n",
+ "\tmt[i]=y[i]/yt\n",
+ "\tper[i]=mt[i]*100\n",
+ "\n",
+ "wt=1. /yt\n",
+ "R=1545. /wt\n",
+ "\n",
+ "#results\n",
+ "print '%s' %(\"Volumetric analysis\")\n",
+ "print '%s' %('percent by volume')\n",
+ "print (per)\n",
+ "print '%s %.1f %s' %(\"Weight per mole =\",wt,\" lb\")\n",
+ "print '%s %.1f' %(\"\\n Gas constant =\",R)\n",
+ "print '%s' %(\"The answer is a bit different fromm textbook due to rounding off error in textbook\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volumetric analysis\n",
+ "percent by volume\n",
+ "[ 10.20408163 7.4829932 82.31292517]\n",
+ "Weight per mole = 29.9 lb\n",
+ "\n",
+ " Gas constant = 51.6\n",
+ "The answer is a bit different fromm textbook due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 283"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical air and amount of nitrogen\n",
+ "#Initialization of variables\n",
+ "x1=0.885 #mole fraction of Ch4\n",
+ "x2=0.115 #mole fraction of c2h6\n",
+ "x3=0.4/100. #mole fraction of N2\n",
+ "n1=2. #Moles of Ch4\n",
+ "n2=3.5 #Moles of c2h6\n",
+ "n3=1. #moles of ch4 in case 2\n",
+ "n4=2. #moles of c2h6 in case 2\n",
+ "#calculations\n",
+ "y1=n1*x1\n",
+ "y2=n2*x2\n",
+ "y=y1+y2\n",
+ "vec2=([y1, y2])\n",
+ "air=y/0.21\n",
+ "y3=n3*x1\n",
+ "y4=n4*x2\n",
+ "yy=y3+y4\n",
+ "vec3=([y3 ,y4])\n",
+ "air2=y/0.21 *0.79\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Theoretical air =\",air,\" moles of air per mole of fuel\")\n",
+ "print '%s' %(\"Oxygen analysis\")\n",
+ "print(vec2)\n",
+ "print '%s %.2f %s' %(\"\\n Amount of nitrogen =\",air2,\" moles of nitrogen per mole of fuel\")\n",
+ "print '%s' %(\"Dry analysis\")\n",
+ "print(vec3)\n",
+ "print '%s %.3f %s' %(\"total =\",yy,\" moles\")\n",
+ "print '%s' %(\"The answer is a bit different fromm textbook due to rounding off error in textbook\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical air = 10.35 moles of air per mole of fuel\n",
+ "Oxygen analysis\n",
+ "[1.77, 0.4025]\n",
+ "\n",
+ " Amount of nitrogen = 8.17 moles of nitrogen per mole of fuel\n",
+ "Dry analysis\n",
+ "[0.885, 0.23]\n",
+ "total = 1.115 moles\n",
+ "The answer is a bit different fromm textbook due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 283"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical air fuel ratio\n",
+ "#Initialization of variables\n",
+ "import numpy\n",
+ "x=([0.74, 0.06, 0.01]) #mole fraction of C, H and S respectively\n",
+ "y=([8./3., 8, 1]) #Pounds O2 per pound substance of C,H and S respectively\n",
+ "oxy=0.08 #Oxygen in coal\n",
+ "z=0.232 #mass of coal\n",
+ "#calculations\n",
+ "b=len(x)\n",
+ "pou = numpy.zeros(b)\n",
+ "for i in range (0,b):\n",
+ "\tpou[i]=x[i]*y[i]\n",
+ "\n",
+ "tot=sum(pou)\n",
+ "oxy2=tot-oxy\n",
+ "air=oxy2/z\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Theoretical air fuel ratio =\",air,\"lb of air per pound of coal\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical air fuel ratio = 10.27 lb of air per pound of coal\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 284"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate air fuel ratio and also molal analysis\n",
+ "#Initialization of variables\n",
+ "o2=12.5 #moles of O2\n",
+ "h20=9 #moles of H2O\n",
+ "x=0.21 #Mole fraction of Oxygen in air\n",
+ "M=28.97 #Molar mass of air\n",
+ "M2=56. #molar mass of C4H8\n",
+ "M1=8*12+18. #molecular mass of c8h18\n",
+ "#calculations\n",
+ "air=o2/x\n",
+ "pound=air*M\n",
+ "AR=pound/M1\n",
+ "y1=h20/M2 *100.\n",
+ "y2=o2*(79./21) /M2 *100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Air fuel ratio =\",AR,\"lb of air per pound of fuel\")\n",
+ "print '%s %.2f %s %.2f %s' %(\"\\n Molal or volumetric analysis is\",y1, \"percent of CO2 and\",y2, \"percent N2\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Air fuel ratio = 15.13 lb of air per pound of fuel\n",
+ "\n",
+ " Molal or volumetric analysis is 16.07 percent of CO2 and 83.97 percent N2\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 285"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volumetric analysis and also volume of wet products\n",
+ "#Initialization of variables\n",
+ "x=18.5 #Moles of O2\n",
+ "c=12. #Moles of CO2\n",
+ "vap=13. #moles of H2O\n",
+ "P=15. #psia\n",
+ "R=1545. #Universal gas constant\n",
+ "#calculations\n",
+ "excess=x*0.5\n",
+ "M=12*12+2*vap\n",
+ "n2=(x+excess)*79/21.\n",
+ "nt=n2+excess+c\n",
+ "dry=([c, x/2, n2]) \n",
+ "b= len(dry)\n",
+ "for i in range(0,b):\n",
+ "\tdry[i] = dry[i] /nt *100\n",
+ "\n",
+ "wet=nt+vap\n",
+ "fue=100./(M)\n",
+ "mol=wet*fue\n",
+ "vol=mol*R*1460./(144*P)\n",
+ "#results\n",
+ "print '%s' %(\"Volumetric analysis in percentage\")\n",
+ "print (' CO2 O2 N2')\n",
+ "print (dry)\n",
+ "print '%s %d %s' %(\"Volume of wet products =\",vol,\"cfm\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volumetric analysis in percentage\n",
+ " CO2 O2 N2\n",
+ "[9.55088118249005, 7.362137578169414, 83.08698123934053]\n",
+ "Volume of wet products = 85167 cfm\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 286"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volumetric analysis\n",
+ "#Initialization of variables\n",
+ "import numpy\n",
+ "from numpy import linalg\n",
+ "from numpy.linalg import inv\n",
+ "A=numpy.array([[1, 1], [0.5, 1]])\n",
+ "B=numpy.array([[1],[ 0.9]])\n",
+ "x=0.9\n",
+ "#calculations\n",
+ "N2=x*79./21.\n",
+ "C=numpy.linalg.solve(A,B)\n",
+ "vec= ([ C[0], C[1], N2])\n",
+ "su=sum(vec)\n",
+ "b= len(vec)\n",
+ "vec2=numpy.zeros(b)\n",
+ "for i in range (0,b):\n",
+ "\tvec2[i]=vec[i]/su *100.;\n",
+ "\n",
+ "#results\n",
+ "print '%s' %(\"Volumetric analysis\")\n",
+ "print '%s' %('CO CO2 N2')\n",
+ "print (vec2)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volumetric analysis\n",
+ "CO CO2 N2\n",
+ "[ 4.56026059 18.24104235 77.19869707]\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 288"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Moles of dry products per pound of coal\n",
+ "#Initialization of variables\n",
+ "c=0.74\n",
+ "ref=0.02\n",
+ "co2=0.12\n",
+ "co=0.1/100.\n",
+ "M=12.\n",
+ "#calcualtions\n",
+ "carbon=c-ref\n",
+ "car2=co2+co\n",
+ "wt=car2*M\n",
+ "amount=carbon/wt\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Moles of dry products per pound of coal =\",amount,\" mole\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Moles of dry products per pound of coal = 0.496 mole\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 289"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Number of moles of dry products per pound of fuel\n",
+ "#Initialization of variables\n",
+ "x1=0.128\n",
+ "x2=0.035\n",
+ "x3=0.002\n",
+ "M=12.\n",
+ "N=26.\n",
+ "#calculations\n",
+ "c=x1+x3\n",
+ "mole=12./c\n",
+ "wt=M*M+N\n",
+ "num=mole/wt\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Number of moles of dry products per pound of fuel =\",num,\" mole\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Number of moles of dry products per pound of fuel = 0.543 mole\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 289"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the weight of air and excess air percentage\n",
+ "#Initialization of variables\n",
+ "c=0.74\n",
+ "ref=0.02\n",
+ "co2=0.12\n",
+ "co=0.1/100.\n",
+ "o2=0.065\n",
+ "M=12\n",
+ "x=0.79\n",
+ "M=28.97\n",
+ "#calcualtions\n",
+ "n2=1-(co2+co+o2)\n",
+ "mol=n2/x\n",
+ "wt=mol*M\n",
+ "wt2=0.496\n",
+ "pou=wt2*wt\n",
+ "ta=10.27\n",
+ "EA=(pou-ta)/ta *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Weight of air per pound of fuel =\",pou,\"lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Excess air percentage =\",EA,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Weight of air per pound of fuel = 14.81 lb\n",
+ "\n",
+ " Excess air percentage = 44.2 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_13_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_13_1.ipynb new file mode 100755 index 00000000..388f458f --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_13_1.ipynb @@ -0,0 +1,667 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:390a761bad4c193a32a4fcd413c61db0b9a1c29b46bfad9c3be94c1204cb558b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 13 - Nonreactive and reactive gaseous mixtures"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 271"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the mass and partial volumes of of oxygen, nitrogen\n",
+ "#Initialization of variables\n",
+ "P=70. #psia\n",
+ "Pt=110. #psia\n",
+ "V=20. #cu ft\n",
+ "R0=1545. #Universal gas constant\n",
+ "T=540. #R\n",
+ "M=32. #Molecular weight of Oxygen\n",
+ "M2=28. #Molecular weight of Nitrgoen\n",
+ "#calculations\n",
+ "N=P*V*144/(R0*T)\n",
+ "mo=M*N\n",
+ "Pn=Pt-P\n",
+ "N2=Pn*V*144/(R0*T)\n",
+ "mn=N2*M2\n",
+ "Vo=N*R0*T/(144*Pt)\n",
+ "Vn=N2*R0*T/(144*Pt)\n",
+ "Vn2=V-Vo\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Mass of oxygen =\",mo,\" lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Mass of nitrogen =\",mn,\" lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Partial volume of oxygen =\",Vo,\" cu ft\")\n",
+ "print '%s %.2f %s' %(\"\\n Partial volume of nitrogen =\",Vn,\" cu ft\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2, Partial volume of nitrogen =\",Vn2,\" cu ft\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mass of oxygen = 7.73 lb\n",
+ "\n",
+ " Mass of nitrogen = 3.87 lb\n",
+ "\n",
+ " Partial volume of oxygen = 12.73 cu ft\n",
+ "\n",
+ " Partial volume of nitrogen = 7.27 cu ft\n",
+ "\n",
+ " In case 2, Partial volume of nitrogen = 7.27 cu ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 274"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "P=50. #psia\n",
+ "V=4. #cu ft\n",
+ "dv=3. #cu ft\n",
+ "J=778.\n",
+ "T=560. #R\n",
+ "#calculation\n",
+ "ds= 144*P*V*math.log((V+dv)/V) /(J*T)\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Change in entropy =\",ds,\"unit\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.037 unit\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 275"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=50. #psia\n",
+ "t1=100+460. #R\n",
+ "R1=48.3\n",
+ "R2=55.2\n",
+ "v1=4. #cu ft\n",
+ "p2=100. #psia\n",
+ "v2=3. #cu ft\n",
+ "t2=200.+460 #R\n",
+ "cv1=0.157\n",
+ "cv2=0.177\n",
+ "cpm=0.219\n",
+ "J=778.\n",
+ "#calculations\n",
+ "m1=144*p1*v1/(R1*t1)\n",
+ "m2=144*p2*v2/(R2*t2)\n",
+ "tf=(m1*cv1*(t1-460) + m2*cv2*(t2-460))/(m1*cv1+m2*cv2)\n",
+ "Po2=v1/(v1+v2) *(tf+460)/t1 *p1\n",
+ "ds=cpm*math.log((tf+460)/t1) - R1/J *math.log(Po2/p1)\n",
+ "dss=ds*m1\n",
+ "#results\n",
+ "print '%s %.4f %s' %(\"Change in entropy =\",dss,\"unit\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.0528 unit\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 277"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=30 #psia\n",
+ "t1=80.+460 #R\n",
+ "R1=48.3\n",
+ "R2=55.2\n",
+ "m1=20. #lb/min\n",
+ "p2=50. #psia\n",
+ "m2=35. #lb/min\n",
+ "t2=160.+460 #R\n",
+ "cp1=0.219\n",
+ "cp2=0.248\n",
+ "J=778\n",
+ "#calculations\n",
+ "tf=(m1*cp1*(t1-460) + m2*cp2*(t2-460))/(m1*cp1+m2*cp2)\n",
+ "Po2=m1/32/(m1/32+m2/28) *p1\n",
+ "ds=cp1*math.log((tf+460)/t1) - R1/J *math.log(Po2/p1)\n",
+ "dss=ds*m1\n",
+ "#results\n",
+ "print '%s %.4f %s' %(\"Change in entropy =\",dss,\"units/min\")\n",
+ "print '%s' %(\"The answer is a bit different fromm textbook due to rounding off error in textbook\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 1.7754 units/min\n",
+ "The answer is a bit different fromm textbook due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 278"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the weight per mole and also the gas constant\n",
+ "#Initialization of variables\n",
+ "import numpy\n",
+ "x=([0.15, 0.08, 0.77])\n",
+ "M=([44, 32, 28])\n",
+ "#calculations\n",
+ "b=len(x)\n",
+ "y=numpy.zeros(b)\n",
+ "yt=numpy.zeros(b)\n",
+ "mt=numpy.zeros(b)\n",
+ "per=numpy.zeros(b)\n",
+ "wt=numpy.zeros(b)\n",
+ "R=numpy.zeros(b)\n",
+ "for i in range (0,b):\n",
+ "\ty[i]=x[i]/M[i]\n",
+ "\n",
+ "yt=sum(y)\n",
+ "for i in range (0,b):\n",
+ "\tmt[i]=y[i]/yt\n",
+ "\tper[i]=mt[i]*100\n",
+ "\n",
+ "wt=1. /yt\n",
+ "R=1545. /wt\n",
+ "\n",
+ "#results\n",
+ "print '%s' %(\"Volumetric analysis\")\n",
+ "print '%s' %('percent by volume')\n",
+ "print (per)\n",
+ "print '%s %.1f %s' %(\"Weight per mole =\",wt,\" lb\")\n",
+ "print '%s %.1f' %(\"\\n Gas constant =\",R)\n",
+ "print '%s' %(\"The answer is a bit different fromm textbook due to rounding off error in textbook\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volumetric analysis\n",
+ "percent by volume\n",
+ "[ 10.20408163 7.4829932 82.31292517]\n",
+ "Weight per mole = 29.9 lb\n",
+ "\n",
+ " Gas constant = 51.6\n",
+ "The answer is a bit different fromm textbook due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 283"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical air and amount of nitrogen\n",
+ "#Initialization of variables\n",
+ "x1=0.885 #mole fraction of Ch4\n",
+ "x2=0.115 #mole fraction of c2h6\n",
+ "x3=0.4/100. #mole fraction of N2\n",
+ "n1=2. #Moles of Ch4\n",
+ "n2=3.5 #Moles of c2h6\n",
+ "n3=1. #moles of ch4 in case 2\n",
+ "n4=2. #moles of c2h6 in case 2\n",
+ "#calculations\n",
+ "y1=n1*x1\n",
+ "y2=n2*x2\n",
+ "y=y1+y2\n",
+ "vec2=([y1, y2])\n",
+ "air=y/0.21\n",
+ "y3=n3*x1\n",
+ "y4=n4*x2\n",
+ "yy=y3+y4\n",
+ "vec3=([y3 ,y4])\n",
+ "air2=y/0.21 *0.79\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Theoretical air =\",air,\" moles of air per mole of fuel\")\n",
+ "print '%s' %(\"Oxygen analysis\")\n",
+ "print(vec2)\n",
+ "print '%s %.2f %s' %(\"\\n Amount of nitrogen =\",air2,\" moles of nitrogen per mole of fuel\")\n",
+ "print '%s' %(\"Dry analysis\")\n",
+ "print(vec3)\n",
+ "print '%s %.3f %s' %(\"total =\",yy,\" moles\")\n",
+ "print '%s' %(\"The answer is a bit different fromm textbook due to rounding off error in textbook\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical air = 10.35 moles of air per mole of fuel\n",
+ "Oxygen analysis\n",
+ "[1.77, 0.4025]\n",
+ "\n",
+ " Amount of nitrogen = 8.17 moles of nitrogen per mole of fuel\n",
+ "Dry analysis\n",
+ "[0.885, 0.23]\n",
+ "total = 1.115 moles\n",
+ "The answer is a bit different fromm textbook due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 283"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical air fuel ratio\n",
+ "#Initialization of variables\n",
+ "import numpy\n",
+ "x=([0.74, 0.06, 0.01]) #mole fraction of C, H and S respectively\n",
+ "y=([8./3., 8, 1]) #Pounds O2 per pound substance of C,H and S respectively\n",
+ "oxy=0.08 #Oxygen in coal\n",
+ "z=0.232 #mass of coal\n",
+ "#calculations\n",
+ "b=len(x)\n",
+ "pou = numpy.zeros(b)\n",
+ "for i in range (0,b):\n",
+ "\tpou[i]=x[i]*y[i]\n",
+ "\n",
+ "tot=sum(pou)\n",
+ "oxy2=tot-oxy\n",
+ "air=oxy2/z\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Theoretical air fuel ratio =\",air,\"lb of air per pound of coal\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical air fuel ratio = 10.27 lb of air per pound of coal\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 284"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate air fuel ratio and also molal analysis\n",
+ "#Initialization of variables\n",
+ "o2=12.5 #moles of O2\n",
+ "h20=9 #moles of H2O\n",
+ "x=0.21 #Mole fraction of Oxygen in air\n",
+ "M=28.97 #Molar mass of air\n",
+ "M2=56. #molar mass of C4H8\n",
+ "M1=8*12+18. #molecular mass of c8h18\n",
+ "#calculations\n",
+ "air=o2/x\n",
+ "pound=air*M\n",
+ "AR=pound/M1\n",
+ "y1=h20/M2 *100.\n",
+ "y2=o2*(79./21) /M2 *100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Air fuel ratio =\",AR,\"lb of air per pound of fuel\")\n",
+ "print '%s %.2f %s %.2f %s' %(\"\\n Molal or volumetric analysis is\",y1, \"percent of CO2 and\",y2, \"percent N2\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Air fuel ratio = 15.13 lb of air per pound of fuel\n",
+ "\n",
+ " Molal or volumetric analysis is 16.07 percent of CO2 and 83.97 percent N2\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 285"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volumetric analysis and also volume of wet products\n",
+ "#Initialization of variables\n",
+ "x=18.5 #Moles of O2\n",
+ "c=12. #Moles of CO2\n",
+ "vap=13. #moles of H2O\n",
+ "P=15. #psia\n",
+ "R=1545. #Universal gas constant\n",
+ "#calculations\n",
+ "excess=x*0.5\n",
+ "M=12*12+2*vap\n",
+ "n2=(x+excess)*79/21.\n",
+ "nt=n2+excess+c\n",
+ "dry=([c, x/2, n2]) \n",
+ "b= len(dry)\n",
+ "for i in range(0,b):\n",
+ "\tdry[i] = dry[i] /nt *100\n",
+ "\n",
+ "wet=nt+vap\n",
+ "fue=100./(M)\n",
+ "mol=wet*fue\n",
+ "vol=mol*R*1460./(144*P)\n",
+ "#results\n",
+ "print '%s' %(\"Volumetric analysis in percentage\")\n",
+ "print (' CO2 O2 N2')\n",
+ "print (dry)\n",
+ "print '%s %d %s' %(\"Volume of wet products =\",vol,\"cfm\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volumetric analysis in percentage\n",
+ " CO2 O2 N2\n",
+ "[9.55088118249005, 7.362137578169414, 83.08698123934053]\n",
+ "Volume of wet products = 85167 cfm\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 286"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volumetric analysis\n",
+ "#Initialization of variables\n",
+ "import numpy\n",
+ "from numpy import linalg\n",
+ "from numpy.linalg import inv\n",
+ "A=numpy.array([[1, 1], [0.5, 1]])\n",
+ "B=numpy.array([[1],[ 0.9]])\n",
+ "x=0.9\n",
+ "#calculations\n",
+ "N2=x*79./21.\n",
+ "C=numpy.linalg.solve(A,B)\n",
+ "vec= ([ C[0], C[1], N2])\n",
+ "su=sum(vec)\n",
+ "b= len(vec)\n",
+ "vec2=numpy.zeros(b)\n",
+ "for i in range (0,b):\n",
+ "\tvec2[i]=vec[i]/su *100.;\n",
+ "\n",
+ "#results\n",
+ "print '%s' %(\"Volumetric analysis\")\n",
+ "print '%s' %('CO CO2 N2')\n",
+ "print (vec2)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volumetric analysis\n",
+ "CO CO2 N2\n",
+ "[ 4.56026059 18.24104235 77.19869707]\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 288"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Moles of dry products per pound of coal\n",
+ "#Initialization of variables\n",
+ "c=0.74\n",
+ "ref=0.02\n",
+ "co2=0.12\n",
+ "co=0.1/100.\n",
+ "M=12.\n",
+ "#calcualtions\n",
+ "carbon=c-ref\n",
+ "car2=co2+co\n",
+ "wt=car2*M\n",
+ "amount=carbon/wt\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Moles of dry products per pound of coal =\",amount,\" mole\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Moles of dry products per pound of coal = 0.496 mole\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 289"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Number of moles of dry products per pound of fuel\n",
+ "#Initialization of variables\n",
+ "x1=0.128\n",
+ "x2=0.035\n",
+ "x3=0.002\n",
+ "M=12.\n",
+ "N=26.\n",
+ "#calculations\n",
+ "c=x1+x3\n",
+ "mole=12./c\n",
+ "wt=M*M+N\n",
+ "num=mole/wt\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Number of moles of dry products per pound of fuel =\",num,\" mole\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Number of moles of dry products per pound of fuel = 0.543 mole\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 289"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the weight of air and excess air percentage\n",
+ "#Initialization of variables\n",
+ "c=0.74\n",
+ "ref=0.02\n",
+ "co2=0.12\n",
+ "co=0.1/100.\n",
+ "o2=0.065\n",
+ "M=12\n",
+ "x=0.79\n",
+ "M=28.97\n",
+ "#calcualtions\n",
+ "n2=1-(co2+co+o2)\n",
+ "mol=n2/x\n",
+ "wt=mol*M\n",
+ "wt2=0.496\n",
+ "pou=wt2*wt\n",
+ "ta=10.27\n",
+ "EA=(pou-ta)/ta *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Weight of air per pound of fuel =\",pou,\"lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Excess air percentage =\",EA,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Weight of air per pound of fuel = 14.81 lb\n",
+ "\n",
+ " Excess air percentage = 44.2 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_13_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_13_2.ipynb new file mode 100755 index 00000000..388f458f --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_13_2.ipynb @@ -0,0 +1,667 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:390a761bad4c193a32a4fcd413c61db0b9a1c29b46bfad9c3be94c1204cb558b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 13 - Nonreactive and reactive gaseous mixtures"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 271"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the mass and partial volumes of of oxygen, nitrogen\n",
+ "#Initialization of variables\n",
+ "P=70. #psia\n",
+ "Pt=110. #psia\n",
+ "V=20. #cu ft\n",
+ "R0=1545. #Universal gas constant\n",
+ "T=540. #R\n",
+ "M=32. #Molecular weight of Oxygen\n",
+ "M2=28. #Molecular weight of Nitrgoen\n",
+ "#calculations\n",
+ "N=P*V*144/(R0*T)\n",
+ "mo=M*N\n",
+ "Pn=Pt-P\n",
+ "N2=Pn*V*144/(R0*T)\n",
+ "mn=N2*M2\n",
+ "Vo=N*R0*T/(144*Pt)\n",
+ "Vn=N2*R0*T/(144*Pt)\n",
+ "Vn2=V-Vo\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Mass of oxygen =\",mo,\" lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Mass of nitrogen =\",mn,\" lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Partial volume of oxygen =\",Vo,\" cu ft\")\n",
+ "print '%s %.2f %s' %(\"\\n Partial volume of nitrogen =\",Vn,\" cu ft\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2, Partial volume of nitrogen =\",Vn2,\" cu ft\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mass of oxygen = 7.73 lb\n",
+ "\n",
+ " Mass of nitrogen = 3.87 lb\n",
+ "\n",
+ " Partial volume of oxygen = 12.73 cu ft\n",
+ "\n",
+ " Partial volume of nitrogen = 7.27 cu ft\n",
+ "\n",
+ " In case 2, Partial volume of nitrogen = 7.27 cu ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 274"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "P=50. #psia\n",
+ "V=4. #cu ft\n",
+ "dv=3. #cu ft\n",
+ "J=778.\n",
+ "T=560. #R\n",
+ "#calculation\n",
+ "ds= 144*P*V*math.log((V+dv)/V) /(J*T)\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Change in entropy =\",ds,\"unit\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.037 unit\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 275"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=50. #psia\n",
+ "t1=100+460. #R\n",
+ "R1=48.3\n",
+ "R2=55.2\n",
+ "v1=4. #cu ft\n",
+ "p2=100. #psia\n",
+ "v2=3. #cu ft\n",
+ "t2=200.+460 #R\n",
+ "cv1=0.157\n",
+ "cv2=0.177\n",
+ "cpm=0.219\n",
+ "J=778.\n",
+ "#calculations\n",
+ "m1=144*p1*v1/(R1*t1)\n",
+ "m2=144*p2*v2/(R2*t2)\n",
+ "tf=(m1*cv1*(t1-460) + m2*cv2*(t2-460))/(m1*cv1+m2*cv2)\n",
+ "Po2=v1/(v1+v2) *(tf+460)/t1 *p1\n",
+ "ds=cpm*math.log((tf+460)/t1) - R1/J *math.log(Po2/p1)\n",
+ "dss=ds*m1\n",
+ "#results\n",
+ "print '%s %.4f %s' %(\"Change in entropy =\",dss,\"unit\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.0528 unit\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 277"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=30 #psia\n",
+ "t1=80.+460 #R\n",
+ "R1=48.3\n",
+ "R2=55.2\n",
+ "m1=20. #lb/min\n",
+ "p2=50. #psia\n",
+ "m2=35. #lb/min\n",
+ "t2=160.+460 #R\n",
+ "cp1=0.219\n",
+ "cp2=0.248\n",
+ "J=778\n",
+ "#calculations\n",
+ "tf=(m1*cp1*(t1-460) + m2*cp2*(t2-460))/(m1*cp1+m2*cp2)\n",
+ "Po2=m1/32/(m1/32+m2/28) *p1\n",
+ "ds=cp1*math.log((tf+460)/t1) - R1/J *math.log(Po2/p1)\n",
+ "dss=ds*m1\n",
+ "#results\n",
+ "print '%s %.4f %s' %(\"Change in entropy =\",dss,\"units/min\")\n",
+ "print '%s' %(\"The answer is a bit different fromm textbook due to rounding off error in textbook\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 1.7754 units/min\n",
+ "The answer is a bit different fromm textbook due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 278"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the weight per mole and also the gas constant\n",
+ "#Initialization of variables\n",
+ "import numpy\n",
+ "x=([0.15, 0.08, 0.77])\n",
+ "M=([44, 32, 28])\n",
+ "#calculations\n",
+ "b=len(x)\n",
+ "y=numpy.zeros(b)\n",
+ "yt=numpy.zeros(b)\n",
+ "mt=numpy.zeros(b)\n",
+ "per=numpy.zeros(b)\n",
+ "wt=numpy.zeros(b)\n",
+ "R=numpy.zeros(b)\n",
+ "for i in range (0,b):\n",
+ "\ty[i]=x[i]/M[i]\n",
+ "\n",
+ "yt=sum(y)\n",
+ "for i in range (0,b):\n",
+ "\tmt[i]=y[i]/yt\n",
+ "\tper[i]=mt[i]*100\n",
+ "\n",
+ "wt=1. /yt\n",
+ "R=1545. /wt\n",
+ "\n",
+ "#results\n",
+ "print '%s' %(\"Volumetric analysis\")\n",
+ "print '%s' %('percent by volume')\n",
+ "print (per)\n",
+ "print '%s %.1f %s' %(\"Weight per mole =\",wt,\" lb\")\n",
+ "print '%s %.1f' %(\"\\n Gas constant =\",R)\n",
+ "print '%s' %(\"The answer is a bit different fromm textbook due to rounding off error in textbook\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volumetric analysis\n",
+ "percent by volume\n",
+ "[ 10.20408163 7.4829932 82.31292517]\n",
+ "Weight per mole = 29.9 lb\n",
+ "\n",
+ " Gas constant = 51.6\n",
+ "The answer is a bit different fromm textbook due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 283"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical air and amount of nitrogen\n",
+ "#Initialization of variables\n",
+ "x1=0.885 #mole fraction of Ch4\n",
+ "x2=0.115 #mole fraction of c2h6\n",
+ "x3=0.4/100. #mole fraction of N2\n",
+ "n1=2. #Moles of Ch4\n",
+ "n2=3.5 #Moles of c2h6\n",
+ "n3=1. #moles of ch4 in case 2\n",
+ "n4=2. #moles of c2h6 in case 2\n",
+ "#calculations\n",
+ "y1=n1*x1\n",
+ "y2=n2*x2\n",
+ "y=y1+y2\n",
+ "vec2=([y1, y2])\n",
+ "air=y/0.21\n",
+ "y3=n3*x1\n",
+ "y4=n4*x2\n",
+ "yy=y3+y4\n",
+ "vec3=([y3 ,y4])\n",
+ "air2=y/0.21 *0.79\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Theoretical air =\",air,\" moles of air per mole of fuel\")\n",
+ "print '%s' %(\"Oxygen analysis\")\n",
+ "print(vec2)\n",
+ "print '%s %.2f %s' %(\"\\n Amount of nitrogen =\",air2,\" moles of nitrogen per mole of fuel\")\n",
+ "print '%s' %(\"Dry analysis\")\n",
+ "print(vec3)\n",
+ "print '%s %.3f %s' %(\"total =\",yy,\" moles\")\n",
+ "print '%s' %(\"The answer is a bit different fromm textbook due to rounding off error in textbook\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical air = 10.35 moles of air per mole of fuel\n",
+ "Oxygen analysis\n",
+ "[1.77, 0.4025]\n",
+ "\n",
+ " Amount of nitrogen = 8.17 moles of nitrogen per mole of fuel\n",
+ "Dry analysis\n",
+ "[0.885, 0.23]\n",
+ "total = 1.115 moles\n",
+ "The answer is a bit different fromm textbook due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 283"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical air fuel ratio\n",
+ "#Initialization of variables\n",
+ "import numpy\n",
+ "x=([0.74, 0.06, 0.01]) #mole fraction of C, H and S respectively\n",
+ "y=([8./3., 8, 1]) #Pounds O2 per pound substance of C,H and S respectively\n",
+ "oxy=0.08 #Oxygen in coal\n",
+ "z=0.232 #mass of coal\n",
+ "#calculations\n",
+ "b=len(x)\n",
+ "pou = numpy.zeros(b)\n",
+ "for i in range (0,b):\n",
+ "\tpou[i]=x[i]*y[i]\n",
+ "\n",
+ "tot=sum(pou)\n",
+ "oxy2=tot-oxy\n",
+ "air=oxy2/z\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Theoretical air fuel ratio =\",air,\"lb of air per pound of coal\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical air fuel ratio = 10.27 lb of air per pound of coal\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 284"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate air fuel ratio and also molal analysis\n",
+ "#Initialization of variables\n",
+ "o2=12.5 #moles of O2\n",
+ "h20=9 #moles of H2O\n",
+ "x=0.21 #Mole fraction of Oxygen in air\n",
+ "M=28.97 #Molar mass of air\n",
+ "M2=56. #molar mass of C4H8\n",
+ "M1=8*12+18. #molecular mass of c8h18\n",
+ "#calculations\n",
+ "air=o2/x\n",
+ "pound=air*M\n",
+ "AR=pound/M1\n",
+ "y1=h20/M2 *100.\n",
+ "y2=o2*(79./21) /M2 *100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Air fuel ratio =\",AR,\"lb of air per pound of fuel\")\n",
+ "print '%s %.2f %s %.2f %s' %(\"\\n Molal or volumetric analysis is\",y1, \"percent of CO2 and\",y2, \"percent N2\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Air fuel ratio = 15.13 lb of air per pound of fuel\n",
+ "\n",
+ " Molal or volumetric analysis is 16.07 percent of CO2 and 83.97 percent N2\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 285"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volumetric analysis and also volume of wet products\n",
+ "#Initialization of variables\n",
+ "x=18.5 #Moles of O2\n",
+ "c=12. #Moles of CO2\n",
+ "vap=13. #moles of H2O\n",
+ "P=15. #psia\n",
+ "R=1545. #Universal gas constant\n",
+ "#calculations\n",
+ "excess=x*0.5\n",
+ "M=12*12+2*vap\n",
+ "n2=(x+excess)*79/21.\n",
+ "nt=n2+excess+c\n",
+ "dry=([c, x/2, n2]) \n",
+ "b= len(dry)\n",
+ "for i in range(0,b):\n",
+ "\tdry[i] = dry[i] /nt *100\n",
+ "\n",
+ "wet=nt+vap\n",
+ "fue=100./(M)\n",
+ "mol=wet*fue\n",
+ "vol=mol*R*1460./(144*P)\n",
+ "#results\n",
+ "print '%s' %(\"Volumetric analysis in percentage\")\n",
+ "print (' CO2 O2 N2')\n",
+ "print (dry)\n",
+ "print '%s %d %s' %(\"Volume of wet products =\",vol,\"cfm\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volumetric analysis in percentage\n",
+ " CO2 O2 N2\n",
+ "[9.55088118249005, 7.362137578169414, 83.08698123934053]\n",
+ "Volume of wet products = 85167 cfm\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 286"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volumetric analysis\n",
+ "#Initialization of variables\n",
+ "import numpy\n",
+ "from numpy import linalg\n",
+ "from numpy.linalg import inv\n",
+ "A=numpy.array([[1, 1], [0.5, 1]])\n",
+ "B=numpy.array([[1],[ 0.9]])\n",
+ "x=0.9\n",
+ "#calculations\n",
+ "N2=x*79./21.\n",
+ "C=numpy.linalg.solve(A,B)\n",
+ "vec= ([ C[0], C[1], N2])\n",
+ "su=sum(vec)\n",
+ "b= len(vec)\n",
+ "vec2=numpy.zeros(b)\n",
+ "for i in range (0,b):\n",
+ "\tvec2[i]=vec[i]/su *100.;\n",
+ "\n",
+ "#results\n",
+ "print '%s' %(\"Volumetric analysis\")\n",
+ "print '%s' %('CO CO2 N2')\n",
+ "print (vec2)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volumetric analysis\n",
+ "CO CO2 N2\n",
+ "[ 4.56026059 18.24104235 77.19869707]\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 288"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Moles of dry products per pound of coal\n",
+ "#Initialization of variables\n",
+ "c=0.74\n",
+ "ref=0.02\n",
+ "co2=0.12\n",
+ "co=0.1/100.\n",
+ "M=12.\n",
+ "#calcualtions\n",
+ "carbon=c-ref\n",
+ "car2=co2+co\n",
+ "wt=car2*M\n",
+ "amount=carbon/wt\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Moles of dry products per pound of coal =\",amount,\" mole\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Moles of dry products per pound of coal = 0.496 mole\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 289"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Number of moles of dry products per pound of fuel\n",
+ "#Initialization of variables\n",
+ "x1=0.128\n",
+ "x2=0.035\n",
+ "x3=0.002\n",
+ "M=12.\n",
+ "N=26.\n",
+ "#calculations\n",
+ "c=x1+x3\n",
+ "mole=12./c\n",
+ "wt=M*M+N\n",
+ "num=mole/wt\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Number of moles of dry products per pound of fuel =\",num,\" mole\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Number of moles of dry products per pound of fuel = 0.543 mole\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 289"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the weight of air and excess air percentage\n",
+ "#Initialization of variables\n",
+ "c=0.74\n",
+ "ref=0.02\n",
+ "co2=0.12\n",
+ "co=0.1/100.\n",
+ "o2=0.065\n",
+ "M=12\n",
+ "x=0.79\n",
+ "M=28.97\n",
+ "#calcualtions\n",
+ "n2=1-(co2+co+o2)\n",
+ "mol=n2/x\n",
+ "wt=mol*M\n",
+ "wt2=0.496\n",
+ "pou=wt2*wt\n",
+ "ta=10.27\n",
+ "EA=(pou-ta)/ta *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Weight of air per pound of fuel =\",pou,\"lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Excess air percentage =\",EA,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Weight of air per pound of fuel = 14.81 lb\n",
+ "\n",
+ " Excess air percentage = 44.2 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_13_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_13_3.ipynb new file mode 100755 index 00000000..388f458f --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_13_3.ipynb @@ -0,0 +1,667 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:390a761bad4c193a32a4fcd413c61db0b9a1c29b46bfad9c3be94c1204cb558b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 13 - Nonreactive and reactive gaseous mixtures"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 271"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the mass and partial volumes of of oxygen, nitrogen\n",
+ "#Initialization of variables\n",
+ "P=70. #psia\n",
+ "Pt=110. #psia\n",
+ "V=20. #cu ft\n",
+ "R0=1545. #Universal gas constant\n",
+ "T=540. #R\n",
+ "M=32. #Molecular weight of Oxygen\n",
+ "M2=28. #Molecular weight of Nitrgoen\n",
+ "#calculations\n",
+ "N=P*V*144/(R0*T)\n",
+ "mo=M*N\n",
+ "Pn=Pt-P\n",
+ "N2=Pn*V*144/(R0*T)\n",
+ "mn=N2*M2\n",
+ "Vo=N*R0*T/(144*Pt)\n",
+ "Vn=N2*R0*T/(144*Pt)\n",
+ "Vn2=V-Vo\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Mass of oxygen =\",mo,\" lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Mass of nitrogen =\",mn,\" lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Partial volume of oxygen =\",Vo,\" cu ft\")\n",
+ "print '%s %.2f %s' %(\"\\n Partial volume of nitrogen =\",Vn,\" cu ft\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2, Partial volume of nitrogen =\",Vn2,\" cu ft\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mass of oxygen = 7.73 lb\n",
+ "\n",
+ " Mass of nitrogen = 3.87 lb\n",
+ "\n",
+ " Partial volume of oxygen = 12.73 cu ft\n",
+ "\n",
+ " Partial volume of nitrogen = 7.27 cu ft\n",
+ "\n",
+ " In case 2, Partial volume of nitrogen = 7.27 cu ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 274"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "P=50. #psia\n",
+ "V=4. #cu ft\n",
+ "dv=3. #cu ft\n",
+ "J=778.\n",
+ "T=560. #R\n",
+ "#calculation\n",
+ "ds= 144*P*V*math.log((V+dv)/V) /(J*T)\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Change in entropy =\",ds,\"unit\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.037 unit\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 275"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=50. #psia\n",
+ "t1=100+460. #R\n",
+ "R1=48.3\n",
+ "R2=55.2\n",
+ "v1=4. #cu ft\n",
+ "p2=100. #psia\n",
+ "v2=3. #cu ft\n",
+ "t2=200.+460 #R\n",
+ "cv1=0.157\n",
+ "cv2=0.177\n",
+ "cpm=0.219\n",
+ "J=778.\n",
+ "#calculations\n",
+ "m1=144*p1*v1/(R1*t1)\n",
+ "m2=144*p2*v2/(R2*t2)\n",
+ "tf=(m1*cv1*(t1-460) + m2*cv2*(t2-460))/(m1*cv1+m2*cv2)\n",
+ "Po2=v1/(v1+v2) *(tf+460)/t1 *p1\n",
+ "ds=cpm*math.log((tf+460)/t1) - R1/J *math.log(Po2/p1)\n",
+ "dss=ds*m1\n",
+ "#results\n",
+ "print '%s %.4f %s' %(\"Change in entropy =\",dss,\"unit\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.0528 unit\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 277"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "p1=30 #psia\n",
+ "t1=80.+460 #R\n",
+ "R1=48.3\n",
+ "R2=55.2\n",
+ "m1=20. #lb/min\n",
+ "p2=50. #psia\n",
+ "m2=35. #lb/min\n",
+ "t2=160.+460 #R\n",
+ "cp1=0.219\n",
+ "cp2=0.248\n",
+ "J=778\n",
+ "#calculations\n",
+ "tf=(m1*cp1*(t1-460) + m2*cp2*(t2-460))/(m1*cp1+m2*cp2)\n",
+ "Po2=m1/32/(m1/32+m2/28) *p1\n",
+ "ds=cp1*math.log((tf+460)/t1) - R1/J *math.log(Po2/p1)\n",
+ "dss=ds*m1\n",
+ "#results\n",
+ "print '%s %.4f %s' %(\"Change in entropy =\",dss,\"units/min\")\n",
+ "print '%s' %(\"The answer is a bit different fromm textbook due to rounding off error in textbook\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 1.7754 units/min\n",
+ "The answer is a bit different fromm textbook due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 278"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the weight per mole and also the gas constant\n",
+ "#Initialization of variables\n",
+ "import numpy\n",
+ "x=([0.15, 0.08, 0.77])\n",
+ "M=([44, 32, 28])\n",
+ "#calculations\n",
+ "b=len(x)\n",
+ "y=numpy.zeros(b)\n",
+ "yt=numpy.zeros(b)\n",
+ "mt=numpy.zeros(b)\n",
+ "per=numpy.zeros(b)\n",
+ "wt=numpy.zeros(b)\n",
+ "R=numpy.zeros(b)\n",
+ "for i in range (0,b):\n",
+ "\ty[i]=x[i]/M[i]\n",
+ "\n",
+ "yt=sum(y)\n",
+ "for i in range (0,b):\n",
+ "\tmt[i]=y[i]/yt\n",
+ "\tper[i]=mt[i]*100\n",
+ "\n",
+ "wt=1. /yt\n",
+ "R=1545. /wt\n",
+ "\n",
+ "#results\n",
+ "print '%s' %(\"Volumetric analysis\")\n",
+ "print '%s' %('percent by volume')\n",
+ "print (per)\n",
+ "print '%s %.1f %s' %(\"Weight per mole =\",wt,\" lb\")\n",
+ "print '%s %.1f' %(\"\\n Gas constant =\",R)\n",
+ "print '%s' %(\"The answer is a bit different fromm textbook due to rounding off error in textbook\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volumetric analysis\n",
+ "percent by volume\n",
+ "[ 10.20408163 7.4829932 82.31292517]\n",
+ "Weight per mole = 29.9 lb\n",
+ "\n",
+ " Gas constant = 51.6\n",
+ "The answer is a bit different fromm textbook due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 283"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical air and amount of nitrogen\n",
+ "#Initialization of variables\n",
+ "x1=0.885 #mole fraction of Ch4\n",
+ "x2=0.115 #mole fraction of c2h6\n",
+ "x3=0.4/100. #mole fraction of N2\n",
+ "n1=2. #Moles of Ch4\n",
+ "n2=3.5 #Moles of c2h6\n",
+ "n3=1. #moles of ch4 in case 2\n",
+ "n4=2. #moles of c2h6 in case 2\n",
+ "#calculations\n",
+ "y1=n1*x1\n",
+ "y2=n2*x2\n",
+ "y=y1+y2\n",
+ "vec2=([y1, y2])\n",
+ "air=y/0.21\n",
+ "y3=n3*x1\n",
+ "y4=n4*x2\n",
+ "yy=y3+y4\n",
+ "vec3=([y3 ,y4])\n",
+ "air2=y/0.21 *0.79\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Theoretical air =\",air,\" moles of air per mole of fuel\")\n",
+ "print '%s' %(\"Oxygen analysis\")\n",
+ "print(vec2)\n",
+ "print '%s %.2f %s' %(\"\\n Amount of nitrogen =\",air2,\" moles of nitrogen per mole of fuel\")\n",
+ "print '%s' %(\"Dry analysis\")\n",
+ "print(vec3)\n",
+ "print '%s %.3f %s' %(\"total =\",yy,\" moles\")\n",
+ "print '%s' %(\"The answer is a bit different fromm textbook due to rounding off error in textbook\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical air = 10.35 moles of air per mole of fuel\n",
+ "Oxygen analysis\n",
+ "[1.77, 0.4025]\n",
+ "\n",
+ " Amount of nitrogen = 8.17 moles of nitrogen per mole of fuel\n",
+ "Dry analysis\n",
+ "[0.885, 0.23]\n",
+ "total = 1.115 moles\n",
+ "The answer is a bit different fromm textbook due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 283"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical air fuel ratio\n",
+ "#Initialization of variables\n",
+ "import numpy\n",
+ "x=([0.74, 0.06, 0.01]) #mole fraction of C, H and S respectively\n",
+ "y=([8./3., 8, 1]) #Pounds O2 per pound substance of C,H and S respectively\n",
+ "oxy=0.08 #Oxygen in coal\n",
+ "z=0.232 #mass of coal\n",
+ "#calculations\n",
+ "b=len(x)\n",
+ "pou = numpy.zeros(b)\n",
+ "for i in range (0,b):\n",
+ "\tpou[i]=x[i]*y[i]\n",
+ "\n",
+ "tot=sum(pou)\n",
+ "oxy2=tot-oxy\n",
+ "air=oxy2/z\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Theoretical air fuel ratio =\",air,\"lb of air per pound of coal\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical air fuel ratio = 10.27 lb of air per pound of coal\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 284"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate air fuel ratio and also molal analysis\n",
+ "#Initialization of variables\n",
+ "o2=12.5 #moles of O2\n",
+ "h20=9 #moles of H2O\n",
+ "x=0.21 #Mole fraction of Oxygen in air\n",
+ "M=28.97 #Molar mass of air\n",
+ "M2=56. #molar mass of C4H8\n",
+ "M1=8*12+18. #molecular mass of c8h18\n",
+ "#calculations\n",
+ "air=o2/x\n",
+ "pound=air*M\n",
+ "AR=pound/M1\n",
+ "y1=h20/M2 *100.\n",
+ "y2=o2*(79./21) /M2 *100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Air fuel ratio =\",AR,\"lb of air per pound of fuel\")\n",
+ "print '%s %.2f %s %.2f %s' %(\"\\n Molal or volumetric analysis is\",y1, \"percent of CO2 and\",y2, \"percent N2\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Air fuel ratio = 15.13 lb of air per pound of fuel\n",
+ "\n",
+ " Molal or volumetric analysis is 16.07 percent of CO2 and 83.97 percent N2\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 285"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volumetric analysis and also volume of wet products\n",
+ "#Initialization of variables\n",
+ "x=18.5 #Moles of O2\n",
+ "c=12. #Moles of CO2\n",
+ "vap=13. #moles of H2O\n",
+ "P=15. #psia\n",
+ "R=1545. #Universal gas constant\n",
+ "#calculations\n",
+ "excess=x*0.5\n",
+ "M=12*12+2*vap\n",
+ "n2=(x+excess)*79/21.\n",
+ "nt=n2+excess+c\n",
+ "dry=([c, x/2, n2]) \n",
+ "b= len(dry)\n",
+ "for i in range(0,b):\n",
+ "\tdry[i] = dry[i] /nt *100\n",
+ "\n",
+ "wet=nt+vap\n",
+ "fue=100./(M)\n",
+ "mol=wet*fue\n",
+ "vol=mol*R*1460./(144*P)\n",
+ "#results\n",
+ "print '%s' %(\"Volumetric analysis in percentage\")\n",
+ "print (' CO2 O2 N2')\n",
+ "print (dry)\n",
+ "print '%s %d %s' %(\"Volume of wet products =\",vol,\"cfm\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volumetric analysis in percentage\n",
+ " CO2 O2 N2\n",
+ "[9.55088118249005, 7.362137578169414, 83.08698123934053]\n",
+ "Volume of wet products = 85167 cfm\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 286"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volumetric analysis\n",
+ "#Initialization of variables\n",
+ "import numpy\n",
+ "from numpy import linalg\n",
+ "from numpy.linalg import inv\n",
+ "A=numpy.array([[1, 1], [0.5, 1]])\n",
+ "B=numpy.array([[1],[ 0.9]])\n",
+ "x=0.9\n",
+ "#calculations\n",
+ "N2=x*79./21.\n",
+ "C=numpy.linalg.solve(A,B)\n",
+ "vec= ([ C[0], C[1], N2])\n",
+ "su=sum(vec)\n",
+ "b= len(vec)\n",
+ "vec2=numpy.zeros(b)\n",
+ "for i in range (0,b):\n",
+ "\tvec2[i]=vec[i]/su *100.;\n",
+ "\n",
+ "#results\n",
+ "print '%s' %(\"Volumetric analysis\")\n",
+ "print '%s' %('CO CO2 N2')\n",
+ "print (vec2)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volumetric analysis\n",
+ "CO CO2 N2\n",
+ "[ 4.56026059 18.24104235 77.19869707]\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 288"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Moles of dry products per pound of coal\n",
+ "#Initialization of variables\n",
+ "c=0.74\n",
+ "ref=0.02\n",
+ "co2=0.12\n",
+ "co=0.1/100.\n",
+ "M=12.\n",
+ "#calcualtions\n",
+ "carbon=c-ref\n",
+ "car2=co2+co\n",
+ "wt=car2*M\n",
+ "amount=carbon/wt\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Moles of dry products per pound of coal =\",amount,\" mole\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Moles of dry products per pound of coal = 0.496 mole\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 289"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Number of moles of dry products per pound of fuel\n",
+ "#Initialization of variables\n",
+ "x1=0.128\n",
+ "x2=0.035\n",
+ "x3=0.002\n",
+ "M=12.\n",
+ "N=26.\n",
+ "#calculations\n",
+ "c=x1+x3\n",
+ "mole=12./c\n",
+ "wt=M*M+N\n",
+ "num=mole/wt\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Number of moles of dry products per pound of fuel =\",num,\" mole\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Number of moles of dry products per pound of fuel = 0.543 mole\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 289"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the weight of air and excess air percentage\n",
+ "#Initialization of variables\n",
+ "c=0.74\n",
+ "ref=0.02\n",
+ "co2=0.12\n",
+ "co=0.1/100.\n",
+ "o2=0.065\n",
+ "M=12\n",
+ "x=0.79\n",
+ "M=28.97\n",
+ "#calcualtions\n",
+ "n2=1-(co2+co+o2)\n",
+ "mol=n2/x\n",
+ "wt=mol*M\n",
+ "wt2=0.496\n",
+ "pou=wt2*wt\n",
+ "ta=10.27\n",
+ "EA=(pou-ta)/ta *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Weight of air per pound of fuel =\",pou,\"lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Excess air percentage =\",EA,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Weight of air per pound of fuel = 14.81 lb\n",
+ "\n",
+ " Excess air percentage = 44.2 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_14.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_14.ipynb new file mode 100755 index 00000000..2bdb47a9 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_14.ipynb @@ -0,0 +1,394 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:57baf6d72b0852fbedefdd618b07a013f83f99bf6037a025a931e79491c28af0"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 14 - Energies associated with chemical reactions"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 297"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the HHV and LHV at constant volume\n",
+ "#Initalization of variables\n",
+ "lhs=8.5 #moles of reactants\n",
+ "rhs=6 #moles of CO2\n",
+ "n=3. #moles of H2O\n",
+ "R=1545. #Universal gas constant\n",
+ "R2=18.016 #molar mass of water\n",
+ "J=778. #Work conversion constant\n",
+ "T=537. #R\n",
+ "T2=1050.4 #R\n",
+ "T3=991.3 #R\n",
+ "Qhp=1417041. #Btu/mol\n",
+ "#calculations\n",
+ "Qhpv=(lhs-rhs)*R*T/J\n",
+ "Qhv=Qhp-Qhpv\n",
+ "hfg=(rhs-n)*R2*T2\n",
+ "Qlp=Qhp-hfg\n",
+ "Qlpv=(lhs-rhs-n)*R/J *T\n",
+ "Qlv=Qlp-Qlpv\n",
+ "Qhlv=(rhs-n)*R2*T3\n",
+ "Qlv3=Qhv-Qhlv\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Higher heating value at constant volume =\",Qhv,\"Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n Lower heating value at constant pressure =\",Qlp,\"Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n In case 1,Lower heating value at constant volume =\",Qlv,\" Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n In case 2,Lower heating value at constant volume =\",Qlv3,\"Btu/mol\")\n",
+ "print '%s' %(\"The answers might differ a bit from textbook due to rounding off error.\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Higher heating value at constant volume = 1414374 Btu/mol\n",
+ "\n",
+ " Lower heating value at constant pressure = 1360268 Btu/mol\n",
+ "\n",
+ " In case 1,Lower heating value at constant volume = 1360802 Btu/mol\n",
+ "\n",
+ " In case 2,Lower heating value at constant volume = 1360797 Btu/mol\n",
+ "The answers might differ a bit from textbook due to rounding off error.\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 301"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in chemical energy during complete combustion and LHV at constant volume\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"From table 5-4,\")\n",
+ "no=7.5\n",
+ "n1=3.\n",
+ "n2=6.\n",
+ "Q=1360805. #Btu/mol\n",
+ "#calculations\n",
+ "Uo=337+no*85\n",
+ "Uf=n1*104+n2*118\n",
+ "delo= Q-(Uo-Uf)\n",
+ "Uo2=1656+no*402\n",
+ "Uf2=n1*490+n2*570\n",
+ "Qv=Uo2-Uf2+delo\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Change in chemical energy during complete combustion =\",delo,\"Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n Lower heating value at constant volume =\",Qv,\"Btu/mol\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 5-4,\n",
+ "Change in chemical energy during complete combustion = 1360850 Btu/mol\n",
+ "\n",
+ " Lower heating value at constant volume = 1360631 Btu/mol\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 302"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat removed in the process\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"From table 5-4,\")\n",
+ "a=1 #moles of C6H6\n",
+ "b=7.5 #moles of O2 in reactant\n",
+ "c=1.875 #moles of excess O2\n",
+ "d=35.27 #moles of N2\n",
+ "e=3 #moles of H2O\n",
+ "flow=40. #lb/min\n",
+ "w=1360850. #Btu/mol\n",
+ "#calculations\n",
+ "U11=a*337\n",
+ "U12=(b+c)*85\n",
+ "U13=d*82\n",
+ "U14=(a+b+c+d)*1066\n",
+ "Ua1=U11+U12+U13+U14\n",
+ "U21=c*2539\n",
+ "U22=d*2416\n",
+ "U23=e*3009\n",
+ "U24=2*e*3852\n",
+ "U25=(c+d+e+2*e)*1985\n",
+ "Ua2=U21+U22+U23+U24+U25\n",
+ "Q=Ua1+w-Ua2\n",
+ "fuel=flow/(6*12+2.*e)\n",
+ "Q2=Q*fuel\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat removed =\",Q2,\"Btu/min\")\n",
+ "print '%s' %(\"The answers might differ a bit from textbook due to rounding off error.\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 5-4,\n",
+ "Heat removed = 615294 Btu/min\n",
+ "The answers might differ a bit from textbook due to rounding off error.\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 305"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the furnace efficiency\n",
+ "#Initalization of variables\n",
+ "rate=10700. #lb/min\n",
+ "t2=97.90 \n",
+ "t1=33.05 \n",
+ "r1=46. #lb/min\n",
+ "#calculations\n",
+ "print '%s' %(\"From steam tables,\")\n",
+ "Hv=1417041.\n",
+ "Qw=rate*(t2-t1)\n",
+ "Q=r1/(12*6+6) *Hv\n",
+ "eff=Qw/Q*100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Furnace efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam tables,\n",
+ "Furnace efficiency = 83.0 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 306"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "rate=94. #lb/hr\n",
+ "hp=197. #hp\n",
+ "c=8.\n",
+ "h=18.\n",
+ "Lv=17730. #Btu/hr\n",
+ "H=2368089. #Btu/hr\n",
+ "#calculations\n",
+ "amount=rate*c/12 +h\n",
+ "amount=0.824\n",
+ "Lvv=H-Lv\n",
+ "eff=hp*2544/(amount*Lvv) *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 25.88 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 306"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "rate=94. #lb/hr\n",
+ "hp=197. #hp\n",
+ "c=8.\n",
+ "h=18.\n",
+ "mole=9.\n",
+ "H=2350359. #Btu/hr\n",
+ "#calculations\n",
+ "amount=rate*c/12 +h\n",
+ "amount=0.824\n",
+ "Lvv=H-mole*18.016*1050.4\n",
+ "eff=hp*2544/(amount*Lvv) *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n",
+ "print '%s' %(\"The answer in the textbook is a different due to rounding off error\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 27.90 percent\n",
+ "The answer in the textbook is a different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 307"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the total available energy\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "hv=14000. #Btu/lb\n",
+ "ef=0.4\n",
+ "tmin=80. #F\n",
+ "tmid=300. #F\n",
+ "m=13. #lb\n",
+ "c=0.27\n",
+ "tmean=2300. #F\n",
+ "#calculations\n",
+ "heat=ef*hv\n",
+ "Qavail=heat*(tmean-tmin)/(tmean+460)\n",
+ "Q=m*c*(tmean-tmid)\n",
+ "Q2=Q- (tmin+460)*m*c*math.log((tmean+460)/(tmid+460))\n",
+ "tot=Qavail+Q2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Total available energy =\",tot,\" Btu/lb of fuel\")\n",
+ "print '%s' %(\"The answer is a bit different due to rounding off error in textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Total available energy = 9079 Btu/lb of fuel\n",
+ "The answer is a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 308"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max amount of work available\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"From table 14-2,\")\n",
+ "G1=55750. #Btu/mol\n",
+ "co2=-169580. #Btu/mol\n",
+ "h2o=-98290. #Btu/mol\n",
+ "#calculations\n",
+ "G2=6*co2+3*h2o\n",
+ "avail=G1-G2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. amount of work =\",avail,\"Btu/mol\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 14-2,\n",
+ "Max. amount of work = 1368100 Btu/mol\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_14_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_14_1.ipynb new file mode 100755 index 00000000..2bdb47a9 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_14_1.ipynb @@ -0,0 +1,394 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:57baf6d72b0852fbedefdd618b07a013f83f99bf6037a025a931e79491c28af0"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 14 - Energies associated with chemical reactions"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 297"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the HHV and LHV at constant volume\n",
+ "#Initalization of variables\n",
+ "lhs=8.5 #moles of reactants\n",
+ "rhs=6 #moles of CO2\n",
+ "n=3. #moles of H2O\n",
+ "R=1545. #Universal gas constant\n",
+ "R2=18.016 #molar mass of water\n",
+ "J=778. #Work conversion constant\n",
+ "T=537. #R\n",
+ "T2=1050.4 #R\n",
+ "T3=991.3 #R\n",
+ "Qhp=1417041. #Btu/mol\n",
+ "#calculations\n",
+ "Qhpv=(lhs-rhs)*R*T/J\n",
+ "Qhv=Qhp-Qhpv\n",
+ "hfg=(rhs-n)*R2*T2\n",
+ "Qlp=Qhp-hfg\n",
+ "Qlpv=(lhs-rhs-n)*R/J *T\n",
+ "Qlv=Qlp-Qlpv\n",
+ "Qhlv=(rhs-n)*R2*T3\n",
+ "Qlv3=Qhv-Qhlv\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Higher heating value at constant volume =\",Qhv,\"Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n Lower heating value at constant pressure =\",Qlp,\"Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n In case 1,Lower heating value at constant volume =\",Qlv,\" Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n In case 2,Lower heating value at constant volume =\",Qlv3,\"Btu/mol\")\n",
+ "print '%s' %(\"The answers might differ a bit from textbook due to rounding off error.\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Higher heating value at constant volume = 1414374 Btu/mol\n",
+ "\n",
+ " Lower heating value at constant pressure = 1360268 Btu/mol\n",
+ "\n",
+ " In case 1,Lower heating value at constant volume = 1360802 Btu/mol\n",
+ "\n",
+ " In case 2,Lower heating value at constant volume = 1360797 Btu/mol\n",
+ "The answers might differ a bit from textbook due to rounding off error.\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 301"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in chemical energy during complete combustion and LHV at constant volume\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"From table 5-4,\")\n",
+ "no=7.5\n",
+ "n1=3.\n",
+ "n2=6.\n",
+ "Q=1360805. #Btu/mol\n",
+ "#calculations\n",
+ "Uo=337+no*85\n",
+ "Uf=n1*104+n2*118\n",
+ "delo= Q-(Uo-Uf)\n",
+ "Uo2=1656+no*402\n",
+ "Uf2=n1*490+n2*570\n",
+ "Qv=Uo2-Uf2+delo\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Change in chemical energy during complete combustion =\",delo,\"Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n Lower heating value at constant volume =\",Qv,\"Btu/mol\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 5-4,\n",
+ "Change in chemical energy during complete combustion = 1360850 Btu/mol\n",
+ "\n",
+ " Lower heating value at constant volume = 1360631 Btu/mol\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 302"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat removed in the process\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"From table 5-4,\")\n",
+ "a=1 #moles of C6H6\n",
+ "b=7.5 #moles of O2 in reactant\n",
+ "c=1.875 #moles of excess O2\n",
+ "d=35.27 #moles of N2\n",
+ "e=3 #moles of H2O\n",
+ "flow=40. #lb/min\n",
+ "w=1360850. #Btu/mol\n",
+ "#calculations\n",
+ "U11=a*337\n",
+ "U12=(b+c)*85\n",
+ "U13=d*82\n",
+ "U14=(a+b+c+d)*1066\n",
+ "Ua1=U11+U12+U13+U14\n",
+ "U21=c*2539\n",
+ "U22=d*2416\n",
+ "U23=e*3009\n",
+ "U24=2*e*3852\n",
+ "U25=(c+d+e+2*e)*1985\n",
+ "Ua2=U21+U22+U23+U24+U25\n",
+ "Q=Ua1+w-Ua2\n",
+ "fuel=flow/(6*12+2.*e)\n",
+ "Q2=Q*fuel\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat removed =\",Q2,\"Btu/min\")\n",
+ "print '%s' %(\"The answers might differ a bit from textbook due to rounding off error.\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 5-4,\n",
+ "Heat removed = 615294 Btu/min\n",
+ "The answers might differ a bit from textbook due to rounding off error.\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 305"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the furnace efficiency\n",
+ "#Initalization of variables\n",
+ "rate=10700. #lb/min\n",
+ "t2=97.90 \n",
+ "t1=33.05 \n",
+ "r1=46. #lb/min\n",
+ "#calculations\n",
+ "print '%s' %(\"From steam tables,\")\n",
+ "Hv=1417041.\n",
+ "Qw=rate*(t2-t1)\n",
+ "Q=r1/(12*6+6) *Hv\n",
+ "eff=Qw/Q*100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Furnace efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam tables,\n",
+ "Furnace efficiency = 83.0 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 306"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "rate=94. #lb/hr\n",
+ "hp=197. #hp\n",
+ "c=8.\n",
+ "h=18.\n",
+ "Lv=17730. #Btu/hr\n",
+ "H=2368089. #Btu/hr\n",
+ "#calculations\n",
+ "amount=rate*c/12 +h\n",
+ "amount=0.824\n",
+ "Lvv=H-Lv\n",
+ "eff=hp*2544/(amount*Lvv) *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 25.88 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 306"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "rate=94. #lb/hr\n",
+ "hp=197. #hp\n",
+ "c=8.\n",
+ "h=18.\n",
+ "mole=9.\n",
+ "H=2350359. #Btu/hr\n",
+ "#calculations\n",
+ "amount=rate*c/12 +h\n",
+ "amount=0.824\n",
+ "Lvv=H-mole*18.016*1050.4\n",
+ "eff=hp*2544/(amount*Lvv) *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n",
+ "print '%s' %(\"The answer in the textbook is a different due to rounding off error\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 27.90 percent\n",
+ "The answer in the textbook is a different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 307"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the total available energy\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "hv=14000. #Btu/lb\n",
+ "ef=0.4\n",
+ "tmin=80. #F\n",
+ "tmid=300. #F\n",
+ "m=13. #lb\n",
+ "c=0.27\n",
+ "tmean=2300. #F\n",
+ "#calculations\n",
+ "heat=ef*hv\n",
+ "Qavail=heat*(tmean-tmin)/(tmean+460)\n",
+ "Q=m*c*(tmean-tmid)\n",
+ "Q2=Q- (tmin+460)*m*c*math.log((tmean+460)/(tmid+460))\n",
+ "tot=Qavail+Q2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Total available energy =\",tot,\" Btu/lb of fuel\")\n",
+ "print '%s' %(\"The answer is a bit different due to rounding off error in textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Total available energy = 9079 Btu/lb of fuel\n",
+ "The answer is a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 308"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max amount of work available\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"From table 14-2,\")\n",
+ "G1=55750. #Btu/mol\n",
+ "co2=-169580. #Btu/mol\n",
+ "h2o=-98290. #Btu/mol\n",
+ "#calculations\n",
+ "G2=6*co2+3*h2o\n",
+ "avail=G1-G2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. amount of work =\",avail,\"Btu/mol\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 14-2,\n",
+ "Max. amount of work = 1368100 Btu/mol\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_14_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_14_2.ipynb new file mode 100755 index 00000000..2bdb47a9 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_14_2.ipynb @@ -0,0 +1,394 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:57baf6d72b0852fbedefdd618b07a013f83f99bf6037a025a931e79491c28af0"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 14 - Energies associated with chemical reactions"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 297"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the HHV and LHV at constant volume\n",
+ "#Initalization of variables\n",
+ "lhs=8.5 #moles of reactants\n",
+ "rhs=6 #moles of CO2\n",
+ "n=3. #moles of H2O\n",
+ "R=1545. #Universal gas constant\n",
+ "R2=18.016 #molar mass of water\n",
+ "J=778. #Work conversion constant\n",
+ "T=537. #R\n",
+ "T2=1050.4 #R\n",
+ "T3=991.3 #R\n",
+ "Qhp=1417041. #Btu/mol\n",
+ "#calculations\n",
+ "Qhpv=(lhs-rhs)*R*T/J\n",
+ "Qhv=Qhp-Qhpv\n",
+ "hfg=(rhs-n)*R2*T2\n",
+ "Qlp=Qhp-hfg\n",
+ "Qlpv=(lhs-rhs-n)*R/J *T\n",
+ "Qlv=Qlp-Qlpv\n",
+ "Qhlv=(rhs-n)*R2*T3\n",
+ "Qlv3=Qhv-Qhlv\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Higher heating value at constant volume =\",Qhv,\"Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n Lower heating value at constant pressure =\",Qlp,\"Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n In case 1,Lower heating value at constant volume =\",Qlv,\" Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n In case 2,Lower heating value at constant volume =\",Qlv3,\"Btu/mol\")\n",
+ "print '%s' %(\"The answers might differ a bit from textbook due to rounding off error.\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Higher heating value at constant volume = 1414374 Btu/mol\n",
+ "\n",
+ " Lower heating value at constant pressure = 1360268 Btu/mol\n",
+ "\n",
+ " In case 1,Lower heating value at constant volume = 1360802 Btu/mol\n",
+ "\n",
+ " In case 2,Lower heating value at constant volume = 1360797 Btu/mol\n",
+ "The answers might differ a bit from textbook due to rounding off error.\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 301"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in chemical energy during complete combustion and LHV at constant volume\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"From table 5-4,\")\n",
+ "no=7.5\n",
+ "n1=3.\n",
+ "n2=6.\n",
+ "Q=1360805. #Btu/mol\n",
+ "#calculations\n",
+ "Uo=337+no*85\n",
+ "Uf=n1*104+n2*118\n",
+ "delo= Q-(Uo-Uf)\n",
+ "Uo2=1656+no*402\n",
+ "Uf2=n1*490+n2*570\n",
+ "Qv=Uo2-Uf2+delo\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Change in chemical energy during complete combustion =\",delo,\"Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n Lower heating value at constant volume =\",Qv,\"Btu/mol\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 5-4,\n",
+ "Change in chemical energy during complete combustion = 1360850 Btu/mol\n",
+ "\n",
+ " Lower heating value at constant volume = 1360631 Btu/mol\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 302"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat removed in the process\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"From table 5-4,\")\n",
+ "a=1 #moles of C6H6\n",
+ "b=7.5 #moles of O2 in reactant\n",
+ "c=1.875 #moles of excess O2\n",
+ "d=35.27 #moles of N2\n",
+ "e=3 #moles of H2O\n",
+ "flow=40. #lb/min\n",
+ "w=1360850. #Btu/mol\n",
+ "#calculations\n",
+ "U11=a*337\n",
+ "U12=(b+c)*85\n",
+ "U13=d*82\n",
+ "U14=(a+b+c+d)*1066\n",
+ "Ua1=U11+U12+U13+U14\n",
+ "U21=c*2539\n",
+ "U22=d*2416\n",
+ "U23=e*3009\n",
+ "U24=2*e*3852\n",
+ "U25=(c+d+e+2*e)*1985\n",
+ "Ua2=U21+U22+U23+U24+U25\n",
+ "Q=Ua1+w-Ua2\n",
+ "fuel=flow/(6*12+2.*e)\n",
+ "Q2=Q*fuel\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat removed =\",Q2,\"Btu/min\")\n",
+ "print '%s' %(\"The answers might differ a bit from textbook due to rounding off error.\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 5-4,\n",
+ "Heat removed = 615294 Btu/min\n",
+ "The answers might differ a bit from textbook due to rounding off error.\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 305"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the furnace efficiency\n",
+ "#Initalization of variables\n",
+ "rate=10700. #lb/min\n",
+ "t2=97.90 \n",
+ "t1=33.05 \n",
+ "r1=46. #lb/min\n",
+ "#calculations\n",
+ "print '%s' %(\"From steam tables,\")\n",
+ "Hv=1417041.\n",
+ "Qw=rate*(t2-t1)\n",
+ "Q=r1/(12*6+6) *Hv\n",
+ "eff=Qw/Q*100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Furnace efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam tables,\n",
+ "Furnace efficiency = 83.0 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 306"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "rate=94. #lb/hr\n",
+ "hp=197. #hp\n",
+ "c=8.\n",
+ "h=18.\n",
+ "Lv=17730. #Btu/hr\n",
+ "H=2368089. #Btu/hr\n",
+ "#calculations\n",
+ "amount=rate*c/12 +h\n",
+ "amount=0.824\n",
+ "Lvv=H-Lv\n",
+ "eff=hp*2544/(amount*Lvv) *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 25.88 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 306"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "rate=94. #lb/hr\n",
+ "hp=197. #hp\n",
+ "c=8.\n",
+ "h=18.\n",
+ "mole=9.\n",
+ "H=2350359. #Btu/hr\n",
+ "#calculations\n",
+ "amount=rate*c/12 +h\n",
+ "amount=0.824\n",
+ "Lvv=H-mole*18.016*1050.4\n",
+ "eff=hp*2544/(amount*Lvv) *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n",
+ "print '%s' %(\"The answer in the textbook is a different due to rounding off error\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 27.90 percent\n",
+ "The answer in the textbook is a different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 307"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the total available energy\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "hv=14000. #Btu/lb\n",
+ "ef=0.4\n",
+ "tmin=80. #F\n",
+ "tmid=300. #F\n",
+ "m=13. #lb\n",
+ "c=0.27\n",
+ "tmean=2300. #F\n",
+ "#calculations\n",
+ "heat=ef*hv\n",
+ "Qavail=heat*(tmean-tmin)/(tmean+460)\n",
+ "Q=m*c*(tmean-tmid)\n",
+ "Q2=Q- (tmin+460)*m*c*math.log((tmean+460)/(tmid+460))\n",
+ "tot=Qavail+Q2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Total available energy =\",tot,\" Btu/lb of fuel\")\n",
+ "print '%s' %(\"The answer is a bit different due to rounding off error in textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Total available energy = 9079 Btu/lb of fuel\n",
+ "The answer is a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 308"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max amount of work available\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"From table 14-2,\")\n",
+ "G1=55750. #Btu/mol\n",
+ "co2=-169580. #Btu/mol\n",
+ "h2o=-98290. #Btu/mol\n",
+ "#calculations\n",
+ "G2=6*co2+3*h2o\n",
+ "avail=G1-G2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. amount of work =\",avail,\"Btu/mol\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 14-2,\n",
+ "Max. amount of work = 1368100 Btu/mol\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_14_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_14_3.ipynb new file mode 100755 index 00000000..2bdb47a9 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_14_3.ipynb @@ -0,0 +1,394 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:57baf6d72b0852fbedefdd618b07a013f83f99bf6037a025a931e79491c28af0"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 14 - Energies associated with chemical reactions"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 297"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the HHV and LHV at constant volume\n",
+ "#Initalization of variables\n",
+ "lhs=8.5 #moles of reactants\n",
+ "rhs=6 #moles of CO2\n",
+ "n=3. #moles of H2O\n",
+ "R=1545. #Universal gas constant\n",
+ "R2=18.016 #molar mass of water\n",
+ "J=778. #Work conversion constant\n",
+ "T=537. #R\n",
+ "T2=1050.4 #R\n",
+ "T3=991.3 #R\n",
+ "Qhp=1417041. #Btu/mol\n",
+ "#calculations\n",
+ "Qhpv=(lhs-rhs)*R*T/J\n",
+ "Qhv=Qhp-Qhpv\n",
+ "hfg=(rhs-n)*R2*T2\n",
+ "Qlp=Qhp-hfg\n",
+ "Qlpv=(lhs-rhs-n)*R/J *T\n",
+ "Qlv=Qlp-Qlpv\n",
+ "Qhlv=(rhs-n)*R2*T3\n",
+ "Qlv3=Qhv-Qhlv\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Higher heating value at constant volume =\",Qhv,\"Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n Lower heating value at constant pressure =\",Qlp,\"Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n In case 1,Lower heating value at constant volume =\",Qlv,\" Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n In case 2,Lower heating value at constant volume =\",Qlv3,\"Btu/mol\")\n",
+ "print '%s' %(\"The answers might differ a bit from textbook due to rounding off error.\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Higher heating value at constant volume = 1414374 Btu/mol\n",
+ "\n",
+ " Lower heating value at constant pressure = 1360268 Btu/mol\n",
+ "\n",
+ " In case 1,Lower heating value at constant volume = 1360802 Btu/mol\n",
+ "\n",
+ " In case 2,Lower heating value at constant volume = 1360797 Btu/mol\n",
+ "The answers might differ a bit from textbook due to rounding off error.\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 301"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the change in chemical energy during complete combustion and LHV at constant volume\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"From table 5-4,\")\n",
+ "no=7.5\n",
+ "n1=3.\n",
+ "n2=6.\n",
+ "Q=1360805. #Btu/mol\n",
+ "#calculations\n",
+ "Uo=337+no*85\n",
+ "Uf=n1*104+n2*118\n",
+ "delo= Q-(Uo-Uf)\n",
+ "Uo2=1656+no*402\n",
+ "Uf2=n1*490+n2*570\n",
+ "Qv=Uo2-Uf2+delo\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Change in chemical energy during complete combustion =\",delo,\"Btu/mol\")\n",
+ "print '%s %d %s' %(\"\\n Lower heating value at constant volume =\",Qv,\"Btu/mol\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 5-4,\n",
+ "Change in chemical energy during complete combustion = 1360850 Btu/mol\n",
+ "\n",
+ " Lower heating value at constant volume = 1360631 Btu/mol\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 302"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat removed in the process\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"From table 5-4,\")\n",
+ "a=1 #moles of C6H6\n",
+ "b=7.5 #moles of O2 in reactant\n",
+ "c=1.875 #moles of excess O2\n",
+ "d=35.27 #moles of N2\n",
+ "e=3 #moles of H2O\n",
+ "flow=40. #lb/min\n",
+ "w=1360850. #Btu/mol\n",
+ "#calculations\n",
+ "U11=a*337\n",
+ "U12=(b+c)*85\n",
+ "U13=d*82\n",
+ "U14=(a+b+c+d)*1066\n",
+ "Ua1=U11+U12+U13+U14\n",
+ "U21=c*2539\n",
+ "U22=d*2416\n",
+ "U23=e*3009\n",
+ "U24=2*e*3852\n",
+ "U25=(c+d+e+2*e)*1985\n",
+ "Ua2=U21+U22+U23+U24+U25\n",
+ "Q=Ua1+w-Ua2\n",
+ "fuel=flow/(6*12+2.*e)\n",
+ "Q2=Q*fuel\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat removed =\",Q2,\"Btu/min\")\n",
+ "print '%s' %(\"The answers might differ a bit from textbook due to rounding off error.\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 5-4,\n",
+ "Heat removed = 615294 Btu/min\n",
+ "The answers might differ a bit from textbook due to rounding off error.\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 305"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the furnace efficiency\n",
+ "#Initalization of variables\n",
+ "rate=10700. #lb/min\n",
+ "t2=97.90 \n",
+ "t1=33.05 \n",
+ "r1=46. #lb/min\n",
+ "#calculations\n",
+ "print '%s' %(\"From steam tables,\")\n",
+ "Hv=1417041.\n",
+ "Qw=rate*(t2-t1)\n",
+ "Q=r1/(12*6+6) *Hv\n",
+ "eff=Qw/Q*100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Furnace efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam tables,\n",
+ "Furnace efficiency = 83.0 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 306"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "rate=94. #lb/hr\n",
+ "hp=197. #hp\n",
+ "c=8.\n",
+ "h=18.\n",
+ "Lv=17730. #Btu/hr\n",
+ "H=2368089. #Btu/hr\n",
+ "#calculations\n",
+ "amount=rate*c/12 +h\n",
+ "amount=0.824\n",
+ "Lvv=H-Lv\n",
+ "eff=hp*2544/(amount*Lvv) *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 25.88 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 306"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "rate=94. #lb/hr\n",
+ "hp=197. #hp\n",
+ "c=8.\n",
+ "h=18.\n",
+ "mole=9.\n",
+ "H=2350359. #Btu/hr\n",
+ "#calculations\n",
+ "amount=rate*c/12 +h\n",
+ "amount=0.824\n",
+ "Lvv=H-mole*18.016*1050.4\n",
+ "eff=hp*2544/(amount*Lvv) *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n",
+ "print '%s' %(\"The answer in the textbook is a different due to rounding off error\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 27.90 percent\n",
+ "The answer in the textbook is a different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 307"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the total available energy\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "hv=14000. #Btu/lb\n",
+ "ef=0.4\n",
+ "tmin=80. #F\n",
+ "tmid=300. #F\n",
+ "m=13. #lb\n",
+ "c=0.27\n",
+ "tmean=2300. #F\n",
+ "#calculations\n",
+ "heat=ef*hv\n",
+ "Qavail=heat*(tmean-tmin)/(tmean+460)\n",
+ "Q=m*c*(tmean-tmid)\n",
+ "Q2=Q- (tmin+460)*m*c*math.log((tmean+460)/(tmid+460))\n",
+ "tot=Qavail+Q2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Total available energy =\",tot,\" Btu/lb of fuel\")\n",
+ "print '%s' %(\"The answer is a bit different due to rounding off error in textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Total available energy = 9079 Btu/lb of fuel\n",
+ "The answer is a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 308"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max amount of work available\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"From table 14-2,\")\n",
+ "G1=55750. #Btu/mol\n",
+ "co2=-169580. #Btu/mol\n",
+ "h2o=-98290. #Btu/mol\n",
+ "#calculations\n",
+ "G2=6*co2+3*h2o\n",
+ "avail=G1-G2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. amount of work =\",avail,\"Btu/mol\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 14-2,\n",
+ "Max. amount of work = 1368100 Btu/mol\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_15.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_15.ipynb new file mode 100755 index 00000000..25cf3bae --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_15.ipynb @@ -0,0 +1,158 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:d798b16416897dedbfd57aff5c233c1f7e9c52a7f0081b45c972d6ab47468c7c"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 15 - Thermodynamics of chemical reactions"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 318"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the amount of dissociation\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "import numpy\n",
+ "kp=math.pow(10,(1.45))\n",
+ "#calculations\n",
+ "s=[1-kp*kp , 0, -3, 2]\n",
+ "vec=numpy.roots(s)\n",
+ "X=numpy.real(vec[2])\n",
+ "xper=X*100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Amount of dissociaton =\",xper,\"percent\")\n",
+ "print '%s %.3f %s %.3f %s %.3f %s' %(\"\\n Of each original mole of CO2, there will be\",X,\"mole of CO \",X/2.,\" mol of Oxygen and\",(1-X),\"mol of CO2\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Amount of dissociaton = 12.7 percent\n",
+ "\n",
+ " Of each original mole of CO2, there will be 0.127 mole of CO 0.063 mol of Oxygen and 0.873 mol of CO2\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 319"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max. temperature reached\n",
+ "#Initalization of variables\n",
+ "U=121200. #Btu/mol\n",
+ "Uco2=51635. #Btu/mol\n",
+ "Un2=27589. #Btu/mol\n",
+ "Uco22=57875. #Btu/mol\n",
+ "Un22=21036. #Btu/mol\n",
+ "T1=5000. #R\n",
+ "T2=5500. #R\n",
+ "#calculations\n",
+ "Ut1=Uco2+1.88*Un2\n",
+ "Ut2=Uco22 + 1.88*Un22\n",
+ "print '%s' %(\"By extrapolation,\")\n",
+ "Tx=5710 #R\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. Temperature reached =\",Tx,\"R\")\n",
+ "print '%s' %(\"The calculation for Ut2 is wrong in textbook. Please use a calculator.\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "By extrapolation,\n",
+ "Max. Temperature reached = 5710 R\n",
+ "The calculation for Ut2 is wrong in textbook. Please use a calculator.\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 319"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max. obtainable temperature\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"By trial and error,\")\n",
+ "import math\n",
+ "X=0.201\n",
+ "X1=0.2\n",
+ "R=59.3 #universal gas constant\n",
+ "T=5000 #R\n",
+ "U=121200 #Btu/mol\n",
+ "Uco2=51635. #Btu/mol\n",
+ "Un2=27907. #Btu/mol\n",
+ "U3=29616. #Btu/mol\n",
+ "U4=27589. #Btu/mol\n",
+ "#calculations\n",
+ "kp1=R*(1-X1)/math.pow(X1,1.5) /math.pow(T,0.5)\n",
+ "kp2=R*(1-X)/math.pow(X,1.5) /math.pow(T,0.5)\n",
+ "q=(1-X)*Uco2 + X*Un2+ X/2 *U3 +1.88*U4 + X*U\n",
+ "print '%s' %(\"Interpolating between T=4500 R and T=5000 R, we get\")\n",
+ "T2=4907 #R\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. obtainable temperature =\",T2,\" R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "By trial and error,\n",
+ "Interpolating between T=4500 R and T=5000 R, we get\n",
+ "Max. obtainable temperature = 4907 R\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_15_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_15_1.ipynb new file mode 100755 index 00000000..25cf3bae --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_15_1.ipynb @@ -0,0 +1,158 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:d798b16416897dedbfd57aff5c233c1f7e9c52a7f0081b45c972d6ab47468c7c"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 15 - Thermodynamics of chemical reactions"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 318"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the amount of dissociation\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "import numpy\n",
+ "kp=math.pow(10,(1.45))\n",
+ "#calculations\n",
+ "s=[1-kp*kp , 0, -3, 2]\n",
+ "vec=numpy.roots(s)\n",
+ "X=numpy.real(vec[2])\n",
+ "xper=X*100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Amount of dissociaton =\",xper,\"percent\")\n",
+ "print '%s %.3f %s %.3f %s %.3f %s' %(\"\\n Of each original mole of CO2, there will be\",X,\"mole of CO \",X/2.,\" mol of Oxygen and\",(1-X),\"mol of CO2\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Amount of dissociaton = 12.7 percent\n",
+ "\n",
+ " Of each original mole of CO2, there will be 0.127 mole of CO 0.063 mol of Oxygen and 0.873 mol of CO2\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 319"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max. temperature reached\n",
+ "#Initalization of variables\n",
+ "U=121200. #Btu/mol\n",
+ "Uco2=51635. #Btu/mol\n",
+ "Un2=27589. #Btu/mol\n",
+ "Uco22=57875. #Btu/mol\n",
+ "Un22=21036. #Btu/mol\n",
+ "T1=5000. #R\n",
+ "T2=5500. #R\n",
+ "#calculations\n",
+ "Ut1=Uco2+1.88*Un2\n",
+ "Ut2=Uco22 + 1.88*Un22\n",
+ "print '%s' %(\"By extrapolation,\")\n",
+ "Tx=5710 #R\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. Temperature reached =\",Tx,\"R\")\n",
+ "print '%s' %(\"The calculation for Ut2 is wrong in textbook. Please use a calculator.\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "By extrapolation,\n",
+ "Max. Temperature reached = 5710 R\n",
+ "The calculation for Ut2 is wrong in textbook. Please use a calculator.\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 319"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max. obtainable temperature\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"By trial and error,\")\n",
+ "import math\n",
+ "X=0.201\n",
+ "X1=0.2\n",
+ "R=59.3 #universal gas constant\n",
+ "T=5000 #R\n",
+ "U=121200 #Btu/mol\n",
+ "Uco2=51635. #Btu/mol\n",
+ "Un2=27907. #Btu/mol\n",
+ "U3=29616. #Btu/mol\n",
+ "U4=27589. #Btu/mol\n",
+ "#calculations\n",
+ "kp1=R*(1-X1)/math.pow(X1,1.5) /math.pow(T,0.5)\n",
+ "kp2=R*(1-X)/math.pow(X,1.5) /math.pow(T,0.5)\n",
+ "q=(1-X)*Uco2 + X*Un2+ X/2 *U3 +1.88*U4 + X*U\n",
+ "print '%s' %(\"Interpolating between T=4500 R and T=5000 R, we get\")\n",
+ "T2=4907 #R\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. obtainable temperature =\",T2,\" R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "By trial and error,\n",
+ "Interpolating between T=4500 R and T=5000 R, we get\n",
+ "Max. obtainable temperature = 4907 R\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_15_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_15_2.ipynb new file mode 100755 index 00000000..25cf3bae --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_15_2.ipynb @@ -0,0 +1,158 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:d798b16416897dedbfd57aff5c233c1f7e9c52a7f0081b45c972d6ab47468c7c"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 15 - Thermodynamics of chemical reactions"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 318"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the amount of dissociation\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "import numpy\n",
+ "kp=math.pow(10,(1.45))\n",
+ "#calculations\n",
+ "s=[1-kp*kp , 0, -3, 2]\n",
+ "vec=numpy.roots(s)\n",
+ "X=numpy.real(vec[2])\n",
+ "xper=X*100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Amount of dissociaton =\",xper,\"percent\")\n",
+ "print '%s %.3f %s %.3f %s %.3f %s' %(\"\\n Of each original mole of CO2, there will be\",X,\"mole of CO \",X/2.,\" mol of Oxygen and\",(1-X),\"mol of CO2\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Amount of dissociaton = 12.7 percent\n",
+ "\n",
+ " Of each original mole of CO2, there will be 0.127 mole of CO 0.063 mol of Oxygen and 0.873 mol of CO2\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 319"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max. temperature reached\n",
+ "#Initalization of variables\n",
+ "U=121200. #Btu/mol\n",
+ "Uco2=51635. #Btu/mol\n",
+ "Un2=27589. #Btu/mol\n",
+ "Uco22=57875. #Btu/mol\n",
+ "Un22=21036. #Btu/mol\n",
+ "T1=5000. #R\n",
+ "T2=5500. #R\n",
+ "#calculations\n",
+ "Ut1=Uco2+1.88*Un2\n",
+ "Ut2=Uco22 + 1.88*Un22\n",
+ "print '%s' %(\"By extrapolation,\")\n",
+ "Tx=5710 #R\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. Temperature reached =\",Tx,\"R\")\n",
+ "print '%s' %(\"The calculation for Ut2 is wrong in textbook. Please use a calculator.\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "By extrapolation,\n",
+ "Max. Temperature reached = 5710 R\n",
+ "The calculation for Ut2 is wrong in textbook. Please use a calculator.\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 319"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max. obtainable temperature\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"By trial and error,\")\n",
+ "import math\n",
+ "X=0.201\n",
+ "X1=0.2\n",
+ "R=59.3 #universal gas constant\n",
+ "T=5000 #R\n",
+ "U=121200 #Btu/mol\n",
+ "Uco2=51635. #Btu/mol\n",
+ "Un2=27907. #Btu/mol\n",
+ "U3=29616. #Btu/mol\n",
+ "U4=27589. #Btu/mol\n",
+ "#calculations\n",
+ "kp1=R*(1-X1)/math.pow(X1,1.5) /math.pow(T,0.5)\n",
+ "kp2=R*(1-X)/math.pow(X,1.5) /math.pow(T,0.5)\n",
+ "q=(1-X)*Uco2 + X*Un2+ X/2 *U3 +1.88*U4 + X*U\n",
+ "print '%s' %(\"Interpolating between T=4500 R and T=5000 R, we get\")\n",
+ "T2=4907 #R\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. obtainable temperature =\",T2,\" R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "By trial and error,\n",
+ "Interpolating between T=4500 R and T=5000 R, we get\n",
+ "Max. obtainable temperature = 4907 R\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_15_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_15_3.ipynb new file mode 100755 index 00000000..25cf3bae --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_15_3.ipynb @@ -0,0 +1,158 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:d798b16416897dedbfd57aff5c233c1f7e9c52a7f0081b45c972d6ab47468c7c"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 15 - Thermodynamics of chemical reactions"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 318"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the amount of dissociation\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "import numpy\n",
+ "kp=math.pow(10,(1.45))\n",
+ "#calculations\n",
+ "s=[1-kp*kp , 0, -3, 2]\n",
+ "vec=numpy.roots(s)\n",
+ "X=numpy.real(vec[2])\n",
+ "xper=X*100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Amount of dissociaton =\",xper,\"percent\")\n",
+ "print '%s %.3f %s %.3f %s %.3f %s' %(\"\\n Of each original mole of CO2, there will be\",X,\"mole of CO \",X/2.,\" mol of Oxygen and\",(1-X),\"mol of CO2\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Amount of dissociaton = 12.7 percent\n",
+ "\n",
+ " Of each original mole of CO2, there will be 0.127 mole of CO 0.063 mol of Oxygen and 0.873 mol of CO2\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 319"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max. temperature reached\n",
+ "#Initalization of variables\n",
+ "U=121200. #Btu/mol\n",
+ "Uco2=51635. #Btu/mol\n",
+ "Un2=27589. #Btu/mol\n",
+ "Uco22=57875. #Btu/mol\n",
+ "Un22=21036. #Btu/mol\n",
+ "T1=5000. #R\n",
+ "T2=5500. #R\n",
+ "#calculations\n",
+ "Ut1=Uco2+1.88*Un2\n",
+ "Ut2=Uco22 + 1.88*Un22\n",
+ "print '%s' %(\"By extrapolation,\")\n",
+ "Tx=5710 #R\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. Temperature reached =\",Tx,\"R\")\n",
+ "print '%s' %(\"The calculation for Ut2 is wrong in textbook. Please use a calculator.\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "By extrapolation,\n",
+ "Max. Temperature reached = 5710 R\n",
+ "The calculation for Ut2 is wrong in textbook. Please use a calculator.\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 319"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max. obtainable temperature\n",
+ "#Initalization of variables\n",
+ "print '%s' %(\"By trial and error,\")\n",
+ "import math\n",
+ "X=0.201\n",
+ "X1=0.2\n",
+ "R=59.3 #universal gas constant\n",
+ "T=5000 #R\n",
+ "U=121200 #Btu/mol\n",
+ "Uco2=51635. #Btu/mol\n",
+ "Un2=27907. #Btu/mol\n",
+ "U3=29616. #Btu/mol\n",
+ "U4=27589. #Btu/mol\n",
+ "#calculations\n",
+ "kp1=R*(1-X1)/math.pow(X1,1.5) /math.pow(T,0.5)\n",
+ "kp2=R*(1-X)/math.pow(X,1.5) /math.pow(T,0.5)\n",
+ "q=(1-X)*Uco2 + X*Un2+ X/2 *U3 +1.88*U4 + X*U\n",
+ "print '%s' %(\"Interpolating between T=4500 R and T=5000 R, we get\")\n",
+ "T2=4907 #R\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. obtainable temperature =\",T2,\" R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "By trial and error,\n",
+ "Interpolating between T=4500 R and T=5000 R, we get\n",
+ "Max. obtainable temperature = 4907 R\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_16.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_16.ipynb new file mode 100755 index 00000000..efa01670 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_16.ipynb @@ -0,0 +1,253 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:dc464f4ef08695f8cec0668d0c21cb89b005d8581737f852d592d0e688b3aa48"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 16 - Gas cycles"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 330"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max. pressure, temperature and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "cr=9.\n",
+ "p1=14. #psia\n",
+ "t1=80.+460 #R\n",
+ "n=1.4\n",
+ "heat=800. #Btu\n",
+ "c=0.1715\n",
+ "R=53.35\n",
+ "J=778.\n",
+ "#calculations\n",
+ "p2=p1*math.pow(cr,n)\n",
+ "t2=t1*math.pow(cr,(n-1))\n",
+ "t3=heat/c +t2\n",
+ "p3=p2*t3/t2\n",
+ "eff=(1-1/math.pow(cr,(n-1)))*100\n",
+ "t4=t3/math.pow(cr,(n-1))\n",
+ "Qr=c*(t4-t1)\n",
+ "cyclework=heat-Qr\n",
+ "eff2= cyclework/heat *100\n",
+ "V1=R*t1/(144*p1)\n",
+ "pd=(1-1/cr)*V1\n",
+ "mep=cyclework*J/(pd*144)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. temperature =\",t3,\"R\")\n",
+ "print '%s %d %s' %(\"\\n Max. pressure =\",p3,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n In method 1,Thermal efficiency =\",eff,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In method 2,Thermal efficiency =\",eff2,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Mean effective pressure mep =\",mep,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Max. temperature = 5965 R\n",
+ "\n",
+ " Max. pressure = 1391 psia\n",
+ "\n",
+ " In method 1,Thermal efficiency = 58.5 percent\n",
+ "\n",
+ " In method 2,Thermal efficiency = 58.5 percent\n",
+ "\n",
+ " Mean effective pressure mep = 199.0 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 333"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max temperature, pressure and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "t1=80+460. #R\n",
+ "p1=14. #psia\n",
+ "n=1.4\n",
+ "cr=16.\n",
+ "heat=800. #Btu\n",
+ "cp=0.24\n",
+ "c=0.1715\n",
+ "#calculations\n",
+ "t2=t1*math.pow(cr,(n-1))\n",
+ "p2=p1*math.pow(cr,n)\n",
+ "t3=t2 +heat/cp\n",
+ "v32=t3/t2\n",
+ "v43=cr/v32\n",
+ "t4=t3/math.pow(v43,(n-1))\n",
+ "Qr=c*(t4-t1)\n",
+ "etat=(heat-Qr)/heat *100\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. Temperature =\",t3,\" R\")\n",
+ "print '%s %d %s' %(\"\\n Max. Pressure =\",p2,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",etat,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Max. Temperature = 4970 R\n",
+ "\n",
+ " Max. Pressure = 679 psia\n",
+ "\n",
+ " Thermal efficiency = 56.8 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 335"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Mean effective pressure\n",
+ "#Initalization of variables\n",
+ "eff=0.585\n",
+ "heat=800. #Btu\n",
+ "t1=80+460. #R\n",
+ "p1=14. #psia\n",
+ "n=1.4\n",
+ "R=53.35\n",
+ "cr=9.\n",
+ "cp=0.24\n",
+ "J=778.\n",
+ "#calculations\n",
+ "W=eff*heat\n",
+ "v1=R*t1/(144*p1)\n",
+ "v2=v1/cr\n",
+ "t2=1301 #R\n",
+ "t3=t2+ heat/cp\n",
+ "v3=v2*t3/t2\n",
+ "v4=cr*v3\n",
+ "mep=W*J/(144*(v4-v2))\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Mean effective pressure =\",mep,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mean effective pressure = 51.3 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 340"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max temperature, pressure, thermal efficiency, mean effective pressure\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "eff=0.585\n",
+ "heat=500. #Btu\n",
+ "heat1=300. #Btu\n",
+ "t1=80+460. #R\n",
+ "p1=14. #psia\n",
+ "n=1.4\n",
+ "R=53.35\n",
+ "cr=9.\n",
+ "J=778.\n",
+ "c=0.1715\n",
+ "cp=0.24\n",
+ "t2=1301. #R\n",
+ "p2=308. #psia\n",
+ "#calculations\n",
+ "t3=t2+ heat/c\n",
+ "p3=p2*t3/t2\n",
+ "t4=t3+ heat1/cp\n",
+ "v43=t4/t3\n",
+ "v54=cr/v43\n",
+ "t5=t4/math.pow(v54,(n-1))\n",
+ "Qr=c*(t5-t1)\n",
+ "etat=(heat+heat1-Qr)/(heat+heat1) *100\n",
+ "mep=(heat+heat1-Qr)*J/(12.69*144)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. Temperature =\",t4,\" R\")\n",
+ "print '%s %d %s' %(\"\\n Max. Pressure =\",p3,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",etat,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Mean effective pressure =\",mep,\" psia\")\n",
+ "print '%s' %(\"The calculations are a bit different due to rounding off error in textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Max. Temperature = 5466 R\n",
+ "\n",
+ " Max. Pressure = 998 psia\n",
+ "\n",
+ " Thermal efficiency = 57.6 percent\n",
+ "\n",
+ " Mean effective pressure = 196.2 psia\n",
+ "The calculations are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_16_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_16_1.ipynb new file mode 100755 index 00000000..efa01670 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_16_1.ipynb @@ -0,0 +1,253 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:dc464f4ef08695f8cec0668d0c21cb89b005d8581737f852d592d0e688b3aa48"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 16 - Gas cycles"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 330"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max. pressure, temperature and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "cr=9.\n",
+ "p1=14. #psia\n",
+ "t1=80.+460 #R\n",
+ "n=1.4\n",
+ "heat=800. #Btu\n",
+ "c=0.1715\n",
+ "R=53.35\n",
+ "J=778.\n",
+ "#calculations\n",
+ "p2=p1*math.pow(cr,n)\n",
+ "t2=t1*math.pow(cr,(n-1))\n",
+ "t3=heat/c +t2\n",
+ "p3=p2*t3/t2\n",
+ "eff=(1-1/math.pow(cr,(n-1)))*100\n",
+ "t4=t3/math.pow(cr,(n-1))\n",
+ "Qr=c*(t4-t1)\n",
+ "cyclework=heat-Qr\n",
+ "eff2= cyclework/heat *100\n",
+ "V1=R*t1/(144*p1)\n",
+ "pd=(1-1/cr)*V1\n",
+ "mep=cyclework*J/(pd*144)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. temperature =\",t3,\"R\")\n",
+ "print '%s %d %s' %(\"\\n Max. pressure =\",p3,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n In method 1,Thermal efficiency =\",eff,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In method 2,Thermal efficiency =\",eff2,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Mean effective pressure mep =\",mep,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Max. temperature = 5965 R\n",
+ "\n",
+ " Max. pressure = 1391 psia\n",
+ "\n",
+ " In method 1,Thermal efficiency = 58.5 percent\n",
+ "\n",
+ " In method 2,Thermal efficiency = 58.5 percent\n",
+ "\n",
+ " Mean effective pressure mep = 199.0 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 333"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max temperature, pressure and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "t1=80+460. #R\n",
+ "p1=14. #psia\n",
+ "n=1.4\n",
+ "cr=16.\n",
+ "heat=800. #Btu\n",
+ "cp=0.24\n",
+ "c=0.1715\n",
+ "#calculations\n",
+ "t2=t1*math.pow(cr,(n-1))\n",
+ "p2=p1*math.pow(cr,n)\n",
+ "t3=t2 +heat/cp\n",
+ "v32=t3/t2\n",
+ "v43=cr/v32\n",
+ "t4=t3/math.pow(v43,(n-1))\n",
+ "Qr=c*(t4-t1)\n",
+ "etat=(heat-Qr)/heat *100\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. Temperature =\",t3,\" R\")\n",
+ "print '%s %d %s' %(\"\\n Max. Pressure =\",p2,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",etat,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Max. Temperature = 4970 R\n",
+ "\n",
+ " Max. Pressure = 679 psia\n",
+ "\n",
+ " Thermal efficiency = 56.8 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 335"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Mean effective pressure\n",
+ "#Initalization of variables\n",
+ "eff=0.585\n",
+ "heat=800. #Btu\n",
+ "t1=80+460. #R\n",
+ "p1=14. #psia\n",
+ "n=1.4\n",
+ "R=53.35\n",
+ "cr=9.\n",
+ "cp=0.24\n",
+ "J=778.\n",
+ "#calculations\n",
+ "W=eff*heat\n",
+ "v1=R*t1/(144*p1)\n",
+ "v2=v1/cr\n",
+ "t2=1301 #R\n",
+ "t3=t2+ heat/cp\n",
+ "v3=v2*t3/t2\n",
+ "v4=cr*v3\n",
+ "mep=W*J/(144*(v4-v2))\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Mean effective pressure =\",mep,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mean effective pressure = 51.3 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 340"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max temperature, pressure, thermal efficiency, mean effective pressure\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "eff=0.585\n",
+ "heat=500. #Btu\n",
+ "heat1=300. #Btu\n",
+ "t1=80+460. #R\n",
+ "p1=14. #psia\n",
+ "n=1.4\n",
+ "R=53.35\n",
+ "cr=9.\n",
+ "J=778.\n",
+ "c=0.1715\n",
+ "cp=0.24\n",
+ "t2=1301. #R\n",
+ "p2=308. #psia\n",
+ "#calculations\n",
+ "t3=t2+ heat/c\n",
+ "p3=p2*t3/t2\n",
+ "t4=t3+ heat1/cp\n",
+ "v43=t4/t3\n",
+ "v54=cr/v43\n",
+ "t5=t4/math.pow(v54,(n-1))\n",
+ "Qr=c*(t5-t1)\n",
+ "etat=(heat+heat1-Qr)/(heat+heat1) *100\n",
+ "mep=(heat+heat1-Qr)*J/(12.69*144)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. Temperature =\",t4,\" R\")\n",
+ "print '%s %d %s' %(\"\\n Max. Pressure =\",p3,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",etat,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Mean effective pressure =\",mep,\" psia\")\n",
+ "print '%s' %(\"The calculations are a bit different due to rounding off error in textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Max. Temperature = 5466 R\n",
+ "\n",
+ " Max. Pressure = 998 psia\n",
+ "\n",
+ " Thermal efficiency = 57.6 percent\n",
+ "\n",
+ " Mean effective pressure = 196.2 psia\n",
+ "The calculations are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_16_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_16_2.ipynb new file mode 100755 index 00000000..efa01670 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_16_2.ipynb @@ -0,0 +1,253 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:dc464f4ef08695f8cec0668d0c21cb89b005d8581737f852d592d0e688b3aa48"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 16 - Gas cycles"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 330"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max. pressure, temperature and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "cr=9.\n",
+ "p1=14. #psia\n",
+ "t1=80.+460 #R\n",
+ "n=1.4\n",
+ "heat=800. #Btu\n",
+ "c=0.1715\n",
+ "R=53.35\n",
+ "J=778.\n",
+ "#calculations\n",
+ "p2=p1*math.pow(cr,n)\n",
+ "t2=t1*math.pow(cr,(n-1))\n",
+ "t3=heat/c +t2\n",
+ "p3=p2*t3/t2\n",
+ "eff=(1-1/math.pow(cr,(n-1)))*100\n",
+ "t4=t3/math.pow(cr,(n-1))\n",
+ "Qr=c*(t4-t1)\n",
+ "cyclework=heat-Qr\n",
+ "eff2= cyclework/heat *100\n",
+ "V1=R*t1/(144*p1)\n",
+ "pd=(1-1/cr)*V1\n",
+ "mep=cyclework*J/(pd*144)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. temperature =\",t3,\"R\")\n",
+ "print '%s %d %s' %(\"\\n Max. pressure =\",p3,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n In method 1,Thermal efficiency =\",eff,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In method 2,Thermal efficiency =\",eff2,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Mean effective pressure mep =\",mep,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Max. temperature = 5965 R\n",
+ "\n",
+ " Max. pressure = 1391 psia\n",
+ "\n",
+ " In method 1,Thermal efficiency = 58.5 percent\n",
+ "\n",
+ " In method 2,Thermal efficiency = 58.5 percent\n",
+ "\n",
+ " Mean effective pressure mep = 199.0 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 333"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max temperature, pressure and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "t1=80+460. #R\n",
+ "p1=14. #psia\n",
+ "n=1.4\n",
+ "cr=16.\n",
+ "heat=800. #Btu\n",
+ "cp=0.24\n",
+ "c=0.1715\n",
+ "#calculations\n",
+ "t2=t1*math.pow(cr,(n-1))\n",
+ "p2=p1*math.pow(cr,n)\n",
+ "t3=t2 +heat/cp\n",
+ "v32=t3/t2\n",
+ "v43=cr/v32\n",
+ "t4=t3/math.pow(v43,(n-1))\n",
+ "Qr=c*(t4-t1)\n",
+ "etat=(heat-Qr)/heat *100\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. Temperature =\",t3,\" R\")\n",
+ "print '%s %d %s' %(\"\\n Max. Pressure =\",p2,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",etat,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Max. Temperature = 4970 R\n",
+ "\n",
+ " Max. Pressure = 679 psia\n",
+ "\n",
+ " Thermal efficiency = 56.8 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 335"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Mean effective pressure\n",
+ "#Initalization of variables\n",
+ "eff=0.585\n",
+ "heat=800. #Btu\n",
+ "t1=80+460. #R\n",
+ "p1=14. #psia\n",
+ "n=1.4\n",
+ "R=53.35\n",
+ "cr=9.\n",
+ "cp=0.24\n",
+ "J=778.\n",
+ "#calculations\n",
+ "W=eff*heat\n",
+ "v1=R*t1/(144*p1)\n",
+ "v2=v1/cr\n",
+ "t2=1301 #R\n",
+ "t3=t2+ heat/cp\n",
+ "v3=v2*t3/t2\n",
+ "v4=cr*v3\n",
+ "mep=W*J/(144*(v4-v2))\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Mean effective pressure =\",mep,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mean effective pressure = 51.3 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 340"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max temperature, pressure, thermal efficiency, mean effective pressure\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "eff=0.585\n",
+ "heat=500. #Btu\n",
+ "heat1=300. #Btu\n",
+ "t1=80+460. #R\n",
+ "p1=14. #psia\n",
+ "n=1.4\n",
+ "R=53.35\n",
+ "cr=9.\n",
+ "J=778.\n",
+ "c=0.1715\n",
+ "cp=0.24\n",
+ "t2=1301. #R\n",
+ "p2=308. #psia\n",
+ "#calculations\n",
+ "t3=t2+ heat/c\n",
+ "p3=p2*t3/t2\n",
+ "t4=t3+ heat1/cp\n",
+ "v43=t4/t3\n",
+ "v54=cr/v43\n",
+ "t5=t4/math.pow(v54,(n-1))\n",
+ "Qr=c*(t5-t1)\n",
+ "etat=(heat+heat1-Qr)/(heat+heat1) *100\n",
+ "mep=(heat+heat1-Qr)*J/(12.69*144)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. Temperature =\",t4,\" R\")\n",
+ "print '%s %d %s' %(\"\\n Max. Pressure =\",p3,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",etat,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Mean effective pressure =\",mep,\" psia\")\n",
+ "print '%s' %(\"The calculations are a bit different due to rounding off error in textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Max. Temperature = 5466 R\n",
+ "\n",
+ " Max. Pressure = 998 psia\n",
+ "\n",
+ " Thermal efficiency = 57.6 percent\n",
+ "\n",
+ " Mean effective pressure = 196.2 psia\n",
+ "The calculations are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_16_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_16_3.ipynb new file mode 100755 index 00000000..efa01670 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_16_3.ipynb @@ -0,0 +1,253 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:dc464f4ef08695f8cec0668d0c21cb89b005d8581737f852d592d0e688b3aa48"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 16 - Gas cycles"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 330"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max. pressure, temperature and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "cr=9.\n",
+ "p1=14. #psia\n",
+ "t1=80.+460 #R\n",
+ "n=1.4\n",
+ "heat=800. #Btu\n",
+ "c=0.1715\n",
+ "R=53.35\n",
+ "J=778.\n",
+ "#calculations\n",
+ "p2=p1*math.pow(cr,n)\n",
+ "t2=t1*math.pow(cr,(n-1))\n",
+ "t3=heat/c +t2\n",
+ "p3=p2*t3/t2\n",
+ "eff=(1-1/math.pow(cr,(n-1)))*100\n",
+ "t4=t3/math.pow(cr,(n-1))\n",
+ "Qr=c*(t4-t1)\n",
+ "cyclework=heat-Qr\n",
+ "eff2= cyclework/heat *100\n",
+ "V1=R*t1/(144*p1)\n",
+ "pd=(1-1/cr)*V1\n",
+ "mep=cyclework*J/(pd*144)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. temperature =\",t3,\"R\")\n",
+ "print '%s %d %s' %(\"\\n Max. pressure =\",p3,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n In method 1,Thermal efficiency =\",eff,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In method 2,Thermal efficiency =\",eff2,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Mean effective pressure mep =\",mep,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Max. temperature = 5965 R\n",
+ "\n",
+ " Max. pressure = 1391 psia\n",
+ "\n",
+ " In method 1,Thermal efficiency = 58.5 percent\n",
+ "\n",
+ " In method 2,Thermal efficiency = 58.5 percent\n",
+ "\n",
+ " Mean effective pressure mep = 199.0 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 333"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max temperature, pressure and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "t1=80+460. #R\n",
+ "p1=14. #psia\n",
+ "n=1.4\n",
+ "cr=16.\n",
+ "heat=800. #Btu\n",
+ "cp=0.24\n",
+ "c=0.1715\n",
+ "#calculations\n",
+ "t2=t1*math.pow(cr,(n-1))\n",
+ "p2=p1*math.pow(cr,n)\n",
+ "t3=t2 +heat/cp\n",
+ "v32=t3/t2\n",
+ "v43=cr/v32\n",
+ "t4=t3/math.pow(v43,(n-1))\n",
+ "Qr=c*(t4-t1)\n",
+ "etat=(heat-Qr)/heat *100\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. Temperature =\",t3,\" R\")\n",
+ "print '%s %d %s' %(\"\\n Max. Pressure =\",p2,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",etat,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Max. Temperature = 4970 R\n",
+ "\n",
+ " Max. Pressure = 679 psia\n",
+ "\n",
+ " Thermal efficiency = 56.8 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 335"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Mean effective pressure\n",
+ "#Initalization of variables\n",
+ "eff=0.585\n",
+ "heat=800. #Btu\n",
+ "t1=80+460. #R\n",
+ "p1=14. #psia\n",
+ "n=1.4\n",
+ "R=53.35\n",
+ "cr=9.\n",
+ "cp=0.24\n",
+ "J=778.\n",
+ "#calculations\n",
+ "W=eff*heat\n",
+ "v1=R*t1/(144*p1)\n",
+ "v2=v1/cr\n",
+ "t2=1301 #R\n",
+ "t3=t2+ heat/cp\n",
+ "v3=v2*t3/t2\n",
+ "v4=cr*v3\n",
+ "mep=W*J/(144*(v4-v2))\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Mean effective pressure =\",mep,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mean effective pressure = 51.3 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 340"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the max temperature, pressure, thermal efficiency, mean effective pressure\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "eff=0.585\n",
+ "heat=500. #Btu\n",
+ "heat1=300. #Btu\n",
+ "t1=80+460. #R\n",
+ "p1=14. #psia\n",
+ "n=1.4\n",
+ "R=53.35\n",
+ "cr=9.\n",
+ "J=778.\n",
+ "c=0.1715\n",
+ "cp=0.24\n",
+ "t2=1301. #R\n",
+ "p2=308. #psia\n",
+ "#calculations\n",
+ "t3=t2+ heat/c\n",
+ "p3=p2*t3/t2\n",
+ "t4=t3+ heat1/cp\n",
+ "v43=t4/t3\n",
+ "v54=cr/v43\n",
+ "t5=t4/math.pow(v54,(n-1))\n",
+ "Qr=c*(t5-t1)\n",
+ "etat=(heat+heat1-Qr)/(heat+heat1) *100\n",
+ "mep=(heat+heat1-Qr)*J/(12.69*144)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Max. Temperature =\",t4,\" R\")\n",
+ "print '%s %d %s' %(\"\\n Max. Pressure =\",p3,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",etat,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Mean effective pressure =\",mep,\" psia\")\n",
+ "print '%s' %(\"The calculations are a bit different due to rounding off error in textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Max. Temperature = 5466 R\n",
+ "\n",
+ " Max. Pressure = 998 psia\n",
+ "\n",
+ " Thermal efficiency = 57.6 percent\n",
+ "\n",
+ " Mean effective pressure = 196.2 psia\n",
+ "The calculations are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_17.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_17.ipynb new file mode 100755 index 00000000..98fc5f10 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_17.ipynb @@ -0,0 +1,132 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:b620865a516deeb75cd703005b53698c7a7013658cab02400acc0bf08c43a5d1"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 17 - Internal-combustion engines"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 358"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the indicated efficiency, brake thermal efficiency in both cases\n",
+ "#Initalization of variables\n",
+ "hp1=2000. #bhp\n",
+ "m=792. #lb/hr\n",
+ "ex=0.5\n",
+ "hp2=210.\n",
+ "hv=18900. #Btu/lb\n",
+ "etth=51.3\n",
+ "#calculations\n",
+ "ihp=hp1+hp2\n",
+ "ietat= ihp*2544/(m*hv) *100\n",
+ "betat=ietat*hp1/ihp\n",
+ "betat2=hp1*2544/(m*hv) *100\n",
+ "ietae=ietat/etth *100\n",
+ "betae=betat/etth *100\n",
+ "brake= ietae*hp1/ihp\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Indicated efficiency =\",ietat,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Brake thermal efficiency =\",betat,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Brake thermal efficiency =\",betat2,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Indicated thermal efficiency =\",ietae,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Brake engine efficiency =\",betae,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Brake engine efficiency =\",brake,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated efficiency = 37.6 percent\n",
+ "\n",
+ " Brake thermal efficiency = 34.0 percent\n",
+ "\n",
+ " In case 2, Brake thermal efficiency = 34.0 percent\n",
+ "\n",
+ " Indicated thermal efficiency = 73.2 percent\n",
+ "\n",
+ " Brake engine efficiency = 66.3 percent\n",
+ "\n",
+ " In case 2, Brake engine efficiency = 66.3 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 361"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the indicated mep\n",
+ "#Initalization of variables\n",
+ "J=778.\n",
+ "o2=12.5\n",
+ "theo=0.95\n",
+ "N=56.5\n",
+ "R0=1545.\n",
+ "T=540. #R\n",
+ "p=14. #psia\n",
+ "LHV=2368089. #Btu/lb\n",
+ "ther=39.4\n",
+ "iep=0.78\n",
+ "ve=0.8\n",
+ "#calculations\n",
+ "Ar=o2/0.21 *theo\n",
+ "vol=N*R0*T/(144*p)\n",
+ "hv=(LHV -17730)/LHV\n",
+ "ithep=iep*ther\n",
+ "pd=ithep/100 *ve *100.5\n",
+ "mep=J*pd\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Indicated mep =\",mep,\"lb/sq ft\")\n",
+ "print '%s' %(\"The answer might differ from textbook due to rounding off error\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated mep = 19223 lb/sq ft\n",
+ "The answer might differ from textbook due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_17_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_17_1.ipynb new file mode 100755 index 00000000..98fc5f10 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_17_1.ipynb @@ -0,0 +1,132 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:b620865a516deeb75cd703005b53698c7a7013658cab02400acc0bf08c43a5d1"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 17 - Internal-combustion engines"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 358"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the indicated efficiency, brake thermal efficiency in both cases\n",
+ "#Initalization of variables\n",
+ "hp1=2000. #bhp\n",
+ "m=792. #lb/hr\n",
+ "ex=0.5\n",
+ "hp2=210.\n",
+ "hv=18900. #Btu/lb\n",
+ "etth=51.3\n",
+ "#calculations\n",
+ "ihp=hp1+hp2\n",
+ "ietat= ihp*2544/(m*hv) *100\n",
+ "betat=ietat*hp1/ihp\n",
+ "betat2=hp1*2544/(m*hv) *100\n",
+ "ietae=ietat/etth *100\n",
+ "betae=betat/etth *100\n",
+ "brake= ietae*hp1/ihp\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Indicated efficiency =\",ietat,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Brake thermal efficiency =\",betat,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Brake thermal efficiency =\",betat2,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Indicated thermal efficiency =\",ietae,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Brake engine efficiency =\",betae,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Brake engine efficiency =\",brake,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated efficiency = 37.6 percent\n",
+ "\n",
+ " Brake thermal efficiency = 34.0 percent\n",
+ "\n",
+ " In case 2, Brake thermal efficiency = 34.0 percent\n",
+ "\n",
+ " Indicated thermal efficiency = 73.2 percent\n",
+ "\n",
+ " Brake engine efficiency = 66.3 percent\n",
+ "\n",
+ " In case 2, Brake engine efficiency = 66.3 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 361"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the indicated mep\n",
+ "#Initalization of variables\n",
+ "J=778.\n",
+ "o2=12.5\n",
+ "theo=0.95\n",
+ "N=56.5\n",
+ "R0=1545.\n",
+ "T=540. #R\n",
+ "p=14. #psia\n",
+ "LHV=2368089. #Btu/lb\n",
+ "ther=39.4\n",
+ "iep=0.78\n",
+ "ve=0.8\n",
+ "#calculations\n",
+ "Ar=o2/0.21 *theo\n",
+ "vol=N*R0*T/(144*p)\n",
+ "hv=(LHV -17730)/LHV\n",
+ "ithep=iep*ther\n",
+ "pd=ithep/100 *ve *100.5\n",
+ "mep=J*pd\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Indicated mep =\",mep,\"lb/sq ft\")\n",
+ "print '%s' %(\"The answer might differ from textbook due to rounding off error\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated mep = 19223 lb/sq ft\n",
+ "The answer might differ from textbook due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_17_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_17_2.ipynb new file mode 100755 index 00000000..98fc5f10 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_17_2.ipynb @@ -0,0 +1,132 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:b620865a516deeb75cd703005b53698c7a7013658cab02400acc0bf08c43a5d1"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 17 - Internal-combustion engines"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 358"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the indicated efficiency, brake thermal efficiency in both cases\n",
+ "#Initalization of variables\n",
+ "hp1=2000. #bhp\n",
+ "m=792. #lb/hr\n",
+ "ex=0.5\n",
+ "hp2=210.\n",
+ "hv=18900. #Btu/lb\n",
+ "etth=51.3\n",
+ "#calculations\n",
+ "ihp=hp1+hp2\n",
+ "ietat= ihp*2544/(m*hv) *100\n",
+ "betat=ietat*hp1/ihp\n",
+ "betat2=hp1*2544/(m*hv) *100\n",
+ "ietae=ietat/etth *100\n",
+ "betae=betat/etth *100\n",
+ "brake= ietae*hp1/ihp\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Indicated efficiency =\",ietat,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Brake thermal efficiency =\",betat,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Brake thermal efficiency =\",betat2,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Indicated thermal efficiency =\",ietae,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Brake engine efficiency =\",betae,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Brake engine efficiency =\",brake,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated efficiency = 37.6 percent\n",
+ "\n",
+ " Brake thermal efficiency = 34.0 percent\n",
+ "\n",
+ " In case 2, Brake thermal efficiency = 34.0 percent\n",
+ "\n",
+ " Indicated thermal efficiency = 73.2 percent\n",
+ "\n",
+ " Brake engine efficiency = 66.3 percent\n",
+ "\n",
+ " In case 2, Brake engine efficiency = 66.3 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 361"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the indicated mep\n",
+ "#Initalization of variables\n",
+ "J=778.\n",
+ "o2=12.5\n",
+ "theo=0.95\n",
+ "N=56.5\n",
+ "R0=1545.\n",
+ "T=540. #R\n",
+ "p=14. #psia\n",
+ "LHV=2368089. #Btu/lb\n",
+ "ther=39.4\n",
+ "iep=0.78\n",
+ "ve=0.8\n",
+ "#calculations\n",
+ "Ar=o2/0.21 *theo\n",
+ "vol=N*R0*T/(144*p)\n",
+ "hv=(LHV -17730)/LHV\n",
+ "ithep=iep*ther\n",
+ "pd=ithep/100 *ve *100.5\n",
+ "mep=J*pd\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Indicated mep =\",mep,\"lb/sq ft\")\n",
+ "print '%s' %(\"The answer might differ from textbook due to rounding off error\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated mep = 19223 lb/sq ft\n",
+ "The answer might differ from textbook due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_17_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_17_3.ipynb new file mode 100755 index 00000000..98fc5f10 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_17_3.ipynb @@ -0,0 +1,132 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:b620865a516deeb75cd703005b53698c7a7013658cab02400acc0bf08c43a5d1"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 17 - Internal-combustion engines"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 358"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the indicated efficiency, brake thermal efficiency in both cases\n",
+ "#Initalization of variables\n",
+ "hp1=2000. #bhp\n",
+ "m=792. #lb/hr\n",
+ "ex=0.5\n",
+ "hp2=210.\n",
+ "hv=18900. #Btu/lb\n",
+ "etth=51.3\n",
+ "#calculations\n",
+ "ihp=hp1+hp2\n",
+ "ietat= ihp*2544/(m*hv) *100\n",
+ "betat=ietat*hp1/ihp\n",
+ "betat2=hp1*2544/(m*hv) *100\n",
+ "ietae=ietat/etth *100\n",
+ "betae=betat/etth *100\n",
+ "brake= ietae*hp1/ihp\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Indicated efficiency =\",ietat,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Brake thermal efficiency =\",betat,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Brake thermal efficiency =\",betat2,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Indicated thermal efficiency =\",ietae,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Brake engine efficiency =\",betae,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Brake engine efficiency =\",brake,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated efficiency = 37.6 percent\n",
+ "\n",
+ " Brake thermal efficiency = 34.0 percent\n",
+ "\n",
+ " In case 2, Brake thermal efficiency = 34.0 percent\n",
+ "\n",
+ " Indicated thermal efficiency = 73.2 percent\n",
+ "\n",
+ " Brake engine efficiency = 66.3 percent\n",
+ "\n",
+ " In case 2, Brake engine efficiency = 66.3 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 361"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the indicated mep\n",
+ "#Initalization of variables\n",
+ "J=778.\n",
+ "o2=12.5\n",
+ "theo=0.95\n",
+ "N=56.5\n",
+ "R0=1545.\n",
+ "T=540. #R\n",
+ "p=14. #psia\n",
+ "LHV=2368089. #Btu/lb\n",
+ "ther=39.4\n",
+ "iep=0.78\n",
+ "ve=0.8\n",
+ "#calculations\n",
+ "Ar=o2/0.21 *theo\n",
+ "vol=N*R0*T/(144*p)\n",
+ "hv=(LHV -17730)/LHV\n",
+ "ithep=iep*ther\n",
+ "pd=ithep/100 *ve *100.5\n",
+ "mep=J*pd\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Indicated mep =\",mep,\"lb/sq ft\")\n",
+ "print '%s' %(\"The answer might differ from textbook due to rounding off error\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated mep = 19223 lb/sq ft\n",
+ "The answer might differ from textbook due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_18.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_18.ipynb new file mode 100755 index 00000000..0ec1053a --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_18.ipynb @@ -0,0 +1,343 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:f0820b11a700821a3d31d338557194301893d84e5100c7860794ac7f11c2fe67"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 18 - Gas Compressors "
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 374"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical horse power\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "q=200. #cfm\n",
+ "p2=90. #psia\n",
+ "p1=14.5 #psia\n",
+ "n=1.36\n",
+ "#calculations\n",
+ "hpp=n/(n-1) *144.*p1*q/33000. *(-1+math.pow(p2/p1, (n-1)/n))\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical horse power required =\",hpp,\" hp\")\n",
+ "print '%s' %(\"The answer given in textbook is wrong. Please verify with a calculator\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical horse power required = 29.7 hp\n",
+ "The answer given in textbook is wrong. Please verify with a calculator\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 377"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the indicated hp and shaft hp\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "q=350. #cfm\n",
+ "eff=0.78\n",
+ "x=0.95\n",
+ "p2=120. #psia\n",
+ "p1=14.3 #psia\n",
+ "#calculations\n",
+ "cal=p1*144*q/550 *math.log(p2/p1) /100.\n",
+ "ihp= cal/eff\n",
+ "shp=ihp/x\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Indicated hp =\",ihp,\"hp\")\n",
+ "print '%s %.1f %s' %(\"\\n Shaft hp =\",shp,\"hp\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated hp = 35.7 hp\n",
+ "\n",
+ " Shaft hp = 37.6 hp\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 380"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical hp and piston displacement and max. temperature\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.35\n",
+ "p1=14.2\n",
+ "q=400. #cfm\n",
+ "p2=200. #psia\n",
+ "p1=14.2 #psia\n",
+ "ve=0.75\n",
+ "t1=530. #R\n",
+ "#calculations\n",
+ "thp=-n/(n-1) *144 *p1*q/33000 *(1- math.pow(p2/p1,(n-1)/n))\n",
+ "pd=q/ve\n",
+ "Tmax=t1*math.pow(p2/p1,(n-1)/n)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical hp =\",thp,\" hp\")\n",
+ "print '%s %d %s' %(\"\\n Piston displacement =\",pd,\"cfm\")\n",
+ "print '%s %d %s' %(\"\\n Max. Temperature =\",Tmax,\"R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical hp = 94.2 hp\n",
+ "\n",
+ " Piston displacement = 533 cfm\n",
+ "\n",
+ " Max. Temperature = 1052 R\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 381"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical hp and piston displacement and max. temperature\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.35\n",
+ "p1=14.2 #psia\n",
+ "p3=200. #psia\n",
+ "q=400. #cfm\n",
+ "ve=0.78\n",
+ "t1=530. #R\n",
+ "#calculations\n",
+ "p2=math.sqrt(p3*p1) #psia\n",
+ "thp=-2*n/(n-1) *144 *p1*q/33000 *(1- math.pow(p2/p1,(n-1)/n))\n",
+ "pd=q/ve\n",
+ "pd2=q*p1/p2 /ve\n",
+ "Tmax=t1*math.pow(p2/p1,(n-1)/n)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical hp =\",thp,\" hp\")\n",
+ "print '%s %.1f %s' %(\"\\n For low pressure case, Piston displacement =\",pd,\"cfm\")\n",
+ "print '%s %.1f %s' %(\"\\n For high pressure case, Piston displacement =\",pd2,\"cfm\")\n",
+ "print '%s %.1f %s' %(\"\\n Max. Temperature =\",Tmax,\" R\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical hp = 78.2 hp\n",
+ "\n",
+ " For low pressure case, Piston displacement = 512.8 cfm\n",
+ "\n",
+ " For high pressure case, Piston displacement = 136.6 cfm\n",
+ "\n",
+ " Max. Temperature = 746.8 R\n",
+ "The answers are a bit different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 386"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical pressure at exit\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "dia=2 #ft\n",
+ "rpm=6000. #rpm\n",
+ "p=14.2 #psia\n",
+ "t=75. #F\n",
+ "g=32.17\n",
+ "n=1.4\n",
+ "R=53.35\n",
+ "#calculations\n",
+ "v=2*math.pi*rpm/60.\n",
+ "wbym=v*v /g\n",
+ "T=t+460.\n",
+ "pr=1+ wbym*(n-1)/n /(R*T) \n",
+ "pr2=math.pow(pr,(n/(n-1)))\n",
+ "p2=pr2*p\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical pressure at exit =\",p2,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical pressure at exit = 21.3 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 391"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the velocity of air\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "pa=14.7 #psia\n",
+ "p1=12. #psia\n",
+ "t1=560. #R\n",
+ "n=1.4 #gamma\n",
+ "J=778. #constant conversion\n",
+ "g=32.2 #ft/s^2\n",
+ "cp=0.24 #heat capacity\n",
+ "eff=0.7 #efficiency\n",
+ "m1=1.8 \n",
+ "m3=1. \n",
+ "#calculations\n",
+ "t5=t1*math.pow(pa/p1,((n-1)/n))\n",
+ "v4=math.sqrt(2*g*J*cp*(t5-t1)/eff) \n",
+ "v3=(m1+m3)/m1 *v4\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Velocity of air =\",v3,\" ft/s\")\n",
+ "print '%s' %(\"The answer given in textbook is wrong. Please verify with a calculator\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Velocity of air = 1178.8 ft/s\n",
+ "The answer given in textbook is wrong. Please verify with a calculator\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 391"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the pressure required\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "v2=1180. #ft/s\n",
+ "etan=0.95\n",
+ "cp=0.24\n",
+ "n=1.4\n",
+ "p2=12.\n",
+ "#calculations\n",
+ "dh=v2*v2 /(etan*223.8*223.8)\n",
+ "dt=dh/cp\n",
+ "t2d=560. #R\n",
+ "t1=t2d+ etan*dt\n",
+ "t2=554. #R\n",
+ "pr=math.pow(t1/t2,(n/(n-1)))\n",
+ "p1=p2*pr\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Pressure required =\",p1,\"psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Pressure required = 24.06 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_18_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_18_1.ipynb new file mode 100755 index 00000000..0ec1053a --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_18_1.ipynb @@ -0,0 +1,343 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:f0820b11a700821a3d31d338557194301893d84e5100c7860794ac7f11c2fe67"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 18 - Gas Compressors "
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 374"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical horse power\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "q=200. #cfm\n",
+ "p2=90. #psia\n",
+ "p1=14.5 #psia\n",
+ "n=1.36\n",
+ "#calculations\n",
+ "hpp=n/(n-1) *144.*p1*q/33000. *(-1+math.pow(p2/p1, (n-1)/n))\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical horse power required =\",hpp,\" hp\")\n",
+ "print '%s' %(\"The answer given in textbook is wrong. Please verify with a calculator\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical horse power required = 29.7 hp\n",
+ "The answer given in textbook is wrong. Please verify with a calculator\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 377"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the indicated hp and shaft hp\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "q=350. #cfm\n",
+ "eff=0.78\n",
+ "x=0.95\n",
+ "p2=120. #psia\n",
+ "p1=14.3 #psia\n",
+ "#calculations\n",
+ "cal=p1*144*q/550 *math.log(p2/p1) /100.\n",
+ "ihp= cal/eff\n",
+ "shp=ihp/x\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Indicated hp =\",ihp,\"hp\")\n",
+ "print '%s %.1f %s' %(\"\\n Shaft hp =\",shp,\"hp\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated hp = 35.7 hp\n",
+ "\n",
+ " Shaft hp = 37.6 hp\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 380"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical hp and piston displacement and max. temperature\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.35\n",
+ "p1=14.2\n",
+ "q=400. #cfm\n",
+ "p2=200. #psia\n",
+ "p1=14.2 #psia\n",
+ "ve=0.75\n",
+ "t1=530. #R\n",
+ "#calculations\n",
+ "thp=-n/(n-1) *144 *p1*q/33000 *(1- math.pow(p2/p1,(n-1)/n))\n",
+ "pd=q/ve\n",
+ "Tmax=t1*math.pow(p2/p1,(n-1)/n)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical hp =\",thp,\" hp\")\n",
+ "print '%s %d %s' %(\"\\n Piston displacement =\",pd,\"cfm\")\n",
+ "print '%s %d %s' %(\"\\n Max. Temperature =\",Tmax,\"R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical hp = 94.2 hp\n",
+ "\n",
+ " Piston displacement = 533 cfm\n",
+ "\n",
+ " Max. Temperature = 1052 R\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 381"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical hp and piston displacement and max. temperature\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.35\n",
+ "p1=14.2 #psia\n",
+ "p3=200. #psia\n",
+ "q=400. #cfm\n",
+ "ve=0.78\n",
+ "t1=530. #R\n",
+ "#calculations\n",
+ "p2=math.sqrt(p3*p1) #psia\n",
+ "thp=-2*n/(n-1) *144 *p1*q/33000 *(1- math.pow(p2/p1,(n-1)/n))\n",
+ "pd=q/ve\n",
+ "pd2=q*p1/p2 /ve\n",
+ "Tmax=t1*math.pow(p2/p1,(n-1)/n)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical hp =\",thp,\" hp\")\n",
+ "print '%s %.1f %s' %(\"\\n For low pressure case, Piston displacement =\",pd,\"cfm\")\n",
+ "print '%s %.1f %s' %(\"\\n For high pressure case, Piston displacement =\",pd2,\"cfm\")\n",
+ "print '%s %.1f %s' %(\"\\n Max. Temperature =\",Tmax,\" R\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical hp = 78.2 hp\n",
+ "\n",
+ " For low pressure case, Piston displacement = 512.8 cfm\n",
+ "\n",
+ " For high pressure case, Piston displacement = 136.6 cfm\n",
+ "\n",
+ " Max. Temperature = 746.8 R\n",
+ "The answers are a bit different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 386"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical pressure at exit\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "dia=2 #ft\n",
+ "rpm=6000. #rpm\n",
+ "p=14.2 #psia\n",
+ "t=75. #F\n",
+ "g=32.17\n",
+ "n=1.4\n",
+ "R=53.35\n",
+ "#calculations\n",
+ "v=2*math.pi*rpm/60.\n",
+ "wbym=v*v /g\n",
+ "T=t+460.\n",
+ "pr=1+ wbym*(n-1)/n /(R*T) \n",
+ "pr2=math.pow(pr,(n/(n-1)))\n",
+ "p2=pr2*p\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical pressure at exit =\",p2,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical pressure at exit = 21.3 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 391"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the velocity of air\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "pa=14.7 #psia\n",
+ "p1=12. #psia\n",
+ "t1=560. #R\n",
+ "n=1.4 #gamma\n",
+ "J=778. #constant conversion\n",
+ "g=32.2 #ft/s^2\n",
+ "cp=0.24 #heat capacity\n",
+ "eff=0.7 #efficiency\n",
+ "m1=1.8 \n",
+ "m3=1. \n",
+ "#calculations\n",
+ "t5=t1*math.pow(pa/p1,((n-1)/n))\n",
+ "v4=math.sqrt(2*g*J*cp*(t5-t1)/eff) \n",
+ "v3=(m1+m3)/m1 *v4\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Velocity of air =\",v3,\" ft/s\")\n",
+ "print '%s' %(\"The answer given in textbook is wrong. Please verify with a calculator\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Velocity of air = 1178.8 ft/s\n",
+ "The answer given in textbook is wrong. Please verify with a calculator\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 391"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the pressure required\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "v2=1180. #ft/s\n",
+ "etan=0.95\n",
+ "cp=0.24\n",
+ "n=1.4\n",
+ "p2=12.\n",
+ "#calculations\n",
+ "dh=v2*v2 /(etan*223.8*223.8)\n",
+ "dt=dh/cp\n",
+ "t2d=560. #R\n",
+ "t1=t2d+ etan*dt\n",
+ "t2=554. #R\n",
+ "pr=math.pow(t1/t2,(n/(n-1)))\n",
+ "p1=p2*pr\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Pressure required =\",p1,\"psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Pressure required = 24.06 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_18_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_18_2.ipynb new file mode 100755 index 00000000..0ec1053a --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_18_2.ipynb @@ -0,0 +1,343 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:f0820b11a700821a3d31d338557194301893d84e5100c7860794ac7f11c2fe67"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 18 - Gas Compressors "
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 374"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical horse power\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "q=200. #cfm\n",
+ "p2=90. #psia\n",
+ "p1=14.5 #psia\n",
+ "n=1.36\n",
+ "#calculations\n",
+ "hpp=n/(n-1) *144.*p1*q/33000. *(-1+math.pow(p2/p1, (n-1)/n))\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical horse power required =\",hpp,\" hp\")\n",
+ "print '%s' %(\"The answer given in textbook is wrong. Please verify with a calculator\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical horse power required = 29.7 hp\n",
+ "The answer given in textbook is wrong. Please verify with a calculator\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 377"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the indicated hp and shaft hp\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "q=350. #cfm\n",
+ "eff=0.78\n",
+ "x=0.95\n",
+ "p2=120. #psia\n",
+ "p1=14.3 #psia\n",
+ "#calculations\n",
+ "cal=p1*144*q/550 *math.log(p2/p1) /100.\n",
+ "ihp= cal/eff\n",
+ "shp=ihp/x\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Indicated hp =\",ihp,\"hp\")\n",
+ "print '%s %.1f %s' %(\"\\n Shaft hp =\",shp,\"hp\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated hp = 35.7 hp\n",
+ "\n",
+ " Shaft hp = 37.6 hp\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 380"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical hp and piston displacement and max. temperature\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.35\n",
+ "p1=14.2\n",
+ "q=400. #cfm\n",
+ "p2=200. #psia\n",
+ "p1=14.2 #psia\n",
+ "ve=0.75\n",
+ "t1=530. #R\n",
+ "#calculations\n",
+ "thp=-n/(n-1) *144 *p1*q/33000 *(1- math.pow(p2/p1,(n-1)/n))\n",
+ "pd=q/ve\n",
+ "Tmax=t1*math.pow(p2/p1,(n-1)/n)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical hp =\",thp,\" hp\")\n",
+ "print '%s %d %s' %(\"\\n Piston displacement =\",pd,\"cfm\")\n",
+ "print '%s %d %s' %(\"\\n Max. Temperature =\",Tmax,\"R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical hp = 94.2 hp\n",
+ "\n",
+ " Piston displacement = 533 cfm\n",
+ "\n",
+ " Max. Temperature = 1052 R\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 381"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical hp and piston displacement and max. temperature\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.35\n",
+ "p1=14.2 #psia\n",
+ "p3=200. #psia\n",
+ "q=400. #cfm\n",
+ "ve=0.78\n",
+ "t1=530. #R\n",
+ "#calculations\n",
+ "p2=math.sqrt(p3*p1) #psia\n",
+ "thp=-2*n/(n-1) *144 *p1*q/33000 *(1- math.pow(p2/p1,(n-1)/n))\n",
+ "pd=q/ve\n",
+ "pd2=q*p1/p2 /ve\n",
+ "Tmax=t1*math.pow(p2/p1,(n-1)/n)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical hp =\",thp,\" hp\")\n",
+ "print '%s %.1f %s' %(\"\\n For low pressure case, Piston displacement =\",pd,\"cfm\")\n",
+ "print '%s %.1f %s' %(\"\\n For high pressure case, Piston displacement =\",pd2,\"cfm\")\n",
+ "print '%s %.1f %s' %(\"\\n Max. Temperature =\",Tmax,\" R\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical hp = 78.2 hp\n",
+ "\n",
+ " For low pressure case, Piston displacement = 512.8 cfm\n",
+ "\n",
+ " For high pressure case, Piston displacement = 136.6 cfm\n",
+ "\n",
+ " Max. Temperature = 746.8 R\n",
+ "The answers are a bit different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 386"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical pressure at exit\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "dia=2 #ft\n",
+ "rpm=6000. #rpm\n",
+ "p=14.2 #psia\n",
+ "t=75. #F\n",
+ "g=32.17\n",
+ "n=1.4\n",
+ "R=53.35\n",
+ "#calculations\n",
+ "v=2*math.pi*rpm/60.\n",
+ "wbym=v*v /g\n",
+ "T=t+460.\n",
+ "pr=1+ wbym*(n-1)/n /(R*T) \n",
+ "pr2=math.pow(pr,(n/(n-1)))\n",
+ "p2=pr2*p\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical pressure at exit =\",p2,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical pressure at exit = 21.3 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 391"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the velocity of air\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "pa=14.7 #psia\n",
+ "p1=12. #psia\n",
+ "t1=560. #R\n",
+ "n=1.4 #gamma\n",
+ "J=778. #constant conversion\n",
+ "g=32.2 #ft/s^2\n",
+ "cp=0.24 #heat capacity\n",
+ "eff=0.7 #efficiency\n",
+ "m1=1.8 \n",
+ "m3=1. \n",
+ "#calculations\n",
+ "t5=t1*math.pow(pa/p1,((n-1)/n))\n",
+ "v4=math.sqrt(2*g*J*cp*(t5-t1)/eff) \n",
+ "v3=(m1+m3)/m1 *v4\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Velocity of air =\",v3,\" ft/s\")\n",
+ "print '%s' %(\"The answer given in textbook is wrong. Please verify with a calculator\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Velocity of air = 1178.8 ft/s\n",
+ "The answer given in textbook is wrong. Please verify with a calculator\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 391"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the pressure required\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "v2=1180. #ft/s\n",
+ "etan=0.95\n",
+ "cp=0.24\n",
+ "n=1.4\n",
+ "p2=12.\n",
+ "#calculations\n",
+ "dh=v2*v2 /(etan*223.8*223.8)\n",
+ "dt=dh/cp\n",
+ "t2d=560. #R\n",
+ "t1=t2d+ etan*dt\n",
+ "t2=554. #R\n",
+ "pr=math.pow(t1/t2,(n/(n-1)))\n",
+ "p1=p2*pr\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Pressure required =\",p1,\"psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Pressure required = 24.06 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_18_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_18_3.ipynb new file mode 100755 index 00000000..0ec1053a --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_18_3.ipynb @@ -0,0 +1,343 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:f0820b11a700821a3d31d338557194301893d84e5100c7860794ac7f11c2fe67"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 18 - Gas Compressors "
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 374"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical horse power\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "q=200. #cfm\n",
+ "p2=90. #psia\n",
+ "p1=14.5 #psia\n",
+ "n=1.36\n",
+ "#calculations\n",
+ "hpp=n/(n-1) *144.*p1*q/33000. *(-1+math.pow(p2/p1, (n-1)/n))\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical horse power required =\",hpp,\" hp\")\n",
+ "print '%s' %(\"The answer given in textbook is wrong. Please verify with a calculator\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical horse power required = 29.7 hp\n",
+ "The answer given in textbook is wrong. Please verify with a calculator\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 377"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calcualte the indicated hp and shaft hp\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "q=350. #cfm\n",
+ "eff=0.78\n",
+ "x=0.95\n",
+ "p2=120. #psia\n",
+ "p1=14.3 #psia\n",
+ "#calculations\n",
+ "cal=p1*144*q/550 *math.log(p2/p1) /100.\n",
+ "ihp= cal/eff\n",
+ "shp=ihp/x\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Indicated hp =\",ihp,\"hp\")\n",
+ "print '%s %.1f %s' %(\"\\n Shaft hp =\",shp,\"hp\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated hp = 35.7 hp\n",
+ "\n",
+ " Shaft hp = 37.6 hp\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 380"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical hp and piston displacement and max. temperature\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.35\n",
+ "p1=14.2\n",
+ "q=400. #cfm\n",
+ "p2=200. #psia\n",
+ "p1=14.2 #psia\n",
+ "ve=0.75\n",
+ "t1=530. #R\n",
+ "#calculations\n",
+ "thp=-n/(n-1) *144 *p1*q/33000 *(1- math.pow(p2/p1,(n-1)/n))\n",
+ "pd=q/ve\n",
+ "Tmax=t1*math.pow(p2/p1,(n-1)/n)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical hp =\",thp,\" hp\")\n",
+ "print '%s %d %s' %(\"\\n Piston displacement =\",pd,\"cfm\")\n",
+ "print '%s %d %s' %(\"\\n Max. Temperature =\",Tmax,\"R\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical hp = 94.2 hp\n",
+ "\n",
+ " Piston displacement = 533 cfm\n",
+ "\n",
+ " Max. Temperature = 1052 R\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 381"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical hp and piston displacement and max. temperature\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.35\n",
+ "p1=14.2 #psia\n",
+ "p3=200. #psia\n",
+ "q=400. #cfm\n",
+ "ve=0.78\n",
+ "t1=530. #R\n",
+ "#calculations\n",
+ "p2=math.sqrt(p3*p1) #psia\n",
+ "thp=-2*n/(n-1) *144 *p1*q/33000 *(1- math.pow(p2/p1,(n-1)/n))\n",
+ "pd=q/ve\n",
+ "pd2=q*p1/p2 /ve\n",
+ "Tmax=t1*math.pow(p2/p1,(n-1)/n)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical hp =\",thp,\" hp\")\n",
+ "print '%s %.1f %s' %(\"\\n For low pressure case, Piston displacement =\",pd,\"cfm\")\n",
+ "print '%s %.1f %s' %(\"\\n For high pressure case, Piston displacement =\",pd2,\"cfm\")\n",
+ "print '%s %.1f %s' %(\"\\n Max. Temperature =\",Tmax,\" R\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical hp = 78.2 hp\n",
+ "\n",
+ " For low pressure case, Piston displacement = 512.8 cfm\n",
+ "\n",
+ " For high pressure case, Piston displacement = 136.6 cfm\n",
+ "\n",
+ " Max. Temperature = 746.8 R\n",
+ "The answers are a bit different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 386"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the theoretical pressure at exit\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "dia=2 #ft\n",
+ "rpm=6000. #rpm\n",
+ "p=14.2 #psia\n",
+ "t=75. #F\n",
+ "g=32.17\n",
+ "n=1.4\n",
+ "R=53.35\n",
+ "#calculations\n",
+ "v=2*math.pi*rpm/60.\n",
+ "wbym=v*v /g\n",
+ "T=t+460.\n",
+ "pr=1+ wbym*(n-1)/n /(R*T) \n",
+ "pr2=math.pow(pr,(n/(n-1)))\n",
+ "p2=pr2*p\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Theoretical pressure at exit =\",p2,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Theoretical pressure at exit = 21.3 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 391"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the velocity of air\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "pa=14.7 #psia\n",
+ "p1=12. #psia\n",
+ "t1=560. #R\n",
+ "n=1.4 #gamma\n",
+ "J=778. #constant conversion\n",
+ "g=32.2 #ft/s^2\n",
+ "cp=0.24 #heat capacity\n",
+ "eff=0.7 #efficiency\n",
+ "m1=1.8 \n",
+ "m3=1. \n",
+ "#calculations\n",
+ "t5=t1*math.pow(pa/p1,((n-1)/n))\n",
+ "v4=math.sqrt(2*g*J*cp*(t5-t1)/eff) \n",
+ "v3=(m1+m3)/m1 *v4\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Velocity of air =\",v3,\" ft/s\")\n",
+ "print '%s' %(\"The answer given in textbook is wrong. Please verify with a calculator\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Velocity of air = 1178.8 ft/s\n",
+ "The answer given in textbook is wrong. Please verify with a calculator\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 391"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the pressure required\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "v2=1180. #ft/s\n",
+ "etan=0.95\n",
+ "cp=0.24\n",
+ "n=1.4\n",
+ "p2=12.\n",
+ "#calculations\n",
+ "dh=v2*v2 /(etan*223.8*223.8)\n",
+ "dt=dh/cp\n",
+ "t2d=560. #R\n",
+ "t1=t2d+ etan*dt\n",
+ "t2=554. #R\n",
+ "pr=math.pow(t1/t2,(n/(n-1)))\n",
+ "p1=p2*pr\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Pressure required =\",p1,\"psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Pressure required = 24.06 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_19.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_19.ipynb new file mode 100755 index 00000000..c26dff35 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_19.ipynb @@ -0,0 +1,625 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:b29f8e2efad125f0a07d8b8d8802c0ef47be5bcad75aba5a349e2e6b7da74bda"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 19 - Gas Turbines"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 398"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the compressor work, turbine work and thermal efficiency in all cases\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1200. #F\n",
+ "tmax2=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "#calculations\n",
+ "t2=t1*math.pow(pr,(n-1)/n)\n",
+ "work=cp*(t2-t1)\n",
+ "t4=(tmax+460) /math.pow(pr,(n-1)/n)\n",
+ "twork=cp*(tmax+460-t4)\n",
+ "net=twork-work\n",
+ "eff=(1- 1/math.pow(pr,(n-1)/n))*100\n",
+ "Qs=cp*(tmax+460-t2)\n",
+ "ett=net/Qs *100\n",
+ "t42=(tmax2+460)/math.pow(pr,(n-1)/n)\n",
+ "twork2=cp*(tmax2+460-t42)\n",
+ "net2=twork2-work\n",
+ "Qs2=cp*(tmax2+460-t2)\n",
+ "eff3=net2/Qs2 *100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Compressor work =\",work,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Turbine work =\",twork,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Net work =\",net,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",eff,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Thermal efficiency =\",ett,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Turbine work =\",twork2,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Net work =\",net2,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 3, Thermal efficiency =\",eff3,\" percent,\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Compressor work = 75.7 Btu/lb\n",
+ "\n",
+ " Turbine work = 146.9 Btu/lb\n",
+ "\n",
+ " Net work = 71.2 Btu/lb\n",
+ "\n",
+ " Thermal efficiency = 36.9 percent\n",
+ "\n",
+ " In case 2, Thermal efficiency = 36.9 percent\n",
+ "\n",
+ " In case 2, Turbine work = 173.4 Btu/lb\n",
+ "\n",
+ " In case 2, Net work = 97.7 Btu/lb\n",
+ "\n",
+ " In case 3, Thermal efficiency = 36.9 percent,\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 400"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the indicated compressor work, internal work and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "work=75.9 #Btu/lb\n",
+ "twork=173.5 #Btu/lb\n",
+ "eta=0.8\n",
+ "t2=856 #R\n",
+ "t1=540 #R\n",
+ "t4=1960 #R\n",
+ "cp=0.24\n",
+ "#calculations\n",
+ "cwork=work/eta\n",
+ "internal=twork*eta\n",
+ "net=-cwork+internal\n",
+ "t2d=(t2-t1)/eta + t1\n",
+ "Qs=cp*(t4-t2d)\n",
+ "eff=net/Qs *100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Indicated compressor work =\",cwork,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Internal work =\",internal,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Net work =\",net,\" Btu/lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated compressor work = 94.9 Btu/lb\n",
+ "\n",
+ " Internal work = 138.8 Btu/lb\n",
+ "\n",
+ " Net work = 43.9 Btu/lb\n",
+ "\n",
+ " Thermal efficiency = 17.86 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 402"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the compressor work, turbine work and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "eff=0.97\n",
+ "c1=94.9 #Btu/lb\n",
+ "c2=138.8 #Btu/lb\n",
+ "ntee=246. #Btu/lb\n",
+ "#calculations\n",
+ "cwork=c1/eff\n",
+ "twork=c2*eff\n",
+ "net=twork-cwork\n",
+ "etat=net/ntee *100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Compressor work =\",cwork,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Turbine work =\",twork,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Net work =\",net,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",etat,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Compressor work = 97.8 Btu/lb\n",
+ "\n",
+ " Turbine work = 134.6 Btu/lb\n",
+ "\n",
+ " Net work = 36.8 Btu/lb\n",
+ "\n",
+ " Thermal efficiency = 15.0 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 403"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "pr=5.\n",
+ "p1=14. #psia\n",
+ "pd=3. #psi\n",
+ "pen=70. #psia\n",
+ "tin=1960. #R\n",
+ "n=1.4\n",
+ "cp=0.24\n",
+ "Qs=265. #Btu/lb\n",
+ "#calculations\n",
+ "p2=p1*pr\n",
+ "pe=pen-pd\n",
+ "prt=pe/p1\n",
+ "tex=tin/math.pow(prt,(n-1)/n)\n",
+ "twork=cp*(tin-tex)\n",
+ "net=twork-75.9\n",
+ "eff=net/Qs *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 35.4 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 403"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "pr=5.\n",
+ "p1=14. #psia\n",
+ "pd=3. #psi\n",
+ "pen=70. #psia\n",
+ "tin=1960. #R\n",
+ "n=1.4\n",
+ "cp=0.24\n",
+ "Qs=265.\n",
+ "ef=0.95\n",
+ "#calculations\n",
+ "p2=p1*pr\n",
+ "pe=pen-pd\n",
+ "prt=pe/p1\n",
+ "tex=tin/math.pow(prt,(n-1)/n)\n",
+ "twork=cp*(tin-tex)\n",
+ "net=twork-75.9\n",
+ "Qs2=Qs/ef\n",
+ "eff=net/Qs2 *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eff,\"percent\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 33.6 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 404"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final pressure\n",
+ "#Initalization of variables\n",
+ "pr1=1.0590\n",
+ "pr2=4.396\n",
+ "p1=14. #psia\n",
+ "#calculations\n",
+ "prr=pr2/pr1\n",
+ "p2=p1*prr\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Final pressure =\",p2,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Final pressure = 58.1 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 404"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the compressor work\n",
+ "#Initalization of variables\n",
+ "t1=540. #R\n",
+ "h1=129.06\n",
+ "pr1=1.386\n",
+ "cr=5.\n",
+ "#calculations\n",
+ "pr2=pr1*cr\n",
+ "print '%s' %(\"From air tables,\")\n",
+ "h2=204.63\n",
+ "cwork=h2-h1\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Compressor work =\",cwork,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From air tables,\n",
+ "Compressor work = 75.57 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 405"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the turbine work\n",
+ "#Initalization of variables\n",
+ "cr=5.\n",
+ "pr3=176.73 #psia\n",
+ "h3=14580.3 #Btu/mol\n",
+ "M=28.9\n",
+ "#calculations\n",
+ "pr4=pr3/cr\n",
+ "h4=9409.\n",
+ "twork=h3-h4\n",
+ "turb=twork/M\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Turbine work =\",turb,\" Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Turbine work = 178.9 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 407"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the air fuel ratio\n",
+ "#Initalization of variables\n",
+ "chem=19000. #Btu/lb\n",
+ "m1=204.63 #Btu/lb\n",
+ "M=28.9\n",
+ "w=14580.3\n",
+ "#calculations\n",
+ "ma=(chem-w/M)/(w/M -m1)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Air fuel ratio =\",ma,\"lb air/lb fuel\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Air fuel ratio = 61.7 lb air/lb fuel\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 409"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency of the unit\n",
+ "#Initalization of variables\n",
+ "cp=0.24\n",
+ "h=138.8\n",
+ "t3=1960. #R\n",
+ "#calculations\n",
+ "t4d=t3-h/cp\n",
+ "Qs=cp*(t3-t4d)\n",
+ "work=43.9 #Btu/lb\n",
+ "etat=work/Qs *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency of the unit =\",etat,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency of the unit = 31.6 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 412"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "p1=14. #psia\n",
+ "p3=70. #psia\n",
+ "#calculations\n",
+ "pint=p1*math.sqrt(pr)\n",
+ "t2=t1*math.pow(pint/p1,((n-1)/n))\n",
+ "t4=t1*math.pow(p3/pint,((n-1)/n))\n",
+ "w=cp*(t4-t1)\n",
+ "w2=2*w\n",
+ "t6=(tmax+460)/math.pow(p3/pint,((n-1)/n))\n",
+ "t8=(tmax+460)/math.pow(pint/p1,((n-1)/n))\n",
+ "work=cp*(tmax+460-t6)\n",
+ "w22=2*work\n",
+ "net=w22-w2\n",
+ "Qa=cp*(tmax+460-t2)\n",
+ "Qb=cp*(tmax+460-t6)\n",
+ "Qt=Qa+Qb\n",
+ "eta=net/Qt*100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eta,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 31.25 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 413"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "p1=14. #psia\n",
+ "p3=70. #psia\n",
+ "w2=75.9 #Btu/lb\n",
+ "Qa=265 #Btu/lb\n",
+ "#calculations\n",
+ "pint=p1*math.sqrt(pr)\n",
+ "t6=(tmax+460)/math.pow(p3/pint,((n-1)/n))\n",
+ "t8=(tmax+460)/math.pow(pint/p1,((n-1)/n))\n",
+ "work=cp*(tmax+460-t6)\n",
+ "w22=2*work\n",
+ "net=w22-w2\n",
+ "Qb=cp*(tmax+460-t6)\n",
+ "Qt=Qa+Qb\n",
+ "eta=net/Qt*100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eta,\"percent\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 32.4 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 413"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "t3=1558. #R\n",
+ "net=125.8 #Btu/lb\n",
+ "#calculations\n",
+ "Q=cp*(tmax+460-t3)\n",
+ "Qt=2*Q\n",
+ "eta=net/Qt*100.\n",
+ "#results \n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eta,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 65.2 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_19_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_19_1.ipynb new file mode 100755 index 00000000..c26dff35 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_19_1.ipynb @@ -0,0 +1,625 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:b29f8e2efad125f0a07d8b8d8802c0ef47be5bcad75aba5a349e2e6b7da74bda"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 19 - Gas Turbines"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 398"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the compressor work, turbine work and thermal efficiency in all cases\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1200. #F\n",
+ "tmax2=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "#calculations\n",
+ "t2=t1*math.pow(pr,(n-1)/n)\n",
+ "work=cp*(t2-t1)\n",
+ "t4=(tmax+460) /math.pow(pr,(n-1)/n)\n",
+ "twork=cp*(tmax+460-t4)\n",
+ "net=twork-work\n",
+ "eff=(1- 1/math.pow(pr,(n-1)/n))*100\n",
+ "Qs=cp*(tmax+460-t2)\n",
+ "ett=net/Qs *100\n",
+ "t42=(tmax2+460)/math.pow(pr,(n-1)/n)\n",
+ "twork2=cp*(tmax2+460-t42)\n",
+ "net2=twork2-work\n",
+ "Qs2=cp*(tmax2+460-t2)\n",
+ "eff3=net2/Qs2 *100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Compressor work =\",work,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Turbine work =\",twork,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Net work =\",net,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",eff,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Thermal efficiency =\",ett,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Turbine work =\",twork2,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Net work =\",net2,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 3, Thermal efficiency =\",eff3,\" percent,\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Compressor work = 75.7 Btu/lb\n",
+ "\n",
+ " Turbine work = 146.9 Btu/lb\n",
+ "\n",
+ " Net work = 71.2 Btu/lb\n",
+ "\n",
+ " Thermal efficiency = 36.9 percent\n",
+ "\n",
+ " In case 2, Thermal efficiency = 36.9 percent\n",
+ "\n",
+ " In case 2, Turbine work = 173.4 Btu/lb\n",
+ "\n",
+ " In case 2, Net work = 97.7 Btu/lb\n",
+ "\n",
+ " In case 3, Thermal efficiency = 36.9 percent,\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 400"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the indicated compressor work, internal work and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "work=75.9 #Btu/lb\n",
+ "twork=173.5 #Btu/lb\n",
+ "eta=0.8\n",
+ "t2=856 #R\n",
+ "t1=540 #R\n",
+ "t4=1960 #R\n",
+ "cp=0.24\n",
+ "#calculations\n",
+ "cwork=work/eta\n",
+ "internal=twork*eta\n",
+ "net=-cwork+internal\n",
+ "t2d=(t2-t1)/eta + t1\n",
+ "Qs=cp*(t4-t2d)\n",
+ "eff=net/Qs *100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Indicated compressor work =\",cwork,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Internal work =\",internal,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Net work =\",net,\" Btu/lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated compressor work = 94.9 Btu/lb\n",
+ "\n",
+ " Internal work = 138.8 Btu/lb\n",
+ "\n",
+ " Net work = 43.9 Btu/lb\n",
+ "\n",
+ " Thermal efficiency = 17.86 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 402"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the compressor work, turbine work and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "eff=0.97\n",
+ "c1=94.9 #Btu/lb\n",
+ "c2=138.8 #Btu/lb\n",
+ "ntee=246. #Btu/lb\n",
+ "#calculations\n",
+ "cwork=c1/eff\n",
+ "twork=c2*eff\n",
+ "net=twork-cwork\n",
+ "etat=net/ntee *100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Compressor work =\",cwork,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Turbine work =\",twork,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Net work =\",net,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",etat,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Compressor work = 97.8 Btu/lb\n",
+ "\n",
+ " Turbine work = 134.6 Btu/lb\n",
+ "\n",
+ " Net work = 36.8 Btu/lb\n",
+ "\n",
+ " Thermal efficiency = 15.0 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 403"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "pr=5.\n",
+ "p1=14. #psia\n",
+ "pd=3. #psi\n",
+ "pen=70. #psia\n",
+ "tin=1960. #R\n",
+ "n=1.4\n",
+ "cp=0.24\n",
+ "Qs=265. #Btu/lb\n",
+ "#calculations\n",
+ "p2=p1*pr\n",
+ "pe=pen-pd\n",
+ "prt=pe/p1\n",
+ "tex=tin/math.pow(prt,(n-1)/n)\n",
+ "twork=cp*(tin-tex)\n",
+ "net=twork-75.9\n",
+ "eff=net/Qs *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 35.4 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 403"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "pr=5.\n",
+ "p1=14. #psia\n",
+ "pd=3. #psi\n",
+ "pen=70. #psia\n",
+ "tin=1960. #R\n",
+ "n=1.4\n",
+ "cp=0.24\n",
+ "Qs=265.\n",
+ "ef=0.95\n",
+ "#calculations\n",
+ "p2=p1*pr\n",
+ "pe=pen-pd\n",
+ "prt=pe/p1\n",
+ "tex=tin/math.pow(prt,(n-1)/n)\n",
+ "twork=cp*(tin-tex)\n",
+ "net=twork-75.9\n",
+ "Qs2=Qs/ef\n",
+ "eff=net/Qs2 *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eff,\"percent\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 33.6 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 404"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final pressure\n",
+ "#Initalization of variables\n",
+ "pr1=1.0590\n",
+ "pr2=4.396\n",
+ "p1=14. #psia\n",
+ "#calculations\n",
+ "prr=pr2/pr1\n",
+ "p2=p1*prr\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Final pressure =\",p2,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Final pressure = 58.1 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 404"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the compressor work\n",
+ "#Initalization of variables\n",
+ "t1=540. #R\n",
+ "h1=129.06\n",
+ "pr1=1.386\n",
+ "cr=5.\n",
+ "#calculations\n",
+ "pr2=pr1*cr\n",
+ "print '%s' %(\"From air tables,\")\n",
+ "h2=204.63\n",
+ "cwork=h2-h1\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Compressor work =\",cwork,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From air tables,\n",
+ "Compressor work = 75.57 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 405"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the turbine work\n",
+ "#Initalization of variables\n",
+ "cr=5.\n",
+ "pr3=176.73 #psia\n",
+ "h3=14580.3 #Btu/mol\n",
+ "M=28.9\n",
+ "#calculations\n",
+ "pr4=pr3/cr\n",
+ "h4=9409.\n",
+ "twork=h3-h4\n",
+ "turb=twork/M\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Turbine work =\",turb,\" Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Turbine work = 178.9 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 407"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the air fuel ratio\n",
+ "#Initalization of variables\n",
+ "chem=19000. #Btu/lb\n",
+ "m1=204.63 #Btu/lb\n",
+ "M=28.9\n",
+ "w=14580.3\n",
+ "#calculations\n",
+ "ma=(chem-w/M)/(w/M -m1)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Air fuel ratio =\",ma,\"lb air/lb fuel\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Air fuel ratio = 61.7 lb air/lb fuel\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 409"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency of the unit\n",
+ "#Initalization of variables\n",
+ "cp=0.24\n",
+ "h=138.8\n",
+ "t3=1960. #R\n",
+ "#calculations\n",
+ "t4d=t3-h/cp\n",
+ "Qs=cp*(t3-t4d)\n",
+ "work=43.9 #Btu/lb\n",
+ "etat=work/Qs *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency of the unit =\",etat,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency of the unit = 31.6 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 412"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "p1=14. #psia\n",
+ "p3=70. #psia\n",
+ "#calculations\n",
+ "pint=p1*math.sqrt(pr)\n",
+ "t2=t1*math.pow(pint/p1,((n-1)/n))\n",
+ "t4=t1*math.pow(p3/pint,((n-1)/n))\n",
+ "w=cp*(t4-t1)\n",
+ "w2=2*w\n",
+ "t6=(tmax+460)/math.pow(p3/pint,((n-1)/n))\n",
+ "t8=(tmax+460)/math.pow(pint/p1,((n-1)/n))\n",
+ "work=cp*(tmax+460-t6)\n",
+ "w22=2*work\n",
+ "net=w22-w2\n",
+ "Qa=cp*(tmax+460-t2)\n",
+ "Qb=cp*(tmax+460-t6)\n",
+ "Qt=Qa+Qb\n",
+ "eta=net/Qt*100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eta,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 31.25 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 413"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "p1=14. #psia\n",
+ "p3=70. #psia\n",
+ "w2=75.9 #Btu/lb\n",
+ "Qa=265 #Btu/lb\n",
+ "#calculations\n",
+ "pint=p1*math.sqrt(pr)\n",
+ "t6=(tmax+460)/math.pow(p3/pint,((n-1)/n))\n",
+ "t8=(tmax+460)/math.pow(pint/p1,((n-1)/n))\n",
+ "work=cp*(tmax+460-t6)\n",
+ "w22=2*work\n",
+ "net=w22-w2\n",
+ "Qb=cp*(tmax+460-t6)\n",
+ "Qt=Qa+Qb\n",
+ "eta=net/Qt*100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eta,\"percent\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 32.4 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 413"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "t3=1558. #R\n",
+ "net=125.8 #Btu/lb\n",
+ "#calculations\n",
+ "Q=cp*(tmax+460-t3)\n",
+ "Qt=2*Q\n",
+ "eta=net/Qt*100.\n",
+ "#results \n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eta,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 65.2 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_19_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_19_2.ipynb new file mode 100755 index 00000000..c26dff35 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_19_2.ipynb @@ -0,0 +1,625 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:b29f8e2efad125f0a07d8b8d8802c0ef47be5bcad75aba5a349e2e6b7da74bda"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 19 - Gas Turbines"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 398"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the compressor work, turbine work and thermal efficiency in all cases\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1200. #F\n",
+ "tmax2=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "#calculations\n",
+ "t2=t1*math.pow(pr,(n-1)/n)\n",
+ "work=cp*(t2-t1)\n",
+ "t4=(tmax+460) /math.pow(pr,(n-1)/n)\n",
+ "twork=cp*(tmax+460-t4)\n",
+ "net=twork-work\n",
+ "eff=(1- 1/math.pow(pr,(n-1)/n))*100\n",
+ "Qs=cp*(tmax+460-t2)\n",
+ "ett=net/Qs *100\n",
+ "t42=(tmax2+460)/math.pow(pr,(n-1)/n)\n",
+ "twork2=cp*(tmax2+460-t42)\n",
+ "net2=twork2-work\n",
+ "Qs2=cp*(tmax2+460-t2)\n",
+ "eff3=net2/Qs2 *100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Compressor work =\",work,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Turbine work =\",twork,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Net work =\",net,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",eff,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Thermal efficiency =\",ett,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Turbine work =\",twork2,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Net work =\",net2,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 3, Thermal efficiency =\",eff3,\" percent,\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Compressor work = 75.7 Btu/lb\n",
+ "\n",
+ " Turbine work = 146.9 Btu/lb\n",
+ "\n",
+ " Net work = 71.2 Btu/lb\n",
+ "\n",
+ " Thermal efficiency = 36.9 percent\n",
+ "\n",
+ " In case 2, Thermal efficiency = 36.9 percent\n",
+ "\n",
+ " In case 2, Turbine work = 173.4 Btu/lb\n",
+ "\n",
+ " In case 2, Net work = 97.7 Btu/lb\n",
+ "\n",
+ " In case 3, Thermal efficiency = 36.9 percent,\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 400"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the indicated compressor work, internal work and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "work=75.9 #Btu/lb\n",
+ "twork=173.5 #Btu/lb\n",
+ "eta=0.8\n",
+ "t2=856 #R\n",
+ "t1=540 #R\n",
+ "t4=1960 #R\n",
+ "cp=0.24\n",
+ "#calculations\n",
+ "cwork=work/eta\n",
+ "internal=twork*eta\n",
+ "net=-cwork+internal\n",
+ "t2d=(t2-t1)/eta + t1\n",
+ "Qs=cp*(t4-t2d)\n",
+ "eff=net/Qs *100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Indicated compressor work =\",cwork,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Internal work =\",internal,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Net work =\",net,\" Btu/lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated compressor work = 94.9 Btu/lb\n",
+ "\n",
+ " Internal work = 138.8 Btu/lb\n",
+ "\n",
+ " Net work = 43.9 Btu/lb\n",
+ "\n",
+ " Thermal efficiency = 17.86 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 402"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the compressor work, turbine work and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "eff=0.97\n",
+ "c1=94.9 #Btu/lb\n",
+ "c2=138.8 #Btu/lb\n",
+ "ntee=246. #Btu/lb\n",
+ "#calculations\n",
+ "cwork=c1/eff\n",
+ "twork=c2*eff\n",
+ "net=twork-cwork\n",
+ "etat=net/ntee *100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Compressor work =\",cwork,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Turbine work =\",twork,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Net work =\",net,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",etat,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Compressor work = 97.8 Btu/lb\n",
+ "\n",
+ " Turbine work = 134.6 Btu/lb\n",
+ "\n",
+ " Net work = 36.8 Btu/lb\n",
+ "\n",
+ " Thermal efficiency = 15.0 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 403"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "pr=5.\n",
+ "p1=14. #psia\n",
+ "pd=3. #psi\n",
+ "pen=70. #psia\n",
+ "tin=1960. #R\n",
+ "n=1.4\n",
+ "cp=0.24\n",
+ "Qs=265. #Btu/lb\n",
+ "#calculations\n",
+ "p2=p1*pr\n",
+ "pe=pen-pd\n",
+ "prt=pe/p1\n",
+ "tex=tin/math.pow(prt,(n-1)/n)\n",
+ "twork=cp*(tin-tex)\n",
+ "net=twork-75.9\n",
+ "eff=net/Qs *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 35.4 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 403"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "pr=5.\n",
+ "p1=14. #psia\n",
+ "pd=3. #psi\n",
+ "pen=70. #psia\n",
+ "tin=1960. #R\n",
+ "n=1.4\n",
+ "cp=0.24\n",
+ "Qs=265.\n",
+ "ef=0.95\n",
+ "#calculations\n",
+ "p2=p1*pr\n",
+ "pe=pen-pd\n",
+ "prt=pe/p1\n",
+ "tex=tin/math.pow(prt,(n-1)/n)\n",
+ "twork=cp*(tin-tex)\n",
+ "net=twork-75.9\n",
+ "Qs2=Qs/ef\n",
+ "eff=net/Qs2 *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eff,\"percent\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 33.6 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 404"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final pressure\n",
+ "#Initalization of variables\n",
+ "pr1=1.0590\n",
+ "pr2=4.396\n",
+ "p1=14. #psia\n",
+ "#calculations\n",
+ "prr=pr2/pr1\n",
+ "p2=p1*prr\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Final pressure =\",p2,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Final pressure = 58.1 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 404"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the compressor work\n",
+ "#Initalization of variables\n",
+ "t1=540. #R\n",
+ "h1=129.06\n",
+ "pr1=1.386\n",
+ "cr=5.\n",
+ "#calculations\n",
+ "pr2=pr1*cr\n",
+ "print '%s' %(\"From air tables,\")\n",
+ "h2=204.63\n",
+ "cwork=h2-h1\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Compressor work =\",cwork,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From air tables,\n",
+ "Compressor work = 75.57 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 405"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the turbine work\n",
+ "#Initalization of variables\n",
+ "cr=5.\n",
+ "pr3=176.73 #psia\n",
+ "h3=14580.3 #Btu/mol\n",
+ "M=28.9\n",
+ "#calculations\n",
+ "pr4=pr3/cr\n",
+ "h4=9409.\n",
+ "twork=h3-h4\n",
+ "turb=twork/M\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Turbine work =\",turb,\" Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Turbine work = 178.9 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 407"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the air fuel ratio\n",
+ "#Initalization of variables\n",
+ "chem=19000. #Btu/lb\n",
+ "m1=204.63 #Btu/lb\n",
+ "M=28.9\n",
+ "w=14580.3\n",
+ "#calculations\n",
+ "ma=(chem-w/M)/(w/M -m1)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Air fuel ratio =\",ma,\"lb air/lb fuel\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Air fuel ratio = 61.7 lb air/lb fuel\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 409"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency of the unit\n",
+ "#Initalization of variables\n",
+ "cp=0.24\n",
+ "h=138.8\n",
+ "t3=1960. #R\n",
+ "#calculations\n",
+ "t4d=t3-h/cp\n",
+ "Qs=cp*(t3-t4d)\n",
+ "work=43.9 #Btu/lb\n",
+ "etat=work/Qs *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency of the unit =\",etat,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency of the unit = 31.6 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 412"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "p1=14. #psia\n",
+ "p3=70. #psia\n",
+ "#calculations\n",
+ "pint=p1*math.sqrt(pr)\n",
+ "t2=t1*math.pow(pint/p1,((n-1)/n))\n",
+ "t4=t1*math.pow(p3/pint,((n-1)/n))\n",
+ "w=cp*(t4-t1)\n",
+ "w2=2*w\n",
+ "t6=(tmax+460)/math.pow(p3/pint,((n-1)/n))\n",
+ "t8=(tmax+460)/math.pow(pint/p1,((n-1)/n))\n",
+ "work=cp*(tmax+460-t6)\n",
+ "w22=2*work\n",
+ "net=w22-w2\n",
+ "Qa=cp*(tmax+460-t2)\n",
+ "Qb=cp*(tmax+460-t6)\n",
+ "Qt=Qa+Qb\n",
+ "eta=net/Qt*100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eta,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 31.25 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 413"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "p1=14. #psia\n",
+ "p3=70. #psia\n",
+ "w2=75.9 #Btu/lb\n",
+ "Qa=265 #Btu/lb\n",
+ "#calculations\n",
+ "pint=p1*math.sqrt(pr)\n",
+ "t6=(tmax+460)/math.pow(p3/pint,((n-1)/n))\n",
+ "t8=(tmax+460)/math.pow(pint/p1,((n-1)/n))\n",
+ "work=cp*(tmax+460-t6)\n",
+ "w22=2*work\n",
+ "net=w22-w2\n",
+ "Qb=cp*(tmax+460-t6)\n",
+ "Qt=Qa+Qb\n",
+ "eta=net/Qt*100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eta,\"percent\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 32.4 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 413"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "t3=1558. #R\n",
+ "net=125.8 #Btu/lb\n",
+ "#calculations\n",
+ "Q=cp*(tmax+460-t3)\n",
+ "Qt=2*Q\n",
+ "eta=net/Qt*100.\n",
+ "#results \n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eta,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 65.2 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_19_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_19_3.ipynb new file mode 100755 index 00000000..c26dff35 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_19_3.ipynb @@ -0,0 +1,625 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:b29f8e2efad125f0a07d8b8d8802c0ef47be5bcad75aba5a349e2e6b7da74bda"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 19 - Gas Turbines"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 398"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the compressor work, turbine work and thermal efficiency in all cases\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1200. #F\n",
+ "tmax2=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "#calculations\n",
+ "t2=t1*math.pow(pr,(n-1)/n)\n",
+ "work=cp*(t2-t1)\n",
+ "t4=(tmax+460) /math.pow(pr,(n-1)/n)\n",
+ "twork=cp*(tmax+460-t4)\n",
+ "net=twork-work\n",
+ "eff=(1- 1/math.pow(pr,(n-1)/n))*100\n",
+ "Qs=cp*(tmax+460-t2)\n",
+ "ett=net/Qs *100\n",
+ "t42=(tmax2+460)/math.pow(pr,(n-1)/n)\n",
+ "twork2=cp*(tmax2+460-t42)\n",
+ "net2=twork2-work\n",
+ "Qs2=cp*(tmax2+460-t2)\n",
+ "eff3=net2/Qs2 *100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Compressor work =\",work,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Turbine work =\",twork,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Net work =\",net,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",eff,\"percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Thermal efficiency =\",ett,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Turbine work =\",twork2,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Net work =\",net2,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 3, Thermal efficiency =\",eff3,\" percent,\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Compressor work = 75.7 Btu/lb\n",
+ "\n",
+ " Turbine work = 146.9 Btu/lb\n",
+ "\n",
+ " Net work = 71.2 Btu/lb\n",
+ "\n",
+ " Thermal efficiency = 36.9 percent\n",
+ "\n",
+ " In case 2, Thermal efficiency = 36.9 percent\n",
+ "\n",
+ " In case 2, Turbine work = 173.4 Btu/lb\n",
+ "\n",
+ " In case 2, Net work = 97.7 Btu/lb\n",
+ "\n",
+ " In case 3, Thermal efficiency = 36.9 percent,\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 400"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the indicated compressor work, internal work and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "work=75.9 #Btu/lb\n",
+ "twork=173.5 #Btu/lb\n",
+ "eta=0.8\n",
+ "t2=856 #R\n",
+ "t1=540 #R\n",
+ "t4=1960 #R\n",
+ "cp=0.24\n",
+ "#calculations\n",
+ "cwork=work/eta\n",
+ "internal=twork*eta\n",
+ "net=-cwork+internal\n",
+ "t2d=(t2-t1)/eta + t1\n",
+ "Qs=cp*(t4-t2d)\n",
+ "eff=net/Qs *100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Indicated compressor work =\",cwork,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Internal work =\",internal,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Net work =\",net,\" Btu/lb\")\n",
+ "print '%s %.2f %s' %(\"\\n Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Indicated compressor work = 94.9 Btu/lb\n",
+ "\n",
+ " Internal work = 138.8 Btu/lb\n",
+ "\n",
+ " Net work = 43.9 Btu/lb\n",
+ "\n",
+ " Thermal efficiency = 17.86 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 402"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the compressor work, turbine work and thermal efficiency\n",
+ "#Initalization of variables\n",
+ "eff=0.97\n",
+ "c1=94.9 #Btu/lb\n",
+ "c2=138.8 #Btu/lb\n",
+ "ntee=246. #Btu/lb\n",
+ "#calculations\n",
+ "cwork=c1/eff\n",
+ "twork=c2*eff\n",
+ "net=twork-cwork\n",
+ "etat=net/ntee *100\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Compressor work =\",cwork,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Turbine work =\",twork,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Net work =\",net,\" Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Thermal efficiency =\",etat,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Compressor work = 97.8 Btu/lb\n",
+ "\n",
+ " Turbine work = 134.6 Btu/lb\n",
+ "\n",
+ " Net work = 36.8 Btu/lb\n",
+ "\n",
+ " Thermal efficiency = 15.0 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 403"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "pr=5.\n",
+ "p1=14. #psia\n",
+ "pd=3. #psi\n",
+ "pen=70. #psia\n",
+ "tin=1960. #R\n",
+ "n=1.4\n",
+ "cp=0.24\n",
+ "Qs=265. #Btu/lb\n",
+ "#calculations\n",
+ "p2=p1*pr\n",
+ "pe=pen-pd\n",
+ "prt=pe/p1\n",
+ "tex=tin/math.pow(prt,(n-1)/n)\n",
+ "twork=cp*(tin-tex)\n",
+ "net=twork-75.9\n",
+ "eff=net/Qs *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 35.4 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 403"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "pr=5.\n",
+ "p1=14. #psia\n",
+ "pd=3. #psi\n",
+ "pen=70. #psia\n",
+ "tin=1960. #R\n",
+ "n=1.4\n",
+ "cp=0.24\n",
+ "Qs=265.\n",
+ "ef=0.95\n",
+ "#calculations\n",
+ "p2=p1*pr\n",
+ "pe=pen-pd\n",
+ "prt=pe/p1\n",
+ "tex=tin/math.pow(prt,(n-1)/n)\n",
+ "twork=cp*(tin-tex)\n",
+ "net=twork-75.9\n",
+ "Qs2=Qs/ef\n",
+ "eff=net/Qs2 *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eff,\"percent\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 33.6 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 404"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final pressure\n",
+ "#Initalization of variables\n",
+ "pr1=1.0590\n",
+ "pr2=4.396\n",
+ "p1=14. #psia\n",
+ "#calculations\n",
+ "prr=pr2/pr1\n",
+ "p2=p1*prr\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Final pressure =\",p2,\" psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Final pressure = 58.1 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 404"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the compressor work\n",
+ "#Initalization of variables\n",
+ "t1=540. #R\n",
+ "h1=129.06\n",
+ "pr1=1.386\n",
+ "cr=5.\n",
+ "#calculations\n",
+ "pr2=pr1*cr\n",
+ "print '%s' %(\"From air tables,\")\n",
+ "h2=204.63\n",
+ "cwork=h2-h1\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Compressor work =\",cwork,\"Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From air tables,\n",
+ "Compressor work = 75.57 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 405"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the turbine work\n",
+ "#Initalization of variables\n",
+ "cr=5.\n",
+ "pr3=176.73 #psia\n",
+ "h3=14580.3 #Btu/mol\n",
+ "M=28.9\n",
+ "#calculations\n",
+ "pr4=pr3/cr\n",
+ "h4=9409.\n",
+ "twork=h3-h4\n",
+ "turb=twork/M\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Turbine work =\",turb,\" Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Turbine work = 178.9 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 407"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the air fuel ratio\n",
+ "#Initalization of variables\n",
+ "chem=19000. #Btu/lb\n",
+ "m1=204.63 #Btu/lb\n",
+ "M=28.9\n",
+ "w=14580.3\n",
+ "#calculations\n",
+ "ma=(chem-w/M)/(w/M -m1)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Air fuel ratio =\",ma,\"lb air/lb fuel\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Air fuel ratio = 61.7 lb air/lb fuel\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10 - Pg 409"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency of the unit\n",
+ "#Initalization of variables\n",
+ "cp=0.24\n",
+ "h=138.8\n",
+ "t3=1960. #R\n",
+ "#calculations\n",
+ "t4d=t3-h/cp\n",
+ "Qs=cp*(t3-t4d)\n",
+ "work=43.9 #Btu/lb\n",
+ "etat=work/Qs *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency of the unit =\",etat,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency of the unit = 31.6 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11 - Pg 412"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "p1=14. #psia\n",
+ "p3=70. #psia\n",
+ "#calculations\n",
+ "pint=p1*math.sqrt(pr)\n",
+ "t2=t1*math.pow(pint/p1,((n-1)/n))\n",
+ "t4=t1*math.pow(p3/pint,((n-1)/n))\n",
+ "w=cp*(t4-t1)\n",
+ "w2=2*w\n",
+ "t6=(tmax+460)/math.pow(p3/pint,((n-1)/n))\n",
+ "t8=(tmax+460)/math.pow(pint/p1,((n-1)/n))\n",
+ "work=cp*(tmax+460-t6)\n",
+ "w22=2*work\n",
+ "net=w22-w2\n",
+ "Qa=cp*(tmax+460-t2)\n",
+ "Qb=cp*(tmax+460-t6)\n",
+ "Qt=Qa+Qb\n",
+ "eta=net/Qt*100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eta,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 31.25 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12 - Pg 413"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "p1=14. #psia\n",
+ "p3=70. #psia\n",
+ "w2=75.9 #Btu/lb\n",
+ "Qa=265 #Btu/lb\n",
+ "#calculations\n",
+ "pint=p1*math.sqrt(pr)\n",
+ "t6=(tmax+460)/math.pow(p3/pint,((n-1)/n))\n",
+ "t8=(tmax+460)/math.pow(pint/p1,((n-1)/n))\n",
+ "work=cp*(tmax+460-t6)\n",
+ "w22=2*work\n",
+ "net=w22-w2\n",
+ "Qb=cp*(tmax+460-t6)\n",
+ "Qt=Qa+Qb\n",
+ "eta=net/Qt*100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eta,\"percent\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 32.4 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13 - Pg 413"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "n=1.4\n",
+ "t1=540. #R\n",
+ "tmax=1500. #F\n",
+ "pr=5.\n",
+ "cp=0.24\n",
+ "t3=1558. #R\n",
+ "net=125.8 #Btu/lb\n",
+ "#calculations\n",
+ "Q=cp*(tmax+460-t3)\n",
+ "Qt=2*Q\n",
+ "eta=net/Qt*100.\n",
+ "#results \n",
+ "print '%s %.1f %s' %(\"Thermal efficiency =\",eta,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 65.2 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_20.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_20.ipynb new file mode 100755 index 00000000..a4aa5154 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_20.ipynb @@ -0,0 +1,323 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:48ba3152e0507fdec1fb7b61f0c70216b3a6f652a3d1e87f4355bb850157326b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 20 - Vapor Power Cycles"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 420"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency in both cases\n",
+ "#Initalization of variables\n",
+ "Qs=825.1 #Btu/lb\n",
+ "ds=0.9588\n",
+ "t1=101.74 #F\n",
+ "th=400.95 #F\n",
+ "#calculations\n",
+ "Qr=ds*(t1+459.69)\n",
+ "work=Qs-Qr\n",
+ "eta=work/Qs*100.\n",
+ "eta2=(th-t1)/(th+459.69) *100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"In case 1, Thermal efficiency =\",eta,\"percent\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2, Thermal efficiency =\",eta2,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1, Thermal efficiency = 34.76 percent\n",
+ "\n",
+ " In case 2, Thermal efficiency = 34.77 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 425"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency in both cases\n",
+ "#Initalization of variables\n",
+ "s2=1.5263\n",
+ "sfg=1.8456\n",
+ "sf=1.9782 \n",
+ "h2=1201.1 #Btu/lb\n",
+ "hf=1106 #Btu/lb\n",
+ "hfg=1036.3 #Btu/lb\n",
+ "v=0.01616 #m^3/kg\n",
+ "p2=250 #psia\n",
+ "p1=1#psia\n",
+ "J=778\n",
+ "#calculations\n",
+ "x3=1+ (s2-sf)/sfg\n",
+ "h3=hf-(1-x3)*hfg\n",
+ "h4=69.7\n",
+ "Wp=v*144*(p2-p1)/J\n",
+ "h1=h4+Wp\n",
+ "etat=((h2-h3)-Wp)/(h2-h1) *100.\n",
+ "eta2=(h2-h3)/(h2-h4)*100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"\\n In case 1, Efficieny =\",etat,\"percent\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2, Efficieny =\",eta2,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " In case 1, Efficieny = 30.79 percent\n",
+ "\n",
+ " In case 2, Efficieny = 30.83 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 428"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the steam rate, enthalpy of exhaust steam, internal engine efficiency and excess heat removed\n",
+ "#Initalization of variables\n",
+ "p=40000 #kW\n",
+ "ef=0.98\n",
+ "rate=302000. #lb\n",
+ "s3=1.6001\n",
+ "h2=1490.1\n",
+ "loss=600.\n",
+ "v=400. #ft/s\n",
+ "g=32.2 #ft/s^2\n",
+ "J=778.\n",
+ "#calculations\n",
+ "out=p/(0.746*ef)\n",
+ "srate=rate/out\n",
+ "X=-(s3-1.9782)/1.8456\n",
+ "h3=1106 - X*1036.3\n",
+ "theoturb=h2-h3\n",
+ "intturb=(out+loss)*2544/rate\n",
+ "Ie=intturb/theoturb *100\n",
+ "h3d=h2-intturb-v*v /(2*g*J)\n",
+ "hexa=h3d+ v*v /(2*g*J)\n",
+ "excess=rate*(hexa-h3)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Steam rate =\",srate,\"lb/shaft hp-hr\")\n",
+ "print '%s %.1f %s' %(\"\\n Internal engine efficiency =\",Ie,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Enthalpy of exhaust steam =\",h3d,\" Btu/lb\")\n",
+ "print '%s %d %s' %(\"\\n Excess heat to be removed =\",excess,\"Btu/hr\")\n",
+ "print '%s' %(\"The answers are a bit different due to rounding off error in textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Steam rate = 5.52 lb/shaft hp-hr\n",
+ "\n",
+ " Internal engine efficiency = 78.1 percent\n",
+ "\n",
+ " Enthalpy of exhaust steam = 1021.0 Btu/lb\n",
+ "\n",
+ " Excess heat to be removed = 39395745 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 436"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "s2=1.5263\n",
+ "sf=1.6993\n",
+ "sfg=1.3313\n",
+ "hf=1164.1 #Btu/lb\n",
+ "hfg=945.3 #Btu/lb\n",
+ "h2=1201.1 #Btu/lb\n",
+ "h1=852.3 #Btu/lb\n",
+ "#calculations\n",
+ "X3=-(s2-sf)/sfg\n",
+ "h3=hf-X3*hfg\n",
+ "h4=218.82\n",
+ "h6=h4\n",
+ "h5=69.7\n",
+ "x=(h4-h5)/(h3-h5)\n",
+ "W= h2-h3+ (1-x)*(h3-h1)\n",
+ "Qs=h2-h4\n",
+ "eff=W/Qs *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 32.56 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 442"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "h6=157.933 #Btu/lb\n",
+ "s2=0.11626\n",
+ "sf=0.16594\n",
+ "sfg=0.14755\n",
+ "hf=139.095 #Btu/lb\n",
+ "hfg=126.98 #Btu/lb\n",
+ "h5=12.016 #Btu/lb\n",
+ "h2=1201.1 #Btu/lb\n",
+ "h1=69.7 #Btu/lb\n",
+ "w=348.8 #Btu/lb\n",
+ "m=0.0745 #lb\n",
+ "#calculations\n",
+ "x7=-(s2-sf)/sfg\n",
+ "h7=hf-x7*hfg\n",
+ "dh6=h6-h7\n",
+ "mr=(h7-h5)/(h2-h1)\n",
+ "work=w*m\n",
+ "tw=work+dh6\n",
+ "dh65=h6-h5\n",
+ "eff=tw/dh65 *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 60.02 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 443"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the available portion of heat transferred\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "m=1 #lb\n",
+ "cp=0.26\n",
+ "t2=1800+460. #R\n",
+ "t1=400.95+460 #R\n",
+ "x=0.6\n",
+ "sink=100+460. #R\n",
+ "tm=2600+460. #R\n",
+ "#calculations\n",
+ "Q=m*cp*(t2-t1)\n",
+ "ds=m*cp*math.log((t2/t1))\n",
+ "tds=ds*(sink)\n",
+ "avail=Q-tds\n",
+ "hf=Q*x/(1-x)\n",
+ "av2=hf*(tm-sink)/(tm)\n",
+ "Qt=Q+hf\n",
+ "av=avail+av2\n",
+ "per=av/Qt *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Available portion of heat transferred =\",per,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Available portion of heat transferred = 73.6 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_20_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_20_1.ipynb new file mode 100755 index 00000000..a4aa5154 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_20_1.ipynb @@ -0,0 +1,323 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:48ba3152e0507fdec1fb7b61f0c70216b3a6f652a3d1e87f4355bb850157326b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 20 - Vapor Power Cycles"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 420"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency in both cases\n",
+ "#Initalization of variables\n",
+ "Qs=825.1 #Btu/lb\n",
+ "ds=0.9588\n",
+ "t1=101.74 #F\n",
+ "th=400.95 #F\n",
+ "#calculations\n",
+ "Qr=ds*(t1+459.69)\n",
+ "work=Qs-Qr\n",
+ "eta=work/Qs*100.\n",
+ "eta2=(th-t1)/(th+459.69) *100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"In case 1, Thermal efficiency =\",eta,\"percent\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2, Thermal efficiency =\",eta2,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1, Thermal efficiency = 34.76 percent\n",
+ "\n",
+ " In case 2, Thermal efficiency = 34.77 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 425"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency in both cases\n",
+ "#Initalization of variables\n",
+ "s2=1.5263\n",
+ "sfg=1.8456\n",
+ "sf=1.9782 \n",
+ "h2=1201.1 #Btu/lb\n",
+ "hf=1106 #Btu/lb\n",
+ "hfg=1036.3 #Btu/lb\n",
+ "v=0.01616 #m^3/kg\n",
+ "p2=250 #psia\n",
+ "p1=1#psia\n",
+ "J=778\n",
+ "#calculations\n",
+ "x3=1+ (s2-sf)/sfg\n",
+ "h3=hf-(1-x3)*hfg\n",
+ "h4=69.7\n",
+ "Wp=v*144*(p2-p1)/J\n",
+ "h1=h4+Wp\n",
+ "etat=((h2-h3)-Wp)/(h2-h1) *100.\n",
+ "eta2=(h2-h3)/(h2-h4)*100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"\\n In case 1, Efficieny =\",etat,\"percent\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2, Efficieny =\",eta2,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " In case 1, Efficieny = 30.79 percent\n",
+ "\n",
+ " In case 2, Efficieny = 30.83 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 428"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the steam rate, enthalpy of exhaust steam, internal engine efficiency and excess heat removed\n",
+ "#Initalization of variables\n",
+ "p=40000 #kW\n",
+ "ef=0.98\n",
+ "rate=302000. #lb\n",
+ "s3=1.6001\n",
+ "h2=1490.1\n",
+ "loss=600.\n",
+ "v=400. #ft/s\n",
+ "g=32.2 #ft/s^2\n",
+ "J=778.\n",
+ "#calculations\n",
+ "out=p/(0.746*ef)\n",
+ "srate=rate/out\n",
+ "X=-(s3-1.9782)/1.8456\n",
+ "h3=1106 - X*1036.3\n",
+ "theoturb=h2-h3\n",
+ "intturb=(out+loss)*2544/rate\n",
+ "Ie=intturb/theoturb *100\n",
+ "h3d=h2-intturb-v*v /(2*g*J)\n",
+ "hexa=h3d+ v*v /(2*g*J)\n",
+ "excess=rate*(hexa-h3)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Steam rate =\",srate,\"lb/shaft hp-hr\")\n",
+ "print '%s %.1f %s' %(\"\\n Internal engine efficiency =\",Ie,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Enthalpy of exhaust steam =\",h3d,\" Btu/lb\")\n",
+ "print '%s %d %s' %(\"\\n Excess heat to be removed =\",excess,\"Btu/hr\")\n",
+ "print '%s' %(\"The answers are a bit different due to rounding off error in textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Steam rate = 5.52 lb/shaft hp-hr\n",
+ "\n",
+ " Internal engine efficiency = 78.1 percent\n",
+ "\n",
+ " Enthalpy of exhaust steam = 1021.0 Btu/lb\n",
+ "\n",
+ " Excess heat to be removed = 39395745 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 436"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "s2=1.5263\n",
+ "sf=1.6993\n",
+ "sfg=1.3313\n",
+ "hf=1164.1 #Btu/lb\n",
+ "hfg=945.3 #Btu/lb\n",
+ "h2=1201.1 #Btu/lb\n",
+ "h1=852.3 #Btu/lb\n",
+ "#calculations\n",
+ "X3=-(s2-sf)/sfg\n",
+ "h3=hf-X3*hfg\n",
+ "h4=218.82\n",
+ "h6=h4\n",
+ "h5=69.7\n",
+ "x=(h4-h5)/(h3-h5)\n",
+ "W= h2-h3+ (1-x)*(h3-h1)\n",
+ "Qs=h2-h4\n",
+ "eff=W/Qs *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 32.56 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 442"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "h6=157.933 #Btu/lb\n",
+ "s2=0.11626\n",
+ "sf=0.16594\n",
+ "sfg=0.14755\n",
+ "hf=139.095 #Btu/lb\n",
+ "hfg=126.98 #Btu/lb\n",
+ "h5=12.016 #Btu/lb\n",
+ "h2=1201.1 #Btu/lb\n",
+ "h1=69.7 #Btu/lb\n",
+ "w=348.8 #Btu/lb\n",
+ "m=0.0745 #lb\n",
+ "#calculations\n",
+ "x7=-(s2-sf)/sfg\n",
+ "h7=hf-x7*hfg\n",
+ "dh6=h6-h7\n",
+ "mr=(h7-h5)/(h2-h1)\n",
+ "work=w*m\n",
+ "tw=work+dh6\n",
+ "dh65=h6-h5\n",
+ "eff=tw/dh65 *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 60.02 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 443"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the available portion of heat transferred\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "m=1 #lb\n",
+ "cp=0.26\n",
+ "t2=1800+460. #R\n",
+ "t1=400.95+460 #R\n",
+ "x=0.6\n",
+ "sink=100+460. #R\n",
+ "tm=2600+460. #R\n",
+ "#calculations\n",
+ "Q=m*cp*(t2-t1)\n",
+ "ds=m*cp*math.log((t2/t1))\n",
+ "tds=ds*(sink)\n",
+ "avail=Q-tds\n",
+ "hf=Q*x/(1-x)\n",
+ "av2=hf*(tm-sink)/(tm)\n",
+ "Qt=Q+hf\n",
+ "av=avail+av2\n",
+ "per=av/Qt *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Available portion of heat transferred =\",per,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Available portion of heat transferred = 73.6 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_20_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_20_2.ipynb new file mode 100755 index 00000000..a4aa5154 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_20_2.ipynb @@ -0,0 +1,323 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:48ba3152e0507fdec1fb7b61f0c70216b3a6f652a3d1e87f4355bb850157326b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 20 - Vapor Power Cycles"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 420"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency in both cases\n",
+ "#Initalization of variables\n",
+ "Qs=825.1 #Btu/lb\n",
+ "ds=0.9588\n",
+ "t1=101.74 #F\n",
+ "th=400.95 #F\n",
+ "#calculations\n",
+ "Qr=ds*(t1+459.69)\n",
+ "work=Qs-Qr\n",
+ "eta=work/Qs*100.\n",
+ "eta2=(th-t1)/(th+459.69) *100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"In case 1, Thermal efficiency =\",eta,\"percent\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2, Thermal efficiency =\",eta2,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1, Thermal efficiency = 34.76 percent\n",
+ "\n",
+ " In case 2, Thermal efficiency = 34.77 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 425"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency in both cases\n",
+ "#Initalization of variables\n",
+ "s2=1.5263\n",
+ "sfg=1.8456\n",
+ "sf=1.9782 \n",
+ "h2=1201.1 #Btu/lb\n",
+ "hf=1106 #Btu/lb\n",
+ "hfg=1036.3 #Btu/lb\n",
+ "v=0.01616 #m^3/kg\n",
+ "p2=250 #psia\n",
+ "p1=1#psia\n",
+ "J=778\n",
+ "#calculations\n",
+ "x3=1+ (s2-sf)/sfg\n",
+ "h3=hf-(1-x3)*hfg\n",
+ "h4=69.7\n",
+ "Wp=v*144*(p2-p1)/J\n",
+ "h1=h4+Wp\n",
+ "etat=((h2-h3)-Wp)/(h2-h1) *100.\n",
+ "eta2=(h2-h3)/(h2-h4)*100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"\\n In case 1, Efficieny =\",etat,\"percent\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2, Efficieny =\",eta2,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " In case 1, Efficieny = 30.79 percent\n",
+ "\n",
+ " In case 2, Efficieny = 30.83 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 428"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the steam rate, enthalpy of exhaust steam, internal engine efficiency and excess heat removed\n",
+ "#Initalization of variables\n",
+ "p=40000 #kW\n",
+ "ef=0.98\n",
+ "rate=302000. #lb\n",
+ "s3=1.6001\n",
+ "h2=1490.1\n",
+ "loss=600.\n",
+ "v=400. #ft/s\n",
+ "g=32.2 #ft/s^2\n",
+ "J=778.\n",
+ "#calculations\n",
+ "out=p/(0.746*ef)\n",
+ "srate=rate/out\n",
+ "X=-(s3-1.9782)/1.8456\n",
+ "h3=1106 - X*1036.3\n",
+ "theoturb=h2-h3\n",
+ "intturb=(out+loss)*2544/rate\n",
+ "Ie=intturb/theoturb *100\n",
+ "h3d=h2-intturb-v*v /(2*g*J)\n",
+ "hexa=h3d+ v*v /(2*g*J)\n",
+ "excess=rate*(hexa-h3)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Steam rate =\",srate,\"lb/shaft hp-hr\")\n",
+ "print '%s %.1f %s' %(\"\\n Internal engine efficiency =\",Ie,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Enthalpy of exhaust steam =\",h3d,\" Btu/lb\")\n",
+ "print '%s %d %s' %(\"\\n Excess heat to be removed =\",excess,\"Btu/hr\")\n",
+ "print '%s' %(\"The answers are a bit different due to rounding off error in textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Steam rate = 5.52 lb/shaft hp-hr\n",
+ "\n",
+ " Internal engine efficiency = 78.1 percent\n",
+ "\n",
+ " Enthalpy of exhaust steam = 1021.0 Btu/lb\n",
+ "\n",
+ " Excess heat to be removed = 39395745 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 436"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "s2=1.5263\n",
+ "sf=1.6993\n",
+ "sfg=1.3313\n",
+ "hf=1164.1 #Btu/lb\n",
+ "hfg=945.3 #Btu/lb\n",
+ "h2=1201.1 #Btu/lb\n",
+ "h1=852.3 #Btu/lb\n",
+ "#calculations\n",
+ "X3=-(s2-sf)/sfg\n",
+ "h3=hf-X3*hfg\n",
+ "h4=218.82\n",
+ "h6=h4\n",
+ "h5=69.7\n",
+ "x=(h4-h5)/(h3-h5)\n",
+ "W= h2-h3+ (1-x)*(h3-h1)\n",
+ "Qs=h2-h4\n",
+ "eff=W/Qs *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 32.56 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 442"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "h6=157.933 #Btu/lb\n",
+ "s2=0.11626\n",
+ "sf=0.16594\n",
+ "sfg=0.14755\n",
+ "hf=139.095 #Btu/lb\n",
+ "hfg=126.98 #Btu/lb\n",
+ "h5=12.016 #Btu/lb\n",
+ "h2=1201.1 #Btu/lb\n",
+ "h1=69.7 #Btu/lb\n",
+ "w=348.8 #Btu/lb\n",
+ "m=0.0745 #lb\n",
+ "#calculations\n",
+ "x7=-(s2-sf)/sfg\n",
+ "h7=hf-x7*hfg\n",
+ "dh6=h6-h7\n",
+ "mr=(h7-h5)/(h2-h1)\n",
+ "work=w*m\n",
+ "tw=work+dh6\n",
+ "dh65=h6-h5\n",
+ "eff=tw/dh65 *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 60.02 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 443"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the available portion of heat transferred\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "m=1 #lb\n",
+ "cp=0.26\n",
+ "t2=1800+460. #R\n",
+ "t1=400.95+460 #R\n",
+ "x=0.6\n",
+ "sink=100+460. #R\n",
+ "tm=2600+460. #R\n",
+ "#calculations\n",
+ "Q=m*cp*(t2-t1)\n",
+ "ds=m*cp*math.log((t2/t1))\n",
+ "tds=ds*(sink)\n",
+ "avail=Q-tds\n",
+ "hf=Q*x/(1-x)\n",
+ "av2=hf*(tm-sink)/(tm)\n",
+ "Qt=Q+hf\n",
+ "av=avail+av2\n",
+ "per=av/Qt *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Available portion of heat transferred =\",per,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Available portion of heat transferred = 73.6 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_20_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_20_3.ipynb new file mode 100755 index 00000000..a4aa5154 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_20_3.ipynb @@ -0,0 +1,323 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:48ba3152e0507fdec1fb7b61f0c70216b3a6f652a3d1e87f4355bb850157326b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 20 - Vapor Power Cycles"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 420"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency in both cases\n",
+ "#Initalization of variables\n",
+ "Qs=825.1 #Btu/lb\n",
+ "ds=0.9588\n",
+ "t1=101.74 #F\n",
+ "th=400.95 #F\n",
+ "#calculations\n",
+ "Qr=ds*(t1+459.69)\n",
+ "work=Qs-Qr\n",
+ "eta=work/Qs*100.\n",
+ "eta2=(th-t1)/(th+459.69) *100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"In case 1, Thermal efficiency =\",eta,\"percent\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2, Thermal efficiency =\",eta2,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1, Thermal efficiency = 34.76 percent\n",
+ "\n",
+ " In case 2, Thermal efficiency = 34.77 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 425"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency in both cases\n",
+ "#Initalization of variables\n",
+ "s2=1.5263\n",
+ "sfg=1.8456\n",
+ "sf=1.9782 \n",
+ "h2=1201.1 #Btu/lb\n",
+ "hf=1106 #Btu/lb\n",
+ "hfg=1036.3 #Btu/lb\n",
+ "v=0.01616 #m^3/kg\n",
+ "p2=250 #psia\n",
+ "p1=1#psia\n",
+ "J=778\n",
+ "#calculations\n",
+ "x3=1+ (s2-sf)/sfg\n",
+ "h3=hf-(1-x3)*hfg\n",
+ "h4=69.7\n",
+ "Wp=v*144*(p2-p1)/J\n",
+ "h1=h4+Wp\n",
+ "etat=((h2-h3)-Wp)/(h2-h1) *100.\n",
+ "eta2=(h2-h3)/(h2-h4)*100.\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"\\n In case 1, Efficieny =\",etat,\"percent\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2, Efficieny =\",eta2,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " In case 1, Efficieny = 30.79 percent\n",
+ "\n",
+ " In case 2, Efficieny = 30.83 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 428"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the steam rate, enthalpy of exhaust steam, internal engine efficiency and excess heat removed\n",
+ "#Initalization of variables\n",
+ "p=40000 #kW\n",
+ "ef=0.98\n",
+ "rate=302000. #lb\n",
+ "s3=1.6001\n",
+ "h2=1490.1\n",
+ "loss=600.\n",
+ "v=400. #ft/s\n",
+ "g=32.2 #ft/s^2\n",
+ "J=778.\n",
+ "#calculations\n",
+ "out=p/(0.746*ef)\n",
+ "srate=rate/out\n",
+ "X=-(s3-1.9782)/1.8456\n",
+ "h3=1106 - X*1036.3\n",
+ "theoturb=h2-h3\n",
+ "intturb=(out+loss)*2544/rate\n",
+ "Ie=intturb/theoturb *100\n",
+ "h3d=h2-intturb-v*v /(2*g*J)\n",
+ "hexa=h3d+ v*v /(2*g*J)\n",
+ "excess=rate*(hexa-h3)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Steam rate =\",srate,\"lb/shaft hp-hr\")\n",
+ "print '%s %.1f %s' %(\"\\n Internal engine efficiency =\",Ie,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Enthalpy of exhaust steam =\",h3d,\" Btu/lb\")\n",
+ "print '%s %d %s' %(\"\\n Excess heat to be removed =\",excess,\"Btu/hr\")\n",
+ "print '%s' %(\"The answers are a bit different due to rounding off error in textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Steam rate = 5.52 lb/shaft hp-hr\n",
+ "\n",
+ " Internal engine efficiency = 78.1 percent\n",
+ "\n",
+ " Enthalpy of exhaust steam = 1021.0 Btu/lb\n",
+ "\n",
+ " Excess heat to be removed = 39395745 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 436"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "s2=1.5263\n",
+ "sf=1.6993\n",
+ "sfg=1.3313\n",
+ "hf=1164.1 #Btu/lb\n",
+ "hfg=945.3 #Btu/lb\n",
+ "h2=1201.1 #Btu/lb\n",
+ "h1=852.3 #Btu/lb\n",
+ "#calculations\n",
+ "X3=-(s2-sf)/sfg\n",
+ "h3=hf-X3*hfg\n",
+ "h4=218.82\n",
+ "h6=h4\n",
+ "h5=69.7\n",
+ "x=(h4-h5)/(h3-h5)\n",
+ "W= h2-h3+ (1-x)*(h3-h1)\n",
+ "Qs=h2-h4\n",
+ "eff=W/Qs *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 32.56 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 442"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the thermal efficiency\n",
+ "#Initalization of variables\n",
+ "h6=157.933 #Btu/lb\n",
+ "s2=0.11626\n",
+ "sf=0.16594\n",
+ "sfg=0.14755\n",
+ "hf=139.095 #Btu/lb\n",
+ "hfg=126.98 #Btu/lb\n",
+ "h5=12.016 #Btu/lb\n",
+ "h2=1201.1 #Btu/lb\n",
+ "h1=69.7 #Btu/lb\n",
+ "w=348.8 #Btu/lb\n",
+ "m=0.0745 #lb\n",
+ "#calculations\n",
+ "x7=-(s2-sf)/sfg\n",
+ "h7=hf-x7*hfg\n",
+ "dh6=h6-h7\n",
+ "mr=(h7-h5)/(h2-h1)\n",
+ "work=w*m\n",
+ "tw=work+dh6\n",
+ "dh65=h6-h5\n",
+ "eff=tw/dh65 *100\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Thermal efficiency =\",eff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Thermal efficiency = 60.02 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 443"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the available portion of heat transferred\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "m=1 #lb\n",
+ "cp=0.26\n",
+ "t2=1800+460. #R\n",
+ "t1=400.95+460 #R\n",
+ "x=0.6\n",
+ "sink=100+460. #R\n",
+ "tm=2600+460. #R\n",
+ "#calculations\n",
+ "Q=m*cp*(t2-t1)\n",
+ "ds=m*cp*math.log((t2/t1))\n",
+ "tds=ds*(sink)\n",
+ "avail=Q-tds\n",
+ "hf=Q*x/(1-x)\n",
+ "av2=hf*(tm-sink)/(tm)\n",
+ "Qt=Q+hf\n",
+ "av=avail+av2\n",
+ "per=av/Qt *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Available portion of heat transferred =\",per,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Available portion of heat transferred = 73.6 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_21.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_21.ipynb new file mode 100755 index 00000000..567cdacb --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_21.ipynb @@ -0,0 +1,438 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:6b7b3e2ab4fd666f452b57925a83681d6f79a5b142e4777bdab089506c8a15bb"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 21 - Steam Turbines"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 456"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the flow rate\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "p2=190. #psia\n",
+ "p1=110. #psia\n",
+ "v1=2.456 \n",
+ "k=1.3\n",
+ "J=778.\n",
+ "A2=1.2 #in^2\n",
+ "#calculations\n",
+ "v2=v1*math.pow(p2/p1,(1/k))\n",
+ "dh=k/(k-1) *144/J *(p2*v1-p1*v2)\n",
+ "Vex=223.8*math.sqrt(dh)\n",
+ "m=A2*Vex/(144.*v2)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Rate of flow =\",m,\"lb/sec\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate of flow = 3.32 lb/sec\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 458"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the rate of flow\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "h1=1205.8 #Btu/lb\n",
+ "s2=1.5594\n",
+ "sf=1.5948\n",
+ "sfg=1.1117\n",
+ "hf=1188.9 #Btu/lb\n",
+ "hfg=883.2 #Btu/lb\n",
+ "vf=4.049\n",
+ "vfg=vf-0.018\n",
+ "k=1.3\n",
+ "J=778\n",
+ "A2=1.2 #in^2\n",
+ "#calculations\n",
+ "x2=-(s2-sf)/sfg\n",
+ "h2=hf-x2*hfg\n",
+ "v2=vf-x2*vfg\n",
+ "dh=h1-h2\n",
+ "Vex=223.8*math.sqrt(dh)\n",
+ "m=A2*Vex/(144*v2)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Rate of flow =\",m,\"lb/sec\")\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate of flow = 3.19 lb/sec\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 462"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the blade work, angle and efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "alp=14*math.pi/180. #degrees\n",
+ "vb=900. #ft/s\n",
+ "v1=2200. #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "vrc=v1*math.cos(alp) - vb\n",
+ "W=(2*vrc)/g *vb\n",
+ "eta=W/(v1*v1/ (2*g)) *100.\n",
+ "bet=math.atan(v1*math.sin(alp) /vrc)*180/math.pi\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Blade work =\",W,\" ft-lb/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Efficiency =\",eta,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Blade angle =\",bet,\" degrees\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Blade work = 69082 ft-lb/lb\n",
+ "\n",
+ " Efficiency = 91.8 percent\n",
+ "\n",
+ " Blade angle = 23.3 degrees\n",
+ "The answers are a bit different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 463"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the blade work and efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "v1=1234. #ft/s\n",
+ "v2=532. #ft/s \n",
+ "kb=0.92\n",
+ "alp=20. #degrees\n",
+ "ve=900. #ft/s\n",
+ "r=2200. #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "vr=math.sqrt(v1*v1 +v2*v2)\n",
+ "vr2=vr*kb\n",
+ "vrc=vr2*math.cos(alp*math.pi/180.)\n",
+ "W=(v1+vrc)*ve/g\n",
+ "eta=W/(r*r /(2*g)) *100.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Blade work =\",W,\"ft-lb/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Efficiency =\",eta,\" percent\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Blade work = 67023 ft-lb/lb\n",
+ "\n",
+ " Efficiency = 89.1 percent\n",
+ "The answers are a bit different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 464"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the blade reheat in both cases\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "v1=1234.\n",
+ "v2=532.\n",
+ "kb=0.92\n",
+ "alp=20*math.pi/180. #degrees\n",
+ "ve=900.\n",
+ "r=2200. #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "J=778.\n",
+ "w=67000.\n",
+ "#calculations\n",
+ "vr=math.sqrt(v1*v1 +v2*v2)\n",
+ "vr2=vr*kb\n",
+ "vrc=vr2*math.cos(alp)\n",
+ "reheat=(vr*vr - vr2*vr2 )/(2*g*J)\n",
+ "v22=math.sqrt((vrc-ve)*(vrc-ve) +(vr2*math.sin(alp))*(vr2*math.sin(alp)))\n",
+ "ein=r*r /(2*g*J)\n",
+ "eout=w/J + v22*v22 /(2*g*J)\n",
+ "re2=ein-eout\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"\\n In case 1, Blade reheat =\",reheat,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Blade reheat =\",re2,\" Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " In case 1, Blade reheat = 5.54 Btu/lb\n",
+ "\n",
+ " In case 2, Blade reheat = 5.6 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 467"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the intermediate pressure\n",
+ "#Initalization of variables\n",
+ "h1=1416.4\n",
+ "s1=1.6842\n",
+ "sf=1.7319\n",
+ "sfg=1.3962\n",
+ "fac=1.05\n",
+ "x2=0.7\n",
+ "#calculations\n",
+ "x6=-(s1-sf)/sfg\n",
+ "h6=1156.3 - x6*960.1\n",
+ "dh6=h1-h6\n",
+ "drop= fac*h6/2\n",
+ "h2=h1-drop\n",
+ "first=(1-x2)*drop\n",
+ "h3=1264.1 +first\n",
+ "h4=1157 #Btu/lb\n",
+ "fac2=(drop+153)/dh6\n",
+ "print '%s' %(\"From air charts,\")\n",
+ "p2=107 #psia\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Intermediate pressure =\",p2,\"psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From air charts,\n",
+ "Intermediate pressure = 107 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 469"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the shaft ouput and engine efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "reh=1.047\n",
+ "dh6=292.8\n",
+ "x2=0.7\n",
+ "flow=98000 #lb/hr\n",
+ "loss=200 #hp\n",
+ "#calculations\n",
+ "intwork=reh*dh6*x2\n",
+ "inthp=intwork*flow/2544\n",
+ "sout=inthp-loss\n",
+ "swork=sout*2544/flow\n",
+ "seff=swork/290.1 *100\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Shaft output =\",sout,\"hp\")\n",
+ "print '%s %.1f %s' %(\"\\n Shaft engine efficiency =\",seff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Shaft output = 8066 hp\n",
+ "\n",
+ " Shaft engine efficiency = 72.2 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 469"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the exit temperature and pressure\n",
+ "#Initalization of variables\n",
+ "h1=1416.4 #Btu/lb\n",
+ "h2=214.5 #Btu/lb\n",
+ "#calculations\n",
+ "hexa=h1-h2\n",
+ "print '%s' %(\"From Air tables,\")\n",
+ "pe=20 #psia\n",
+ "te=321.5 #F\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Exit Pressure =\",pe,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Exit temperature =\",te,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From Air tables,\n",
+ "Exit Pressure = 20 psia\n",
+ "\n",
+ " Exit temperature = 321.5 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 470"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the steam rate required\n",
+ "#Initalization of variables\n",
+ "flow=98000. #lb/hr\n",
+ "loss=200. #hp\n",
+ "x= 0.11 #percent\n",
+ "shp=3000. #hp\n",
+ "#calculations\n",
+ "sflow = x*flow\n",
+ "sflow2= sflow + (flow-sflow)*shp/8060.\n",
+ "srate=sflow2/shp\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Steam rate required =\",srate,\" lb/hp-hr\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Steam rate required = 14.41 lb/hp-hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_21_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_21_1.ipynb new file mode 100755 index 00000000..567cdacb --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_21_1.ipynb @@ -0,0 +1,438 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:6b7b3e2ab4fd666f452b57925a83681d6f79a5b142e4777bdab089506c8a15bb"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 21 - Steam Turbines"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 456"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the flow rate\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "p2=190. #psia\n",
+ "p1=110. #psia\n",
+ "v1=2.456 \n",
+ "k=1.3\n",
+ "J=778.\n",
+ "A2=1.2 #in^2\n",
+ "#calculations\n",
+ "v2=v1*math.pow(p2/p1,(1/k))\n",
+ "dh=k/(k-1) *144/J *(p2*v1-p1*v2)\n",
+ "Vex=223.8*math.sqrt(dh)\n",
+ "m=A2*Vex/(144.*v2)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Rate of flow =\",m,\"lb/sec\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate of flow = 3.32 lb/sec\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 458"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the rate of flow\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "h1=1205.8 #Btu/lb\n",
+ "s2=1.5594\n",
+ "sf=1.5948\n",
+ "sfg=1.1117\n",
+ "hf=1188.9 #Btu/lb\n",
+ "hfg=883.2 #Btu/lb\n",
+ "vf=4.049\n",
+ "vfg=vf-0.018\n",
+ "k=1.3\n",
+ "J=778\n",
+ "A2=1.2 #in^2\n",
+ "#calculations\n",
+ "x2=-(s2-sf)/sfg\n",
+ "h2=hf-x2*hfg\n",
+ "v2=vf-x2*vfg\n",
+ "dh=h1-h2\n",
+ "Vex=223.8*math.sqrt(dh)\n",
+ "m=A2*Vex/(144*v2)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Rate of flow =\",m,\"lb/sec\")\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate of flow = 3.19 lb/sec\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 462"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the blade work, angle and efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "alp=14*math.pi/180. #degrees\n",
+ "vb=900. #ft/s\n",
+ "v1=2200. #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "vrc=v1*math.cos(alp) - vb\n",
+ "W=(2*vrc)/g *vb\n",
+ "eta=W/(v1*v1/ (2*g)) *100.\n",
+ "bet=math.atan(v1*math.sin(alp) /vrc)*180/math.pi\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Blade work =\",W,\" ft-lb/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Efficiency =\",eta,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Blade angle =\",bet,\" degrees\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Blade work = 69082 ft-lb/lb\n",
+ "\n",
+ " Efficiency = 91.8 percent\n",
+ "\n",
+ " Blade angle = 23.3 degrees\n",
+ "The answers are a bit different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 463"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the blade work and efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "v1=1234. #ft/s\n",
+ "v2=532. #ft/s \n",
+ "kb=0.92\n",
+ "alp=20. #degrees\n",
+ "ve=900. #ft/s\n",
+ "r=2200. #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "vr=math.sqrt(v1*v1 +v2*v2)\n",
+ "vr2=vr*kb\n",
+ "vrc=vr2*math.cos(alp*math.pi/180.)\n",
+ "W=(v1+vrc)*ve/g\n",
+ "eta=W/(r*r /(2*g)) *100.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Blade work =\",W,\"ft-lb/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Efficiency =\",eta,\" percent\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Blade work = 67023 ft-lb/lb\n",
+ "\n",
+ " Efficiency = 89.1 percent\n",
+ "The answers are a bit different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 464"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the blade reheat in both cases\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "v1=1234.\n",
+ "v2=532.\n",
+ "kb=0.92\n",
+ "alp=20*math.pi/180. #degrees\n",
+ "ve=900.\n",
+ "r=2200. #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "J=778.\n",
+ "w=67000.\n",
+ "#calculations\n",
+ "vr=math.sqrt(v1*v1 +v2*v2)\n",
+ "vr2=vr*kb\n",
+ "vrc=vr2*math.cos(alp)\n",
+ "reheat=(vr*vr - vr2*vr2 )/(2*g*J)\n",
+ "v22=math.sqrt((vrc-ve)*(vrc-ve) +(vr2*math.sin(alp))*(vr2*math.sin(alp)))\n",
+ "ein=r*r /(2*g*J)\n",
+ "eout=w/J + v22*v22 /(2*g*J)\n",
+ "re2=ein-eout\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"\\n In case 1, Blade reheat =\",reheat,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Blade reheat =\",re2,\" Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " In case 1, Blade reheat = 5.54 Btu/lb\n",
+ "\n",
+ " In case 2, Blade reheat = 5.6 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 467"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the intermediate pressure\n",
+ "#Initalization of variables\n",
+ "h1=1416.4\n",
+ "s1=1.6842\n",
+ "sf=1.7319\n",
+ "sfg=1.3962\n",
+ "fac=1.05\n",
+ "x2=0.7\n",
+ "#calculations\n",
+ "x6=-(s1-sf)/sfg\n",
+ "h6=1156.3 - x6*960.1\n",
+ "dh6=h1-h6\n",
+ "drop= fac*h6/2\n",
+ "h2=h1-drop\n",
+ "first=(1-x2)*drop\n",
+ "h3=1264.1 +first\n",
+ "h4=1157 #Btu/lb\n",
+ "fac2=(drop+153)/dh6\n",
+ "print '%s' %(\"From air charts,\")\n",
+ "p2=107 #psia\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Intermediate pressure =\",p2,\"psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From air charts,\n",
+ "Intermediate pressure = 107 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 469"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the shaft ouput and engine efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "reh=1.047\n",
+ "dh6=292.8\n",
+ "x2=0.7\n",
+ "flow=98000 #lb/hr\n",
+ "loss=200 #hp\n",
+ "#calculations\n",
+ "intwork=reh*dh6*x2\n",
+ "inthp=intwork*flow/2544\n",
+ "sout=inthp-loss\n",
+ "swork=sout*2544/flow\n",
+ "seff=swork/290.1 *100\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Shaft output =\",sout,\"hp\")\n",
+ "print '%s %.1f %s' %(\"\\n Shaft engine efficiency =\",seff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Shaft output = 8066 hp\n",
+ "\n",
+ " Shaft engine efficiency = 72.2 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 469"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the exit temperature and pressure\n",
+ "#Initalization of variables\n",
+ "h1=1416.4 #Btu/lb\n",
+ "h2=214.5 #Btu/lb\n",
+ "#calculations\n",
+ "hexa=h1-h2\n",
+ "print '%s' %(\"From Air tables,\")\n",
+ "pe=20 #psia\n",
+ "te=321.5 #F\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Exit Pressure =\",pe,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Exit temperature =\",te,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From Air tables,\n",
+ "Exit Pressure = 20 psia\n",
+ "\n",
+ " Exit temperature = 321.5 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 470"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the steam rate required\n",
+ "#Initalization of variables\n",
+ "flow=98000. #lb/hr\n",
+ "loss=200. #hp\n",
+ "x= 0.11 #percent\n",
+ "shp=3000. #hp\n",
+ "#calculations\n",
+ "sflow = x*flow\n",
+ "sflow2= sflow + (flow-sflow)*shp/8060.\n",
+ "srate=sflow2/shp\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Steam rate required =\",srate,\" lb/hp-hr\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Steam rate required = 14.41 lb/hp-hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_21_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_21_2.ipynb new file mode 100755 index 00000000..567cdacb --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_21_2.ipynb @@ -0,0 +1,438 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:6b7b3e2ab4fd666f452b57925a83681d6f79a5b142e4777bdab089506c8a15bb"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 21 - Steam Turbines"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 456"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the flow rate\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "p2=190. #psia\n",
+ "p1=110. #psia\n",
+ "v1=2.456 \n",
+ "k=1.3\n",
+ "J=778.\n",
+ "A2=1.2 #in^2\n",
+ "#calculations\n",
+ "v2=v1*math.pow(p2/p1,(1/k))\n",
+ "dh=k/(k-1) *144/J *(p2*v1-p1*v2)\n",
+ "Vex=223.8*math.sqrt(dh)\n",
+ "m=A2*Vex/(144.*v2)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Rate of flow =\",m,\"lb/sec\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate of flow = 3.32 lb/sec\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 458"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the rate of flow\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "h1=1205.8 #Btu/lb\n",
+ "s2=1.5594\n",
+ "sf=1.5948\n",
+ "sfg=1.1117\n",
+ "hf=1188.9 #Btu/lb\n",
+ "hfg=883.2 #Btu/lb\n",
+ "vf=4.049\n",
+ "vfg=vf-0.018\n",
+ "k=1.3\n",
+ "J=778\n",
+ "A2=1.2 #in^2\n",
+ "#calculations\n",
+ "x2=-(s2-sf)/sfg\n",
+ "h2=hf-x2*hfg\n",
+ "v2=vf-x2*vfg\n",
+ "dh=h1-h2\n",
+ "Vex=223.8*math.sqrt(dh)\n",
+ "m=A2*Vex/(144*v2)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Rate of flow =\",m,\"lb/sec\")\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate of flow = 3.19 lb/sec\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 462"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the blade work, angle and efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "alp=14*math.pi/180. #degrees\n",
+ "vb=900. #ft/s\n",
+ "v1=2200. #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "vrc=v1*math.cos(alp) - vb\n",
+ "W=(2*vrc)/g *vb\n",
+ "eta=W/(v1*v1/ (2*g)) *100.\n",
+ "bet=math.atan(v1*math.sin(alp) /vrc)*180/math.pi\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Blade work =\",W,\" ft-lb/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Efficiency =\",eta,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Blade angle =\",bet,\" degrees\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Blade work = 69082 ft-lb/lb\n",
+ "\n",
+ " Efficiency = 91.8 percent\n",
+ "\n",
+ " Blade angle = 23.3 degrees\n",
+ "The answers are a bit different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 463"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the blade work and efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "v1=1234. #ft/s\n",
+ "v2=532. #ft/s \n",
+ "kb=0.92\n",
+ "alp=20. #degrees\n",
+ "ve=900. #ft/s\n",
+ "r=2200. #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "vr=math.sqrt(v1*v1 +v2*v2)\n",
+ "vr2=vr*kb\n",
+ "vrc=vr2*math.cos(alp*math.pi/180.)\n",
+ "W=(v1+vrc)*ve/g\n",
+ "eta=W/(r*r /(2*g)) *100.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Blade work =\",W,\"ft-lb/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Efficiency =\",eta,\" percent\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Blade work = 67023 ft-lb/lb\n",
+ "\n",
+ " Efficiency = 89.1 percent\n",
+ "The answers are a bit different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 464"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the blade reheat in both cases\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "v1=1234.\n",
+ "v2=532.\n",
+ "kb=0.92\n",
+ "alp=20*math.pi/180. #degrees\n",
+ "ve=900.\n",
+ "r=2200. #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "J=778.\n",
+ "w=67000.\n",
+ "#calculations\n",
+ "vr=math.sqrt(v1*v1 +v2*v2)\n",
+ "vr2=vr*kb\n",
+ "vrc=vr2*math.cos(alp)\n",
+ "reheat=(vr*vr - vr2*vr2 )/(2*g*J)\n",
+ "v22=math.sqrt((vrc-ve)*(vrc-ve) +(vr2*math.sin(alp))*(vr2*math.sin(alp)))\n",
+ "ein=r*r /(2*g*J)\n",
+ "eout=w/J + v22*v22 /(2*g*J)\n",
+ "re2=ein-eout\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"\\n In case 1, Blade reheat =\",reheat,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Blade reheat =\",re2,\" Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " In case 1, Blade reheat = 5.54 Btu/lb\n",
+ "\n",
+ " In case 2, Blade reheat = 5.6 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 467"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the intermediate pressure\n",
+ "#Initalization of variables\n",
+ "h1=1416.4\n",
+ "s1=1.6842\n",
+ "sf=1.7319\n",
+ "sfg=1.3962\n",
+ "fac=1.05\n",
+ "x2=0.7\n",
+ "#calculations\n",
+ "x6=-(s1-sf)/sfg\n",
+ "h6=1156.3 - x6*960.1\n",
+ "dh6=h1-h6\n",
+ "drop= fac*h6/2\n",
+ "h2=h1-drop\n",
+ "first=(1-x2)*drop\n",
+ "h3=1264.1 +first\n",
+ "h4=1157 #Btu/lb\n",
+ "fac2=(drop+153)/dh6\n",
+ "print '%s' %(\"From air charts,\")\n",
+ "p2=107 #psia\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Intermediate pressure =\",p2,\"psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From air charts,\n",
+ "Intermediate pressure = 107 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 469"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the shaft ouput and engine efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "reh=1.047\n",
+ "dh6=292.8\n",
+ "x2=0.7\n",
+ "flow=98000 #lb/hr\n",
+ "loss=200 #hp\n",
+ "#calculations\n",
+ "intwork=reh*dh6*x2\n",
+ "inthp=intwork*flow/2544\n",
+ "sout=inthp-loss\n",
+ "swork=sout*2544/flow\n",
+ "seff=swork/290.1 *100\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Shaft output =\",sout,\"hp\")\n",
+ "print '%s %.1f %s' %(\"\\n Shaft engine efficiency =\",seff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Shaft output = 8066 hp\n",
+ "\n",
+ " Shaft engine efficiency = 72.2 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 469"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the exit temperature and pressure\n",
+ "#Initalization of variables\n",
+ "h1=1416.4 #Btu/lb\n",
+ "h2=214.5 #Btu/lb\n",
+ "#calculations\n",
+ "hexa=h1-h2\n",
+ "print '%s' %(\"From Air tables,\")\n",
+ "pe=20 #psia\n",
+ "te=321.5 #F\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Exit Pressure =\",pe,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Exit temperature =\",te,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From Air tables,\n",
+ "Exit Pressure = 20 psia\n",
+ "\n",
+ " Exit temperature = 321.5 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 470"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the steam rate required\n",
+ "#Initalization of variables\n",
+ "flow=98000. #lb/hr\n",
+ "loss=200. #hp\n",
+ "x= 0.11 #percent\n",
+ "shp=3000. #hp\n",
+ "#calculations\n",
+ "sflow = x*flow\n",
+ "sflow2= sflow + (flow-sflow)*shp/8060.\n",
+ "srate=sflow2/shp\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Steam rate required =\",srate,\" lb/hp-hr\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Steam rate required = 14.41 lb/hp-hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_21_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_21_3.ipynb new file mode 100755 index 00000000..567cdacb --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_21_3.ipynb @@ -0,0 +1,438 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:6b7b3e2ab4fd666f452b57925a83681d6f79a5b142e4777bdab089506c8a15bb"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 21 - Steam Turbines"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 456"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the flow rate\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "p2=190. #psia\n",
+ "p1=110. #psia\n",
+ "v1=2.456 \n",
+ "k=1.3\n",
+ "J=778.\n",
+ "A2=1.2 #in^2\n",
+ "#calculations\n",
+ "v2=v1*math.pow(p2/p1,(1/k))\n",
+ "dh=k/(k-1) *144/J *(p2*v1-p1*v2)\n",
+ "Vex=223.8*math.sqrt(dh)\n",
+ "m=A2*Vex/(144.*v2)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Rate of flow =\",m,\"lb/sec\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate of flow = 3.32 lb/sec\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 458"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the rate of flow\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "h1=1205.8 #Btu/lb\n",
+ "s2=1.5594\n",
+ "sf=1.5948\n",
+ "sfg=1.1117\n",
+ "hf=1188.9 #Btu/lb\n",
+ "hfg=883.2 #Btu/lb\n",
+ "vf=4.049\n",
+ "vfg=vf-0.018\n",
+ "k=1.3\n",
+ "J=778\n",
+ "A2=1.2 #in^2\n",
+ "#calculations\n",
+ "x2=-(s2-sf)/sfg\n",
+ "h2=hf-x2*hfg\n",
+ "v2=vf-x2*vfg\n",
+ "dh=h1-h2\n",
+ "Vex=223.8*math.sqrt(dh)\n",
+ "m=A2*Vex/(144*v2)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Rate of flow =\",m,\"lb/sec\")\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rate of flow = 3.19 lb/sec\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 462"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the blade work, angle and efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "alp=14*math.pi/180. #degrees\n",
+ "vb=900. #ft/s\n",
+ "v1=2200. #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "vrc=v1*math.cos(alp) - vb\n",
+ "W=(2*vrc)/g *vb\n",
+ "eta=W/(v1*v1/ (2*g)) *100.\n",
+ "bet=math.atan(v1*math.sin(alp) /vrc)*180/math.pi\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Blade work =\",W,\" ft-lb/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Efficiency =\",eta,\" percent\")\n",
+ "print '%s %.1f %s' %(\"\\n Blade angle =\",bet,\" degrees\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Blade work = 69082 ft-lb/lb\n",
+ "\n",
+ " Efficiency = 91.8 percent\n",
+ "\n",
+ " Blade angle = 23.3 degrees\n",
+ "The answers are a bit different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 463"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the blade work and efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "v1=1234. #ft/s\n",
+ "v2=532. #ft/s \n",
+ "kb=0.92\n",
+ "alp=20. #degrees\n",
+ "ve=900. #ft/s\n",
+ "r=2200. #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "#calculations\n",
+ "vr=math.sqrt(v1*v1 +v2*v2)\n",
+ "vr2=vr*kb\n",
+ "vrc=vr2*math.cos(alp*math.pi/180.)\n",
+ "W=(v1+vrc)*ve/g\n",
+ "eta=W/(r*r /(2*g)) *100.\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Blade work =\",W,\"ft-lb/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n Efficiency =\",eta,\" percent\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Blade work = 67023 ft-lb/lb\n",
+ "\n",
+ " Efficiency = 89.1 percent\n",
+ "The answers are a bit different due to rounding off error\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 464"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the blade reheat in both cases\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "v1=1234.\n",
+ "v2=532.\n",
+ "kb=0.92\n",
+ "alp=20*math.pi/180. #degrees\n",
+ "ve=900.\n",
+ "r=2200. #ft/s\n",
+ "g=32.17 #ft/s^2\n",
+ "J=778.\n",
+ "w=67000.\n",
+ "#calculations\n",
+ "vr=math.sqrt(v1*v1 +v2*v2)\n",
+ "vr2=vr*kb\n",
+ "vrc=vr2*math.cos(alp)\n",
+ "reheat=(vr*vr - vr2*vr2 )/(2*g*J)\n",
+ "v22=math.sqrt((vrc-ve)*(vrc-ve) +(vr2*math.sin(alp))*(vr2*math.sin(alp)))\n",
+ "ein=r*r /(2*g*J)\n",
+ "eout=w/J + v22*v22 /(2*g*J)\n",
+ "re2=ein-eout\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"\\n In case 1, Blade reheat =\",reheat,\"Btu/lb\")\n",
+ "print '%s %.1f %s' %(\"\\n In case 2, Blade reheat =\",re2,\" Btu/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " In case 1, Blade reheat = 5.54 Btu/lb\n",
+ "\n",
+ " In case 2, Blade reheat = 5.6 Btu/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 467"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the intermediate pressure\n",
+ "#Initalization of variables\n",
+ "h1=1416.4\n",
+ "s1=1.6842\n",
+ "sf=1.7319\n",
+ "sfg=1.3962\n",
+ "fac=1.05\n",
+ "x2=0.7\n",
+ "#calculations\n",
+ "x6=-(s1-sf)/sfg\n",
+ "h6=1156.3 - x6*960.1\n",
+ "dh6=h1-h6\n",
+ "drop= fac*h6/2\n",
+ "h2=h1-drop\n",
+ "first=(1-x2)*drop\n",
+ "h3=1264.1 +first\n",
+ "h4=1157 #Btu/lb\n",
+ "fac2=(drop+153)/dh6\n",
+ "print '%s' %(\"From air charts,\")\n",
+ "p2=107 #psia\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Intermediate pressure =\",p2,\"psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From air charts,\n",
+ "Intermediate pressure = 107 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 469"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the shaft ouput and engine efficiency\n",
+ "#Initalization of variables\n",
+ "import math\n",
+ "reh=1.047\n",
+ "dh6=292.8\n",
+ "x2=0.7\n",
+ "flow=98000 #lb/hr\n",
+ "loss=200 #hp\n",
+ "#calculations\n",
+ "intwork=reh*dh6*x2\n",
+ "inthp=intwork*flow/2544\n",
+ "sout=inthp-loss\n",
+ "swork=sout*2544/flow\n",
+ "seff=swork/290.1 *100\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Shaft output =\",sout,\"hp\")\n",
+ "print '%s %.1f %s' %(\"\\n Shaft engine efficiency =\",seff,\"percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Shaft output = 8066 hp\n",
+ "\n",
+ " Shaft engine efficiency = 72.2 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 469"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the exit temperature and pressure\n",
+ "#Initalization of variables\n",
+ "h1=1416.4 #Btu/lb\n",
+ "h2=214.5 #Btu/lb\n",
+ "#calculations\n",
+ "hexa=h1-h2\n",
+ "print '%s' %(\"From Air tables,\")\n",
+ "pe=20 #psia\n",
+ "te=321.5 #F\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Exit Pressure =\",pe,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Exit temperature =\",te,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From Air tables,\n",
+ "Exit Pressure = 20 psia\n",
+ "\n",
+ " Exit temperature = 321.5 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9 - Pg 470"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the steam rate required\n",
+ "#Initalization of variables\n",
+ "flow=98000. #lb/hr\n",
+ "loss=200. #hp\n",
+ "x= 0.11 #percent\n",
+ "shp=3000. #hp\n",
+ "#calculations\n",
+ "sflow = x*flow\n",
+ "sflow2= sflow + (flow-sflow)*shp/8060.\n",
+ "srate=sflow2/shp\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Steam rate required =\",srate,\" lb/hp-hr\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Steam rate required = 14.41 lb/hp-hr\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_22.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_22.ipynb new file mode 100755 index 00000000..d43c8cae --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_22.ipynb @@ -0,0 +1,333 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:4ce5546be38472485072968c27d4c6ae7f7b124c1af2a44e7388dbd36c855f4b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 22 - Refrigeration"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 476"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the refrigerator and heat pump cp values in both cases\n",
+ "#Initalization of variables\n",
+ "t1=45+460. #R\n",
+ "th=70+460. #R\n",
+ "t2=-200+460. #R\n",
+ "th2=100+460. #R\n",
+ "#calculations\n",
+ "cp1=t1/(th-t1)\n",
+ "cp2=th/(th-t1)\n",
+ "cp3=t2/(th2-t2)\n",
+ "cp4=th2/(th2-t2)\n",
+ "#results\n",
+ "print '%s %.1f' %(\"In case 1, Refrigerator cp = \",cp1)\n",
+ "print '%s %.1f' %(\"\\n In case 1, Heat pump cp = \",cp2)\n",
+ "print '%s %.3f' %(\"\\n In case 2, Refrigerator cp = \",cp3)\n",
+ "print '%s %.3f' %(\"\\n In case 2, Heat pump cp = \",cp4)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1, Refrigerator cp = 20.2\n",
+ "\n",
+ " In case 1, Heat pump cp = 21.2\n",
+ "\n",
+ " In case 2, Refrigerator cp = 0.867\n",
+ "\n",
+ " In case 2, Heat pump cp = 1.867\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 479"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the coefficient of performance in wet and dry compression\n",
+ "#Initalization of variables\n",
+ "h3=85.282 #Btu/lb\n",
+ "s2=0.16392\n",
+ "sf=0.16798\n",
+ "#calculations\n",
+ "sfg=sf-0.023954\n",
+ "x3=-(s2-sf)/sfg\n",
+ "h2=78.335 - x3*67.651\n",
+ "h4=26.365 #Btu/lb\n",
+ "h1=h4\n",
+ "ref=h2-h1\n",
+ "work=h3-h2\n",
+ "cp1=ref/work\n",
+ "h2d=78.355\n",
+ "h1d=26.365 #Btu/lb\n",
+ "h3d=87.495 #Btu/lb\n",
+ "ref2=h2d-h1d\n",
+ "work2=h3d-h2d\n",
+ "cp2=ref2/work2\n",
+ "#results\n",
+ "print '%s %.3f' %(\"\\n Coefficient of performance in wet compression = \",cp1)\n",
+ "print '%s %.3f' %(\"\\n Coefficient of performance in dry compression = \",cp2)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " Coefficient of performance in wet compression = 5.654\n",
+ "\n",
+ " Coefficient of performance in dry compression = 5.688\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 480"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the tonnage value in both cases\n",
+ "#Initalization of variables\n",
+ "h1=24.973 #Btu/lb\n",
+ "h2=81.436 #Btu/lb\n",
+ "cfm=200 #cfm\n",
+ "v2=0.77357\n",
+ "v3=3.8750\n",
+ "h4=72.913\n",
+ "#calculations\n",
+ "mass=cfm/v2\n",
+ "ref=h2-h1\n",
+ "tonnage=mass*ref/cfm\n",
+ "mass2=cfm/v3\n",
+ "ref2=h4-h1\n",
+ "tonnage2=mass2*ref2/cfm\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"In case 1,Tonnage =\",tonnage,\" tons\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2,Tonnage =\",tonnage2,\" tons\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1,Tonnage = 73.0 tons\n",
+ "\n",
+ " In case 2,Tonnage = 12.37 tons\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 481"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the refirgeration, shaft hp and cop\n",
+ "#Initalization of variables\n",
+ "h2d=93.410 #Btu/lb\n",
+ "h1=80.740 #Btu/lb\n",
+ "x=0.75\n",
+ "PD=160\n",
+ "vol=0.82\n",
+ "v1=1.7213\n",
+ "w2=80.156\n",
+ "w1=27.3\n",
+ "#calculations\n",
+ "twork=h2d-h1\n",
+ "swork=twork/x\n",
+ "flow=PD*vol/v1\n",
+ "ref=flow*(w2-w1)/200.\n",
+ "shp= flow*swork/42.4\n",
+ "cop=(w2-w1)/swork\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Refrigeration =\",ref,\" tons\")\n",
+ "print '%s %.1f %s' %(\"\\n Shaft hp=\",shp,\" hp\")\n",
+ "print '%s %.2f' %(\"\\n Coefficient of performance = \",cop)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Refrigeration = 20.1 tons\n",
+ "\n",
+ " Shaft hp= 30.4 hp\n",
+ "\n",
+ " Coefficient of performance = 3.13\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 488"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the cop\n",
+ "#Initalization of variables\n",
+ "mc=3000 #lb\n",
+ "hv=1080.2 #Btu/lb\n",
+ "hfe=26.06 #Btu/lb\n",
+ "hfp=10.05 #Btu/lb\n",
+ "x=0.7\n",
+ "#calculations\n",
+ "mv=(mc*hfp-mc*hfe)/(hfe-hv)\n",
+ "dh=145.4 #Btu/lb\n",
+ "chp=dh*mv/(x*42.4)\n",
+ "cop=mc*(hfe-hfp)/(chp*42.4)\n",
+ "#results\n",
+ "print '%s %.2f' %(\"Coefficient of performace = \",cop)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Coefficient of performace = 5.07\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 493"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the power required\n",
+ "#Initalization of variables\n",
+ "loss=80000. #Btu/lb\n",
+ "t=560. #R\n",
+ "#calculations\n",
+ "ratio=t/68.\n",
+ "power=loss/(ratio*2544.)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Power = \",power,\" hp\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Power = 3.82 hp\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 493"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the power required\n",
+ "#Initalization of variables\n",
+ "loss=2*80000. #Btu/lb\n",
+ "tb=72. #F\n",
+ "to=12. #F\n",
+ "to2=42. #F\n",
+ "tf=104.+460 #R\n",
+ "#calculations\n",
+ "ratio=tf/(tf-460.)\n",
+ "power=loss/(2544.*ratio)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Power =\",power,\" hp\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Power = 11.6 hp\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_22_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_22_1.ipynb new file mode 100755 index 00000000..d43c8cae --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_22_1.ipynb @@ -0,0 +1,333 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:4ce5546be38472485072968c27d4c6ae7f7b124c1af2a44e7388dbd36c855f4b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 22 - Refrigeration"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 476"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the refrigerator and heat pump cp values in both cases\n",
+ "#Initalization of variables\n",
+ "t1=45+460. #R\n",
+ "th=70+460. #R\n",
+ "t2=-200+460. #R\n",
+ "th2=100+460. #R\n",
+ "#calculations\n",
+ "cp1=t1/(th-t1)\n",
+ "cp2=th/(th-t1)\n",
+ "cp3=t2/(th2-t2)\n",
+ "cp4=th2/(th2-t2)\n",
+ "#results\n",
+ "print '%s %.1f' %(\"In case 1, Refrigerator cp = \",cp1)\n",
+ "print '%s %.1f' %(\"\\n In case 1, Heat pump cp = \",cp2)\n",
+ "print '%s %.3f' %(\"\\n In case 2, Refrigerator cp = \",cp3)\n",
+ "print '%s %.3f' %(\"\\n In case 2, Heat pump cp = \",cp4)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1, Refrigerator cp = 20.2\n",
+ "\n",
+ " In case 1, Heat pump cp = 21.2\n",
+ "\n",
+ " In case 2, Refrigerator cp = 0.867\n",
+ "\n",
+ " In case 2, Heat pump cp = 1.867\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 479"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the coefficient of performance in wet and dry compression\n",
+ "#Initalization of variables\n",
+ "h3=85.282 #Btu/lb\n",
+ "s2=0.16392\n",
+ "sf=0.16798\n",
+ "#calculations\n",
+ "sfg=sf-0.023954\n",
+ "x3=-(s2-sf)/sfg\n",
+ "h2=78.335 - x3*67.651\n",
+ "h4=26.365 #Btu/lb\n",
+ "h1=h4\n",
+ "ref=h2-h1\n",
+ "work=h3-h2\n",
+ "cp1=ref/work\n",
+ "h2d=78.355\n",
+ "h1d=26.365 #Btu/lb\n",
+ "h3d=87.495 #Btu/lb\n",
+ "ref2=h2d-h1d\n",
+ "work2=h3d-h2d\n",
+ "cp2=ref2/work2\n",
+ "#results\n",
+ "print '%s %.3f' %(\"\\n Coefficient of performance in wet compression = \",cp1)\n",
+ "print '%s %.3f' %(\"\\n Coefficient of performance in dry compression = \",cp2)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " Coefficient of performance in wet compression = 5.654\n",
+ "\n",
+ " Coefficient of performance in dry compression = 5.688\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 480"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the tonnage value in both cases\n",
+ "#Initalization of variables\n",
+ "h1=24.973 #Btu/lb\n",
+ "h2=81.436 #Btu/lb\n",
+ "cfm=200 #cfm\n",
+ "v2=0.77357\n",
+ "v3=3.8750\n",
+ "h4=72.913\n",
+ "#calculations\n",
+ "mass=cfm/v2\n",
+ "ref=h2-h1\n",
+ "tonnage=mass*ref/cfm\n",
+ "mass2=cfm/v3\n",
+ "ref2=h4-h1\n",
+ "tonnage2=mass2*ref2/cfm\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"In case 1,Tonnage =\",tonnage,\" tons\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2,Tonnage =\",tonnage2,\" tons\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1,Tonnage = 73.0 tons\n",
+ "\n",
+ " In case 2,Tonnage = 12.37 tons\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 481"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the refirgeration, shaft hp and cop\n",
+ "#Initalization of variables\n",
+ "h2d=93.410 #Btu/lb\n",
+ "h1=80.740 #Btu/lb\n",
+ "x=0.75\n",
+ "PD=160\n",
+ "vol=0.82\n",
+ "v1=1.7213\n",
+ "w2=80.156\n",
+ "w1=27.3\n",
+ "#calculations\n",
+ "twork=h2d-h1\n",
+ "swork=twork/x\n",
+ "flow=PD*vol/v1\n",
+ "ref=flow*(w2-w1)/200.\n",
+ "shp= flow*swork/42.4\n",
+ "cop=(w2-w1)/swork\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Refrigeration =\",ref,\" tons\")\n",
+ "print '%s %.1f %s' %(\"\\n Shaft hp=\",shp,\" hp\")\n",
+ "print '%s %.2f' %(\"\\n Coefficient of performance = \",cop)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Refrigeration = 20.1 tons\n",
+ "\n",
+ " Shaft hp= 30.4 hp\n",
+ "\n",
+ " Coefficient of performance = 3.13\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 488"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the cop\n",
+ "#Initalization of variables\n",
+ "mc=3000 #lb\n",
+ "hv=1080.2 #Btu/lb\n",
+ "hfe=26.06 #Btu/lb\n",
+ "hfp=10.05 #Btu/lb\n",
+ "x=0.7\n",
+ "#calculations\n",
+ "mv=(mc*hfp-mc*hfe)/(hfe-hv)\n",
+ "dh=145.4 #Btu/lb\n",
+ "chp=dh*mv/(x*42.4)\n",
+ "cop=mc*(hfe-hfp)/(chp*42.4)\n",
+ "#results\n",
+ "print '%s %.2f' %(\"Coefficient of performace = \",cop)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Coefficient of performace = 5.07\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 493"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the power required\n",
+ "#Initalization of variables\n",
+ "loss=80000. #Btu/lb\n",
+ "t=560. #R\n",
+ "#calculations\n",
+ "ratio=t/68.\n",
+ "power=loss/(ratio*2544.)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Power = \",power,\" hp\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Power = 3.82 hp\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 493"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the power required\n",
+ "#Initalization of variables\n",
+ "loss=2*80000. #Btu/lb\n",
+ "tb=72. #F\n",
+ "to=12. #F\n",
+ "to2=42. #F\n",
+ "tf=104.+460 #R\n",
+ "#calculations\n",
+ "ratio=tf/(tf-460.)\n",
+ "power=loss/(2544.*ratio)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Power =\",power,\" hp\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Power = 11.6 hp\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_22_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_22_2.ipynb new file mode 100755 index 00000000..d43c8cae --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_22_2.ipynb @@ -0,0 +1,333 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:4ce5546be38472485072968c27d4c6ae7f7b124c1af2a44e7388dbd36c855f4b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 22 - Refrigeration"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 476"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the refrigerator and heat pump cp values in both cases\n",
+ "#Initalization of variables\n",
+ "t1=45+460. #R\n",
+ "th=70+460. #R\n",
+ "t2=-200+460. #R\n",
+ "th2=100+460. #R\n",
+ "#calculations\n",
+ "cp1=t1/(th-t1)\n",
+ "cp2=th/(th-t1)\n",
+ "cp3=t2/(th2-t2)\n",
+ "cp4=th2/(th2-t2)\n",
+ "#results\n",
+ "print '%s %.1f' %(\"In case 1, Refrigerator cp = \",cp1)\n",
+ "print '%s %.1f' %(\"\\n In case 1, Heat pump cp = \",cp2)\n",
+ "print '%s %.3f' %(\"\\n In case 2, Refrigerator cp = \",cp3)\n",
+ "print '%s %.3f' %(\"\\n In case 2, Heat pump cp = \",cp4)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1, Refrigerator cp = 20.2\n",
+ "\n",
+ " In case 1, Heat pump cp = 21.2\n",
+ "\n",
+ " In case 2, Refrigerator cp = 0.867\n",
+ "\n",
+ " In case 2, Heat pump cp = 1.867\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 479"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the coefficient of performance in wet and dry compression\n",
+ "#Initalization of variables\n",
+ "h3=85.282 #Btu/lb\n",
+ "s2=0.16392\n",
+ "sf=0.16798\n",
+ "#calculations\n",
+ "sfg=sf-0.023954\n",
+ "x3=-(s2-sf)/sfg\n",
+ "h2=78.335 - x3*67.651\n",
+ "h4=26.365 #Btu/lb\n",
+ "h1=h4\n",
+ "ref=h2-h1\n",
+ "work=h3-h2\n",
+ "cp1=ref/work\n",
+ "h2d=78.355\n",
+ "h1d=26.365 #Btu/lb\n",
+ "h3d=87.495 #Btu/lb\n",
+ "ref2=h2d-h1d\n",
+ "work2=h3d-h2d\n",
+ "cp2=ref2/work2\n",
+ "#results\n",
+ "print '%s %.3f' %(\"\\n Coefficient of performance in wet compression = \",cp1)\n",
+ "print '%s %.3f' %(\"\\n Coefficient of performance in dry compression = \",cp2)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " Coefficient of performance in wet compression = 5.654\n",
+ "\n",
+ " Coefficient of performance in dry compression = 5.688\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 480"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the tonnage value in both cases\n",
+ "#Initalization of variables\n",
+ "h1=24.973 #Btu/lb\n",
+ "h2=81.436 #Btu/lb\n",
+ "cfm=200 #cfm\n",
+ "v2=0.77357\n",
+ "v3=3.8750\n",
+ "h4=72.913\n",
+ "#calculations\n",
+ "mass=cfm/v2\n",
+ "ref=h2-h1\n",
+ "tonnage=mass*ref/cfm\n",
+ "mass2=cfm/v3\n",
+ "ref2=h4-h1\n",
+ "tonnage2=mass2*ref2/cfm\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"In case 1,Tonnage =\",tonnage,\" tons\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2,Tonnage =\",tonnage2,\" tons\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1,Tonnage = 73.0 tons\n",
+ "\n",
+ " In case 2,Tonnage = 12.37 tons\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 481"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the refirgeration, shaft hp and cop\n",
+ "#Initalization of variables\n",
+ "h2d=93.410 #Btu/lb\n",
+ "h1=80.740 #Btu/lb\n",
+ "x=0.75\n",
+ "PD=160\n",
+ "vol=0.82\n",
+ "v1=1.7213\n",
+ "w2=80.156\n",
+ "w1=27.3\n",
+ "#calculations\n",
+ "twork=h2d-h1\n",
+ "swork=twork/x\n",
+ "flow=PD*vol/v1\n",
+ "ref=flow*(w2-w1)/200.\n",
+ "shp= flow*swork/42.4\n",
+ "cop=(w2-w1)/swork\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Refrigeration =\",ref,\" tons\")\n",
+ "print '%s %.1f %s' %(\"\\n Shaft hp=\",shp,\" hp\")\n",
+ "print '%s %.2f' %(\"\\n Coefficient of performance = \",cop)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Refrigeration = 20.1 tons\n",
+ "\n",
+ " Shaft hp= 30.4 hp\n",
+ "\n",
+ " Coefficient of performance = 3.13\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 488"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the cop\n",
+ "#Initalization of variables\n",
+ "mc=3000 #lb\n",
+ "hv=1080.2 #Btu/lb\n",
+ "hfe=26.06 #Btu/lb\n",
+ "hfp=10.05 #Btu/lb\n",
+ "x=0.7\n",
+ "#calculations\n",
+ "mv=(mc*hfp-mc*hfe)/(hfe-hv)\n",
+ "dh=145.4 #Btu/lb\n",
+ "chp=dh*mv/(x*42.4)\n",
+ "cop=mc*(hfe-hfp)/(chp*42.4)\n",
+ "#results\n",
+ "print '%s %.2f' %(\"Coefficient of performace = \",cop)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Coefficient of performace = 5.07\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 493"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the power required\n",
+ "#Initalization of variables\n",
+ "loss=80000. #Btu/lb\n",
+ "t=560. #R\n",
+ "#calculations\n",
+ "ratio=t/68.\n",
+ "power=loss/(ratio*2544.)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Power = \",power,\" hp\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Power = 3.82 hp\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 493"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the power required\n",
+ "#Initalization of variables\n",
+ "loss=2*80000. #Btu/lb\n",
+ "tb=72. #F\n",
+ "to=12. #F\n",
+ "to2=42. #F\n",
+ "tf=104.+460 #R\n",
+ "#calculations\n",
+ "ratio=tf/(tf-460.)\n",
+ "power=loss/(2544.*ratio)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Power =\",power,\" hp\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Power = 11.6 hp\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_22_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_22_3.ipynb new file mode 100755 index 00000000..d43c8cae --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_22_3.ipynb @@ -0,0 +1,333 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:4ce5546be38472485072968c27d4c6ae7f7b124c1af2a44e7388dbd36c855f4b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 22 - Refrigeration"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 476"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the refrigerator and heat pump cp values in both cases\n",
+ "#Initalization of variables\n",
+ "t1=45+460. #R\n",
+ "th=70+460. #R\n",
+ "t2=-200+460. #R\n",
+ "th2=100+460. #R\n",
+ "#calculations\n",
+ "cp1=t1/(th-t1)\n",
+ "cp2=th/(th-t1)\n",
+ "cp3=t2/(th2-t2)\n",
+ "cp4=th2/(th2-t2)\n",
+ "#results\n",
+ "print '%s %.1f' %(\"In case 1, Refrigerator cp = \",cp1)\n",
+ "print '%s %.1f' %(\"\\n In case 1, Heat pump cp = \",cp2)\n",
+ "print '%s %.3f' %(\"\\n In case 2, Refrigerator cp = \",cp3)\n",
+ "print '%s %.3f' %(\"\\n In case 2, Heat pump cp = \",cp4)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1, Refrigerator cp = 20.2\n",
+ "\n",
+ " In case 1, Heat pump cp = 21.2\n",
+ "\n",
+ " In case 2, Refrigerator cp = 0.867\n",
+ "\n",
+ " In case 2, Heat pump cp = 1.867\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 479"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the coefficient of performance in wet and dry compression\n",
+ "#Initalization of variables\n",
+ "h3=85.282 #Btu/lb\n",
+ "s2=0.16392\n",
+ "sf=0.16798\n",
+ "#calculations\n",
+ "sfg=sf-0.023954\n",
+ "x3=-(s2-sf)/sfg\n",
+ "h2=78.335 - x3*67.651\n",
+ "h4=26.365 #Btu/lb\n",
+ "h1=h4\n",
+ "ref=h2-h1\n",
+ "work=h3-h2\n",
+ "cp1=ref/work\n",
+ "h2d=78.355\n",
+ "h1d=26.365 #Btu/lb\n",
+ "h3d=87.495 #Btu/lb\n",
+ "ref2=h2d-h1d\n",
+ "work2=h3d-h2d\n",
+ "cp2=ref2/work2\n",
+ "#results\n",
+ "print '%s %.3f' %(\"\\n Coefficient of performance in wet compression = \",cp1)\n",
+ "print '%s %.3f' %(\"\\n Coefficient of performance in dry compression = \",cp2)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " Coefficient of performance in wet compression = 5.654\n",
+ "\n",
+ " Coefficient of performance in dry compression = 5.688\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 480"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the tonnage value in both cases\n",
+ "#Initalization of variables\n",
+ "h1=24.973 #Btu/lb\n",
+ "h2=81.436 #Btu/lb\n",
+ "cfm=200 #cfm\n",
+ "v2=0.77357\n",
+ "v3=3.8750\n",
+ "h4=72.913\n",
+ "#calculations\n",
+ "mass=cfm/v2\n",
+ "ref=h2-h1\n",
+ "tonnage=mass*ref/cfm\n",
+ "mass2=cfm/v3\n",
+ "ref2=h4-h1\n",
+ "tonnage2=mass2*ref2/cfm\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"In case 1,Tonnage =\",tonnage,\" tons\")\n",
+ "print '%s %.2f %s' %(\"\\n In case 2,Tonnage =\",tonnage2,\" tons\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In case 1,Tonnage = 73.0 tons\n",
+ "\n",
+ " In case 2,Tonnage = 12.37 tons\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 481"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the refirgeration, shaft hp and cop\n",
+ "#Initalization of variables\n",
+ "h2d=93.410 #Btu/lb\n",
+ "h1=80.740 #Btu/lb\n",
+ "x=0.75\n",
+ "PD=160\n",
+ "vol=0.82\n",
+ "v1=1.7213\n",
+ "w2=80.156\n",
+ "w1=27.3\n",
+ "#calculations\n",
+ "twork=h2d-h1\n",
+ "swork=twork/x\n",
+ "flow=PD*vol/v1\n",
+ "ref=flow*(w2-w1)/200.\n",
+ "shp= flow*swork/42.4\n",
+ "cop=(w2-w1)/swork\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Refrigeration =\",ref,\" tons\")\n",
+ "print '%s %.1f %s' %(\"\\n Shaft hp=\",shp,\" hp\")\n",
+ "print '%s %.2f' %(\"\\n Coefficient of performance = \",cop)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Refrigeration = 20.1 tons\n",
+ "\n",
+ " Shaft hp= 30.4 hp\n",
+ "\n",
+ " Coefficient of performance = 3.13\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 488"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the cop\n",
+ "#Initalization of variables\n",
+ "mc=3000 #lb\n",
+ "hv=1080.2 #Btu/lb\n",
+ "hfe=26.06 #Btu/lb\n",
+ "hfp=10.05 #Btu/lb\n",
+ "x=0.7\n",
+ "#calculations\n",
+ "mv=(mc*hfp-mc*hfe)/(hfe-hv)\n",
+ "dh=145.4 #Btu/lb\n",
+ "chp=dh*mv/(x*42.4)\n",
+ "cop=mc*(hfe-hfp)/(chp*42.4)\n",
+ "#results\n",
+ "print '%s %.2f' %(\"Coefficient of performace = \",cop)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Coefficient of performace = 5.07\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 493"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the power required\n",
+ "#Initalization of variables\n",
+ "loss=80000. #Btu/lb\n",
+ "t=560. #R\n",
+ "#calculations\n",
+ "ratio=t/68.\n",
+ "power=loss/(ratio*2544.)\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Power = \",power,\" hp\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Power = 3.82 hp\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 493"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the power required\n",
+ "#Initalization of variables\n",
+ "loss=2*80000. #Btu/lb\n",
+ "tb=72. #F\n",
+ "to=12. #F\n",
+ "to2=42. #F\n",
+ "tf=104.+460 #R\n",
+ "#calculations\n",
+ "ratio=tf/(tf-460.)\n",
+ "power=loss/(2544.*ratio)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Power =\",power,\" hp\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Power = 11.6 hp\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_23.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_23.ipynb new file mode 100755 index 00000000..48adb58b --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_23.ipynb @@ -0,0 +1,372 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:ed6f0c315c457295237376ededd9c5992635644b7125968e2389e7033f5e62be"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 23 - Gas Vapor mixtures"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 505"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the specific humidity\n",
+ "#Initalization of variables\n",
+ "pv=0.3631 #psia\n",
+ "pa=14.7 #psia\n",
+ "cp=0.24\n",
+ "tw=70 #F\n",
+ "td=80 #F\n",
+ "hv1=1096.6 #Btu/lb\n",
+ "hfb=38.06 #Btu/lb\n",
+ "#calculations\n",
+ "sh=0.622*pv/(pa-pv)\n",
+ "sh1=(cp*tw -cp*td + sh*1054.3)/(hv1-hfb)\n",
+ "#results\n",
+ "print '%s %.5f %s' %(\"Specific humidity =\",sh1,\" lb/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Specific humidity = 0.01342 lb/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 509"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the relative humidity\n",
+ "#Initalization of variables\n",
+ "rel=0.9\n",
+ "p1=0.0396 #psia\n",
+ "p2=0.3631 #psia\n",
+ "#calculations\n",
+ "act=rel*p1\n",
+ "RH=act/p2 *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Relative humidity =\",RH,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Relative humidity = 9.8 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 509"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final temperature\n",
+ "#Initalization of variables\n",
+ "pa=14.2\n",
+ "rel=0.9\n",
+ "sh=0.012 #lb/lb\n",
+ "#calculations\n",
+ "pv=(pa*sh)/(0.622-sh)\n",
+ "sat=pv/rel\n",
+ "tf=64.34 #F\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"From steam tables, by interpolation, Final temperature =\",tf,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam tables, by interpolation, Final temperature = 64.34 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 509"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat rate addition per min\n",
+ "#Initalization of variables\n",
+ "pa=14.7\n",
+ "pv=0.0356\n",
+ "pv2=0.04\n",
+ "cp=0.24\n",
+ "t1=70 #F\n",
+ "t2=15 #F\n",
+ "R=53.35\n",
+ "V=8000 #ft^3\n",
+ "#calculations\n",
+ "sh=0.622*pv/(pa-pv2)\n",
+ "hm2=cp*t1+ sh*1092.3\n",
+ "hm1=cp*t2+sh*1068.4\n",
+ "Q=hm2-hm1\n",
+ "m=144*(pa-pv2)*V/(R*(t2+460.))\n",
+ "Q2=Q*m\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat added per min =\",Q2,\"Btu/min\")\n",
+ "print '%s' %(\"The answer is a bit different due to rounding off error in the textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat added per min = 8821 Btu/min\n",
+ "The answer is a bit different due to rounding off error in the textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 511"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Temperature\n",
+ "#Initalization of variables\n",
+ "rel=0.45\n",
+ "p1=0.4747 #psia\n",
+ "print '%s' %(\"From steam table data,\")\n",
+ "#calculations\n",
+ "act=rel*p1\n",
+ "t2=54.94 #F\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Temperature =\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam table data,\n",
+ "Temperature = 54.94 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 511"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate the tonnage\n",
+ "#Initalization of variables\n",
+ "rel=0.6\n",
+ "p1=0.6982 #psia\n",
+ "pa=14.7 #psia\n",
+ "t1=90 #F\n",
+ "t2=54.94 #F\n",
+ "cp=0.24\n",
+ "p2=0.2136 #psia\n",
+ "vol=4000 #ft\n",
+ "t3=538 #R\n",
+ "R=53.35\n",
+ "#calculations\n",
+ "act1=rel*p1\n",
+ "sh1=0.622*act1/(pa-act1)\n",
+ "hm1=cp*t1+sh1*1100.9\n",
+ "sh2=0.622*p2/(pa-p2)\n",
+ "hm2=cp*t2+sh2*1085.8\n",
+ "con=sh1-sh2\n",
+ "enth=con*23.01\n",
+ "heat=hm1-hm2-enth\n",
+ "mass=144*(pa-p2)*vol/(R*(t3))\n",
+ "tonnage=mass*heat/200\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Tonnage =\",tonnage,\"tons \")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Tonnage = 26.6 tons \n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 514"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the tonnage\n",
+ "#Initalization of variables\n",
+ "p1=0.541 #psia\n",
+ "rel=0.48\n",
+ "pa=14.7 #psia\n",
+ "t1=82 #F\n",
+ "cp=0.24\n",
+ "m1=0.75 #lb\n",
+ "m2=0.25 #lb\n",
+ "hm4=23.15 #Btu/lb\n",
+ "mass=291 #lb\n",
+ "#calculations\n",
+ "p2=rel*p1\n",
+ "sh=0.622*p2/(pa-p2)\n",
+ "hm1=cp*t1 + sh*1097.5\n",
+ "hm2=m1*hm1\n",
+ "hm3=m2*41.67\n",
+ "heat=hm2+hm3-hm4\n",
+ "tonnage=heat*mass/200\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Tonnage =\",tonnage,\" tons\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Tonnage = 16.35 tons\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 516"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volume of entering air and amount of make up water\n",
+ "#Initalization of variables\n",
+ "ce=0.8\n",
+ "t1=115 #F\n",
+ "tc=75 #F\n",
+ "td=85 #F\n",
+ "pa=14.7 #psia\n",
+ "p1=0.43 #psia\n",
+ "p2=0.9492 #psia\n",
+ "m1=159600\n",
+ "m2=31.65\n",
+ "R=53.35\n",
+ "T=545 #R\n",
+ "#calculations\n",
+ "t2=t1-ce*(t1-tc)\n",
+ "Pv=0.4298- (pa-p1)*(td-tc)/(2800- 1.3*tc) \n",
+ "sh1=0.622*Pv/(pa-Pv)\n",
+ "sh2=0.622 *p2/(pa-p2)\n",
+ "mda=m1/m2\n",
+ "V=mda*R*T/(144*(pa-Pv))\n",
+ "amount=mda*(sh2-sh1)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Volume of entering air =\",V,\"cfm\")\n",
+ "print '%s %.1f %s' %(\"\\n Amount of make up water =\",amount,\"lb/min\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volume of entering air = 71087 cfm\n",
+ "\n",
+ " Amount of make up water = 134.0 lb/min\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_23_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_23_1.ipynb new file mode 100755 index 00000000..48adb58b --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_23_1.ipynb @@ -0,0 +1,372 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:ed6f0c315c457295237376ededd9c5992635644b7125968e2389e7033f5e62be"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 23 - Gas Vapor mixtures"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 505"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the specific humidity\n",
+ "#Initalization of variables\n",
+ "pv=0.3631 #psia\n",
+ "pa=14.7 #psia\n",
+ "cp=0.24\n",
+ "tw=70 #F\n",
+ "td=80 #F\n",
+ "hv1=1096.6 #Btu/lb\n",
+ "hfb=38.06 #Btu/lb\n",
+ "#calculations\n",
+ "sh=0.622*pv/(pa-pv)\n",
+ "sh1=(cp*tw -cp*td + sh*1054.3)/(hv1-hfb)\n",
+ "#results\n",
+ "print '%s %.5f %s' %(\"Specific humidity =\",sh1,\" lb/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Specific humidity = 0.01342 lb/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 509"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the relative humidity\n",
+ "#Initalization of variables\n",
+ "rel=0.9\n",
+ "p1=0.0396 #psia\n",
+ "p2=0.3631 #psia\n",
+ "#calculations\n",
+ "act=rel*p1\n",
+ "RH=act/p2 *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Relative humidity =\",RH,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Relative humidity = 9.8 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 509"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final temperature\n",
+ "#Initalization of variables\n",
+ "pa=14.2\n",
+ "rel=0.9\n",
+ "sh=0.012 #lb/lb\n",
+ "#calculations\n",
+ "pv=(pa*sh)/(0.622-sh)\n",
+ "sat=pv/rel\n",
+ "tf=64.34 #F\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"From steam tables, by interpolation, Final temperature =\",tf,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam tables, by interpolation, Final temperature = 64.34 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 509"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat rate addition per min\n",
+ "#Initalization of variables\n",
+ "pa=14.7\n",
+ "pv=0.0356\n",
+ "pv2=0.04\n",
+ "cp=0.24\n",
+ "t1=70 #F\n",
+ "t2=15 #F\n",
+ "R=53.35\n",
+ "V=8000 #ft^3\n",
+ "#calculations\n",
+ "sh=0.622*pv/(pa-pv2)\n",
+ "hm2=cp*t1+ sh*1092.3\n",
+ "hm1=cp*t2+sh*1068.4\n",
+ "Q=hm2-hm1\n",
+ "m=144*(pa-pv2)*V/(R*(t2+460.))\n",
+ "Q2=Q*m\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat added per min =\",Q2,\"Btu/min\")\n",
+ "print '%s' %(\"The answer is a bit different due to rounding off error in the textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat added per min = 8821 Btu/min\n",
+ "The answer is a bit different due to rounding off error in the textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 511"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Temperature\n",
+ "#Initalization of variables\n",
+ "rel=0.45\n",
+ "p1=0.4747 #psia\n",
+ "print '%s' %(\"From steam table data,\")\n",
+ "#calculations\n",
+ "act=rel*p1\n",
+ "t2=54.94 #F\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Temperature =\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam table data,\n",
+ "Temperature = 54.94 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 511"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate the tonnage\n",
+ "#Initalization of variables\n",
+ "rel=0.6\n",
+ "p1=0.6982 #psia\n",
+ "pa=14.7 #psia\n",
+ "t1=90 #F\n",
+ "t2=54.94 #F\n",
+ "cp=0.24\n",
+ "p2=0.2136 #psia\n",
+ "vol=4000 #ft\n",
+ "t3=538 #R\n",
+ "R=53.35\n",
+ "#calculations\n",
+ "act1=rel*p1\n",
+ "sh1=0.622*act1/(pa-act1)\n",
+ "hm1=cp*t1+sh1*1100.9\n",
+ "sh2=0.622*p2/(pa-p2)\n",
+ "hm2=cp*t2+sh2*1085.8\n",
+ "con=sh1-sh2\n",
+ "enth=con*23.01\n",
+ "heat=hm1-hm2-enth\n",
+ "mass=144*(pa-p2)*vol/(R*(t3))\n",
+ "tonnage=mass*heat/200\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Tonnage =\",tonnage,\"tons \")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Tonnage = 26.6 tons \n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 514"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the tonnage\n",
+ "#Initalization of variables\n",
+ "p1=0.541 #psia\n",
+ "rel=0.48\n",
+ "pa=14.7 #psia\n",
+ "t1=82 #F\n",
+ "cp=0.24\n",
+ "m1=0.75 #lb\n",
+ "m2=0.25 #lb\n",
+ "hm4=23.15 #Btu/lb\n",
+ "mass=291 #lb\n",
+ "#calculations\n",
+ "p2=rel*p1\n",
+ "sh=0.622*p2/(pa-p2)\n",
+ "hm1=cp*t1 + sh*1097.5\n",
+ "hm2=m1*hm1\n",
+ "hm3=m2*41.67\n",
+ "heat=hm2+hm3-hm4\n",
+ "tonnage=heat*mass/200\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Tonnage =\",tonnage,\" tons\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Tonnage = 16.35 tons\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 516"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volume of entering air and amount of make up water\n",
+ "#Initalization of variables\n",
+ "ce=0.8\n",
+ "t1=115 #F\n",
+ "tc=75 #F\n",
+ "td=85 #F\n",
+ "pa=14.7 #psia\n",
+ "p1=0.43 #psia\n",
+ "p2=0.9492 #psia\n",
+ "m1=159600\n",
+ "m2=31.65\n",
+ "R=53.35\n",
+ "T=545 #R\n",
+ "#calculations\n",
+ "t2=t1-ce*(t1-tc)\n",
+ "Pv=0.4298- (pa-p1)*(td-tc)/(2800- 1.3*tc) \n",
+ "sh1=0.622*Pv/(pa-Pv)\n",
+ "sh2=0.622 *p2/(pa-p2)\n",
+ "mda=m1/m2\n",
+ "V=mda*R*T/(144*(pa-Pv))\n",
+ "amount=mda*(sh2-sh1)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Volume of entering air =\",V,\"cfm\")\n",
+ "print '%s %.1f %s' %(\"\\n Amount of make up water =\",amount,\"lb/min\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volume of entering air = 71087 cfm\n",
+ "\n",
+ " Amount of make up water = 134.0 lb/min\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_23_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_23_2.ipynb new file mode 100755 index 00000000..48adb58b --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_23_2.ipynb @@ -0,0 +1,372 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:ed6f0c315c457295237376ededd9c5992635644b7125968e2389e7033f5e62be"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 23 - Gas Vapor mixtures"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 505"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the specific humidity\n",
+ "#Initalization of variables\n",
+ "pv=0.3631 #psia\n",
+ "pa=14.7 #psia\n",
+ "cp=0.24\n",
+ "tw=70 #F\n",
+ "td=80 #F\n",
+ "hv1=1096.6 #Btu/lb\n",
+ "hfb=38.06 #Btu/lb\n",
+ "#calculations\n",
+ "sh=0.622*pv/(pa-pv)\n",
+ "sh1=(cp*tw -cp*td + sh*1054.3)/(hv1-hfb)\n",
+ "#results\n",
+ "print '%s %.5f %s' %(\"Specific humidity =\",sh1,\" lb/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Specific humidity = 0.01342 lb/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 509"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the relative humidity\n",
+ "#Initalization of variables\n",
+ "rel=0.9\n",
+ "p1=0.0396 #psia\n",
+ "p2=0.3631 #psia\n",
+ "#calculations\n",
+ "act=rel*p1\n",
+ "RH=act/p2 *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Relative humidity =\",RH,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Relative humidity = 9.8 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 509"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final temperature\n",
+ "#Initalization of variables\n",
+ "pa=14.2\n",
+ "rel=0.9\n",
+ "sh=0.012 #lb/lb\n",
+ "#calculations\n",
+ "pv=(pa*sh)/(0.622-sh)\n",
+ "sat=pv/rel\n",
+ "tf=64.34 #F\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"From steam tables, by interpolation, Final temperature =\",tf,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam tables, by interpolation, Final temperature = 64.34 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 509"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat rate addition per min\n",
+ "#Initalization of variables\n",
+ "pa=14.7\n",
+ "pv=0.0356\n",
+ "pv2=0.04\n",
+ "cp=0.24\n",
+ "t1=70 #F\n",
+ "t2=15 #F\n",
+ "R=53.35\n",
+ "V=8000 #ft^3\n",
+ "#calculations\n",
+ "sh=0.622*pv/(pa-pv2)\n",
+ "hm2=cp*t1+ sh*1092.3\n",
+ "hm1=cp*t2+sh*1068.4\n",
+ "Q=hm2-hm1\n",
+ "m=144*(pa-pv2)*V/(R*(t2+460.))\n",
+ "Q2=Q*m\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat added per min =\",Q2,\"Btu/min\")\n",
+ "print '%s' %(\"The answer is a bit different due to rounding off error in the textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat added per min = 8821 Btu/min\n",
+ "The answer is a bit different due to rounding off error in the textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 511"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Temperature\n",
+ "#Initalization of variables\n",
+ "rel=0.45\n",
+ "p1=0.4747 #psia\n",
+ "print '%s' %(\"From steam table data,\")\n",
+ "#calculations\n",
+ "act=rel*p1\n",
+ "t2=54.94 #F\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Temperature =\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam table data,\n",
+ "Temperature = 54.94 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 511"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate the tonnage\n",
+ "#Initalization of variables\n",
+ "rel=0.6\n",
+ "p1=0.6982 #psia\n",
+ "pa=14.7 #psia\n",
+ "t1=90 #F\n",
+ "t2=54.94 #F\n",
+ "cp=0.24\n",
+ "p2=0.2136 #psia\n",
+ "vol=4000 #ft\n",
+ "t3=538 #R\n",
+ "R=53.35\n",
+ "#calculations\n",
+ "act1=rel*p1\n",
+ "sh1=0.622*act1/(pa-act1)\n",
+ "hm1=cp*t1+sh1*1100.9\n",
+ "sh2=0.622*p2/(pa-p2)\n",
+ "hm2=cp*t2+sh2*1085.8\n",
+ "con=sh1-sh2\n",
+ "enth=con*23.01\n",
+ "heat=hm1-hm2-enth\n",
+ "mass=144*(pa-p2)*vol/(R*(t3))\n",
+ "tonnage=mass*heat/200\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Tonnage =\",tonnage,\"tons \")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Tonnage = 26.6 tons \n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 514"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the tonnage\n",
+ "#Initalization of variables\n",
+ "p1=0.541 #psia\n",
+ "rel=0.48\n",
+ "pa=14.7 #psia\n",
+ "t1=82 #F\n",
+ "cp=0.24\n",
+ "m1=0.75 #lb\n",
+ "m2=0.25 #lb\n",
+ "hm4=23.15 #Btu/lb\n",
+ "mass=291 #lb\n",
+ "#calculations\n",
+ "p2=rel*p1\n",
+ "sh=0.622*p2/(pa-p2)\n",
+ "hm1=cp*t1 + sh*1097.5\n",
+ "hm2=m1*hm1\n",
+ "hm3=m2*41.67\n",
+ "heat=hm2+hm3-hm4\n",
+ "tonnage=heat*mass/200\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Tonnage =\",tonnage,\" tons\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Tonnage = 16.35 tons\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 516"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volume of entering air and amount of make up water\n",
+ "#Initalization of variables\n",
+ "ce=0.8\n",
+ "t1=115 #F\n",
+ "tc=75 #F\n",
+ "td=85 #F\n",
+ "pa=14.7 #psia\n",
+ "p1=0.43 #psia\n",
+ "p2=0.9492 #psia\n",
+ "m1=159600\n",
+ "m2=31.65\n",
+ "R=53.35\n",
+ "T=545 #R\n",
+ "#calculations\n",
+ "t2=t1-ce*(t1-tc)\n",
+ "Pv=0.4298- (pa-p1)*(td-tc)/(2800- 1.3*tc) \n",
+ "sh1=0.622*Pv/(pa-Pv)\n",
+ "sh2=0.622 *p2/(pa-p2)\n",
+ "mda=m1/m2\n",
+ "V=mda*R*T/(144*(pa-Pv))\n",
+ "amount=mda*(sh2-sh1)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Volume of entering air =\",V,\"cfm\")\n",
+ "print '%s %.1f %s' %(\"\\n Amount of make up water =\",amount,\"lb/min\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volume of entering air = 71087 cfm\n",
+ "\n",
+ " Amount of make up water = 134.0 lb/min\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_23_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_23_3.ipynb new file mode 100755 index 00000000..48adb58b --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_23_3.ipynb @@ -0,0 +1,372 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:ed6f0c315c457295237376ededd9c5992635644b7125968e2389e7033f5e62be"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 23 - Gas Vapor mixtures"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 505"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the specific humidity\n",
+ "#Initalization of variables\n",
+ "pv=0.3631 #psia\n",
+ "pa=14.7 #psia\n",
+ "cp=0.24\n",
+ "tw=70 #F\n",
+ "td=80 #F\n",
+ "hv1=1096.6 #Btu/lb\n",
+ "hfb=38.06 #Btu/lb\n",
+ "#calculations\n",
+ "sh=0.622*pv/(pa-pv)\n",
+ "sh1=(cp*tw -cp*td + sh*1054.3)/(hv1-hfb)\n",
+ "#results\n",
+ "print '%s %.5f %s' %(\"Specific humidity =\",sh1,\" lb/lb\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Specific humidity = 0.01342 lb/lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 509"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the relative humidity\n",
+ "#Initalization of variables\n",
+ "rel=0.9\n",
+ "p1=0.0396 #psia\n",
+ "p2=0.3631 #psia\n",
+ "#calculations\n",
+ "act=rel*p1\n",
+ "RH=act/p2 *100.\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Relative humidity =\",RH,\" percent\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Relative humidity = 9.8 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 509"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the final temperature\n",
+ "#Initalization of variables\n",
+ "pa=14.2\n",
+ "rel=0.9\n",
+ "sh=0.012 #lb/lb\n",
+ "#calculations\n",
+ "pv=(pa*sh)/(0.622-sh)\n",
+ "sat=pv/rel\n",
+ "tf=64.34 #F\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"From steam tables, by interpolation, Final temperature =\",tf,\" F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam tables, by interpolation, Final temperature = 64.34 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 509"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat rate addition per min\n",
+ "#Initalization of variables\n",
+ "pa=14.7\n",
+ "pv=0.0356\n",
+ "pv2=0.04\n",
+ "cp=0.24\n",
+ "t1=70 #F\n",
+ "t2=15 #F\n",
+ "R=53.35\n",
+ "V=8000 #ft^3\n",
+ "#calculations\n",
+ "sh=0.622*pv/(pa-pv2)\n",
+ "hm2=cp*t1+ sh*1092.3\n",
+ "hm1=cp*t2+sh*1068.4\n",
+ "Q=hm2-hm1\n",
+ "m=144*(pa-pv2)*V/(R*(t2+460.))\n",
+ "Q2=Q*m\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat added per min =\",Q2,\"Btu/min\")\n",
+ "print '%s' %(\"The answer is a bit different due to rounding off error in the textbook\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat added per min = 8821 Btu/min\n",
+ "The answer is a bit different due to rounding off error in the textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5 - Pg 511"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the Temperature\n",
+ "#Initalization of variables\n",
+ "rel=0.45\n",
+ "p1=0.4747 #psia\n",
+ "print '%s' %(\"From steam table data,\")\n",
+ "#calculations\n",
+ "act=rel*p1\n",
+ "t2=54.94 #F\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Temperature =\",t2,\"F\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From steam table data,\n",
+ "Temperature = 54.94 F\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6 - Pg 511"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate the tonnage\n",
+ "#Initalization of variables\n",
+ "rel=0.6\n",
+ "p1=0.6982 #psia\n",
+ "pa=14.7 #psia\n",
+ "t1=90 #F\n",
+ "t2=54.94 #F\n",
+ "cp=0.24\n",
+ "p2=0.2136 #psia\n",
+ "vol=4000 #ft\n",
+ "t3=538 #R\n",
+ "R=53.35\n",
+ "#calculations\n",
+ "act1=rel*p1\n",
+ "sh1=0.622*act1/(pa-act1)\n",
+ "hm1=cp*t1+sh1*1100.9\n",
+ "sh2=0.622*p2/(pa-p2)\n",
+ "hm2=cp*t2+sh2*1085.8\n",
+ "con=sh1-sh2\n",
+ "enth=con*23.01\n",
+ "heat=hm1-hm2-enth\n",
+ "mass=144*(pa-p2)*vol/(R*(t3))\n",
+ "tonnage=mass*heat/200\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Tonnage =\",tonnage,\"tons \")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Tonnage = 26.6 tons \n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7 - Pg 514"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the tonnage\n",
+ "#Initalization of variables\n",
+ "p1=0.541 #psia\n",
+ "rel=0.48\n",
+ "pa=14.7 #psia\n",
+ "t1=82 #F\n",
+ "cp=0.24\n",
+ "m1=0.75 #lb\n",
+ "m2=0.25 #lb\n",
+ "hm4=23.15 #Btu/lb\n",
+ "mass=291 #lb\n",
+ "#calculations\n",
+ "p2=rel*p1\n",
+ "sh=0.622*p2/(pa-p2)\n",
+ "hm1=cp*t1 + sh*1097.5\n",
+ "hm2=m1*hm1\n",
+ "hm3=m2*41.67\n",
+ "heat=hm2+hm3-hm4\n",
+ "tonnage=heat*mass/200\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Tonnage =\",tonnage,\" tons\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Tonnage = 16.35 tons\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8 - Pg 516"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volume of entering air and amount of make up water\n",
+ "#Initalization of variables\n",
+ "ce=0.8\n",
+ "t1=115 #F\n",
+ "tc=75 #F\n",
+ "td=85 #F\n",
+ "pa=14.7 #psia\n",
+ "p1=0.43 #psia\n",
+ "p2=0.9492 #psia\n",
+ "m1=159600\n",
+ "m2=31.65\n",
+ "R=53.35\n",
+ "T=545 #R\n",
+ "#calculations\n",
+ "t2=t1-ce*(t1-tc)\n",
+ "Pv=0.4298- (pa-p1)*(td-tc)/(2800- 1.3*tc) \n",
+ "sh1=0.622*Pv/(pa-Pv)\n",
+ "sh2=0.622 *p2/(pa-p2)\n",
+ "mda=m1/m2\n",
+ "V=mda*R*T/(144*(pa-Pv))\n",
+ "amount=mda*(sh2-sh1)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Volume of entering air =\",V,\"cfm\")\n",
+ "print '%s %.1f %s' %(\"\\n Amount of make up water =\",amount,\"lb/min\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volume of entering air = 71087 cfm\n",
+ "\n",
+ " Amount of make up water = 134.0 lb/min\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_5.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_5.ipynb new file mode 100755 index 00000000..60d3de94 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_5.ipynb @@ -0,0 +1,199 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:86a66a56e6c068c1b5488c8e726c9aecdd48422f90b429aec4b5cc311da3bb32"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 5 - Actual Gases"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 74"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volume occupied by the gas and also the tabulated volume\n",
+ "#Initialization of variables\n",
+ "m=20. #lbm\n",
+ "P=1000. #psia\n",
+ "T=580. #R\n",
+ "R=35.12\n",
+ "#calculations\n",
+ "print '%s' %(\"From table 5-2,\")\n",
+ "z=0.667\n",
+ "V=z*m*R*T/(P*144.)\n",
+ "vt=0.0935\n",
+ "vtt=vt*m\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Volume occupied =\",V,\"cu ft\")\n",
+ "print '%s %.2f %s' %(\"\\n Tablulated value for volume =\",vtt,\" cu ft\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 5-2,\n",
+ "Volume occupied = 1.887 cu ft\n",
+ "\n",
+ " Tablulated value for volume = 1.87 cu ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 74"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the pressure obtained and theoretical pressure\n",
+ "#Initialization of variables\n",
+ "m=90 #lbm\n",
+ "T=200+459.7 #R\n",
+ "Tc=232.7+459.7 #R\n",
+ "R0=1545.\n",
+ "M=120.9\n",
+ "V=30. #cu ft\n",
+ "#calculations\n",
+ "R=R0/M\n",
+ "print '%s' %(\"From fig 5.5\")\n",
+ "z=0.883\n",
+ "P=z*R*m*T/V/144.\n",
+ "vc=V/m\n",
+ "P2=156.1 #psia\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Pressure obtained =\",P,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Theoretical pressure =\",P2,\"psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From fig 5.5\n",
+ "Pressure obtained = 155.08 psia\n",
+ "\n",
+ " Theoretical pressure = 156.1 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 84"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat added in both cases\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "T1=140+460. #R\n",
+ "T2=240 +460. #R\n",
+ "N=1.\n",
+ "#calculations\n",
+ "Q=N*(9.47*(T2-T1)-3.47*1000. *math.log(T2/T1) -1.16*math.pow(10,6) *(1/T2-1/T1))\n",
+ "Tm=(T1+T2)/2\n",
+ "Cp=9.47-3.47*1000. /Tm +1.16*math.pow(10,6) /Tm/Tm\n",
+ "Q2=N*Cp*(T2-T1)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat added in case 1 =\",Q,\"Btu\")\n",
+ "print '%s %.1f %s' %(\"\\n Heat added in case 2 =\",Q2,\"Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat added in case 1 = 688 Btu\n",
+ "\n",
+ " Heat added in case 2 = 687.7 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 85"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat added in both cases\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Rj=1.985\n",
+ "N=1\n",
+ "T1=540.+460 #R\n",
+ "T2=3540.+460 #R\n",
+ "#calculations\n",
+ "Q=N*(14.215*(T2-T1)-6.53*1000. *math.log(T2/T1) -1.41*math.pow(10,6) *(1/T2-1/T1))\n",
+ "Tm=(T1+T2)/2\n",
+ "Cv=14.215-6.53*1000. /Tm +1.41*math.pow(10,6) /Tm/Tm\n",
+ "Q2=N*Cv*(T2-T1)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Heat added in case 1 =\",Q,\"Btu\")\n",
+ "print '%s %.1f %s' %(\"\\n Heat added in case 2 =\",Q2,\"Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat added in case 1 = 34650.0 Btu\n",
+ "\n",
+ " Heat added in case 2 = 35485.8 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_5_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_5_1.ipynb new file mode 100755 index 00000000..60d3de94 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_5_1.ipynb @@ -0,0 +1,199 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:86a66a56e6c068c1b5488c8e726c9aecdd48422f90b429aec4b5cc311da3bb32"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 5 - Actual Gases"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 74"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volume occupied by the gas and also the tabulated volume\n",
+ "#Initialization of variables\n",
+ "m=20. #lbm\n",
+ "P=1000. #psia\n",
+ "T=580. #R\n",
+ "R=35.12\n",
+ "#calculations\n",
+ "print '%s' %(\"From table 5-2,\")\n",
+ "z=0.667\n",
+ "V=z*m*R*T/(P*144.)\n",
+ "vt=0.0935\n",
+ "vtt=vt*m\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Volume occupied =\",V,\"cu ft\")\n",
+ "print '%s %.2f %s' %(\"\\n Tablulated value for volume =\",vtt,\" cu ft\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 5-2,\n",
+ "Volume occupied = 1.887 cu ft\n",
+ "\n",
+ " Tablulated value for volume = 1.87 cu ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 74"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the pressure obtained and theoretical pressure\n",
+ "#Initialization of variables\n",
+ "m=90 #lbm\n",
+ "T=200+459.7 #R\n",
+ "Tc=232.7+459.7 #R\n",
+ "R0=1545.\n",
+ "M=120.9\n",
+ "V=30. #cu ft\n",
+ "#calculations\n",
+ "R=R0/M\n",
+ "print '%s' %(\"From fig 5.5\")\n",
+ "z=0.883\n",
+ "P=z*R*m*T/V/144.\n",
+ "vc=V/m\n",
+ "P2=156.1 #psia\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Pressure obtained =\",P,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Theoretical pressure =\",P2,\"psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From fig 5.5\n",
+ "Pressure obtained = 155.08 psia\n",
+ "\n",
+ " Theoretical pressure = 156.1 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 84"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat added in both cases\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "T1=140+460. #R\n",
+ "T2=240 +460. #R\n",
+ "N=1.\n",
+ "#calculations\n",
+ "Q=N*(9.47*(T2-T1)-3.47*1000. *math.log(T2/T1) -1.16*math.pow(10,6) *(1/T2-1/T1))\n",
+ "Tm=(T1+T2)/2\n",
+ "Cp=9.47-3.47*1000. /Tm +1.16*math.pow(10,6) /Tm/Tm\n",
+ "Q2=N*Cp*(T2-T1)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat added in case 1 =\",Q,\"Btu\")\n",
+ "print '%s %.1f %s' %(\"\\n Heat added in case 2 =\",Q2,\"Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat added in case 1 = 688 Btu\n",
+ "\n",
+ " Heat added in case 2 = 687.7 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 85"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat added in both cases\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Rj=1.985\n",
+ "N=1\n",
+ "T1=540.+460 #R\n",
+ "T2=3540.+460 #R\n",
+ "#calculations\n",
+ "Q=N*(14.215*(T2-T1)-6.53*1000. *math.log(T2/T1) -1.41*math.pow(10,6) *(1/T2-1/T1))\n",
+ "Tm=(T1+T2)/2\n",
+ "Cv=14.215-6.53*1000. /Tm +1.41*math.pow(10,6) /Tm/Tm\n",
+ "Q2=N*Cv*(T2-T1)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Heat added in case 1 =\",Q,\"Btu\")\n",
+ "print '%s %.1f %s' %(\"\\n Heat added in case 2 =\",Q2,\"Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat added in case 1 = 34650.0 Btu\n",
+ "\n",
+ " Heat added in case 2 = 35485.8 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_5_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_5_2.ipynb new file mode 100755 index 00000000..60d3de94 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_5_2.ipynb @@ -0,0 +1,199 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:86a66a56e6c068c1b5488c8e726c9aecdd48422f90b429aec4b5cc311da3bb32"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 5 - Actual Gases"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 74"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volume occupied by the gas and also the tabulated volume\n",
+ "#Initialization of variables\n",
+ "m=20. #lbm\n",
+ "P=1000. #psia\n",
+ "T=580. #R\n",
+ "R=35.12\n",
+ "#calculations\n",
+ "print '%s' %(\"From table 5-2,\")\n",
+ "z=0.667\n",
+ "V=z*m*R*T/(P*144.)\n",
+ "vt=0.0935\n",
+ "vtt=vt*m\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Volume occupied =\",V,\"cu ft\")\n",
+ "print '%s %.2f %s' %(\"\\n Tablulated value for volume =\",vtt,\" cu ft\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 5-2,\n",
+ "Volume occupied = 1.887 cu ft\n",
+ "\n",
+ " Tablulated value for volume = 1.87 cu ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 74"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the pressure obtained and theoretical pressure\n",
+ "#Initialization of variables\n",
+ "m=90 #lbm\n",
+ "T=200+459.7 #R\n",
+ "Tc=232.7+459.7 #R\n",
+ "R0=1545.\n",
+ "M=120.9\n",
+ "V=30. #cu ft\n",
+ "#calculations\n",
+ "R=R0/M\n",
+ "print '%s' %(\"From fig 5.5\")\n",
+ "z=0.883\n",
+ "P=z*R*m*T/V/144.\n",
+ "vc=V/m\n",
+ "P2=156.1 #psia\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Pressure obtained =\",P,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Theoretical pressure =\",P2,\"psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From fig 5.5\n",
+ "Pressure obtained = 155.08 psia\n",
+ "\n",
+ " Theoretical pressure = 156.1 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 84"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat added in both cases\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "T1=140+460. #R\n",
+ "T2=240 +460. #R\n",
+ "N=1.\n",
+ "#calculations\n",
+ "Q=N*(9.47*(T2-T1)-3.47*1000. *math.log(T2/T1) -1.16*math.pow(10,6) *(1/T2-1/T1))\n",
+ "Tm=(T1+T2)/2\n",
+ "Cp=9.47-3.47*1000. /Tm +1.16*math.pow(10,6) /Tm/Tm\n",
+ "Q2=N*Cp*(T2-T1)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat added in case 1 =\",Q,\"Btu\")\n",
+ "print '%s %.1f %s' %(\"\\n Heat added in case 2 =\",Q2,\"Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat added in case 1 = 688 Btu\n",
+ "\n",
+ " Heat added in case 2 = 687.7 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 85"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat added in both cases\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Rj=1.985\n",
+ "N=1\n",
+ "T1=540.+460 #R\n",
+ "T2=3540.+460 #R\n",
+ "#calculations\n",
+ "Q=N*(14.215*(T2-T1)-6.53*1000. *math.log(T2/T1) -1.41*math.pow(10,6) *(1/T2-1/T1))\n",
+ "Tm=(T1+T2)/2\n",
+ "Cv=14.215-6.53*1000. /Tm +1.41*math.pow(10,6) /Tm/Tm\n",
+ "Q2=N*Cv*(T2-T1)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Heat added in case 1 =\",Q,\"Btu\")\n",
+ "print '%s %.1f %s' %(\"\\n Heat added in case 2 =\",Q2,\"Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat added in case 1 = 34650.0 Btu\n",
+ "\n",
+ " Heat added in case 2 = 35485.8 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_5_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_5_3.ipynb new file mode 100755 index 00000000..60d3de94 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_5_3.ipynb @@ -0,0 +1,199 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:86a66a56e6c068c1b5488c8e726c9aecdd48422f90b429aec4b5cc311da3bb32"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 5 - Actual Gases"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 74"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the volume occupied by the gas and also the tabulated volume\n",
+ "#Initialization of variables\n",
+ "m=20. #lbm\n",
+ "P=1000. #psia\n",
+ "T=580. #R\n",
+ "R=35.12\n",
+ "#calculations\n",
+ "print '%s' %(\"From table 5-2,\")\n",
+ "z=0.667\n",
+ "V=z*m*R*T/(P*144.)\n",
+ "vt=0.0935\n",
+ "vtt=vt*m\n",
+ "#results\n",
+ "print '%s %.3f %s' %(\"Volume occupied =\",V,\"cu ft\")\n",
+ "print '%s %.2f %s' %(\"\\n Tablulated value for volume =\",vtt,\" cu ft\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From table 5-2,\n",
+ "Volume occupied = 1.887 cu ft\n",
+ "\n",
+ " Tablulated value for volume = 1.87 cu ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 74"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the pressure obtained and theoretical pressure\n",
+ "#Initialization of variables\n",
+ "m=90 #lbm\n",
+ "T=200+459.7 #R\n",
+ "Tc=232.7+459.7 #R\n",
+ "R0=1545.\n",
+ "M=120.9\n",
+ "V=30. #cu ft\n",
+ "#calculations\n",
+ "R=R0/M\n",
+ "print '%s' %(\"From fig 5.5\")\n",
+ "z=0.883\n",
+ "P=z*R*m*T/V/144.\n",
+ "vc=V/m\n",
+ "P2=156.1 #psia\n",
+ "#results\n",
+ "print '%s %.2f %s' %(\"Pressure obtained =\",P,\"psia\")\n",
+ "print '%s %.1f %s' %(\"\\n Theoretical pressure =\",P2,\"psia\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "From fig 5.5\n",
+ "Pressure obtained = 155.08 psia\n",
+ "\n",
+ " Theoretical pressure = 156.1 psia\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3 - Pg 84"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat added in both cases\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "T1=140+460. #R\n",
+ "T2=240 +460. #R\n",
+ "N=1.\n",
+ "#calculations\n",
+ "Q=N*(9.47*(T2-T1)-3.47*1000. *math.log(T2/T1) -1.16*math.pow(10,6) *(1/T2-1/T1))\n",
+ "Tm=(T1+T2)/2\n",
+ "Cp=9.47-3.47*1000. /Tm +1.16*math.pow(10,6) /Tm/Tm\n",
+ "Q2=N*Cp*(T2-T1)\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Heat added in case 1 =\",Q,\"Btu\")\n",
+ "print '%s %.1f %s' %(\"\\n Heat added in case 2 =\",Q2,\"Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat added in case 1 = 688 Btu\n",
+ "\n",
+ " Heat added in case 2 = 687.7 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4 - Pg 85"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the heat added in both cases\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "Rj=1.985\n",
+ "N=1\n",
+ "T1=540.+460 #R\n",
+ "T2=3540.+460 #R\n",
+ "#calculations\n",
+ "Q=N*(14.215*(T2-T1)-6.53*1000. *math.log(T2/T1) -1.41*math.pow(10,6) *(1/T2-1/T1))\n",
+ "Tm=(T1+T2)/2\n",
+ "Cv=14.215-6.53*1000. /Tm +1.41*math.pow(10,6) /Tm/Tm\n",
+ "Q2=N*Cv*(T2-T1)\n",
+ "#results\n",
+ "print '%s %.1f %s' %(\"Heat added in case 1 =\",Q,\"Btu\")\n",
+ "print '%s %.1f %s' %(\"\\n Heat added in case 2 =\",Q2,\"Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Heat added in case 1 = 34650.0 Btu\n",
+ "\n",
+ " Heat added in case 2 = 35485.8 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_7.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_7.ipynb new file mode 100755 index 00000000..a780ec36 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_7.ipynb @@ -0,0 +1,67 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:7cd10447df19fe2f7f7381338e86fa6208bc3c3a796f2e977240b17e164ee22b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 7 - Entropy"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 115"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "T2=920. #R\n",
+ "T1=520. #R\n",
+ "P1=14. #psia\n",
+ "P2=84. #psia\n",
+ "J=778.\n",
+ "R=53.35\n",
+ "cv=0.1715\n",
+ "N=1\n",
+ "#calculations\n",
+ "k= math.log(T2/T1) /math.log(P2/P1)\n",
+ "n=1/(1-k)\n",
+ "cx=cv+R/(J*(1-n))\n",
+ "dS=N*cx*math.log(T2/T1)\n",
+ "#results\n",
+ "print '%s %.5f %s' %(\"Change in entropy =\",dS,\"unit of entropy\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.01411 unit of entropy\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_7_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_7_1.ipynb new file mode 100755 index 00000000..a780ec36 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_7_1.ipynb @@ -0,0 +1,67 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:7cd10447df19fe2f7f7381338e86fa6208bc3c3a796f2e977240b17e164ee22b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 7 - Entropy"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 115"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "T2=920. #R\n",
+ "T1=520. #R\n",
+ "P1=14. #psia\n",
+ "P2=84. #psia\n",
+ "J=778.\n",
+ "R=53.35\n",
+ "cv=0.1715\n",
+ "N=1\n",
+ "#calculations\n",
+ "k= math.log(T2/T1) /math.log(P2/P1)\n",
+ "n=1/(1-k)\n",
+ "cx=cv+R/(J*(1-n))\n",
+ "dS=N*cx*math.log(T2/T1)\n",
+ "#results\n",
+ "print '%s %.5f %s' %(\"Change in entropy =\",dS,\"unit of entropy\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.01411 unit of entropy\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_7_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_7_2.ipynb new file mode 100755 index 00000000..a780ec36 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_7_2.ipynb @@ -0,0 +1,67 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:7cd10447df19fe2f7f7381338e86fa6208bc3c3a796f2e977240b17e164ee22b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 7 - Entropy"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 115"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "T2=920. #R\n",
+ "T1=520. #R\n",
+ "P1=14. #psia\n",
+ "P2=84. #psia\n",
+ "J=778.\n",
+ "R=53.35\n",
+ "cv=0.1715\n",
+ "N=1\n",
+ "#calculations\n",
+ "k= math.log(T2/T1) /math.log(P2/P1)\n",
+ "n=1/(1-k)\n",
+ "cx=cv+R/(J*(1-n))\n",
+ "dS=N*cx*math.log(T2/T1)\n",
+ "#results\n",
+ "print '%s %.5f %s' %(\"Change in entropy =\",dS,\"unit of entropy\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.01411 unit of entropy\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_7_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_7_3.ipynb new file mode 100755 index 00000000..a780ec36 --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_7_3.ipynb @@ -0,0 +1,67 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:7cd10447df19fe2f7f7381338e86fa6208bc3c3a796f2e977240b17e164ee22b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 7 - Entropy"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 115"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate the change in entropy\n",
+ "#Initialization of variables\n",
+ "T2=920. #R\n",
+ "T1=520. #R\n",
+ "P1=14. #psia\n",
+ "P2=84. #psia\n",
+ "J=778.\n",
+ "R=53.35\n",
+ "cv=0.1715\n",
+ "N=1\n",
+ "#calculations\n",
+ "k= math.log(T2/T1) /math.log(P2/P1)\n",
+ "n=1/(1-k)\n",
+ "cx=cv+R/(J*(1-n))\n",
+ "dS=N*cx*math.log(T2/T1)\n",
+ "#results\n",
+ "print '%s %.5f %s' %(\"Change in entropy =\",dS,\"unit of entropy\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in entropy = 0.01411 unit of entropy\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_8.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_8.ipynb new file mode 100755 index 00000000..8dd5540f --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_8.ipynb @@ -0,0 +1,126 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:86e00f67d619987b1a4198153e70d431ddb0592847bf75b0bc55b544e7c1f8d2"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 8 - Availability of Energy"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 120"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the available energy loss\n",
+ "#Initialization of variables\n",
+ "q=1000. #Btu\n",
+ "th=1140. #F\n",
+ "tl=40. #F\n",
+ "ts=940. #F\n",
+ "#calculations\n",
+ "Q1=q*(th-tl)/(th+460)\n",
+ "Q2=q*(ts-tl)/(ts+460)\n",
+ "dif=Q1-Q2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Available energy loss =\",dif,\"Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Available energy loss = 44 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 124"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the untransferred, transferred, available, unavailable energy for both gas and water\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "ma=200000. #lb\n",
+ "cpa=0.26\n",
+ "T2g=1200. #F\n",
+ "T1g=300. #F\n",
+ "T1w=200. #F\n",
+ "mw=250000. #lb\n",
+ "cpw=1.02\n",
+ "Tl=560. #R\n",
+ "cx=1.01\n",
+ "#calculations\n",
+ "T2w=T1w+ ma*cpa*(T2g-T1g)/(mw*cpw)\n",
+ "Qun=Tl*ma*cpa*math.log((T2g+460)/(T1g+460))\n",
+ "Qtr=ma*cpa*(T2g-T1g)\n",
+ "Qav=Qtr-Qun\n",
+ "Qun2=Tl*mw*cx*math.log((T2w+460)/(T1w+460))\n",
+ "Qav2=Qtr-Qun2\n",
+ "ht1=Qav-Qav2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"For gas, Untransferred energy =\",Qun,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For gas, transferred energy =\",Qtr,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For gas, available energy =\",Qav,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For water, Untransferred energy =\",Qun2,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For water, available energy =\",Qav2,\" Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n Loss of available energy =\",ht1,\"Btu/hr\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "For gas, Untransferred energy = 22750129 Btu/hr\n",
+ "\n",
+ " For gas, transferred energy = 46800000 Btu/hr\n",
+ "\n",
+ " For gas, available energy = 24049870 Btu/hr\n",
+ "\n",
+ " For water, Untransferred energy = 34693187 Btu/hr\n",
+ "\n",
+ " For water, available energy = 12106812 Btu/hr\n",
+ "\n",
+ " Loss of available energy = 11943058 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_8_1.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_8_1.ipynb new file mode 100755 index 00000000..8dd5540f --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_8_1.ipynb @@ -0,0 +1,126 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:86e00f67d619987b1a4198153e70d431ddb0592847bf75b0bc55b544e7c1f8d2"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 8 - Availability of Energy"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 120"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the available energy loss\n",
+ "#Initialization of variables\n",
+ "q=1000. #Btu\n",
+ "th=1140. #F\n",
+ "tl=40. #F\n",
+ "ts=940. #F\n",
+ "#calculations\n",
+ "Q1=q*(th-tl)/(th+460)\n",
+ "Q2=q*(ts-tl)/(ts+460)\n",
+ "dif=Q1-Q2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Available energy loss =\",dif,\"Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Available energy loss = 44 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 124"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the untransferred, transferred, available, unavailable energy for both gas and water\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "ma=200000. #lb\n",
+ "cpa=0.26\n",
+ "T2g=1200. #F\n",
+ "T1g=300. #F\n",
+ "T1w=200. #F\n",
+ "mw=250000. #lb\n",
+ "cpw=1.02\n",
+ "Tl=560. #R\n",
+ "cx=1.01\n",
+ "#calculations\n",
+ "T2w=T1w+ ma*cpa*(T2g-T1g)/(mw*cpw)\n",
+ "Qun=Tl*ma*cpa*math.log((T2g+460)/(T1g+460))\n",
+ "Qtr=ma*cpa*(T2g-T1g)\n",
+ "Qav=Qtr-Qun\n",
+ "Qun2=Tl*mw*cx*math.log((T2w+460)/(T1w+460))\n",
+ "Qav2=Qtr-Qun2\n",
+ "ht1=Qav-Qav2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"For gas, Untransferred energy =\",Qun,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For gas, transferred energy =\",Qtr,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For gas, available energy =\",Qav,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For water, Untransferred energy =\",Qun2,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For water, available energy =\",Qav2,\" Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n Loss of available energy =\",ht1,\"Btu/hr\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "For gas, Untransferred energy = 22750129 Btu/hr\n",
+ "\n",
+ " For gas, transferred energy = 46800000 Btu/hr\n",
+ "\n",
+ " For gas, available energy = 24049870 Btu/hr\n",
+ "\n",
+ " For water, Untransferred energy = 34693187 Btu/hr\n",
+ "\n",
+ " For water, available energy = 12106812 Btu/hr\n",
+ "\n",
+ " Loss of available energy = 11943058 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_8_2.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_8_2.ipynb new file mode 100755 index 00000000..8dd5540f --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_8_2.ipynb @@ -0,0 +1,126 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:86e00f67d619987b1a4198153e70d431ddb0592847bf75b0bc55b544e7c1f8d2"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 8 - Availability of Energy"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 120"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the available energy loss\n",
+ "#Initialization of variables\n",
+ "q=1000. #Btu\n",
+ "th=1140. #F\n",
+ "tl=40. #F\n",
+ "ts=940. #F\n",
+ "#calculations\n",
+ "Q1=q*(th-tl)/(th+460)\n",
+ "Q2=q*(ts-tl)/(ts+460)\n",
+ "dif=Q1-Q2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Available energy loss =\",dif,\"Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Available energy loss = 44 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 124"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the untransferred, transferred, available, unavailable energy for both gas and water\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "ma=200000. #lb\n",
+ "cpa=0.26\n",
+ "T2g=1200. #F\n",
+ "T1g=300. #F\n",
+ "T1w=200. #F\n",
+ "mw=250000. #lb\n",
+ "cpw=1.02\n",
+ "Tl=560. #R\n",
+ "cx=1.01\n",
+ "#calculations\n",
+ "T2w=T1w+ ma*cpa*(T2g-T1g)/(mw*cpw)\n",
+ "Qun=Tl*ma*cpa*math.log((T2g+460)/(T1g+460))\n",
+ "Qtr=ma*cpa*(T2g-T1g)\n",
+ "Qav=Qtr-Qun\n",
+ "Qun2=Tl*mw*cx*math.log((T2w+460)/(T1w+460))\n",
+ "Qav2=Qtr-Qun2\n",
+ "ht1=Qav-Qav2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"For gas, Untransferred energy =\",Qun,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For gas, transferred energy =\",Qtr,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For gas, available energy =\",Qav,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For water, Untransferred energy =\",Qun2,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For water, available energy =\",Qav2,\" Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n Loss of available energy =\",ht1,\"Btu/hr\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "For gas, Untransferred energy = 22750129 Btu/hr\n",
+ "\n",
+ " For gas, transferred energy = 46800000 Btu/hr\n",
+ "\n",
+ " For gas, available energy = 24049870 Btu/hr\n",
+ "\n",
+ " For water, Untransferred energy = 34693187 Btu/hr\n",
+ "\n",
+ " For water, available energy = 12106812 Btu/hr\n",
+ "\n",
+ " Loss of available energy = 11943058 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/backup/Thermodynamics_for_Engineers_version_backup/Chapter_8_3.ipynb b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_8_3.ipynb new file mode 100755 index 00000000..8dd5540f --- /dev/null +++ b/backup/Thermodynamics_for_Engineers_version_backup/Chapter_8_3.ipynb @@ -0,0 +1,126 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:86e00f67d619987b1a4198153e70d431ddb0592847bf75b0bc55b544e7c1f8d2"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 8 - Availability of Energy"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1 - Pg 120"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the available energy loss\n",
+ "#Initialization of variables\n",
+ "q=1000. #Btu\n",
+ "th=1140. #F\n",
+ "tl=40. #F\n",
+ "ts=940. #F\n",
+ "#calculations\n",
+ "Q1=q*(th-tl)/(th+460)\n",
+ "Q2=q*(ts-tl)/(ts+460)\n",
+ "dif=Q1-Q2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"Available energy loss =\",dif,\"Btu\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Available energy loss = 44 Btu\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2 - Pg 124"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#calculate the untransferred, transferred, available, unavailable energy for both gas and water\n",
+ "#Initialization of variables\n",
+ "import math\n",
+ "ma=200000. #lb\n",
+ "cpa=0.26\n",
+ "T2g=1200. #F\n",
+ "T1g=300. #F\n",
+ "T1w=200. #F\n",
+ "mw=250000. #lb\n",
+ "cpw=1.02\n",
+ "Tl=560. #R\n",
+ "cx=1.01\n",
+ "#calculations\n",
+ "T2w=T1w+ ma*cpa*(T2g-T1g)/(mw*cpw)\n",
+ "Qun=Tl*ma*cpa*math.log((T2g+460)/(T1g+460))\n",
+ "Qtr=ma*cpa*(T2g-T1g)\n",
+ "Qav=Qtr-Qun\n",
+ "Qun2=Tl*mw*cx*math.log((T2w+460)/(T1w+460))\n",
+ "Qav2=Qtr-Qun2\n",
+ "ht1=Qav-Qav2\n",
+ "#results\n",
+ "print '%s %d %s' %(\"For gas, Untransferred energy =\",Qun,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For gas, transferred energy =\",Qtr,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For gas, available energy =\",Qav,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For water, Untransferred energy =\",Qun2,\"Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n For water, available energy =\",Qav2,\" Btu/hr\")\n",
+ "print '%s %d %s' %(\"\\n Loss of available energy =\",ht1,\"Btu/hr\")\n",
+ "print '%s' %('The answers are a bit different due to rounding off error in textbook')\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "For gas, Untransferred energy = 22750129 Btu/hr\n",
+ "\n",
+ " For gas, transferred energy = 46800000 Btu/hr\n",
+ "\n",
+ " For gas, available energy = 24049870 Btu/hr\n",
+ "\n",
+ " For water, Untransferred energy = 34693187 Btu/hr\n",
+ "\n",
+ " For water, available energy = 12106812 Btu/hr\n",
+ "\n",
+ " Loss of available energy = 11943058 Btu/hr\n",
+ "The answers are a bit different due to rounding off error in textbook\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file |