From 251a07c4cbed1a5a960f5ed416ce6ac13c8152b7 Mon Sep 17 00:00:00 2001 From: hardythe1 Date: Thu, 11 Jun 2015 17:31:11 +0530 Subject: add books --- .../ch1.ipynb | 2063 +++++++++++++++++++ .../ch2.ipynb | 1509 ++++++++++++++ .../ch3.ipynb | 1421 +++++++++++++ .../ch4.ipynb | 912 ++++++++ .../ch5.ipynb | 2176 ++++++++++++++++++++ .../ch6.ipynb | 1203 +++++++++++ .../ch7.ipynb | 831 ++++++++ .../ch8.ipynb | 1069 ++++++++++ 8 files changed, 11184 insertions(+) create mode 100755 Gas_Dynamics_and_Jet_Propulsion_by_P._Murugaperumal/ch1.ipynb create mode 100755 Gas_Dynamics_and_Jet_Propulsion_by_P._Murugaperumal/ch2.ipynb create mode 100755 Gas_Dynamics_and_Jet_Propulsion_by_P._Murugaperumal/ch3.ipynb create mode 100755 Gas_Dynamics_and_Jet_Propulsion_by_P._Murugaperumal/ch4.ipynb create mode 100755 Gas_Dynamics_and_Jet_Propulsion_by_P._Murugaperumal/ch5.ipynb create mode 100755 Gas_Dynamics_and_Jet_Propulsion_by_P._Murugaperumal/ch6.ipynb create mode 100755 Gas_Dynamics_and_Jet_Propulsion_by_P._Murugaperumal/ch7.ipynb create mode 100755 Gas_Dynamics_and_Jet_Propulsion_by_P._Murugaperumal/ch8.ipynb (limited to 'Gas_Dynamics_and_Jet_Propulsion_by_P._Murugaperumal') diff --git a/Gas_Dynamics_and_Jet_Propulsion_by_P._Murugaperumal/ch1.ipynb b/Gas_Dynamics_and_Jet_Propulsion_by_P._Murugaperumal/ch1.ipynb new file mode 100755 index 00000000..736b003b --- /dev/null +++ b/Gas_Dynamics_and_Jet_Propulsion_by_P._Murugaperumal/ch1.ipynb @@ -0,0 +1,2063 @@ +{ + "metadata": { + "name": "", + "signature": "sha256:061d7e4b577b807ec47d62ccaff69c19b6ddf8c7eb248995f153a6b3c9a73f96" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 1 : Compressible Flow-Fundamentals" + ] + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.1 page : 18" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "%matplotlib inline\n", + "\n", + "import math \n", + "from numpy import linspace\n", + "from matplotlib.pyplot import plot,legend,suptitle,xlabel,ylabel\n", + "\t\t\t\t\n", + "#Input data\n", + "m = 0.75 \t\t\t\t#Mass of air in kg \n", + "T1 = 800. \t\t\t\t#Intial Temperature in K\n", + "P1 = 400. \t\t\t\t#Initial Pressure in kPa\n", + "P2 = 150. \t\t\t\t#Final Pressure in kPa\n", + "k = 1.4 \t\t\t\t#Adiabatic consmath.tant\n", + "R = 0.287 \t\t\t\t#Specific Gas consmath.tant in J/kg-K\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "p1 = P2/P1 \t\t\t\t#pressure ratio of process\n", + "T2 = T1*p1**((k-1)/k) \t\t\t\t#Final temperature in K\n", + "W = ((m*R*(T1-T2))/(k-1)) \t\t\t\t#Workdone in kJ\n", + "\n", + "\t\t\t\t\n", + "#P-V Diagram\n", + "\n", + "V1 = (((m*R*T1)/P1)**(1/k))*10**3 \t\t\t\t#Inlet volume in cc\n", + "V2 = (((m*R*T2)/P2)**(1/k))*10**3 \t\t\t\t#Final volume in cc\n", + "V = linspace(V1,V2,101) \t\t\t\t#Representing volume on graph, adiabatic expansion\n", + "P = P1*V1**k/V**k \t\t\t\t#Representing pressure on graph\n", + "plot(V, P) \t\t\t\t\t\t\t#Plotting \n", + "legend('P*V**k = C') \t\t\t\t#Defining curve\n", + "suptitle(\"PV Diagram\")\n", + "xlabel(\"V (cc)\")\n", + "ylabel(\"P (kPa)\") \t\t\t\t#Titles of axes\n", + "\t\t\t\t\n", + "#Output\n", + "print 'Workdone is %3.2f kJ'%(W)\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Workdone is 105.21 kJ\n" + ] + }, + { + "metadata": {}, + "output_type": "display_data", + "png": "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\nERERERGREvp/sG5+0yvB71cAAAAASUVORK5CYII=\n", + "text": [ + "" + ] + } + ], + "prompt_number": 7 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.2 page : 18" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "%matplotlib inline\n", + "\n", + "import math \n", + "from numpy import linspace\n", + "from matplotlib.pyplot import plot,legend,suptitle,xlabel,ylabel\n", + "\n", + "\n", + "#Input data\n", + "V1 = 0.35 \t\t\t\t#Volume of gas in m**3\n", + "P1 = 110. \t\t\t\t#Initial Pressure in kPa\n", + "T1 = 300. \t\t\t\t#Intial Temperature in K\n", + "P2 = 600. \t\t\t\t#Final Pressure in kPa,mismath.sing data\n", + "k = 1.4 \t\t\t\t#Adiabatic consmath.tant\n", + "Cv = 718. \t\t\t\t#Specific heat at consmath.tant volume in J/kg-K\n", + "R = 287. \t\t\t\t#Specific Gas consmath.tant in J/kg-K\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "dQ = 0 \t\t\t\t#Heat transfer in J, Since Adiabatic process\n", + "m = (P1*10**3*V1)/(R*T1) \t\t\t\t#Mass of air in kg \n", + "p1 = P2/P1 \t\t\t\t#Pressure ratio\n", + "T2 = T1*p1**((k-1)/k) \t\t\t\t#Final temperature in K\n", + "dU = (m*Cv*(T2-T1))*10**-3 \t\t\t\t#Change in internal energy in kJ\n", + "dW = -dU \t\t\t\t#Workdone in kJ, Since dQ = 0\n", + "\n", + "\t\t\t\t\n", + "#P-V Diagram\n", + "\n", + "V1cc = V1*10**3 \t\t\t\t#Inlet volume in cc\n", + "V2cc = V1cc*(T2/T1)**(1/(k-1)) \t\t\t\t#Final volume in cc\n", + "V = linspace(V1cc,V2cc,101) \t\t\t\t#Representing volume on graph, adiabatic expansion\n", + "P = P2*V1cc**k/V**k \t\t\t\t#Representing pressure on graph\n", + "plot(V, P) \t\t\t\t#Plotting \n", + "legend('P*V**k = C') \t\t\t\t#Defining curve\n", + "suptitle(\"PV Diagram\")\n", + "xlabel(\"V (cc)\")\n", + "ylabel(\"P (kPa)\") \t\t\t\t#Titles of axes\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)Heat transfer is %3i J \\nB)Change in internal energy is %3.3f kJ \\nC)Workdone is %3.3f kJ'%(dQ,dU,dW)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Heat transfer is 0 J \n", + "B)Change in internal energy is 60.072 kJ \n", + "C)Workdone is -60.072 kJ\n" + ] + }, + { + "metadata": {}, + "output_type": "display_data", + "png": "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\n", + "text": [ + "" + ] + } + ], + "prompt_number": 8 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.3 page : 21" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\t\t\t\t\n", + "#Input data\n", + "P1 = 3.2 \t\t\t\t#Initial Pressure in bar\n", + "P2 = 1. \t\t\t\t#Final Pressure in bar\n", + "T1 = 475. \t\t\t\t#Initial temperature in K\n", + "Mol = 44. \t\t\t\t#Molecular weight of carbondioxide in kg/mol\n", + "Ri = 8314. \t\t\t\t#Ideal gas consmath.tant in J/mol-K\n", + "k = 1.3 \t\t\t\t#Adiabatic consmath.tant\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "R = Ri/Mol \t\t\t\t#Specific gas consmath.tant in J/kg-K\n", + "Cp = (k*R)/(k-1) \t\t\t\t#Specific heat capacity at consmath.tant pressure in J/kg-K\n", + "Cv = Cp/k \t\t\t\t#Specific heat capacity at consmath.tant volume in J/kg-K\n", + "p1 = P2/P1 \t\t\t\t#Pressure ratio\n", + "T2 = T1*p1**((k-1)/k) \t\t\t\t#Final Temperature\n", + "dh = Cp*(T1-T2)*10**-3 \t\t\t\t#Enthalpy drop in kJ/kg\n", + "dU = Cv*(T2-T1)*10**-3 \t\t\t\t#Change in internal energy in kJ/kg, -ve sign indicates loss\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)Temperature is %3.3f K \\nB)Enthalpy drop is %3.3f kJ/kg \\\n", + "\\nC)Change in internal energy is %3.2f kJ/kg i.e. %3.2f kJ/kgloss'%(T2,dh,dU,abs(dU))\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Temperature is 363.179 K \n", + "B)Enthalpy drop is 91.560 kJ/kg \n", + "C)Change in internal energy is -70.43 kJ/kg i.e. 70.43 kJ/kgloss\n" + ] + } + ], + "prompt_number": 4 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.4 page : 25" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "P1 = 0.5 \t\t\t\t#Initial Pressure in bar\n", + "T1 = 50.+273 \t\t\t\t#Intial Temperature in K\n", + "C1 = 240. \t\t\t\t#Inlet velocity in m/s\n", + "C2 = 120. \t\t\t\t#Outlet velocity in m/s, mismath.sing data\n", + "Cp = 1005. \t\t\t\t#Specific heat capacity at consmath.tant pressure in J/kg-K\n", + "k = 1.4 \t\t\t\t#Adiabatic consmath.tant\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "T2 = T1+((C1**2-C2**2)/(2*Cp)) \t\t\t\t#Final Temperature in K\n", + "t1 = T2/T1 \t\t\t\t#Temperature ratio\n", + "P2 = P1*t1**(k/(k-1)) \t\t\t\t#Final Pressure in bar\n", + "ar = (P1*T2*C1)/(P2*T1*C2) \t\t\t\t#Ratio of outlet to inlet area\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)At outlet: Temperature is %3.2f K \\\n", + "\\nPressure is %3.4f bar \\\n", + "\\nB)Ratio of outlet to inlet area is %3.4f'%(T2,P2,ar)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)At outlet: Temperature is 344.49 K \n", + "Pressure is 0.6265 bar \n", + "B)Ratio of outlet to inlet area is 1.7025\n" + ] + } + ], + "prompt_number": 7 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.5 page : 26" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "m = 25. \t\t\t\t#Mass flow rate of air in kg/s\n", + "C2 = 115. \t\t\t\t#Outlet velocity in m/s\n", + "P1 = 100. \t\t\t\t#\t\t\t\t#Initial Pressure in kPa\n", + "T1 = 300. \t\t\t\t#Intial Temperature in K\n", + "C1 = 40. \t\t\t\t#Inlet velocity in m/s\n", + "R = 0.287 \t\t\t\t#Specific gas consmath.tant in kJ/kg-K\n", + "Cp = 1005. \t\t\t\t#Specific heat capacity at consmath.tant pressure in J/kg-K\n", + "k = 1.4 \t\t\t\t#Adiabatic consmath.tant\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "T2 = T1+((C1**2-C2**2)/(2*Cp)) \t\t\t\t#Final Temperature in K\n", + "t1 = T2/T1 \t\t\t\t#Temperature ratio\n", + "P2 = P1*t1**(k/(k-1)) \t\t\t\t#Final Pressure in bar\n", + "A1 = (m*R*T1)/(P1*C1) \t\t\t\t#Area at inlet in m**2\n", + "A2 = (m*R*T2)/(P2*C2) \t\t\t\t#Area at outlet in m**2\n", + "F = ((P1*A1)-(P2*A2))+(m*(C1-C2))*10**-3 \t\t\t\t#Axial force on mouthpiece resulting from acceleration of air in kN\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)Static pressure at intake face is %3.3f kPa \\\n", + "\\nB)Magnitude of axial force on mouthpiece resulting from acceleration of air is %3.3f kN'%(P2,F)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Static pressure at intake face is 93.414 kPa \n", + "B)Magnitude of axial force on mouthpiece resulting from acceleration of air is 33.581 kN\n" + ] + } + ], + "prompt_number": 9 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.6 page : 27" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\t\t\t\t\n", + "#Input data\n", + "P = 200. \t\t\t\t#Pressure in kPa\n", + "C = 50. \t\t\t\t#Velocity of air in m/s\n", + "d = 2.9 \t\t\t\t#Density in kg/m**3\n", + "Mol = 32. \t\t\t\t#Molecular weight of oxygen in kg/mol\n", + "k = 1.4 \t\t\t\t#Adiabatic consmath.tant\n", + "Ri = 8314 \t\t\t\t#Ideal gas consmath.tant in J/mol-K\n", + "\n", + "#Calculation\n", + "R = Ri/Mol \t\t\t\t#Specific gas consmath.tant in J/kg-K\n", + "T = P*10**3/(R*d) \t\t\t\t#Temperature in K\n", + "a = math.sqrt(k*R*T) \t\t\t\t#Velocity of sound in m/s \n", + "M = C/a \t\t\t\t#Mach number \n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'Mach number is %3.2f'%(M)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Mach number is 0.16\n" + ] + } + ], + "prompt_number": 10 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.7 page : 32" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "Pa = 1.3 \t\t\t\t#Pressure at section-A in bar\n", + "Ta = 50.+273 \t\t\t\t#Temperature at section-A in K\n", + "Pb = 1. \t\t\t\t#Pressure at section-B in bar\n", + "Tb = 13.+273 \t\t\t\t#Temperature at section-B in K\n", + "Cp = 1005. \t\t\t\t#Specific heat capacity at consmath.tant pressure in J/kg-K\n", + "R = 287. \t\t\t\t#Specific gas consmath.tant in J/kg-K\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "ds = ((Cp*math.log(Tb/Ta))-(R*math.log(Pb/Pa)))*10**-3 \t\t\t\t#The change in the entropy is kJ/kg\n", + "#+ve sign indicates A to B\n", + "#-ve sign indicates B to A\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'The change in the entropy is %3.4f kJ/kg Since value is -ve, process must takes place from B to A'%(ds)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The change in the entropy is -0.0470 kJ/kg Since value is -ve, process must takes place from B to A\n" + ] + } + ], + "prompt_number": 11 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.8 page : 34" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "V1 = 8. \t\t\t\t#Intial volume in litre\n", + "V2 = 7.8 \t\t\t\t#Final volume in litre\n", + "P1 = 0.7 \t\t\t\t#Intial Pressure in MPa\n", + "P2 = 2.7 \t\t\t\t#Final Pressure in MPa\n", + "\n", + "\t\t\t\t\n", + "#Calculations\n", + "K = (P2-P1)/(math.log(V1/V2)) \t\t\t\t#Bulk modulus of liquid in kPa\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'Bulk modulus of liquid is %3.3f kPa'%(K)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Bulk modulus of liquid is 78.996 kPa\n" + ] + } + ], + "prompt_number": 12 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.9 page : 35" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "V1 = 0.5 \t\t\t\t#Voume of Water required to fill pressure vessel in m**3\n", + "P = 3000. \t\t\t\t#Test pressure in bar\n", + "dv = 0.6 \t\t\t\t#Change of empty volume of container due to pressurisation in percentage \n", + "K = 20000. \t\t\t\t#Bulk modulus of water in MPa\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "m1 = V1*10**3 \t\t\t\t#Mass of water required to fill pressure vessel in kg\n", + "Vr = (P*V1)/K \t\t\t\t#Reduced volume of water due to compression in m**3\n", + "Vi = dv*V1/100 \t\t\t\t#Increased volume of container in m**3\n", + "V = Vr+Vi \t\t\t\t#Volume of additional water required in m**3\n", + "m = V*10**3 \t\t\t\t#Mass of additional water required in kg\n", + "mt = m1+m \t\t\t\t#Total mass of water required in litre, Since 1kg = 1Lit\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'Mass of water to be pumped into the vesel to obtain the desired pressure is %3i lit'%(mt)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Mass of water to be pumped into the vesel to obtain the desired pressure is 578 lit\n" + ] + } + ], + "prompt_number": 13 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.10 page : 35" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "SG_oil = 0.8 \t\t\t\t#Specific gravity of crude oil \n", + "K_oil = 153036.*10**4 \t\t\t\t#Bulk modulus of Oil in N/m**2\n", + "K_hg = 2648700.*10**4 \t\t\t\t#Bulk modulus of Mercury in N/m**2\n", + "d_steel = 7860. \t\t\t\t#Density of steel in kg/m**3\n", + "E_steel = 200.*10**9 \t\t\t\t#Modulus of elasticity in Pa\n", + "d_hg = 13600. \t\t\t\t#Density of mercury in kg/m**3\n", + "d_water = 1000. \t\t\t\t#Density of water in kg/m**3\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "d_oil = SG_oil*d_water \t\t\t\t#Density of oil in kg/m**3\n", + "a_oil = math.sqrt(K_oil/d_oil) \t\t\t\t#Sonic velocity of crude oil in m/s\n", + "a_hg = math.sqrt(K_hg/d_hg) \t\t\t\t#Sonic velocity of mercury in m/s\n", + "a_steel = math.sqrt(E_steel/d_steel) \t\t\t\t#Sonic velocity of steel in m/s\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)Sonic velocity of crude oil is %3.2f m/s \\\n", + "\\nB)Sonic velocity of mercury is %3.2f m/s \\\n", + "\\nA)Sonic velocity of steel is %3.1f m/s'%(a_oil,a_hg,a_steel)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Sonic velocity of crude oil is 1383.09 m/s \n", + "B)Sonic velocity of mercury is 1395.55 m/s \n", + "A)Sonic velocity of steel is 5044.3 m/s\n" + ] + } + ], + "prompt_number": 15 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.11 page : 36" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "T = 20.+273 \t\t\t\t#Temperarture of medium in K\n", + "Cp_fr = 678. \t\t\t\t#Specific heat capacity at consmath.tant pressure of freon in J/kg-K\n", + "Cv_fr = 543. \t\t\t\t#Specific heat capacity at consmath.tant volime of freon in J/kg-K\n", + "T_air = 0.+273 \t\t\t\t#Temperature of air in K\n", + "Ri = 8314. \t\t\t\t#Ideal gas consmath.tant in J/mol-K\n", + "mol_h = 2. \t\t\t\t#Molecular weight of Hydrogen in kg/mol\n", + "mol_water = 18. \t\t\t\t#Molecular weight of water in kg/mol\n", + "R_air = 287. \t\t\t\t#Specific gas consmath.tant of air in J/kg-K\n", + "k = 1.4 \t\t\t\t#Adiabatic consmath.tant of hydrogen\n", + "k_water = 1.3 \t\t\t\t#Adiabatic consmath.tant of water\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "R_h = Ri/mol_h \t\t\t\t#Specific gas consmath.tant of hydrogen in J/kg-K\n", + "a_h = math.sqrt(k*R_h*T) \t\t\t\t#Velocity of sound in hydrogen in m/s\n", + "R_water = Ri/mol_water \t\t\t\t#Specific gas consmath.tant of water in J/kg-K\n", + "a_water = math.sqrt(k_water*R_water*T) \t\t\t\t#Velocity of sound in water vapour in m/s\n", + "k_fr = Cp_fr/Cv_fr \t\t\t\t#Adiabatic consmath.tant of feoan\n", + "R_fr = Cp_fr-Cv_fr \t\t\t\t#Specific gas consmath.tant of freon in J/kg-K\n", + "a_fr = math.sqrt(k_fr*R_fr*T) \t\t\t\t#Velocity of sound in freon in m/s\n", + "a_air = math.sqrt(k*R_air*T_air) \t\t\t\t#Sonic Velocity of air at in m/s\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)Velocity of sound in hydrogen is %3.2f m/s \\\n", + "\\nB)Velocity of sound in water vapour is %3.2f m/s \\\n", + "\\nC)Velocity of sound in freon is %3.2f m/s \\\n", + "\\nD)Sonic Velocity of air at %3i K is %3.4f m/s'%(a_h,a_water,a_fr,T_air,a_air)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Velocity of sound in hydrogen is 1305.83 m/s \n", + "B)Velocity of sound in water vapour is 419.44 m/s \n", + "C)Velocity of sound in freon is 222.24 m/s \n", + "D)Sonic Velocity of air at 273 K is 331.1969 m/s\n" + ] + } + ], + "prompt_number": 17 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.12 page : 41" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "M = 0.85 \t\t\t\t#Mach number\n", + "P = 80. \t\t\t\t#Pressure in kPa\n", + "k = 1.4 \t\t\t\t#Adiabatic Consmath.tant\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "Po = P*(1+(((k-1)/2)*M**2))**(k/(k-1)) \t\t\t\t#Pressure acting on the surface of the body in kPa\n", + "\n", + "\t\t\t\t\n", + "#Output \n", + "print 'The highest pressure acting on the surface of the body is %3.1f kPa'%(Po)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The highest pressure acting on the surface of the body is 128.3 kPa\n" + ] + } + ], + "prompt_number": 18 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.13 page : 41" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\t\t\t\t\n", + "#Input data\n", + "P = 96. \t\t\t\t#Pressure in kPa\n", + "T = 27.+273 \t\t\t\t#Temperature in K\n", + "dP = 32. \t\t\t\t#Difference between pivot and static pressure\n", + "k = 1.4 \t\t\t\t#Adiabatic Consmath.tant\n", + "R = 287. \t\t\t\t#Specific Gas consmath.tant in J/kg-K\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "d = (P*10**3)/(R*T) \t\t\t\t#Density in kg/m**3\n", + "Ci = math.sqrt((2*(dP*10**3))/d) \t\t\t\t#Velocity of incompressible flow in m/s\n", + "pr = (dP)/P \t\t\t\t#Pressure ratio\n", + "p1 = pr+1 \t\t\t\t#Stagnation to static pressure ratio\n", + "M = math.sqrt(((p1**((k-1)/k)-1)*2)/(k-1)) \t\t\t\t#Mach number\n", + "Cc = M*math.sqrt(k*R*T) \t\t\t\t#Velocity of compressible flow in m/s\n", + "\n", + "#Output\n", + "print 'A)Air velocity in incompressible flow is %3.1f m/s \\\n", + "\\nB)Air velocity if flow is compressible is %3.3f m/s'%(Ci,Cc)\n", + "\n", + "# note : rounding off error." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Air velocity in incompressible flow is 239.6 m/s \n", + "B)Air velocity if flow is compressible is 227.226 m/s\n" + ] + } + ], + "prompt_number": 21 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.14 page : 42" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "T1 = 200.+273 \t\t\t\t#Intial Temperature in K\n", + "P1 = 1.7 \t\t\t\t#Initial Pressure in bar\n", + "P2 = 1. \t\t\t\t#Final Pressure in bar\n", + "C1 = 30. \t\t\t\t#Inlet velocity in m/s\n", + "m = 1. \t\t\t\t#Mass flow rate in kg/s\n", + "D = 0.025 \t\t\t\t#Nozzle diameter in m\n", + "k = 1.4 \t\t\t\t#Adiabatic Consmath.tant\n", + "R = 287. \t\t\t\t#Specific Gas consmath.tant in J/kg-K\n", + "Cp = 1005. \t\t\t\t#Specific heat capacity at consmath.tant pressure in J/kg-K\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "p1 = P2/P1 \t\t\t\t#Pressure ratio\n", + "T2 = T1*p1**((k-1)/k) \t\t\t\t#Final temperature in K\n", + "E1 = T1+(C1**2/(2*Cp)) \t\t\t\t#LHS of Steady flow energy equation\n", + "C2 = math.sqrt((E1-T2)*2*Cp) \t\t\t\t#Exit velocity of the air in m/s\n", + "d2 = (P2*10**5)/(R*T2) \t\t\t\t#Density at outlet in kg/m**3\n", + "A2 = math.pi*D**2/4 \t\t\t\t#Area at outlet in m**2\n", + "n = ceil(m/(d2*A2*C2)) \t\t\t\t#Number of nozzles to be used\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)Exit velocity of the air is %3.2f m/s \\\n", + "\\nB)Number of nozzles to be used are %1.0f'%(C2,n)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Exit velocity of the air is 366.94 m/s \n", + "B)Number of nozzles to be used are 7\n" + ] + } + ], + "prompt_number": 23 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.15 page : 44" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\t\t\t\t\n", + "#Input data\n", + "Po = 300. \t\t\t\t#Pressure in the vessel in kPa\n", + "To = 50.+273 \t\t\t\t#Temperature in vessel in K\n", + "M = 1. \t\t\t\t#Mach number \n", + "k = 1.667 \t\t\t\t#Adiabatic consmath.tant\n", + "Ri = 8314. \t\t\t\t#Ideal gas consmath.tant in J/mol-K\n", + "Mol = 4. \t\t\t\t#Molecular weight of helium in kg/mol\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "R = Ri/Mol \t\t\t\t#Specific gas consmath.tant in J/kg-K\n", + "Cp = (k*R)/(k-1) \t\t\t\t#Specific heat capacity at consmath.tant pressure in J/kg-K\n", + "p1 = (2/(k+1))**(k/(k-1)) \t\t\t\t#Pressure ratio\n", + "Pt = Po*p1 \t\t\t\t#Pressure at test condition in kPa\n", + "t1 = (2/(k+1)) \t\t\t\t#Temperature ratio \n", + "Tt = To*t1 \t\t\t\t#Temperature at test condition in K\n", + "at = math.sqrt(k*R*Tt) \t\t\t\t#Velocity of sound in m/s\n", + "Ct = at \t\t\t\t#Velocity of gas at test condition in m/s\n", + "Cmax = math.sqrt(2*Cp*To) \t\t\t\t#Maximum velocity due to expanding of gases through nozzle system in m/s\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)At test point: \\\n", + "\\nPressure is %3.2f kPa \\\n", + "\\nTemperature is %3.2f K \\\n", + "\\nVelocity is %3.1f m/s \\\n", + "\\nB)Maximum velocity due to expanding of gases through nozzle system is %3.2f m/s'%(Pt,Tt,Ct,Cmax)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)At test point: \n", + "Pressure is 146.13 kPa \n", + "Temperature is 242.22 K \n", + "Velocity is 916.1 m/s \n", + "B)Maximum velocity due to expanding of gases through nozzle system is 1831.88 m/s\n" + ] + } + ], + "prompt_number": 25 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.16 page :43" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "T = 40+273 \t\t\t\t#Temperature in K\n", + "p1 = 0.5 \t\t\t\t#Static to Stagnation pressure ratio\n", + "k = 1.67 \t\t\t\t#Adiabatic consmath.tant\n", + "Ri = 8314 \t\t\t\t#Ideal gas consmath.tant in J/mol-K\n", + "Mol = 39.94 \t\t\t\t#Molecular weight of argon in kg/mol\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "R = Ri/Mol \t\t\t\t#Specific gas consmath.tant in J/kg-K\n", + "p2 = 1/p1 \t\t\t\t#Pressure ratio\n", + "M = math.sqrt(((p2**((k-1)/k)-1)*2)/(k-1)) \t\t\t\t#Mach number \n", + "C = M*math.sqrt(k*R*T) \t\t\t\t#Velocity in the flow in m/s\n", + "\n", + "\t\t\t\t\n", + "#Output \n", + "print 'A)Mach number is %3.3f \\\n", + "\\nB)Velocity in the flow is %3.1f m/s'%(M,C)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Mach number is 0.978 \n", + "B)Velocity in the flow is 322.7 m/s\n" + ] + } + ], + "prompt_number": 26 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.17 page : 46" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "M = 2.5 \t\t\t\t#Mach number \n", + "h = 10 \t\t\t\t#Height in km\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "alp = math.asin((1/M)) \t\t\t\t#Mach cone angle in degree\n", + "d = 10/math.tan((alp)) \t\t\t\t#Distance the jet would cover before a sonic boom is heard on ground in km\n", + "\t\t\t\t\n", + "#Output\n", + "print 'Distance the jet would cover before a sonic boom is heard on ground is %3.2f km'%(d)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Distance the jet would cover before a sonic boom is heard on ground is 22.91 km\n" + ] + } + ], + "prompt_number": 37 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.18 page : 46" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "h = 1100 \t\t\t\t#Height in m\n", + "M1 = 2.5 \t\t\t\t#Mach number of aircraft @h\n", + "T = 280 \t\t\t\t#Temperature @h\n", + "M2 = 0.5 \t\t\t\t#Mach number of observer\n", + "k = 1.4 \t\t\t\t#Adiabatic Consmath.tant\n", + "R = 287 \t\t\t\t#Specific gas consmath.tant in J/kg-K\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "alp = math.sin((1/M1)) \t\t\t\t#Mach cone angle in degree\n", + "a = math.sqrt(k*R*T) \t\t\t\t#Velocity of sound in m/s\n", + "C1 = M1*a \t\t\t\t#Velocity of aircraft when the observer is stationary in m/s\n", + "t1 = h/(C1*(math.tan(alp))) \t\t\t\t#Time elapsed when the observer is stationary in sec\n", + "C2 = (M1-M2)*a \t\t\t\t#Velocity of aircraft when the observer is moving in the direction of aircraft in m/s\n", + "t2 = h/(C2*(math.tan(alp))) \t\t\t\t#Time elapsed when the observer is moving in the direction of aircraft in sec\n", + "C3 = (M1+M2)*a \t\t\t\t#Velocity of aircraft when the observer is moving in the opposite direction in m/s\n", + "t3 = h/(C3*(math.tan(alp))) \t\t\t\t#Time elapsed when the observer is moving in the opposite direction in sec\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)Time elapsed when the observer is stationary is %3.3f sec \\\n", + "\\nB)Time elapsed when the observer is moving in the direction of aircraft with M = %3.1f is %3.2f sec \\\n", + "\\nC)Time elapsed when the observer is moving in the opposite direction is %3.2f sec'%(t1,M2,t2,t3)\n", + "\n", + "# note : rounding off error ." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Time elapsed when the observer is stationary is 3.197 sec \n", + "B)Time elapsed when the observer is moving in the direction of aircraft with M = 0.5 is 4.00 sec \n", + "C)Time elapsed when the observer is moving in the opposite direction is 2.66 sec\n" + ] + } + ], + "prompt_number": 43 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.19 page : 55" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "P = 200. \t\t\t\t#Pressure in kPa\n", + "d = 2.9 \t\t\t\t#Density in kg/m**3\n", + "C = 50. \t\t\t\t#Velocity in m/s\n", + "mol = 32. \t\t\t\t#Molecular weight of oxygen in kg/mol\n", + "k = 1.4 \t\t\t\t#Adiabatic consmath.tant\n", + "Ri = 8314. \t\t\t\t#Ideal gas consmath.tant in J/mol-K\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "R = Ri/mol \t\t\t\t#Specific gas Consmath.tant in J/kg-k\n", + "T = (P*10**3)/(R*d) \t\t\t\t#Temperature in K\n", + "a = math.sqrt(k*R*T) \t\t\t\t#Velocity of sound in m/s \n", + "M = C/a \t\t\t\t#Mach number\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'Mach number is %3.4f'%(M)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Mach number is 0.1609\n" + ] + } + ], + "prompt_number": 45 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.20 page : 55" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "C = 200 \t\t\t\t#Velocity of object in m/s\n", + "mol = 4 \t\t\t\t#Molecular weight of helium in kg/mol\n", + "k = 1.67 \t\t\t\t#Adiabatic consmath.tant\n", + "Ri = 8314 \t\t\t\t#Ideal gas consmath.tant in J/mol-K\n", + "T = 288 \t\t\t\t#Temperature in K\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "R = Ri/mol \t\t\t\t#Specific gas Consmath.tant in J/kg-k\n", + "a = math.sqrt(k*R*T) \t\t\t\t#Velocity of sound in m/s\n", + "M = C/a \t\t\t\t#Mach number \n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'Mach number is %3.1f'%(M)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Mach number is 0.2\n" + ] + } + ], + "prompt_number": 46 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.21 page : 56" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "Z1 = 0. \t\t\t\t#Height from sea level in m\n", + "Z2 = 11. \t\t\t\t#Height from sea level in m\n", + "T1 = 288. \t\t\t\t#Temperature @Z1 in K, from gas tables\n", + "T2 = 216.5 \t\t\t\t#Temperature @Z2 in K, from gas tables\n", + "C = 1000.*(5./18) \t\t\t\t#Velocity in m/s\n", + "k = 1.4 \t\t\t\t#Adiabatic Consmath.tant\n", + "R = 287. \t\t\t\t#Specific gas consmath.tant in J/kg-k\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "a1 = math.sqrt(k*R*T1) \t\t\t\t#Sound velocity @Z1 in m/s\n", + "M1 = C/a1 \t\t\t\t#Mach number @Z1\n", + "a2 = math.sqrt(k*R*T2) \t\t\t\t#Sound velocity @Z2 in m/s\n", + "M2 = C/a2 \t\t\t\t#Mach number @Z2\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)Speed of sound at: \\\n", + "\\nsea level is %3.2f and altitude of %3i km is %3.2f m/s \\\n", + "\\nB)Mach numbeer at: sea level is %3.2f an altitude of %3i km is %3.2f'%(a1,Z2,a2,M1,Z2,M2)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Speed of sound at: \n", + "sea level is 340.17 and altitude of 11 km is 294.94 m/s \n", + "B)Mach numbeer at: sea level is 0.82 an altitude of 11 km is 0.94\n" + ] + } + ], + "prompt_number": 50 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.22 page : 56" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "T = 300+273 \t\t\t\t#Static Temperature in K\n", + "C = 200 \t\t\t\t#Velocity in m/s\n", + "Cp = 1005 \t\t\t\t#Specific heat capacity at consmath.tant pressure in J/kg-K\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "To = T+(C**2/(2*Cp)) \t\t\t\t#Stagnation Temperature in K\n", + "C_max = math.sqrt(2*Cp*To) \t\t\t\t#Maximum possible velocity obtained by air in m/s\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'Maximum possible velocity obtained by air is %3.f m/s'%(C_max)\n", + "\n", + "# rounding off error." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Maximum possible velocity obtained by air is 1091 m/s\n" + ] + } + ], + "prompt_number": 52 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.23 page : 57" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "dT = 37 \t\t\t\t#Temperature difference between air inside the tyre and nozzle exit\n", + "Cp = 1005 \t\t\t\t#Specific heat capacity at consmath.tant pressure in J/kg-K\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "C = math.sqrt(2*Cp*dT) \t\t\t\t#Exit velocity of air in m/s\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'Exit velocity of air is %3.1f m/s'%(C)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Exit velocity of air is 272.7 m/s\n" + ] + } + ], + "prompt_number": 53 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.24 page : 57" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "C = 800*(5./18) \t\t\t\t#Velocity in m/s\n", + "Po = 105. \t\t\t\t#Stagnation pressure in kPa\n", + "To = 35.+273 \t\t\t\t#Stagnation temperature in K\n", + "Cp = 1005. \t\t\t\t#Specific heat capacity at consmath.tant pressure in J/kg-K\n", + "k = 1.4 \t\t\t\t#Adiabatic Consmath.tant\n", + "R = 287. \t\t\t\t#Specific gas consmath.tant in J/kg-k\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "T = To-(C**2/(2*Cp)) \t\t\t\t#Static temperature in K\n", + "P = Po*(T/To)**(k/(k-1)) \t\t\t\t#Static pressure in kPa\n", + "a = math.sqrt(k*R*T) \t\t\t\t#Sound Velocity in m/s \n", + "M = C/a \t\t\t\t#Mach number\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)Static conditions: \\\n", + "\\nPressure is %3.2f kPa \\\n", + "\\nTemperature is %3.2f K \\\n", + "\\nSound Velocity is %3.2f m/s \\\n", + "\\nB)Mach number is %3.2f'%(P,T,a,M)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Static conditions: \n", + "Pressure is 78.49 kPa \n", + "Temperature is 283.43 K \n", + "Sound Velocity is 337.47 m/s \n", + "B)Mach number is 0.66\n" + ] + } + ], + "prompt_number": 54 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.25 page : 57" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "C = 215 \t\t\t\t#Velocity in m/s\n", + "T = 30+273 \t\t\t\t#Static temperature in K\n", + "P = 5 \t\t\t\t#Static pressure in bar\n", + "R = 287 \t\t\t\t#Specific gas consmath.tant in J/kg-k\n", + "k = 1.4 \t\t\t\t#Adiabatic Consmath.tant\n", + "\n", + "\t\t\t\t\n", + "#Calculations\n", + "a = math.sqrt(k*R*T) \t\t\t\t#Sound Velocity in m/s \n", + "M = C/a \t\t\t\t#Mach number\n", + "To = T*(1+(((k-1)/2)*M**2)) \t\t\t\t#Stagnation temperature in K\n", + "Po = P*(To/T)**(k/(k-1)) \t\t\t\t#Stagnation pressure in kPa\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)Stagnation Pressure is %3.4f bar \\\n", + "\\nB)Mach number is %3.3f'%(Po,M)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Stagnation Pressure is 6.4599 bar \n", + "B)Mach number is 0.616\n" + ] + } + ], + "prompt_number": 55 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.26 page : 58" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "T = 400. \t\t\t\t#Static temperature in K\n", + "k = 1.4 \t\t\t\t#Adiabatic Consmath.tant\n", + "Cp = 1005. \t\t\t\t#Specific heat capacity at consmath.tant pressure in J/kg-K\n", + "R = 287. \t\t\t\t#Specific gas consmath.tant in J/kg-k\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "a = math.sqrt(k*R*T) \t\t\t\t#Sound velocity in m/s\n", + "C = a \t\t\t\t#Velocity of jet in m/s, Since jet has sonic velocity\n", + "To = T+(C**2/(2*Cp)) \t\t\t\t#Stagnation temperature in K\n", + "ao = math.sqrt(k*R*To) \t\t\t\t#Sound velocity at Stagnation condition in m/s \n", + "ho = (Cp*To)*10**-3 \t\t\t\t#Stagnation enthalpy in kJ/kg\n", + "C_max = math.sqrt(2*Cp*To) \t\t\t\t#Maximum velocity of jet in m/s\n", + "cr = C/C_max \t\t\t\t#Crocco number\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)Velocity of sound at %3i K is %3.3f m/s \\\n", + "\\nB)Velocity of sound at stagnation condition is %3.3f m/s \\\n", + "\\nC)Maximum velocity of jet is %3.3f m/s \\\n", + "\\nD)Stagnation enthalpy is %3.3f kJ/kg \\\n", + "\\nE)Crocco number is %3.4f'%(T,C,ao,C_max,ho,cr)\n", + "\n", + "# rounding off error." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Velocity of sound at 400 K is 400.899 m/s \n", + "B)Velocity of sound at stagnation condition is 439.145 m/s \n", + "C)Maximum velocity of jet is 982.202 m/s \n", + "D)Stagnation enthalpy is 482.360 kJ/kg \n", + "E)Crocco number is 0.4082\n" + ] + } + ], + "prompt_number": 57 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.27 page : 59" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "C = 250. \t\t\t\t#Velocity of air in m/s \n", + "D = 10. \t\t\t\t#Diameter in duct in cm\n", + "T = 5.+273 \t\t\t\t#Static temperature in K\n", + "P = 40. \t\t\t\t#Static pressure in kPa\n", + "k = 1.4 \t\t\t\t#Adiabatic consmath.tant\n", + "Cp = 1005. \t\t\t\t#Specific heat capacity at consmath.tant pressure in J/kg-K\n", + "R = 287. \t\t\t\t#Specific gas consmath.tant in J/kg-k\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "To = T+(C**2/(2*Cp)) \t\t\t\t#Stagnation temperature in K\n", + "Po = P*(To/T)**(k/(k-1)) \t\t\t\t#Stagnation pressure in kPa\n", + "d = (P*10**3)/(R*T) \t\t\t\t#Density in kg/m**3\n", + "A = (math.pi*D**2/4)*10**-4 \t\t\t\t#Area in m**2\n", + "m = d*A*C \t\t\t\t#Mass flow rate in kg/s\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)Stagnation pressure is %3.2f kPa \\\n", + "\\nB)Stagnation temperature is %3.2f K \\\n", + "\\nC)Mass flow rate is %3.4f kg/s'%(Po,To,m)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Stagnation pressure is 57.97 kPa \n", + "B)Stagnation temperature is 309.09 K \n", + "C)Mass flow rate is 0.9844 kg/s\n" + ] + } + ], + "prompt_number": 58 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.28 page : 59" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "C = 300. \t\t\t\t#Velocity of air in m/s \n", + "P = 1. \t\t\t\t#Static pressure in kPa\n", + "T = 290. \t\t\t\t#Static temperature in K\n", + "k = 1.4 \t\t\t\t#Adiabatic consmath.tant\n", + "R = 287. \t\t\t\t#Specific gas consmath.tant in J/kg-k\n", + "Cp = 1005. \t\t\t\t#Specific heat capacity at consmath.tant pressure in J/kg-K\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "To = T+(C**2/(2*Cp)) \t\t\t\t#Stagnation temperature in K\n", + "Po = P*(To/T)**(k/(k-1)) \t\t\t\t#Stagnation pressure in kPa\n", + "a = math.sqrt(k*R*T) \t\t\t\t#Sound velocity in m/s\n", + "Co = math.sqrt(k*R*To) \t\t\t\t#Sound velocity at Stagnation condition in m/s \n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)Stagnation pressure and temperature are %3.4f bar and %3.2f K \\\n", + "\\nB)Velocity of sound in the dynamic and stagnation conditions are %3.2f m/s and %3.2f m/s'%(Po,To,a,Co)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Stagnation pressure and temperature are 1.6529 bar and 334.78 K \n", + "B)Velocity of sound in the dynamic and stagnation conditions are 341.35 m/s and 366.76 m/s\n" + ] + } + ], + "prompt_number": 59 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.29 page : 60" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data \n", + "dP = 490*(1.01325/760) \t\t\t\t#Pressure in pivot tube in bar\n", + "P = 0.3546+1.01325 \t\t\t\t#Static pressure(absolute) in bar \n", + "To = 25.+273 \t\t\t\t#Stagnation temperature in K\n", + "k = 1.4 \t\t\t\t#Adiabaatic consmath.tant\n", + "R = 287. \t\t\t\t#Specific gas consmath.tant in J/kg-k\n", + "Cp = 1005. \t\t\t\t#Specific heat capacity at consmath.tant pressure in J/kg-K\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "Po = dP+P \t\t\t\t#Stagnation pressure in bar\n", + "T = To*(P/Po)**((k-1)/k) \t\t\t\t#Static temperature\n", + "C1 = math.sqrt(2*Cp*(To-T)) \t\t\t\t#Flow velocity for Compressible flow in m/s\n", + "di = Po/(R*To) \t\t\t\t#Density in kg/m**3\n", + "C2 = math.sqrt((2*dP)/di) \t\t\t\t#Flow velocity for incompressible flow in m/s\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'Flow velocity for: A)Compressible flow is %3.2f m/s \\\n", + "\\nB)Incompressible flow is %3.2f m/s'%(C1,C2)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Flow velocity for: A)Compressible flow is 251.44 m/s \n", + "B)Incompressible flow is 235.13 m/s\n" + ] + } + ], + "prompt_number": 60 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.30 page : 61" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "To = 27.+273 \t\t\t\t#Stagnation temperature in K\n", + "Po = 8. \t\t\t\t#Stagnation Pressure in bar\n", + "P = 5.6 \t\t\t\t#Static pressure in bar, taken from diagram given\n", + "m = 2. \t\t\t\t#Mass flow rate in kg/s\n", + "k = 1.4 \t\t\t\t#Adiabaatic consmath.tant\n", + "Cp = 1005. \t\t\t\t#Specific heat capacity at consmath.tant pressure in J/kg-K\n", + "R = 287. \t\t\t\t#Specific gas consmath.tant in J/kg-k\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "T = To*(P/Po)**((k-1)/k) \t\t\t\t#Static temperature in K\n", + "a = math.sqrt(k*R*T) \t\t\t\t#Sound velocity in m/s\n", + "C = math.sqrt(2*Cp*(To-T)) \t\t\t\t#Velocity in m/s\n", + "M = C/a \t\t\t\t#Mach number\n", + "A = ((m*R*T)/(P*10**5*C))*10**4 \t\t\t\t#Area at a point in the channal in cm**2\n", + "\n", + "\t\t\t\t\n", + "#Output\n", + "print 'A)Mach number is %3.4f \\\n", + "\\nB)Velocity is %3.1f m/s \\\n", + "\\nC)Area at a point in the channal is %3.3f cm**2'%(M,C,A)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "A)Mach number is 0.7326 \n", + "B)Velocity is 241.7 m/s \n", + "C)Area at a point in the channal is 11.489 cm**2\n" + ] + } + ], + "prompt_number": 61 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 1.31 page : 61" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math \n", + "\n", + "\t\t\t\t\n", + "#Input data\n", + "Po = 1.8 \t\t\t\t#Stagnation pressure in atm\n", + "To = 20+273 \t\t\t\t#Stagnation temperature in K\n", + "P = 1 \t\t\t\t#Surrounding pressure in atm\n", + "k = 1.4 \t\t\t\t#Adiabatic consmath.tant\n", + "R = 287 \t\t\t\t#Specific gas consmath.tant in J/kg-k\n", + "\n", + "\t\t\t\t\n", + "#Calculation\n", + "p1 = 0.528 \t\t\t\t#Static to Stagnation pressure ratio @Mach number = 1, from gas tables\n", + "Pt = p1*Po \t\t\t\t#Critical pressure in atm, Since Pt