diff options
Diffstat (limited to 'Problems_In_Fluid_Flow')
-rw-r--r-- | Problems_In_Fluid_Flow/README.txt | 10 | ||||
-rw-r--r-- | Problems_In_Fluid_Flow/ch1.ipynb | 635 | ||||
-rw-r--r-- | Problems_In_Fluid_Flow/ch10.ipynb | 558 | ||||
-rw-r--r-- | Problems_In_Fluid_Flow/ch11.ipynb | 479 | ||||
-rw-r--r-- | Problems_In_Fluid_Flow/ch12.ipynb | 331 | ||||
-rw-r--r-- | Problems_In_Fluid_Flow/ch13.ipynb | 375 | ||||
-rw-r--r-- | Problems_In_Fluid_Flow/ch2.ipynb | 481 | ||||
-rw-r--r-- | Problems_In_Fluid_Flow/ch3.ipynb | 325 | ||||
-rw-r--r-- | Problems_In_Fluid_Flow/ch4.ipynb | 459 | ||||
-rw-r--r-- | Problems_In_Fluid_Flow/ch5.ipynb | 757 | ||||
-rw-r--r-- | Problems_In_Fluid_Flow/ch6.ipynb | 501 | ||||
-rw-r--r-- | Problems_In_Fluid_Flow/ch7.ipynb | 203 | ||||
-rw-r--r-- | Problems_In_Fluid_Flow/ch8.ipynb | 467 | ||||
-rw-r--r-- | Problems_In_Fluid_Flow/ch9.ipynb | 370 | ||||
-rw-r--r-- | Problems_In_Fluid_Flow/screenshots/pic1.png | bin | 0 -> 126788 bytes | |||
-rw-r--r-- | Problems_In_Fluid_Flow/screenshots/pic2.png | bin | 0 -> 163897 bytes | |||
-rw-r--r-- | Problems_In_Fluid_Flow/screenshots/pic3.png | bin | 0 -> 129162 bytes |
17 files changed, 5951 insertions, 0 deletions
diff --git a/Problems_In_Fluid_Flow/README.txt b/Problems_In_Fluid_Flow/README.txt new file mode 100644 index 00000000..d0180dc8 --- /dev/null +++ b/Problems_In_Fluid_Flow/README.txt @@ -0,0 +1,10 @@ +Contributed By: Hiren Shah +Course: mca +College/Institute/Organization: Financial Technology +Department/Designation: Developer +Book Title: Problems In Fluid Flow +Author: D. J. Brasch And D. Whyman +Publisher: Edward Arnold +Year of publication: 1986 +Isbn: 0-7131-3554-9 +Edition: 1
\ No newline at end of file diff --git a/Problems_In_Fluid_Flow/ch1.ipynb b/Problems_In_Fluid_Flow/ch1.ipynb new file mode 100644 index 00000000..060862e5 --- /dev/null +++ b/Problems_In_Fluid_Flow/ch1.ipynb @@ -0,0 +1,635 @@ +{ + "metadata": { + "name": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 1 : Pipe Flow of Liquids" + ] + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "\n", + "example 1.1 page no : 1" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find whether\n", + "the system is in turbulent motion \n", + "the system is in laminar motion \n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "mu = 6.3/100; #viscosity\n", + "rho = 1170.; #density\n", + "d = .3; #diameter of pipe\n", + "b = 0.142; #conversion factor\n", + "pi=3.14;\n", + "\n", + "#calculation\n", + "Q = 150000.*b/24./3600 #flow rate\n", + "u = Q/pi/d**2.*4 #flow speed\n", + "Re = rho*u*d/mu\n", + "if Re>4000:\n", + " print \"the system is in turbulent motion as reynolds no is greater than 4000: %.3f\"%Re\n", + "elif Re<2100 :\n", + " print \"the system is in laminar motion\" ,Re\n", + "else:\n", + " print \"the system is in transition motion\",Re\n", + "\n", + "mu = 5.29/1000;\n", + "d = 0.06;\n", + "G = 0.32; #mass flow rate\n", + "Re = 4*G/pi/d/mu;\n", + "\n", + "if Re>4000 :\n", + " print \"the system is in turbulent motion as reynolds no is greater than 4000: \",Re\n", + "elif Re<2100 :\n", + " print \"the system is in laminar motion as Re is less than 2100 : %.3f\" %Re\n", + "else:\n", + " print \"the system is in transition motion\",Re\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "the system is in turbulent motion as reynolds no is greater than 4000: 19441.074\n", + "the system is in laminar motion as Re is less than 2100 : 1284.320\n" + ] + } + ], + "prompt_number": 1 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "\n", + "example 1.2 page no : 2" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "The Stanton-Pannel friction factor per unit of length\n", + "shear stress exerted by liquid\n", + "Total shear force exerted \n", + "viscosity of liquid \n", + "'''\n", + "\n", + "import math \n", + "\n", + "\n", + "# Initialization of Variable\n", + "G=21.2; #mass flow rate\n", + "rho=1120; #density\n", + "d=0.075; #diameter\n", + "l=50.;\n", + "g=9.81;\n", + "pi=3.14;\n", + "delz=24./100; #head difference\n", + "\n", + "#calculation\n", + "delP=delz*rho*g; #differece of pressure\n", + "u=4*G/pi/d**2/rho;\n", + "phi=delP/rho*d/l/u**2./4*50;\n", + "print \"The Stanton-Pannel friction factor per unit of length: %f\"%phi\n", + "R=phi*rho*u**2;\n", + "print \"shear stress exerted by liquid on the pipe wall in (N/m**2) : %.3f\"% R\n", + "F=pi*d*l*R;\n", + "print \"Total shear force exerted on the pipe in (N): %.3f\"%F\n", + "Re=(.0396/phi)**4;#reynold's no.\n", + "mu=rho*u*d/Re;\n", + "print \"viscosity of liquid in (kg/m/s):%f\" %mu\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The Stanton-Pannel friction factor per unit of length: 0.002402\n", + "shear stress exerted by liquid on the pipe wall in (N/m**2) : 49.442\n", + "Total shear force exerted on the pipe in (N): 582.184\n", + "viscosity of liquid in (kg/m/s):0.004877\n" + ] + } + ], + "prompt_number": 2 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 1.3 page no : 4" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find the difference between the rise levels of manometer\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "pi=3.14;\n", + "g=9.81;\n", + "d=0.00125;\n", + "Re=2100;\n", + "l=0.035;\n", + "rhoc=779. #density of cyclohexane\n", + "rhow=999. #density of water\n", + "muc=1.02/1000; #viscosity of cyclo hexane\n", + "\n", + "#calculation\n", + "u=Re*muc/rhoc/d; #speed\n", + "Q=pi*d**2*u/4; #volumetric flow rate\n", + "delP=32*muc*u*l/d**2;#pressure difference\n", + "delz=delP/(rhow-rhoc)/g;\n", + "print \"the difference between the rise levels of manometer in (cm): %.4f\"%(delz*100 )\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "the difference between the rise levels of manometer in (cm): 74.5210\n" + ] + } + ], + "prompt_number": 3 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "\n", + "example 1.4 page no : 6" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find The volume of pure material\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "d=0.05;\n", + "l=12.;\n", + "per=100.-2;\n", + "pi=3.1428\n", + "\n", + "#calculation\n", + "s=math.sqrt(per/100/4*d**2);#radius of core of pure material\n", + "V=pi*d**2./4.*l/(2.*(1-(2.*s)**2/d**2));\n", + "print \"The volume of pure material so that 2%% technical material appears at the end in (m**3): %.3f\"%V\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The volume of pure material so that 2% technical material appears at the end in (m**3): 0.589\n" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 1.5 page no : 7" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "The percent value of d for which where pitot tube is kept show average velocity in streamline flow\n", + "The percent value of d for which where pitot tube is kept show average velocity in turbulent flow \n", + "The error shown by pitot tube at new position \n", + "'''\n", + "import math \n", + "\n", + "\n", + "# Initialization of Variable\n", + "\n", + "a=1./2*(1-1/math.sqrt(2.));\n", + "print \"The percent value of d for which where pitot tube is kept show average velocity \\\n", + "in streamline flow in (%%) : %.4f\"%(a*100)\n", + "\n", + "a=(49./60)**7/2.\n", + "print \"The percent value of d for which where pitot tube is kept show average velocity in \\\n", + "turbulent flow in (%%) : %.4f\"%(a*100)\n", + "\n", + "#on equating coefficient of r\n", + "y=a*2; #y=a/100*2*r\n", + "s=1-y; #s=r-y\n", + "\n", + "#on equating coeff. of 1/4/mu*del(P)/del(l)\n", + "E=(1-s**2-.5)/.5;\n", + "print \"The error shown by pitot tube at new position if value of streamlined flow flow was\\\n", + "to be obtained in (%%) : %.4f\"%E\n", + "print \"The - sign indicates that it will print lay reduced velocity than what actually is\"\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The percent value of d for which where pitot tube is kept show average velocity in streamline flow in (%) : 14.6447\n", + "The percent value of d for which where pitot tube is kept show average velocity in turbulent flow in (%) : 12.1139\n", + "The error shown by pitot tube at new position if value of streamlined flow flow wasto be obtained in (%) : -0.1483\n", + "The - sign indicates that it will print lay reduced velocity than what actually is\n" + ] + } + ], + "prompt_number": 6 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "\n", + "example 1.6 page no : 9" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "The Power required to pump acid \n", + "The gauge pressure at pump outlet \n", + "The increase in power required to transfer\n", + "The gauge pressure at pump outlet\n", + "'''\n", + "\n", + "# Initialization of Variable\n", + "rhon = 1068. #density of nitric acid\n", + "mun = 1.06/1000. #viscosity of nitric acid\n", + "g = 9.81\n", + "l = 278.\n", + "d = 0.032\n", + "alpha = 1.\n", + "h2 = 57.4 #height to be raised\n", + "h1 = 5. #height from which to be raised\n", + "e = .0035/1000. #roughness\n", + "G = 2.35 #mass flow rate\n", + "pi = 3.14\n", + "#calculations\n", + "#part 1\n", + "u = 4.*G/rhon/pi/d**2\n", + "Re = rhon*d*u/mun\n", + "rr = e/d #relative roughness\n", + "\n", + "#Reading's from Moody's Chart\n", + "phi = .00225 #friction coeff.\n", + "W = u**2/2.+g*(h2-h1)+4*phi*l*u**2/d #The work done/kg of fluid flow in J/kg\n", + "V = abs(W)*G\n", + "print \"The Power required to pump acid in kW : %.4f\"%(abs(V)/1000)\n", + "\n", + "#part 2\n", + "P2 = -u**2*rhon/2.+g*(h1)*rhon+abs(W+2)*rhon\n", + "print \"The gauge pressure at pump outlet when piping is new in (kPa) : %.4f\"%(P2/1000)\n", + "\n", + "#part 3\n", + "e = .05/1000\n", + "Re = rhon*d*u/mun\n", + "rr = e/d\n", + "\n", + "#Reading's from Moody's Chart\n", + "phi = 0.0029\n", + "W = u**2/2+g*(h2-h1)+4*phi*l*u**2/d\n", + "Vnew = abs(W)*G\n", + "Pi = (Vnew-V)/V*100.\n", + "print \"The increase in power required to transfer in old pipe in (%%): %.4f\"%Pi\n", + "\n", + "#part 4\n", + "P2 = -u**2*rhon/2+g*(h1)*rhon+abs(W+2)*rhon\n", + "print \"The gauge pressure at pump outlet when piping is old in (kPa) :%.4f\"%(P2/1000)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The Power required to pump acid in kW : 2.5936\n", + "The gauge pressure at pump outlet when piping is new in (kPa) : 1229.2152\n", + "The increase in power required to transfer in old pipe in (%): 15.3353\n", + "The gauge pressure at pump outlet when piping is old in (kPa) :1409.9715\n" + ] + } + ], + "prompt_number": 7 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 1.7 page no : 12" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "power required to drive pump \n", + "The gauge pressure in (kPa)\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rho=990.;\n", + "mu=5.88/10000;\n", + "g=9.81;\n", + "pi=3.14;\n", + "temp=46.+273\n", + "e=1.8/10000 #absolute roughness\n", + "Q=4800./1000./3600;\n", + "l=155.;\n", + "h=10.5;\n", + "d=0.038;\n", + "delh=1.54 #head loss at heat exchanger\n", + "effi=0.6 #efficiency\n", + "\n", + "#calculations\n", + "\n", + "u=Q*4./pi/d**2;\n", + "Re=rho*d*u/mu;\n", + "rr=e/d #relative roughness\n", + "\n", + "#from moody's diagram\n", + "phi=0.0038 #friction factor\n", + "alpha=1. #constant\n", + "leff=l+h+200*d+90*d;\n", + "Phe=g*delh #pressure head lost at heat exchanger\n", + "W=u**2/2/alpha+Phe+g*h+4*phi*leff*u**2/d; #work done by pump\n", + "G=Q*rho; #mass flow rate\n", + "P=W*G; #power required by pump\n", + "Pd=P/effi #power required to drive pump\n", + "print \"power required to drive pump in (kW) : %.4f\"%(Pd/1000)\n", + "\n", + "P2=(-u**2/2/alpha+W)*rho;\n", + "print \"The gauge pressure in (kPa): %.4f\"%(P2/1000)\n", + "\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "power required to drive pump in (kW) : 0.4763\n", + "The gauge pressure in (kPa): 213.6461\n" + ] + } + ], + "prompt_number": 9 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 1.8 page no : 15" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "Volumetric flow rate initial\n", + "Volumetric flow rate final\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rho=908.;\n", + "mu=3.9/100;\n", + "g=9.81;\n", + "pi=3.14;\n", + "d=0.105;\n", + "l=87.;\n", + "h=16.8;\n", + "e=0.046/1000; #absolute roughness\n", + "\n", + "#calculations\n", + "\n", + "#part1\n", + "P=-rho*g*h; #change in pressure\n", + "a=-P*rho*d**3/4/l/mu**2 #a=phi*Re**2\n", + "\n", + "#using graph given in book(appendix)\n", + "Re=8000.\n", + "u=mu*Re/rho/d\n", + "Q=u*pi*d**2/4.\n", + "print \"Volumetric flow rate initial (m**3/s): %.4f\"%Q\n", + "\n", + "#part 2\n", + "W=320.;\n", + "Pd=W*rho; #pressure drop by pump\n", + "P=P-Pd;\n", + "a=-P*rho*d**3./4./l/mu**2 #a=phi*Re**2\n", + "\n", + "#using graph given in book(appendix)\n", + "Re=15000.;\n", + "u=mu*Re/rho/d;\n", + "Q=u*pi*d**2./4;\n", + "print \"Volumetric flow rate final(part 2) (m**3/s) : %.4f\"%Q\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Volumetric flow rate initial (m**3/s): 0.0283\n", + "Volumetric flow rate final(part 2) (m**3/s) : 0.0531\n" + ] + } + ], + "prompt_number": 10 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 1.9 pageno : 17" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find Time required to water level to fall in the tank \n", + "\n", + "import math \n", + "from numpy import linspace\n", + "# Initialization of Variable\n", + "rho=1000.;\n", + "mu=1.25/1000;\n", + "g=9.81;\n", + "pi=3.14\n", + "d = 0.105\n", + "d1=0.28; #diameter of tank\n", + "d2=0.0042; #diameter of pipe\n", + "l=0.52; #length of pipe\n", + "rr=1.2/1000./d; #relative roughness\n", + "phid=0.00475;\n", + "print \"It is derived from tyhe graph giben in appedix and can be seen \\\n", + "is arying b/w 0.0047 & 0.0048 dependent on D which varies from 0.25 to 0.45 : %f\"%phid\n", + "\n", + "#calculations\n", + "def intregrate():\n", + " s=0\n", + " for i in range(0,1000):\n", + " D=linspace(0.25,0.45,1000);\n", + " y=math.sqrt(((pi*d1**2./pi/d2**2)**2-1)/2/9.81+(4*phid*l*(pi*d1**2/pi \\\n", + " /d2**2)**2)/d2/9.81)*((0.52+D[i])**-0.5)*2/10000;\n", + " s=s+y;\n", + " a=s;\n", + " return a\n", + "\n", + "b=intregrate();\n", + "print \"Time required to water level to fall in the tank in (s): %.4f\"%b\n", + "\n", + " \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "It is derived from tyhe graph giben in appedix and can be seen is arying b/w 0.0047 & 0.0048 dependent on D which varies from 0.25 to 0.45 : 0.004750\n", + "Time required to water level to fall in the tank in (s): 514.7299\n" + ] + } + ], + "prompt_number": 11 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 1.10 pageno : 21" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find d\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rho=1000.;\n", + "mu=1.42/1000;\n", + "g=9.81;\n", + "pi=3.14;\n", + "l=485.;\n", + "h=4.5\n", + "e=8.2/100000;\n", + "Q=1500.*4.545/1000/3600;\n", + "\n", + "print \"assume d as 6cm\"\n", + "d=0.06;\n", + "u=4*Q/pi/d**2;\n", + "Re=rho*d*u/mu;\n", + "rr=e/d; #relative roughness\n", + "\n", + "#using moody's chart\n", + "phi=0.0033 #friction coeff.\n", + "d=(64*phi*l*Q**2/pi**2/g/h)**0.2;\n", + "print \"The calculated d after (1st iteration which is close to what we\\\n", + " assume so we do not do any more iteration) in(cm) %d \"%(d*100)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "assume d as 6cm\n", + "The calculated d after (1st iteration which is close to what we assume so we do not do any more iteration) in(cm) 6 \n" + ] + } + ], + "prompt_number": 17 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file diff --git a/Problems_In_Fluid_Flow/ch10.ipynb b/Problems_In_Fluid_Flow/ch10.ipynb new file mode 100644 index 00000000..6c990a70 --- /dev/null +++ b/Problems_In_Fluid_Flow/ch10.ipynb @@ -0,0 +1,558 @@ +{ + "metadata": { + "name": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 10 : SEdimentation and classification" + ] + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 10.1 pageno : 186" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# Draw Concentration vs Settling veocity\n", + "\n", + "%pylab inline\n", + "import math \n", + "from matplotlib.pyplot import *\n", + "#example 10.1\n", + "# Initialization of Variable\n", + "t = [0, 0.5, 1. ,2. ,3., 4., 5., 6., 7., 8., 9., 10.] #time\n", + "h = [1.10 ,1.03, .96, .82, .68, .54, .42, .35, .31, .28, .27, .27]\n", + "Cl = [0 ,0, 0, 0, 0, 0, 0, 0, 0, 0, 0]\n", + "m = 0.05\n", + "V = 1/1000. #volume\n", + "v = [0,0,0,0,0,0,0,0,0,0,0]\n", + "\n", + "#calculations\n", + "Co = m/V #concentration at t = 0\n", + "v[0] = (h[0]-h[1])/(t[1]-t[0])\n", + "Cl[0] = Co\n", + "for i in range(1,11):\n", + " v[i] = (h[i-1]-h[i+1])/(t[i+1]-t[i-1]) #slope or settling velocity\n", + " Cl[i] = Co*h[0]/(h[i]+v[i]*t[i])\n", + "\n", + "plot(t,h,'r--d')\n", + "clf()\n", + "plot(Cl,v,'r->')\n", + "print Cl,v\n", + "suptitle(\"Concentration vs Settling veocity\")\n", + "xlabel(\"Concentration(kg/m**3)\")\n", + "ylabel(\"Settling velocity (m/h)\")\n", + "show()\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Populating the interactive namespace from numpy and matplotlib\n", + "[50.0, 50.0, 50.0, 50.000000000000014, 50.000000000000014, 51.88679245283019, 61.452513966480446, 80.88235294117649, 99.09909909909915, 125.00000000000003, 174.60317460317458]" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " [0.14000000000000012, 0.14000000000000012, 0.14000000000000004, 0.13999999999999996, 0.13999999999999996, 0.13000000000000003, 0.09500000000000003, 0.05499999999999999, 0.034999999999999976, 0.01999999999999999, 0.0050000000000000044]\n" + ] + }, + { + "output_type": "stream", + "stream": "stderr", + "text": [ + "WARNING: pylab import has clobbered these variables: ['draw_if_interactive']\n", + "`%pylab --no-import-all` prevents importing * from pylab and numpy\n" + ] + }, + { + "metadata": {}, + "output_type": "display_data", + "png": "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\nVfKbXdFYtmyZevrpp9WwYcOUUkq9+OKLKioqSiml1JIlS9TLL79synj3NWHCBPXRRx8ppZS6ffu2\nysvLM4v86enpqkuXLqqwsFAppdSYMWPU+vXr63T2b775RqWkpJT5T1NR3pMnTypPT09VVFSk0tPT\nVbdu3ZRWqzVJ7jvKy//VV1/pc7388stml18ppX799VcVHBys7O3t9UXDXPLv2bNHPfHEE6qoqEgp\npdRvv/2mlDKf/P369VMJCQlKKaXi4+NVUFCQUqrq+Y36RHhNy8rKIj4+nilTpugvgpd+1iMyMpLt\n27ebMmKFrl69yrfffsukSZMAXRdc69atzSJ/q1atsLS0pKCggOLiYgoKCujYsWOdzt6nTx8eeuih\nMusqyrtjxw7Gjh2LpaUl9vb2ODg4kJycXOuZSysv/6BBg7Cw0P2XDQgIICsrCzCf/AAvvPAC/+//\n/b8y68wl/3vvvccrr7yCpaUlAG3btgXMJ3+HDh24evUqAHl5edja2gJVz29WRWPOnDksXbpU/x8H\n4MKFC9jY2ABgY2PDhQsXTBXvvtLT02nbti0TJ07Ex8eHqVOnkp+fbxb5H374YebOnUvnzp3p2LEj\n1tbWDBo0yCyyl1ZR3pycnDJ355nDc0Fr165lyJAhgPnk37FjB3Z2dnh4eJRZby7509LS+Oabb+jV\nqxdBQUEcOXIEMJ/8S5Ys0f8/fvHFF1m8eDFQ9fxmUzR27txJu3bt8Pb2rvBWW41GU2ef2yguLiYl\nJYW//vWvpKSk0KJFC5YsWVJmm7qa/9y5c6xcuZKMjAxycnK4ceMG//u//1tmm7qavSKV5a3L7+Wf\n//wnTZo04emnn65wm7qWv6CggEWLFpV5tqGi/8dQ9/KD7v/wlStXOHjwIEuXLmXMmDEVblsX80+e\nPJnVq1fz66+/smLFCn2vR3nul99sisaBAweIi4ujS5cujB07lj179vDMM89gY2NDbm4uAOfPn6dd\nu3YmTlo+Ozs77Ozs8PPzAyAsLIyUlBTat29f5/MfOXKE3r1706ZNGxo3bszIkSP5/vvvzSJ7aRX9\nrpT3vNCdpntds379euLj49m0aZN+nTnkP3fuHBkZGXh6etKlSxeysrLo2bMnFy5cMIv8oPs/PHLk\nSAD8/PywsLDg0qVLZpM/OTmZESNGALrPnztdUFXNbzZFY9GiRWRmZpKens6WLVsYMGAAH3/8MaGh\n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\n", + "text": [ + "<matplotlib.figure.Figure at 0x2d35450>" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 10.2 page no : 188" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "the area for each settling velocity\n", + "Volumetric flow rate of clarified water\n", + "'''\n", + "\n", + "import math \n", + "from numpy import linspace\n", + "from matplotlib.pyplot import *\n", + "\n", + "# Initialization of Variable\n", + "t = [0, 0.5, 1 ,2, 3, 4, 5, 6, 7, 8, 9, 10] #time\n", + "h = [1.10 ,1.03, .96, .82, .68, .54, .42, .35, .31, .28, .27, .27]\n", + "Cl = linspace(50,100,5)\n", + "U = [19.53, 17.71, 16.20, 14.92, 13.82, 12.87, 12.04, 11.31, 10.65, 9.55] #mass ratio of liquid to solid\n", + "v = [0.139, 0.115, 0.098, 0.083, 0.071, 0.062, 0.055, 0.049, 0.043, 0.034] #terminal velocity\n", + "\n", + "#above value taken from graph given with ques.\n", + "C = 130. #conc. of solids\n", + "Q = 0.06 #slurry rate\n", + "Cmax = 130. #maximum solid conc.\n", + "rhos = 2300. #density of solid\n", + "rho = 998. #density of water\n", + "V = rho*(1/C-1/rhos)\n", + "F = Q*Cl[0]*3600.\n", + "A = [0,0,0,0,0,0,0,0,0,0]\n", + "for i in range(10):\n", + " A[i] = F*(U[i]-V)/rho/v[i]\n", + "\n", + "plot(v,A,'r-')\n", + "xlabel(\"Settling Velocity(m/h)\")\n", + "ylabel(\"Area(m**2)\")\n", + "show()\n", + "\n", + "#maxima finding using datatraveller in the graph\n", + "print \"the area for each settling velocity\",A\n", + "print \"1005 m**2 is the maximum area found out from the plot\"\n", + "\n", + "Qu = Q-F/3600./Cmax\n", + "print \"Volumetric flow rate of clarified water in (m**3/s): %.4f\"%Qu\n", + " \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "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\nlERqaqrj+6VLlzJy5Eh8fHx4/vnniY6Opm/fvkybNu28bY0xPProo0RERNCnT58qvZhZs2bRp08f\n+vXrxxNPPAHAnXfeydtvv83cuXMdbbv++uv517/+xcMPP+zY9rXXXmPKlCmA/cFxN910k6OtMTEx\njBkzhsDAQB5//HHeeOMNoqOj6dOnD998841jH//973+54YYbAPstQKr794mNjWXVqlXV/v6kmWrY\nJTAizjlx4oTp16+fCQkJMZMnTzYbN240xhhTUlJiBg0aZI4cOWKMMSY1NdVMnDjRGGNMbGxslYV+\nAQEB5vvvv6/2+zZt2hhjjHn//fdN+/btTV5enikvLzeDBg0yH330kTl16pTp0aOHycnJMcYYk5SU\nVO2CrNOnTxtfX19TWFhojDFmxIgRZuXKlea///2vueeee4wxxpSVlZlf/OIXZtOmTVWO/dZbb5n4\n+HhTXl5uCgoKzJVXXmny8/PNqlWrzODBg82pU6eMMcYcPXrUGGPMnXfead5+++3z2nLixAkTGBho\nSktLjTHGDB482HzxxRemtLTUdOvWzVHr+++/bzp06GAOHTpkTp8+bbp3726efvppY4wxc+bMcazQ\nLi0tNf369avx3+fDDz907HPo0KFutVJdrKUeibiV1q1bs2PHDl599VW6dOnCrbfeSkpKCnv37uXL\nL78kLi6OyMhIpk+fXuVupqYe62qjo6Pp3r07NpuNfv36kZ2dzZ49e/jZz37GVVddBdh7HtXt+5JL\nLiEhIYE333yTI0eOsHv3bkaMGEFaWhppaWlERkZyzTXXkJmZyddff11l2w8//JDk5GRsNhtdu3Yl\nJiaGbdu2sX79eiZOnIiPjw+A4+FuF/q3uv7663n33XfZs2cPZ86coXfv3uc9NA7g2muvxdfXl0su\nuYSgoCDHA+LCw8PJyckB4JNPPqlyF9tz/30qPgfQvXv3Kt9L8+ZldQEi52rRogUxMTHExMQQERFB\nSkoK11xzDb17967xxob1mX9o1aqV4+uWLVtSWlp63n4uFFBJSUn86U9/whjDmDFjaNmyJQC///3v\nueeee2rczmaz1bjfiw3ESZMmMX36dHr16uV4dkt1+6nc1hYtWji+b9GiBaWlpQCsXr3aMax17jYV\n/z6V9++ujy8Q19N/CeJWMjMzycrKcny/a9cuAgIC6NmzJ999953jcbtnzpwhIyMDgLZt2/LDDz84\ntjn3+7qy2Wz07NmTb775hm+//RaAxYsX1xhSsbGxZGZm8ve//52kpCQARowYwYIFCzh58iRgfy7E\nd999V2W7IUOGsHjxYsrLy/nuu+/YtGkTAwYMID4+nn/961+Oq7KOHj163jHPbVt0dDS5ubn83//9\nn6OGzp07c+LEiYtu/4YNG+r8TJT8/HxHr01EPRJxKydOnOCBBx6gqKgILy8vgoODefXVV/H29uat\nt97iwQcf5NixY5SWlvLwww8TFhbGnXfeyb333stll13Gxx9/zD333MPIkSPx8/Nj/fr1VfZfORSq\nCwgfHx/mzZvHyJEjad26Nddee22NQWKz2Rg3bhxvvvkmMTExAMTHx/PVV18xaNAgwD65v3DhQrp0\n6eLYz9ixY9m8eTN9+/bFZrPx/PPP07VrV0aMGMHu3buJiorikksu4Re/+AV//vOfqxyzurYlJiby\n6aefOp4g2bJlS8LDw9m7dy89e/bEZrNdsA02m40jR47g4+ND69atq7xf3b/dmTNnyM3NJTQ0tNp9\nSvOjmzaKnOPkyZOOE+r9999PSEgIDz30kMVV1Wz06NFMmTKF6667zvHev//9bwoKCnjsscfqtI+F\nCxeSl5fH1KlTa/1sWloaK1euZM6cOfWuWZoWBYnIOWbPnk1KSgolJSX079+f1157zTEB7k6KiooY\nMGAA/fr1Y/HixVV+VlJSQlxcHBs3bmzwpxUmJibyl7/8hYCAgAbdr3guBYmIiDhFk+0iIuIUBYmI\niDhFQSIiIk5RkIiIiFMUJCIi4hQFiYiIOOX/A9X59HMYa+FEAAAAAElFTkSuQmCC\n", + "text": [ + "<matplotlib.figure.Figure at 0x219ea90>" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "the area for each settling velocity [956.58577326448562, 984.95679741043818, 989.07500346402981, 1000.9355052127868, 1002.4484410905754, 982.14964830945723, 943.84207758782964, 898.19417690065814, 857.42395579055744, 734.27713187539746]\n", + "1005 m**2 is the maximum area found out from the plot\n", + "Volumetric flow rate of clarified water in (m**3/s): 0.0369\n" + ] + } + ], + "prompt_number": 6 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 10.3 pageno : 192" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "The fraction of heavy ore remained\n", + "The percentage of heavy ore left \n", + "the fraction of light ore in overhead product\n", + "The minimum density required to seperate 2 ores\n", + "'''\n", + "\n", + "import math \n", + "from numpy import linspace\n", + "\n", + "# Initialization of Variable\n", + "rho1 = 2600. #density lighter\n", + "rho2 = 5100. #density heavier\n", + "pd1 = linspace(0.000015,0.000095,9) #particle diameter lighter\n", + "pd2 = linspace(0.000025,0.000095,8) #particle diameter heavier\n", + "wp1 = [0 ,22 ,35, 47, 59, 68, 75, 81 ,100] #weight distribution lighter\n", + "wp2 = [0, 21, 33.5, 48, 57.5, 67 ,75, 100] #weight distribution heavier\n", + "rho = 998.6 #density water\n", + "mu = 1.03/1000 #viscosity water\n", + "g = 9.81\n", + "u = 0.004 #velocity of water\n", + "d = 95/1000000. #paeticle diameter maximum\n", + "\n", + "#calculation\n", + "#part 1\n", + "Re = d*u*rho/mu\n", + "d1 = math.sqrt(18*mu*u/g/(rho1-rho))\n", + "d2 = math.sqrt(18*mu*u/g/(rho2-rho))\n", + "def inter(d,f,g,b): #interpolation linear\n", + " for i in range(b):\n", + " if d <= f[i+1] and d>f[i]:\n", + " break\n", + " else: \n", + " continue\n", + " a = (d-f[i])/(f[i+1]-f[i])*(g[i+1]-g[i])+g[i]\n", + " return a\n", + "\n", + "a = inter(d1,pd1,wp1,9)\n", + "b = inter(d2,pd2,wp2,8)\n", + "v2 = 1./(1+5.)*100.-b/100.*1./(1+5)*100\n", + "v1 = 5./(1+5.)*100.-a/100.*5./(1+5)*100\n", + "pl2 = (v2)/(v2+v1)\n", + "print \"The fraction of heavy ore remained in bottom %.4f\"%pl2\n", + " \n", + "#part 2\n", + "rho = 1500.\n", + "mu = 6.25/10000\n", + "a = math.log10(2*d**3*rho*g*(rho1-rho)*3*mu**2) #math.log10(Re**2(R/rho/mu**2))\n", + "\n", + "#using value from chart(graph)\n", + "Re = 10.**0.2136\n", + "u = Re*mu/rho/d\n", + "d2 = math.sqrt(18*mu*u/g/(rho1-rho))\n", + "b = inter(d2,pd2,wp2,8)\n", + "print \"The percentage of heavy ore left in this case %.4f\"%(100-b+3.5)\n", + "\n", + "#part 3\n", + "a = 0.75 #% of heavy ore in overhead product\n", + "s = 100.*5./6./(100*5./6+0.75*100./6)\n", + "print \"the fraction of light ore in overhead product: %.4f\"%s\n", + "\n", + "#part 4\n", + "da = pd2[0]\n", + "db = pd1[8]\n", + "rho = (da**2*rho2-db**2*rho1)/(-db**2+da**2)\n", + "print \"The minimum density required to seperate 2 ores in kg/m**3: %.4f\"%rho\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The fraction of heavy ore remained in bottom 0.3197\n", + "The percentage of heavy ore left in this case 24.8188\n", + "the fraction of light ore in overhead product: 0.8696\n", + "The minimum density required to seperate 2 ores in kg/m**3: 2413.9881\n" + ] + } + ], + "prompt_number": 8 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 10.4 page no : 198" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find the density of suspension\n", + "\n", + "import math \n", + "from numpy import true_divide\n", + "\n", + "# Initialization of Variable\n", + "\n", + "rho = 998.\n", + "w0 = 40. #density of slurry\n", + "mu = 1.01/1000\n", + "g = 9.81\n", + "rho1 = 2660. #density quartz\n", + "h = 0.25\n", + "t = 18.5*60\n", + "mp = [5 ,11.8, 20.2, 24.2, 28.5, 37.6 ,61.8]\n", + "d = true_divide([30.2, 21.4, 17.4, 16.2, 15.2, 12.3, 8.8],1000000)\n", + "u = h/t\n", + "d1 = math.sqrt(18*mu*u/g/(rho1-rho))\n", + "def inter(d,f,g,b): #interpolation linear\n", + " for i in range(b):\n", + " if d > f[i+1] and d <= f[i]:\n", + " break\n", + " else: \n", + " continue\n", + " break\n", + " \n", + " a = -(d-f[i+1])/(f[i]-f[i+1])*(g[i+1]-g[i])+g[i+1]\n", + " return a\n", + "a = inter(d1,d,mp,6)\n", + "phi = 1-a/100.\n", + "rhot = phi*(rho1-rho)/rho1*w0+rho\n", + "print \"the density of suspension at depth 25cm in kg/m**3 is %.4f\"%rhot\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "the density of suspension at depth 25cm in kg/m**3 is 1016.5653\n" + ] + } + ], + "prompt_number": 9 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 10.5 pag eno : 200" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# Draw undersize vs Particle Size(m)\n", + "\n", + "\n", + "import math \n", + "from matplotlib.pyplot import *\n", + "\n", + "# Initialization of Variable\n", + "t = [0, 45, 135, 495, 1875, 6900, 66600, 86400] #time\n", + "m = [0.1911, 0.1586, 0.1388, 0.1109, 0.0805, 0.0568, 0.0372, 0.0359] #mass total\n", + "rho1 = 3100. #density of cement\n", + "mu = 1.2/1000 #viscosity of desperant liquid\n", + "rho = 790. #density of desperant liquid\n", + "h = 0.2\n", + "V = 10.\n", + "s = 0.\n", + "g = 9.81\n", + "d = [0,0,0,0,0,0,0,0]\n", + "mc = [0,0,0,0,0,0,0,0]\n", + "mp = [0,0,0,0,0,0,0,0]\n", + "d[0] = 100./1000000 #assumed value\n", + "\n", + "for i in range(7):\n", + " d[i+1] = math.sqrt(18*mu*h/g/t[i+1]/(rho1-rho)) #dia of particles\n", + " mc[i+1] = m[i+1]-0.2/100*V #mass of cement\n", + " s = s+mc[i+1] \n", + "\n", + "mc[0] = m[0]-0.2*V/100\n", + "s = s+mc[0]\n", + "mp[0] = 100.\n", + "\n", + "for i in range(7):\n", + " mp[i+1] = mc[i+1]/mc[0]*100. #mass percent below size\n", + "\n", + "plot(mp,d)\n", + "xlabel(\"%undersize\")\n", + "ylabel(\"Particle Size(m)\")\n", + "\n", + "show()\n", + "u = h/t[1]\n", + "Re = d[1]*u*rho/mu\n", + "if Re<2:\n", + " print \"since Re<2 for 81% of particles so settlement occurs mainly by stoke-s law\"\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "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\n", + "text": [ + "<matplotlib.figure.Figure at 0x2c49850>" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "since Re<2 for 81% of particles so settlement occurs mainly by stoke-s law\n" + ] + } + ], + "prompt_number": 6 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 10.6 page no : 204" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find mass and diameter\n", + "\n", + "import math \n", + "from matplotlib.pyplot import *\n", + "\n", + "# Initialization of Variable\n", + "rho = 998.\n", + "rho1 = 2398. #density of ore\n", + "mu = 1.01/1000.\n", + "g = 9.81\n", + "h = 25/100.\n", + "t = [114. ,150., 185., 276., 338., 396., 456., 582., 714., 960.]\n", + "m = [0.1429 ,0.2010, 0.2500, 0.3564, 0.4208, 0.4781, 0.5354 ,0.6139, 0.6563, 0.7277]\n", + "d = [0,0,0,0,0,0,0,0,0,0]\n", + "P = [0,0,0,0,0,0,0,0,0,0]\n", + "\n", + "for i in range(10):\n", + " ms = 0.0573+m[9] #total mass setteled\n", + " d[i] = math.sqrt(18.*mu*h/g/(rho1-rho)/t[i])\n", + " P[i] = m[i]/ms*100 #mass percent of sample\n", + "\n", + "plot(t,P)\n", + "xlabel(\"Settling time (s)\")\n", + "ylabel(\"mass percent in (%)\")\n", + "show()\n", + "print \"& its percentage mass distribution respectively\" ,\"the particle size distribution in (m)\" ,P,d\n", + "W = [0,0,0,0,0,0,0,0,0,0]\n", + "de = [0,0,0,0,0,0,0,0,0,0]\n", + "for i in range(9):\n", + " de[i] = (P[i+1]-P[i-1])/(t[i+1]-t[i-1]) #slope \n", + " W[i] = P[i]-t[i]*de[i]\n", + " W[0] = P[0]-P[0]\n", + "\n", + "W[9] = P[9]-t[9] * 0.025\n", + "print \"mass and diameter(m)respectively with serial no:\"\n", + "\n", + "for i in range(4,10):\n", + " print i-4,\n", + " print \"mass, is\",\n", + " print \"for diameter in(m) of %f %f\"%(W[i],d[i])\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "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\nEA92IY9i/rEAAAAASUVORK5CYII=\n", + "text": [ + "<matplotlib.figure.Figure at 0x2fe4c90>" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "& its percentage mass distribution respectively the particle size distribution in (m) [18.203821656050955, 25.605095541401273, 31.84713375796178, 45.40127388535032, 53.60509554140127, 60.904458598726116, 68.20382165605096, 78.20382165605095, 83.60509554140127, 92.70063694267515] [5.387856206749596e-05, 4.6970241455099756e-05, 4.229436978392301e-05, 3.4626921406038745e-05, 3.129032486308103e-05, 2.890818526183746e-05, 2.693928103374798e-05, 2.3845527268417837e-05, 2.1528774873471063e-05, 1.856661815577208e-05]\n", + "mass and diameter(m)respectively with serial no:\n", + "0 mass, is for diameter in(m) of 9.937792 0.000031\n", + "1 mass, is for diameter in(m) of 11.912124 0.000029\n", + "2 mass, is for diameter in(m) of 25.792480 0.000027\n", + "3 mass, is for diameter in(m) of 43.461413 0.000024\n", + "4 mass, is for diameter in(m) of 56.222222 0.000022\n", + "5 mass, is for diameter in(m) of 68.700637 0.000019\n" + ] + } + ], + "prompt_number": 11 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 10.7 page no : 208" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "fraction of particles separated \n", + "total fraction of particles separated\n", + "fraction of particles separated \n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "\n", + "rho = 1002. #density of print erant\n", + "rho1 = 2240. #density of kaolin\n", + "mu = 1.01/1000 #viscosity\n", + "g = 9.81\n", + "t = 600.\n", + "h2 = 0.2\n", + "h1 = 0.4\n", + "dg = 15.*10**-6 #particle size to be removed\n", + "\n", + "#calculations\n", + "#part 1\n", + "d = math.sqrt(18*mu*h2/g/(rho1-rho)/t)\n", + "x = dg/d\n", + "f = h2/h1*(1-x**2) #fraction separated after first decanting\n", + "g = f*(1-f)\n", + "print \"fraction of particles separated after second decanting %.4f\"%g\n", + "print \"total fraction of particles separated after decanting %.4f\"%(f+g)\n", + "\n", + "#part 2\n", + "h = (1.-20/40.*(1-x**2))**6\n", + "print \"fraction of particles separated after sixth decanting %.4f\"%h\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "fraction of particles separated after second decanting 0.1992\n", + "total fraction of particles separated after decanting 0.4737\n", + "fraction of particles separated after sixth decanting 0.1458\n" + ] + } + ], + "prompt_number": 12 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file diff --git a/Problems_In_Fluid_Flow/ch11.ipynb b/Problems_In_Fluid_Flow/ch11.ipynb new file mode 100644 index 00000000..c36db144 --- /dev/null +++ b/Problems_In_Fluid_Flow/ch11.ipynb @@ -0,0 +1,479 @@ +{ + "metadata": { + "name": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 11 : Fluidisation\n" + ] + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 11.1 page no : 216" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "Bubbling fluidisation \n", + "fluidisation \n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "pi = 3.1428\n", + "d = 0.3/1000\n", + "mu = 2.21/100000\n", + "rho = 106.2 #density under operating condition\n", + "u = 2.1/100\n", + "rhos = 2600. #density of particles\n", + "l = 3.25\n", + "g = 9.81\n", + "dt = 0.95 #fluidising diameter\n", + "\n", + "\n", + "#part 1\n", + "#calculation\n", + "a = u**2./d/g*d*rho*u/mu*(rhos-rho)/rho*l/dt\n", + "if a>100 :\n", + " print \"Bubbling fluidisation will occur as value is %.4f\"%a\n", + "\n", + "#part 2\n", + "Q = 2.04/100000\n", + "rhos = 2510.\n", + "rho = 800.\n", + "mu = 2.85/1000\n", + "l = 4.01\n", + "dt = 0.63\n", + "d = 0.1/1000\n", + "u = Q*4/pi/dt**2\n", + "a = u**2/d/g*d*rho*u/mu*(rhos-rho)/rho*l/dt\n", + "if a<100*10**-4: #compare as value of a is much less than 100\n", + " print \"fluidisation occur in smooth mode as value is: %.4e\"%a\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Bubbling fluidisation will occur as value is 364.4332\n", + "fluidisation occur in smooth mode as value is: 1.0898e-07\n" + ] + } + ], + "prompt_number": 4 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 11.2 page no ;218" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "The superficial linear flow rate\n", + "Terminal Settling Velocity\n", + "Stoke law assumption\n", + "Pressure drop across fluidised bed \n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "d = 50./1000000\n", + "rhos = 1850. #density of particle\n", + "rho = 880. #density of hydrocarbon\n", + "mu = 2.75/1000 #viscosity of hydrocarbon\n", + "e = 0.45 #void fraction coeff.\n", + "g = 9.81\n", + "h = 1.37 #flow depth\n", + "c = 5.5/1000 #c = 1/K\n", + "\n", + "#calculation\n", + "#part 1\n", + "u = c*e**3*d**2*g*(rhos-rho)/mu/(1-e)\n", + "print \"The superficial linear flow rate in (m/s): %.3e\"%u\n", + "\n", + "#part 2\n", + "u = d**2*g*(rhos-rho)/18/mu\n", + "print \"Terminal Settling Velocity in (m/s): %.4f\"%u\n", + "Re = d*u*rho/mu\n", + "if Re<2 :\n", + " print \"Stoke law assumption is sustained with this velocity\"\n", + "\n", + "#part 3\n", + "P = g*(rhos-rho)*h*(1-e)\n", + "print \"Pressure drop across fluidised bed in (N/m**2):\",P\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The superficial linear flow rate in (m/s): 7.883e-06\n", + "Terminal Settling Velocity in (m/s): 0.0005\n", + "Stoke law assumption is sustained with this velocity\n", + "Pressure drop across fluidised bed in (N/m**2): 7170.07995\n" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 11.3 page no : 221" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "the linear air flow rate\n", + "speed required for smallest particle\n", + "'''\n", + "\n", + "import math \n", + "from numpy import *\n", + "# Initialization of Variable\n", + "g = 9.81\n", + "rhos = 1980. #density of ore\n", + "rho = 1.218 #density of air\n", + "e = 0.4\n", + "mu = 1.73/10**5\n", + "s = 0\n", + "wp = array([0, .08, .20, .40, .60, .80, .90, 1.00]) #weight percent\n", + "d = true_divide([0.4 ,0.5, 0.56, 0.62, 0.68, 0.76, 0.84, 0.94],1000)\n", + "dav = [0,0,0,0,0,0,0]\n", + "mf = [0,0,0,0,0,0,0]\n", + "a = [0,0,0,0,0,0,0]\n", + "#part 1\n", + "for i in range(7):\n", + " dav[i] = d[i+1]/2+d[i]/2. #average dia\n", + " mf[i] = wp[i+1]-wp[i] #mass fraction\n", + " a[i] = mf[i]/dav[i]\n", + " s = s+a[i]\n", + "\n", + "db = 1/s #d bar\n", + "\n", + "#quadratic coeff. ax**2 +bx +c = 0\n", + "c = -(rhos-rho)*g\n", + "b = 150.*(1-e)/e**3/db**2*mu\n", + "a = 1.75*rho/e**3/db\n", + "y = poly1d([a,b,c],False)\n", + "U = roots(y)\n", + "print \"the linear air flow rate in (m/s): %.4f\"%(abs(U[1]))\n", + "\n", + "#part 2\n", + "d = 0.4/1000\n", + "a = 2*d**3/3/mu**2*rho*(rhos-rho)*g\n", + "a = math.log10(a)\n", + "print \"log10(Re**2/rho/U**2*R) = %.4f\"%a\n", + "\n", + "#using chart\n", + "Re = 10**1.853\n", + "u = Re*mu/rho/d\n", + "print \"speed required for smallest particle in (m/s): %.4f\"%u\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "the linear air flow rate in (m/s): 0.2643\n", + "log10(Re**2/rho/U**2*R) = 3.5277\n", + "speed required for smallest particle in (m/s): 2.5313\n" + ] + } + ], + "prompt_number": 6 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 11.4 page no : 224" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "the diameter of vessel\n", + "depth of bed \n", + "depth of fluidised bed under operating condition\n", + "'''\n", + "\n", + "import math \n", + "from numpy import *\n", + "\n", + "# Initialization of Variable\n", + "U = 2.032/10**4\n", + "pi = 3.1428\n", + "rho = 852\n", + "g = 9.81\n", + "mu = 1.92/1000\n", + "mf = 125/3600. #mass flow rate\n", + "\n", + "#calculation\n", + "#part 1\n", + "G = U*rho\n", + "A = mf/G\n", + "d = math.sqrt(4*A/pi)\n", + "print \"the diameter of vessel will be in(m): %.4f\"%d\n", + "\n", + "#part 2\n", + "A = 0.201\n", + "e = 0.43\n", + "ms = 102. #mass of solids\n", + "rhos = 1500. #density of solid\n", + "L = ms/rhos/A\n", + "Lmf = L/(1-e)\n", + "print \"depth of bed in (m): %.4f\"%Lmf \n", + "\n", + "#part 3\n", + "d1 = 0.2/1000\n", + "U = 2.*5.5/10**3*e**3*d1**2*(rhos-rho)*g/mu/(1-e)\n", + "\n", + "#now euating for e\n", + "#a = e**3/(1-e)\n", + "a = U/5.5*10**3/(d1**2*(rhos-rho)*g/mu)\n", + "y = poly1d([1,0,a,-a],False)\n", + "e2 = roots(y)\n", + "L = Lmf*(1-e)/(1-e2[2])\n", + "print \"depth of fluidised bed under operating condition in (m): %.4f\"%L\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "the diameter of vessel will be in(m): 0.5052\n", + "depth of bed in (m): 0.5935\n", + "depth of fluidised bed under operating condition in (m): 0.6958\n" + ] + }, + { + "output_type": "stream", + "stream": "stderr", + "text": [ + "-c:45: ComplexWarning: Casting complex values to real discards the imaginary part\n" + ] + } + ], + "prompt_number": 7 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 11.5 page no : 227" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find power supplies to the blower\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "g = 9.81\n", + "pi = 3.1428\n", + "r = 0.51\n", + "e = 0.48 #void ratio\n", + "rhos = 2280. #density of glass\n", + "rho = 1.204 #density of air\n", + "U = 0.015 #velocity of water entering bed\n", + "L = 7.32\n", + "gam = 1.4 #gamma\n", + "neta = 0.7 #efficiency\n", + "P4 = 1.013*10**5\n", + "P1 = P4\n", + "v1 = 1/1.204 #volume 1\n", + "\n", + "#calculation\n", + "P3 = P4+g*(rhos-rho)*(1-e)*L\n", + "P2 = P3+0.1*85090\n", + "v2 = (P1*v1**gam/P2)**(1/gam) #vlume 2\n", + "W = 1/neta*gam/(gam-1)*(P2*v2-P1*v1) #work done\n", + "v3 = P2*v2/P3 #volume 3\n", + "M = U*pi*r**2/v3 #mass flow rate\n", + "P = M*W\n", + "\n", + "# Results\n", + "print \"The power supplies to the blower in (W): %.4f\"%P\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The power supplies to the blower in (W): 1948.7509\n" + ] + } + ], + "prompt_number": 8 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 11.6 page no : 230" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "minimum fluidising velocity\n", + "fluidising velocity\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "dt = 12.7/1000\n", + "d = 1.8/1000\n", + "Q = 2.306/10**6\n", + "pi = 3.1428\n", + "\n", + "#calculation\n", + "#part 1\n", + "Sc = 4./dt\n", + "S = 6./d\n", + "f = (1+0.5*Sc/S)**2\n", + "U = Q*4/pi/dt**2 #velocity\n", + "Ua = f*U #actual velocity\n", + "print \"minimum fluidising velocity found using smaller glass column in (m/s): %.4f\"%Ua\n", + "\n", + "#part 2\n", + "dt = 1.5\n", + "Sc = 4./dt\n", + "f = (1+0.5*Sc/S)**2\n", + "Ua = f*U #actual velocity\n", + "print \"fluidising velocity found using larger glass column in (m/s): %.4f\"%Ua\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "minimum fluidising velocity found using smaller glass column in (m/s): 0.0200\n", + "fluidising velocity found using larger glass column in (m/s): 0.0182\n" + ] + } + ], + "prompt_number": 9 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 11.7 page no : 232" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find ratio of terminal velocity\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "e = 0.4 #incipent to fluidisation\n", + "\n", + "#calculation\n", + "#part 1\n", + "print \"for Re<500\"\n", + "print \"the ratio of terminal velocity & minimmum fluidising velocity is\"\n", + "\n", + "a = 3.1*1.75/e**3\n", + "\n", + "print math.sqrt(a)\n", + "\n", + "#part 2\n", + "print \"for Re>500\"\n", + "print \"the ratio of terminal velocity & minimmum fluidising velocity is\"\n", + "a = 150.*(1-e)/18./e**3\n", + "print a\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "for Re<500\n", + "the ratio of terminal velocity & minimmum fluidising velocity is\n", + "9.20682491416\n", + "for Re>500\n", + "the ratio of terminal velocity & minimmum fluidising velocity is\n", + "78.125\n" + ] + } + ], + "prompt_number": 9 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file diff --git a/Problems_In_Fluid_Flow/ch12.ipynb b/Problems_In_Fluid_Flow/ch12.ipynb new file mode 100644 index 00000000..c84580f4 --- /dev/null +++ b/Problems_In_Fluid_Flow/ch12.ipynb @@ -0,0 +1,331 @@ +{ + "metadata": { + "name": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "code", + "collapsed": false, + "input": [ + "Chapter 12 : Pneumatic Conveying\n" + ], + "language": "python", + "metadata": {}, + "outputs": [] + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 12.1 page no : 240" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find actual linear flow rate through duct\n", + "\n", + "import math \n", + "from numpy import *\n", + "\n", + "# Initialization of Variable\n", + "rho = 1.22\n", + "pi = 3.1428\n", + "rhos = 518.\n", + "rhoav = 321.\n", + "mu = 1.73/10**5\n", + "g = 9.81\n", + "d = 0.65/1000\n", + "d2 = 25.5/100 #dia of duct\n", + "ms = 22.7/60 #mass flow rate\n", + "\n", + "#calculation\n", + "e = (rhos-rhoav)/(rhos-rho)\n", + "#coeff of quadratic eqn in U\n", + "#a*x**2+b*x+c = 0\n", + "c = -(1-e)*(rhos-rho)*g\n", + "b = 150.*(1-e)**2*mu/d**2/e**3\n", + "a = 1.75*(1.-e)*rho/d/e**3\n", + "y = poly1d([a,b,c],False)\n", + "U = roots(y)\n", + "Us = ms*4/pi/d2**2/rhos #superficial speed\n", + "Ua = e/e*(U[1]/e+Us/(1-e))\n", + "print \"the actual linear flow rate through duct in (m/s): %.4f\"%Ua\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "the actual linear flow rate through duct in (m/s): 0.2059\n" + ] + } + ], + "prompt_number": 1 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 12.2 page no : 243" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find maximum carrying capacity of polythene particles\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rho = 1.22 #density of air\n", + "pi = 3.1428\n", + "rhos = 910. #density of polyethene\n", + "d = 3.4/1000. #dia of particles\n", + "mu = 1.73/10**5.\n", + "g = 9.81\n", + "dt = 3.54/100. #dia of duct\n", + "\n", + "#calculation\n", + "a = 2.*d**3*rho*g*(rhos-rho)/3/mu**2\n", + "print \"R/rho/U**2*(Re**2) = %.4f\"%a\n", + "\n", + "#using Chart\n", + "Re = 2.*10**3\n", + "U = mu*Re/d/rho\n", + "b = U/(g*dt)**.5\n", + "if b>0.35:\n", + " print \"choking can occur of this pipe system\"\n", + "else:\n", + " print \"choking can not occur of this pipe system\"\n", + "\n", + "#part 2\n", + "Uc = 15. #actual gas velocity\n", + "e = ((Uc-U)**2/2./g/dt/100.+1)**(1./-4.7)\n", + "Usc = (Uc-U)*(1-e) #superficial speed of solid\n", + "Cmax = Usc*rhos*pi*dt**2./4\n", + "print \"the maximum carrying capacity of polythene particles in (kg/s) %.4f\"%Cmax\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "R/rho/U**2*(Re**2) = 952227.8618\n", + "choking can occur of this pipe system\n", + "the maximum carrying capacity of polythene particles in (kg/s) 0.5949\n" + ] + } + ], + "prompt_number": 2 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 12.3 page no : 245" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find Pressure value in kN/m**2\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rho = 1.22 #density of air\n", + "pi = 3.1428\n", + "rhos = 1400. #density of coal\n", + "mu = 1.73/10**5.\n", + "g = 9.81\n", + "U = 25.\n", + "Ut = 2.80\n", + "l = 50.\n", + "ms = 1.2 #mass flow rate\n", + "mg = ms/10. #mass flow of gas\n", + "\n", + "#calculation\n", + "Qs = ms/rhos #flow of solid\n", + "Qg = mg/rho #flow of gas\n", + "us = U-Ut #actual linear velocity\n", + "A = Qg/U\n", + "Us = Qs/A #solid velocity\n", + "e = (us-Us)/us\n", + "d = math.sqrt(4*A/pi)\n", + "def fround(x,n):\n", + " # fround(x,n)\n", + " # Round the floating point numbers x to n decimal places\n", + " # x may be a vector or matrix# n is the integer number of places to round to\n", + " y = round(x*10**n)/10.**n\n", + " return y\n", + "\n", + "d = fround(d,4)\n", + "Re = d*rho*U/mu\n", + "\n", + "#using moody's chart\n", + "phi = 2.1/1000 #friction factor\n", + "P1 = 2*phi*U**2*l*rho/d*2\n", + "f = 0.05/us\n", + "P2 = 2*l*f*(0.0098)*rhos*us**2/d\n", + "P2 = fround(P2/1000,1)*1000\n", + "delP = rho*e*U**2+rhos*(0.0098)*us**2+P1+P2\n", + "#print (delP,\"the pressure difference in kN/m**2 \")\n", + "print 'The Pressure value in kN/m**2 is %.1f'%(delP/1000)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The Pressure value in kN/m**2 is 33.5\n" + ] + } + ], + "prompt_number": 4 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 12.4 page no : 250" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find The Pressure value in kN/m**2\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rho = 1.22 #density of air\n", + "pi = 3.1428\n", + "rhos = 1090. #density of steel\n", + "mu = 1.73/10.**5\n", + "g = 9.81\n", + "d = 14.5/100.\n", + "Qg = 0.4\n", + "Qs = 5000./3600./1090.\n", + "Ut = 6.5\n", + "ar = 0.046/1000 #absolute roughness\n", + "l = 18.5 #length\n", + "\n", + "#calculation\n", + "def fround(x,n):\n", + " # fround(x,n)\n", + " # Round the floating point numbers x to n decimal places\n", + " # x may be a vector or matrix# n is the integer number of places to round to\n", + " y = round(x*10**n)/10**n\n", + " return y\n", + "\n", + "Us = Qs/pi/d**2*4 #solid velocity\n", + "U = Qg/pi/d**2*4\n", + "us = U-Ut #actual linear velocity\n", + "e = 1-Us/us\n", + "e = fround(e,4)\n", + "Re = rho*U*d/mu\n", + "rr = ar/d #relative roughness\n", + "\n", + "#using moody's diagram\n", + "phi = 2.08/1000\n", + "P1 = 2*phi*U**2*l*rho/d*2\n", + "f = 0.05/us\n", + "P2 = 2*l*f*(1-e)*rhos*us**2/d\n", + "P2 = fround(P2/1000,2)*1000\n", + "delP = rhos*(1-e)*us**2+rhos*(1-e)*g*l+P1+P2\n", + "#print (delP,\"the pressure difference in kN/m**2 \")\n", + "print 'The Pressure value in kN/m**2 is %.2f'%(delP/1000)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The Pressure value in kN/m**2 is 4.21\n" + ] + } + ], + "prompt_number": 6 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 12.5 pageno :254" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "The maximum pressure drop\n", + "The minimum pressure drop\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "l = 25.\n", + "pi = 3.1428\n", + "rhos = 2690. #density of ore\n", + "emin = 0.6\n", + "emax = 0.8\n", + "g = 9.81\n", + "\n", + "#calculation\n", + "Pmax = rhos*(1-emin)*g*l\n", + "print \"The maximum pressure drop in (N/m**2):\",Pmax\n", + "Pmin = rhos*(1-emax)*g*l\n", + "print \"The minimum pressure drop in (N/m**2):\",Pmin\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The maximum pressure drop in (N/m**2): 263889.0\n", + "The minimum pressure drop in (N/m**2): 131944.5\n" + ] + } + ], + "prompt_number": 7 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file diff --git a/Problems_In_Fluid_Flow/ch13.ipynb b/Problems_In_Fluid_Flow/ch13.ipynb new file mode 100644 index 00000000..4422df84 --- /dev/null +++ b/Problems_In_Fluid_Flow/ch13.ipynb @@ -0,0 +1,375 @@ +{ + "metadata": { + "name": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 13 : Centrifugal Separation Operations\n" + ] + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 13.1 page no : 259" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "ratio of cetrifugal force & gravitational force\n", + "equivalent to gravity settling tank of crossectional area\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rho = 998.\n", + "g = 9.81\n", + "pi = 3.1428\n", + "omega = 2*pi*1055./60 #angular rotation\n", + "r = 2.55/100 #radius outer\n", + "ld = 1.55/100. #liq. depth\n", + "l = 10.25/100.\n", + "\n", + "#calculation\n", + "#part1\n", + "a = r*omega**2/g\n", + "print \"ratio of cetrifugal force & gravitational force is: %.4f\"%a\n", + "\n", + "#part2\n", + "ri = r-ld #radius internal\n", + "V = pi*(r**2-ri**2)*l\n", + "sigma = (omega**2*V)/(g*math.log(r/ri))\n", + "print \"equivalent to gravity settling tank of crossectional area of in (m**2): %.4f\"%sigma\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "ratio of cetrifugal force & gravitational force is: 31.7517\n", + "equivalent to gravity settling tank of crossectional area of in (m**2): 0.2358\n" + ] + } + ], + "prompt_number": 1 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 13.2 page no : 261" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "The maximum safe speed allowed in rpm\n", + "the power in N/m**2\n", + "pressure gradient in radial direction \n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "sigma = 55.*10**6 #maximum stress\n", + "d = 35.2/100\n", + "rhos = 8890. #density of bronze\n", + "rho = 1105. #density of solution\n", + "t = 80./1000 #thickness\n", + "tau = 4.325/1000.\n", + "pi = 3.1428\n", + "\n", + "#calculation\n", + "#part1\n", + "ri = d/2.-t #radius internal\n", + "def fround(x,n):\n", + " # fround(x,n)\n", + " # Round the floating point numbers x to n decimal places\n", + " # x may be a vector or matrix# n is the integer number of places to round to\n", + " y = round(x*10**n)/10**n\n", + " return y\n", + "\n", + "omega = math.sqrt((sigma*tau*2/d)/(.5*rho*(d**2/4-ri**2)+rhos*tau*d/2))\n", + "N = 60*omega/2/pi\n", + "print \"The maximum safe speed allowed in rpm: %.4f\"%N\n", + "\n", + "#part2\n", + "P = .5*rho*(d**2./4-ri**2)*omega**2\n", + "P = fround(P/10**4,1)*10.**4\n", + "#print (P,\"the power in N/m**2:\")\n", + "print 'the power in N/m**2: %3.2e'%( P)\n", + "a = rho*omega**2*d/2\n", + "a = fround(a/10**6,1)*10**6\n", + "#print (a,\"pressure gradient in radial direction in N/m**3:\")\n", + "print 'pressure gradient in radial direction in N/m**3: %3.2e'%( a)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The maximum safe speed allowed in rpm: 2560.1495\n", + "the power in N/m**2: 8.65e+05\n", + "pressure gradient in radial direction in N/m**3: 1.40e+07\n" + ] + } + ], + "prompt_number": 2 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 13.3 page no : 262" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find minimum diameter in organic pigment\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rhos = 1425. #density of organic pigment\n", + "rho = 998. #density of water\n", + "pi = 3.1428\n", + "omega = 360*2*pi/60.\n", + "mu = 1.25/1000.\n", + "t = 360.\n", + "r = 0.165+0.01\n", + "ro = 0.165\n", + "\n", + "#calculation\n", + "d = math.sqrt(18*mu*math.log(r/ro)/t/(rhos-rho)/omega**2)\n", + "print 'the minimum diameter in organic pigment in m: %3.1e'%( d)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "the minimum diameter in organic pigment in m: 2.5e-06\n" + ] + } + ], + "prompt_number": 4 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 13.4 page no : 263" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find maximum volumetric flow rate\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rhos = 1455. #density of crystals\n", + "rho = 998. #density of wliquid\n", + "g = 9.81\n", + "pi = 3.1428\n", + "mu = 1.013/1000\n", + "omega = 2*pi*60000/60.\n", + "l = 0.5\n", + "d = 2*10.**-6. #dia of particles\n", + "r = 50.5/1000. #radius\n", + "t = 38.5/1000 #thickness of liquid\n", + "\n", + "#calculation\n", + "ri = r-t\n", + "V = pi*l*(r**2-ri**2)\n", + "Q = d**2*(rhos-rho)/18/mu*omega**2*V/math.log(r/ri)\n", + "print \"the maximum volumetric flow rate in (m**3/s): %.4f\"%Q\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "the maximum volumetric flow rate in (m**3/s): 0.0104\n" + ] + } + ], + "prompt_number": 3 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 13.5 pageno : 265" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find distance of xis of rotation of cream milk interface\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rhoc = 867. #density of cream\n", + "rhom = 1034. #density of skimmem milk\n", + "rm = 78.2/1000. #radius of skimmed milk\n", + "rc = 65.5/1000. #radius of cream\n", + "\n", + "#calculation\n", + "r = math.sqrt((rhom*rm**2-rhoc*rc**2)/(rhom-rhoc))\n", + "\n", + "# results\n", + "print \"distance of xis of rotation of cream milk interface in (m): %.4f\"%r\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "distance of xis of rotation of cream milk interface in (m): 0.1249\n" + ] + } + ], + "prompt_number": 4 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 13.6 page no : 266" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find volumetric flow rate\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rho = 1.210 #density of air\n", + "mu = 1.78/10**5\n", + "g = 9.81\n", + "rhos = 2655. #density of ore\n", + "pi = 3.1428\n", + "d = 0.095\n", + "dp = 2.*10**-6 #particle diameter\n", + "dt = 0.333 #dia of cyclone separator\n", + "h = 1.28\n", + "\n", + "#calculation\n", + "U = dp**2*g*(rhos-rho)/18/mu\n", + "Q = 0.2*(pi*d**2/4)**2*d*g/U/pi/h/dt\n", + "print \"volumetric flow rate in(m**3/s): %.4f\"%Q\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "volumetric flow rate in(m**3/s): 0.0215\n" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 13.7 page no : 268" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find overall efficiency of cyclone separator\n", + "\n", + "import math \n", + "from numpy import linspace\n", + "# Initialization of Variable\n", + "b = 4.46*10**4\n", + "c = 1.98*10**4\n", + "s = 0.\n", + "def intregrate():\n", + " s = 0.\n", + " for i in range(10889):\n", + " d = linspace(0,10000,10889)\n", + " y = (1-math.exp(-b*d[i])*c*(1-math.exp(-c*d[i])))*0.69\n", + " s = s+y\n", + " a = y\n", + " return a\n", + "\n", + "a = intregrate()\n", + "\n", + "print \"overall efficiency of cyclone separator in %\",a*100\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "overall efficiency of cyclone separator in % 69.0\n" + ] + } + ], + "prompt_number": 8 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file diff --git a/Problems_In_Fluid_Flow/ch2.ipynb b/Problems_In_Fluid_Flow/ch2.ipynb new file mode 100644 index 00000000..b825a760 --- /dev/null +++ b/Problems_In_Fluid_Flow/ch2.ipynb @@ -0,0 +1,481 @@ +{ + "metadata": { + "name": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 2 : pipe flow of gasses and gas liquid mixtures\n" + ] + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 2.1 page no : 27" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find pressure maintained at compressor\n", + "\n", + "from scipy.optimize import fsolve\n", + "from math import *\n", + "\n", + "# Initialization of Variable\n", + "pi = 3.1428\n", + "mmm = 16.04/1000 #molar mass of methane\n", + "mV = 22.414/1000 #molar volume\n", + "R = 8.314\n", + "mu = 1.08/10**5\n", + "r = 4.2/100 #radius\n", + "rr = 0.026/2/r #relative roughness\n", + "Pfinal = 560.*1000.\n", + "tfinal = 273+24\n", + "l = 68.5\n", + "m = 2.35 #mass flow rate\n", + "\n", + "#calculation\n", + "A = pi*r**2\n", + "A = round(A*10.**5)/10.**5\n", + "rho = mmm/mV\n", + "rho24 = mmm*Pfinal*273/mV/101.3/tfinal #density at 24'C\n", + "u = m/rho24/A\n", + "Re = u*rho24*2*r/mu\n", + "\n", + "#from graph\n", + "phi = 0.0032\n", + "#for solving using fsolve we copy numerical value of constant terms\n", + "#using back calculation\n", + "#as pressure maintained should be more than Pfinal so guessed value is Pfinal\n", + "\n", + "def eqn(x):\n", + " y = m**2/A**2*log(x/Pfinal)+(Pfinal**2-x**2)/2/R/tfinal*mmm+4*phi*l/2/r*m**2/A**2\n", + " return y\n", + "x = fsolve(eqn,560*10**3)\n", + "print \"pressure maintained at compressor in (kN/m**2):\",x[0]/1000\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "pressure maintained at compressor in (kN/m**2): 960.06917347\n" + ] + } + ], + "prompt_number": 1 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 2.2 pageno : 29" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "ratio of Pw/P1\n", + "maximum velocity in (m/s)\n", + "maximum mass flow rate in(kg/s)\n", + "heat taken up to maintain isothermal codition(J/s)\n", + "crtical pressure ratio in adiabatic condition\n", + "velocity at adiabatic condition in (m/s)\n", + "mass flow rate at adiabatic condition in (kg/s)\n", + "temperature of discharging gas in (Celcius)\n", + "'''\n", + "\n", + "from math import *\n", + "from numpy import *\n", + "from scipy.optimize import fsolve\n", + "\n", + "# Initialization of Variable\n", + "M = 28.8/1000\n", + "mu = 1.73/10**5\n", + "gamm = 1.402\n", + "P1 = 107.6*10**3\n", + "V = 22.414/1000\n", + "R = 8.314\n", + "temp = 285.\n", + "d = 4./1000\n", + "rr = 0.0008\n", + "phi = 0.00285\n", + "l = 68.5 \n", + "\n", + "#calculation\n", + "#constant term of equation\n", + "#part1\n", + "\n", + "a = 1.-8*phi*l/d #constant term in deff\n", + "def f(x):\n", + " return log(x**2)-x**2+2.938\n", + " \n", + "x = fsolve(f,1)\n", + "print x\n", + "z = 1./x[0]\n", + "z = round(z*1000.)/1000\n", + "print \"ratio of Pw/P1 : %.4f\"%z\n", + "\n", + "#part2\n", + "Pw = z*P1\n", + "nuw = V*P1*temp/Pw/M/273.\n", + "Uw = sqrt(nuw*Pw)\n", + "print \"maximum velocity in (m/s): %.4f\"%Uw\n", + "\n", + "#part3\n", + "Gw = pi*d**2/4*Pw/Uw\n", + "print \"maximum mass flow rate in(kg/s): %.4f\"%Gw\n", + "\n", + "#part4\n", + "G = 2.173/1000\n", + "J = G*Uw**2/2\n", + "print \"heat taken up to maintain isothermal codition(J/s): %.4f\"%J\n", + "\n", + "#part5\n", + "nu2 = 2.79 #found from graph\n", + "nu1 = R*temp/M/P1\n", + "P2 = P1*(nu1/nu2)**gamm\n", + "print \"crtical pressure ratio in adiabatic condition: %.4f\"%(P2/P1)\n", + "\n", + "#part6\n", + "Uw = sqrt(gamm*P2*nu2)\n", + "print \"velocity at adiabatic condition in (m/s): %.4f\"%Uw\n", + "\n", + "#part7\n", + "Gw = pi*d**2/4*Uw/nu2\n", + "print \"mass flow rate at adiabatic condition in (kg/s): %.4f\"%Gw\n", + "\n", + "\n", + "#part8\n", + "#polynomial in T of the form ax**2+bx+c = 0\n", + "c = gamm/(gamm-1)*P1*nu1+.5*Gw**2/pi**2/d**4*16*nu1**2\n", + "b = gamm/(gamm-1)*R/M\n", + "a = .5*Gw**2/pi**2/d**4*16*(R/M/P2)**2\n", + "y = poly1d([a,b,-c],False)\n", + "T2 = roots(y)\n", + "print \"temperature of discharging gas in (Celcius) : %.4f\"%(T2[1]-273)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "[ 1.0268468]\n", + "ratio of Pw/P1 : 0.9740\n", + "maximum velocity in (m/s): 295.6723\n", + "maximum mass flow rate in(kg/s): 0.0045\n", + "heat taken up to maintain isothermal codition(J/s): 94.9841\n", + "crtical pressure ratio in adiabatic condition: 0.1629\n", + "velocity at adiabatic condition in (m/s): 261.8257\n", + "mass flow rate at adiabatic condition in (kg/s): 0.0012\n", + "temperature of discharging gas in (Celcius) : -46.3847" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "\n" + ] + }, + { + "output_type": "stream", + "stream": "stderr", + "text": [ + "/usr/lib/python2.7/dist-packages/scipy/optimize/minpack.py:227: RuntimeWarning: The iteration is not making good progress, as measured by the \n", + " improvement from the last ten iterations.\n", + " warnings.warn(msg, RuntimeWarning)\n" + ] + } + ], + "prompt_number": 1 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 2.3 pageno : 35" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "new estimate assumed\n", + "mass flow rate of steam through pipe\n", + "pressure of pipe at downstream end in\n", + "temperature of steam emerging from pipe\n", + "'''\n", + "\n", + "from scipy.optimize import fsolve \n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "\n", + "#1 refer to initial condition\n", + "R=8.314\n", + "P1=550.*10**3\n", + "T1=273.+350\n", + "M=18./1000\n", + "d=2.4/100\n", + "pi=3.1428\n", + "A=pi*d**2./4\n", + "gamm=1.33\n", + "roughness=0.096/1000/d\n", + "l=0.85\n", + "phi=0.0035 #assumed value of friction factor\n", + "\n", + "#calculation\n", + "nu1=R*T1/M/P1\n", + "Pw=0.4*P1 #estimation\n", + "nuw=(P1/Pw)**0.75*nu1\n", + "enthalpy=3167*1000.\n", + "Gw=math.sqrt(enthalpy*A**2/(gamm*nuw**2/(gamm-1)-nu1**2/2-nuw**2/2))\n", + "def eqn(x):\n", + " return math.log(x/nu1)+(gamm-1)/gamm*(enthalpy/2*(A/Gw)**2*(1/x**2-1/nu1**2)+0.25*(nu1**2/x**2-1)-.5*math.log(x/nu1))+4*phi*l/d\n", + "\n", + "x=fsolve(eqn,0.2)\n", + "\n", + "if x[0] != nuw:\n", + " print \"we again have to estimate Pw/P1\"\n", + " print \"new estimate assumed as 0.45\"\n", + " Pw=0.45*P1 #new estimation\n", + " nuw=(P1/Pw)**0.75*nu1\n", + " # & we equalise nu2 to nuw\n", + " nu2=nuw \n", + " Gw=math.sqrt(enthalpy*A**2/(gamm*nuw**2/(gamm-1)-nu1**2./2-nuw**2./2))\n", + " print \"mass flow rate of steam through pipe kg/s): %.2f\"%(Gw) \n", + " #part 2\n", + " print \"pressure of pipe at downstream end in (kPa):\",Pw/1000\n", + "else:\n", + " print \"our estimation is correct\"\n", + "\n", + "#part3\n", + "enthalpyw=2888.7*1000. #estimated from steam table\n", + "Tw=math.sqrt((enthalpy-enthalpyw+.5*Gw**2/A**2*nu1**2)*2*A**2/Gw**2/R**2*M**2*Pw**2)\n", + "print \"temperature of steam emerging from pipe in (Celcius): %.4f\"%(Tw-273)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "we again have to estimate Pw/P1\n", + "new estimate assumed as 0.45\n", + "mass flow rate of steam through pipe kg/s): 0.46\n", + "pressure of pipe at downstream end in (kPa): 247.5\n", + "temperature of steam emerging from pipe in (Celcius): 209.9420\n" + ] + } + ], + "prompt_number": 2 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 2.4 pageno : 39" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "pressure at nozzle throat\n", + "diameter required at nozzle throat\n", + "sonic velocity at throat\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "M=28.05/1000\n", + "gamm=1.23\n", + "R=8.314\n", + "atm=101.3*1000\n", + "P1=3.*atm\n", + "\n", + "#calculation\n", + "P2=P1*(2./(gamm+1))**(gamm/(gamm-1))\n", + "print \"pressure at nozzle throat (kPa): %.4f\"%(P2/1000.)\n", + "\n", + "#part2\n", + "temp=273.+50\n", + "nu1=R*temp/P1/M\n", + "G=18. #mass flow rate\n", + "nu2=nu1*(P2/P1)**(-1/gamm)\n", + "A=G**2*nu2**2*(gamm-1)/(2*gamm*P1*nu1*(1-(P2/P1)**((gamm-1)/gamm)))\n", + "d=math.sqrt(4*math.sqrt(A)/math.pi)\n", + "print \"diameter required at nozzle throat in (cm) : %.4f\"%(d*100)\n", + "#part3\n", + "vel=math.sqrt(2*gamm*P1*nu1/(gamm-1)*(1-(P2/P1)**((gamm-1)/gamm)))\n", + "print \"sonic velocity at throat in(m/s): %.4f\"%vel\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "pressure at nozzle throat (kPa): 169.7903\n", + "diameter required at nozzle throat in (cm) : 18.8847\n", + "sonic velocity at throat in(m/s): 324.9787\n" + ] + } + ], + "prompt_number": 3 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 2.5 page no : 41" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find height of manometer\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "T=273.+15\n", + "rho=999.\n", + "rhom=13559. #density of mercury\n", + "g=9.81\n", + "P2=764.3/1000*rhom*g\n", + "R=8.314\n", + "M=16.04/1000\n", + "d=4.5/1000.\n", + "A=math.pi*d**2/4.\n", + "G=0.75/1000 #mass flow rate\n", + "delP=(1-math.exp(R*T*G**2./2/P2**2/M/A**2))*P2\n", + "h=-delP/rho/g\n", + "print \"height of manometer in (cm) %.4f\"%(h*100)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "height of manometer in (cm) 16.7941\n" + ] + } + ], + "prompt_number": 4 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 2.6 page no : 44" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "both liquid phase and solid phase \n", + "required pressure drop per unit length\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rhol=931.\n", + "mu=1.55/10000 #viscosity of water\n", + "Vsp=0.6057 #specific volume\n", + "T=273+133.\n", + "mug=1.38/100000 #viscosity of steam\n", + "P=300*1000.\n", + "d=0.075\n", + "Gg=0.05 #mass flow gas phase\n", + "Gl=1.5 #mass flow liquid phase\n", + "A=math.pi*d**2./4\n", + "rho = 999.\n", + "#calculation\n", + "rhog=1./Vsp\n", + "rhog=round(rhog*1000)/1000.\n", + "velg=Gg/A/rhog\n", + "velg=round(velg*100)/100.\n", + "Reg=rhog*velg*d/mug\n", + "\n", + "#using chart\n", + "phig=0.00245 #friction factor gas phase\n", + "l=1\n", + "delPg=4*phig*velg**2*rhog/d\n", + "\n", + "#consider liquid phase\n", + "vell=Gl/A/rho\n", + "Rel=rho*vell*d/mu\n", + "if Rel>4000 and Reg>4000:\n", + " print \"both liquid phase and solid phase in turbulent motion\"\n", + " #from chart\n", + "\n", + "PHIg=5.\n", + "delP=PHIg**2.*delPg\n", + "print \"required pressure drop per unit length in (Pa) : %.4f\"%delP\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "both liquid phase and solid phase in turbulent motion\n", + "required pressure drop per unit length in (Pa) : 253.8050\n" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file diff --git a/Problems_In_Fluid_Flow/ch3.ipynb b/Problems_In_Fluid_Flow/ch3.ipynb new file mode 100644 index 00000000..092a98ed --- /dev/null +++ b/Problems_In_Fluid_Flow/ch3.ipynb @@ -0,0 +1,325 @@ +{ + "metadata": { + "name": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 3 : velocity boundary layers\n" + ] + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 3.1 page no : 50" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "fluid in boundary layer would be entirely\n", + "reynolds \n", + "boundary layer width\n", + "velocity of water\n", + "shear stress \n", + "mean shear stress experienced\n", + "total force experienced\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rho=998.\n", + "mu=1.002/1000\n", + "x=48/100.\n", + "u=19.6/100\n", + "x1=30/100.\n", + "b=2.6\n", + "\n", + "#calculation\n", + "\n", + "print \"fluid in boundary layer would be entirely in streamline motion \"\n", + "Re=rho*x*u/mu\n", + "print \"reynolds no is %.2e\"%(Re)\n", + "\n", + "#part 2\n", + "Re1=rho*x1*u/mu\n", + "delta=x1*4.64*Re1**-.5\n", + "print \"boundary layer width in (mm): %.4f\"%(delta*1000)\n", + "\n", + "#part3\n", + "y=0.5*delta #middle of boundary layer\n", + "ux=3/2*u*y/delta-.5*u*(y/delta)**3\n", + "print \"velocity of water in (cm/s): %.4f\"%(ux*100)\n", + "\n", + "#part4\n", + "R=0.323*rho*u**2*Re1**-0.5\n", + "print \"shear stress at 30cm in (N/m**2): %.4f\"%R\n", + "\n", + "#part5\n", + "Rms=0.646*rho*u**2*Re**-0.5\n", + "print \"mean shear stress experienced over whole plate in (N/m**2) %.4f\"%Rms\n", + "\n", + "#part6\n", + "F=Rms*x*b\n", + "print \"total force experienced by the plate in (N) %.4f\"%F\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "fluid in boundary layer would be entirely in streamline motion \n", + "reynolds no is 9.37e+04\n", + "boundary layer width in (mm): 5.7520\n", + "velocity of water in (cm/s): 8.5750\n", + "shear stress at 30cm in (N/m**2): 0.0512\n", + "mean shear stress experienced over whole plate in (N/m**2) 0.0809\n", + "total force experienced by the plate in (N) 0.1010\n" + ] + } + ], + "prompt_number": 2 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 3.2 page no : 52" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "% of surface over which turbulent boundary layer \n", + "thickness of boundary layer \n", + "velocity of air at mid point \n", + "thickness of laminar boundary layer\n", + "velocity at outer edge of laminar sublayer\n", + "shearforce expericienced\n", + "mean shearforce \n", + "total drag force expericienced by the plate \n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "P=102.7*1000\n", + "M=28.8/1000\n", + "R=8.314\n", + "temp=273+18\n", + "Recrit=10.**5\n", + "u=18.4\n", + "b=4.7#width\n", + "x=1.3\n", + "mu=1.827/100000\n", + "\n", + "#calculation\n", + "#part1\n", + "rho=P*M/R/temp\n", + "xcrit=Recrit*mu/rho/u\n", + "a=1-xcrit/1.65\n", + "print \"%% of surface over which turbulent boundary layer exist is : %.4f\"%(a*100)\n", + "\n", + "#part2\n", + "Rex=rho*u*x/mu\n", + "thik=0.375*Rex**-.2*x\n", + "print \"thickness of boundary layer in (cm): %.4f\"%(thik*100)\n", + "\n", + "y=0.5*thik\n", + "ux=u*(y/thik)**(1./7)\n", + "print \"velocity of air at mid point is (m/s): %.4f\"%ux\n", + "\n", + "#part4\n", + "lthik=74.6*Rex**-.9*x\n", + "print \"thickness of laminar boundary layer in (mm): %.4f\"%(lthik*1000)\n", + "\n", + "#part5\n", + "ub=u*(lthik/thik)**(1./7)\n", + "print \"velocity at outer edge of laminar sublayer in (m/s): %.4f\"%ub\n", + "\n", + "#part6\n", + "R=0.0286*rho*u**2*Rex**-0.2\n", + "print \"shearforce expericienced in (N/m**2) : %.4f\"%R\n", + "\n", + "#part7\n", + "x1=1.65 #length of plate\n", + "Rex1=rho*u*x1/mu\n", + "Rms=0.0358*rho*u**2*Rex1**-0.2\n", + "print \"mean shearforce in (N/m**2): %.4f\"%Rms\n", + "\n", + "#part8\n", + "F=x1*Rms*b\n", + "print \"total drag force expericienced by the plate is (N): %.4f\"%F\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "% of surface over which turbulent boundary layer exist is : 95.0776\n", + "thickness of boundary layer in (cm): 2.7997\n", + "velocity of air at mid point is (m/s): 16.6653\n", + "thickness of laminar boundary layer in (mm): 0.2528\n", + "velocity at outer edge of laminar sublayer in (m/s): 9.3924\n", + "shearforce expericienced in (N/m**2) : 0.6798\n", + "mean shearforce in (N/m**2): 0.8114\n", + "total drag force expericienced by the plate is (N): 6.2921\n" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 3.3 page no : 55" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "pipe flow reynolds\n", + "Water will be in streamline motion in the pipe\n", + "velocity gradient at the pipe wall\n", + "Sherastress at pipe wall\n", + "new av. fluid velocity \n", + "thickness of laminar sublayer\n", + "thickness of buffer layer \n", + "percentage of pipe-s core occupied by turbulent core\n", + "velocity where sublayer and buffer layer meet \n", + "velocity where turbulent core and buffer layer meet\n", + "fluid velocity \n", + "shearstress \n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "Q=37.6/1000000\n", + "d=3.2/100\n", + "mu=1.002/1000\n", + "rho=998.\n", + "pi=3.14\n", + "\n", + "#calculation\n", + "#part1\n", + "u=4.*Q/pi/d**2.\n", + "Re=rho*u*d/mu\n", + "print \"pipe flow reynolds no : %.4f\"%Re\n", + "print \"Water will be in streamline motion in the pipe\"\n", + "\n", + "#part2\n", + "a=-8.*u/d\n", + "print \"velocity gradient at the pipe wall is (s**-1): %.4f\"%a\n", + "\n", + "#part3\n", + "Ro=-mu*a\n", + "print \"Sherastress at pipe wall is N/m**2) %.2e\"%(Ro)\n", + "\n", + "#part4\n", + "Q=2.10/1000\n", + "u=4.*Q/pi/d**2\n", + "u=round(u*1000.)/1000.\n", + "print \"new av. fluid velocity is (m/s): %.4f\"%u\n", + "\n", + "Re=rho*u*d/mu\n", + "phi=0.0396*Re**-0.25 #friction factor\n", + "phi=round(phi*10**5)/10.**5\n", + "delb=5*d*Re**-1*phi**-.5\n", + "print \"thickness of laminar sublayer in (10**-6m): %.4f\"%(delb*10**6)\n", + "\n", + "#part5\n", + "y=30.*d/phi**0.5/Re #thickness\n", + "tbl=y-delb\n", + "print \"thickness of buffer layer in (mm): %.4f\"%(tbl*1000)\n", + "\n", + "#part6\n", + "A=pi*d**2./4 #cross sectional area of pipe\n", + "dc=d-2*y #dia of turbulent core\n", + "Ac=pi*dc**2/4.\n", + "p=(1-A/Ac)*100.\n", + "print \"percentage of pipe-s core occupied by turbulent core is (%%): %.4f\"%p\n", + "\n", + "#part7\n", + "uplus=5. #from reference\n", + "ux=uplus*u*phi**0.5\n", + "print \"velocity where sublayer and buffer layer meet is (m/s): %.4f\"%ux\n", + "\n", + "#part8\n", + "yplus=30. #from reference\n", + "ux2=u*phi**0.5*(2.5*math.log(yplus)+5.5)\n", + "print \"velocity where turbulent core and buffer layer meet is (m/s): %.4f\"%ux2\n", + "\n", + "#part9\n", + "us=u/0.81\n", + "print \"fluid velocity along the pipe axis (m/s): %.4f\"%us\n", + "\n", + "#part10\n", + "Ro=phi*rho*u**2\n", + "print \"shearstress at pipe wall (N/m**2): %.4f\"%Ro\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "pipe flow reynolds no : 1490.8400\n", + "Water will be in streamline motion in the pipe\n", + "velocity gradient at the pipe wall is (s**-1): -11.6939\n", + "Sherastress at pipe wall is N/m**2) 1.17e-02\n", + "new av. fluid velocity is (m/s): 2.6120\n", + "thickness of laminar sublayer in (10**-6m): 39.8159\n", + "thickness of buffer layer in (mm): 0.1991\n", + "percentage of pipe-s core occupied by turbulent core is (%): -3.0544\n", + "velocity where sublayer and buffer layer meet is (m/s): 0.6304\n", + "velocity where turbulent core and buffer layer meet is (m/s): 1.7655\n", + "fluid velocity along the pipe axis (m/s): 3.2247\n", + "shearstress at pipe wall (N/m**2): 15.8647\n" + ] + } + ], + "prompt_number": 6 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file diff --git a/Problems_In_Fluid_Flow/ch4.ipynb b/Problems_In_Fluid_Flow/ch4.ipynb new file mode 100644 index 00000000..cf855c54 --- /dev/null +++ b/Problems_In_Fluid_Flow/ch4.ipynb @@ -0,0 +1,459 @@ +{ + "metadata": { + "name": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 4 : Flow Measurement\n" + ] + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 4.1 page no : 65" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "maximum fluid velocity \n", + "reynold no. \n", + "mass flow rate \n", + "Volumetric flow rate \n", + "maximum fluid velocity\n", + "reynold no. \n", + "volumetric flow rate\n", + "mass flow rate\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rho=998.\n", + "rhom=1.354*10**4#density of mercury\n", + "M=2.83/100\n", + "mu=1.001/1000\n", + "mun=1.182/10**5#vicosity of natural gas\n", + "R=8.314\n", + "g=9.81\n", + "h=28.6/100\n", + "d=54./100\n", + "\n", + "#part1\n", + "nu=1./rho\n", + "delP=h*g*(rhom-rho)\n", + "umax=math.sqrt(2.*nu*delP)\n", + "umax=round(umax*10.)/10\n", + "print \"maximum fluid velocity in (m/s)\",umax\n", + "Re=umax*d*rho/mu\n", + "print \"reynold no. is %.2e\"%(Re)\n", + "\n", + "#using chart\n", + "u=0.81*umax\n", + "G=rho*math.pi*d**2./4*u\n", + "print \"mass flow rate in (kg/s): %.4f\"%G\n", + "print \"Volumetric flow rate in (m**3/s): %.4f\"%(G/rho)\n", + "\n", + "#part2\n", + "P1=689.*1000 #initial pressure\n", + "T=273+21.\n", + "nu1=R*T/M/P1\n", + "nu1=round(nu1*10000)/10000.\n", + "rhog=1./nu1 #density of gas\n", + "h=17.4/100\n", + "P2=P1+h*(rho-rhog)*g\n", + "P2=round(P2/100)*100.\n", + "umax2=math.sqrt(2*P1*nu1*math.log(P2/P1))\n", + "print \"maximum fluid velocity in (m/s) %.4f\"%umax2\n", + "Re=rhog*umax2*d/mun\n", + "print \"reynold no. is %.3e\"%(Re)\n", + "#from table\n", + "u=0.81*umax2\n", + "Q=math.pi*d**2/4*u\n", + "print \"volumetric flow rate is (m**3/s): %.4f\"%Q\n", + "print \"mass flow rate in (kg/s): %.4f\"%(Q*rhog)\n", + "\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "maximum fluid velocity in (m/s) 8.4\n", + "reynold no. is 4.52e+06\n", + "mass flow rate in (kg/s): 1555.1499\n", + "Volumetric flow rate in (m**3/s): 1.5583\n", + "maximum fluid velocity in (m/s) 20.6358\n", + "reynold no. is 7.518e+06\n", + "volumetric flow rate is (m**3/s): 3.8281\n", + "mass flow rate in (kg/s): 30.5271\n" + ] + } + ], + "prompt_number": 1 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 4.2 page no : 67" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "volumetric flow rate\n", + "mass flow rate of chlorine gas\n", + "'''\n", + "\n", + "import math \n", + "import numpy\n", + "from matplotlib import pyplot as plt\n", + "%pylab inline\n", + "\n", + "# Initialization of Variable\n", + "rd = numpy.true_divide([0, 1, 2.5, 5 ,10, 15, 17.5],100) #radial distance from pipe\n", + "dlv = numpy.true_divide([0,0.2, 0.36, 0.54, 0.81, 0.98, 1],100) #differnce in liquid levels\n", + "r = [.175 ,.165, .150, .125 ,.075, .025, 0]\n", + "g = 9.81\n", + "R = 8.314\n", + "rho = 999.\n", + "temp = 289.\n", + "P1 = 148 * 1000.\n", + "M = 7.09 / 100.\n", + "pi = 3.12\n", + "rhoCl2 = P1 * M / R / temp #density of Cl2\n", + "nuCl2 = 1 / rhoCl2 #specific volume of Cl2\n", + "def P2(x):\n", + " return P1+x*(rho-rhoCl2)*g\n", + "\n", + "u = [0,0,0,0,0,0,0]\n", + "a = [0,0,0,0,0,0,0]\n", + "\n", + "for i in range(7):\n", + " y = P2(dlv[i])\n", + " u[i] = math.sqrt(2.*P1*nuCl2*math.log(y/P1))\n", + " a[i] = u[i] * r[i]\n", + "\n", + "plt.plot(r,a)\n", + "plt.xlabel(\"r (m)\")\n", + "plt.ylabel(\"u*r (m**2/s)\")\n", + "s=0\n", + "for i in range(6): #itegration of the plotted graph\n", + " s=abs((r[i]-r[i+1])*.5*(a[i]+a[1]))+s\n", + "\n", + "s=s-0.01\n", + "Q=2*pi*s\n", + "plt.show()\n", + "#Result\n", + "print \"volumetric flow rate (m**3/s):\",Q\n", + "print \"mass flow rate of chlorine gas (kg/s)\",Q*rhoCl2\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Populating the interactive namespace from numpy and matplotlib\n" + ] + }, + { + "output_type": "stream", + "stream": "stderr", + "text": [ + "WARNING: pylab import has clobbered these variables: ['pi']\n", + "`%pylab --no-import-all` prevents importing * from pylab and numpy\n" + ] + }, + { + "metadata": {}, + "output_type": "display_data", + "png": "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\n", + "text": [ + "<matplotlib.figure.Figure at 0x27a1550>" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "volumetric flow rate (m**3/s): 0.455983319661\n", + "mass flow rate of chlorine gas (kg/s) 1.99135662691\n" + ] + } + ], + "prompt_number": 3 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 4.3 page no : 70 " + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "mass flow rate\n", + "pressuer differnce between tapping points \n", + "difference in water levels in manometer\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "pi = 3.14\n", + "Cd = 0.61\n", + "rho = 999.\n", + "rhoo = 877. #density of oil\n", + "g = 9.81\n", + "h = 75/100.\n", + "d = 12.4/100. #dia of orifice\n", + "d1 = 15/100. #inside diameter\n", + "nuo = 1/rhoo #specific volume of oil\n", + "\n", + "#calculation\n", + "#part1\n", + "delP = h*(rho-rhoo)*g\n", + "A = pi*d**2./4\n", + "G = Cd*A/nuo*math.sqrt(2*nuo*delP/(1-(d/d1)**4))\n", + "print \"mass flow rate in (kg/s) %.4f\"%G\n", + "\n", + "#part2\n", + "h = (1.+0.5)*d1\n", + "delP = rhoo/2*(G*nuo/Cd/A)**2*(1-(d/d1)**4)+h*rhoo*g\n", + "print \"pressuer differnce between tapping points %.4f\"%delP\n", + "delh = (delP-h*rhoo*g)/(rho-rhoo)/g\n", + "print \"difference in water levels in manometer i (cm) %.4f\"%delh\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "mass flow rate in (kg/s) 12.6544\n", + "pressuer differnce between tapping points 2833.3733\n", + "difference in water levels in manometer i (cm) 0.7500\n" + ] + } + ], + "prompt_number": 2 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 4.4 page no : 72" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "diameter of orifice\n", + "ratio of pressure drop \n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rhom = 1.356*10**4 #density mercury\n", + "rhon = 1266. #density NaOH\n", + "Cd = 0.61\n", + "g = 9.81\n", + "Cdv = 0.98 #coeff. of discharge of venturimeter\n", + "Cdo = Cd #coeff. of discharge of orificemeter\n", + "d = 6.5/100\n", + "pi = 3.14\n", + "A = pi*d**2/4.\n", + "Q = 16.5/1000.\n", + "h = 0.2 #head differnce\n", + "\n", + "#calculation\n", + "#part1\n", + "delP = g*h*(rhom-rhon)\n", + "G = rhon*Q\n", + "nun = 1./rhon#specific volume of NaOH\n", + "Ao = G*nun/Cd*math.sqrt(1./(2*nun*delP+(G*nun/Cd/A)**2)) #area of orifice\n", + "d0 = math.sqrt(4.*Ao/pi)\n", + "print \"diameter of orifice in (cm): %.4f\"%(d0*100)\n", + "\n", + "#part2\n", + "a = (Cdv/Cdo)**2\n", + "print \"ratio of pressure drop %.4f\"%a\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "diameter of orifice in (cm): 5.8041\n", + "ratio of pressure drop 2.5810\n" + ] + } + ], + "prompt_number": 3 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 4.5 page no : 74" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "pressure drop over the float\n", + "mass flow rate\n", + "Volumetric flow rate\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "M = 3.995/100\n", + "g = 9.81\n", + "R = 8.314\n", + "Cd = 0.94\n", + "temp = 289.\n", + "df = 9.5/1000 #diameter of float\n", + "Af = math.pi*df**2/4. #area of float\n", + "P = 115.*10.**3.\n", + "V = 0.92/10**6\n", + "rhoc = 3778. #density of ceramic\n", + "\n", + "#calculation\n", + "rho = P*M/R/temp\n", + "nu = 1/rho\n", + "P = V*(rhoc-rho)*g/Af\n", + "print \"pressure drop over the float in (Pa): %.4f\"%P\n", + "\n", + "#part2\n", + "x = .15/25.*(25-7.6)\n", + "L = df*100.+2*x\n", + "L = L/100.\n", + "A1 = math.pi*L**2./4\n", + "A0 = A1-Af\n", + "G = Cd*A0*math.sqrt(2.*rho*P/(1-(A0/A1)**2))\n", + "print \"mass flow rate in kg/s) is %.3e\"%(G)\n", + "Q = G/rho\n", + "print \"Volumetric flow rate in (m**3/s): %f\"%Q\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "pressure drop over the float in (Pa): 480.7971\n", + "mass flow rate in kg/s) is 1.475e-03\n", + "Volumetric flow rate in (m**3/s): 0.000772\n" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 4.6 page no : 77" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find mass of float equired \n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rho = 999.\n", + "rhos = 8020. #density of steel\n", + "g = 9.81\n", + "math.pi = 3.14\n", + "df = 14.2/1000 #dia of float\n", + "Af = math.pi*df**2/4. #area of float\n", + "Cd = 0.97\n", + "nu = 1./rho\n", + "Q = 4./1000./60\n", + "G = Q*rho\n", + "\n", + "#calculation\n", + "x = 0.5*(18.8-df*1000)/280*(280-70)\n", + "L = df*1000.+2*x\n", + "L = L/1000.\n", + "A1 = math.pi*L**2./4\n", + "A0 = A1-Af\n", + "Vf = Af/g/(rhos-rho)/2/nu*(G*nu/Cd/A0)**2*(1-(A0/A1)**2)\n", + "m = Vf*rhos\n", + "print \"mass of float equired in (g): %.4f\"%(m*1000)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "mass of float equired in (g): 5.1176\n" + ] + } + ], + "prompt_number": 6 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file diff --git a/Problems_In_Fluid_Flow/ch5.ipynb b/Problems_In_Fluid_Flow/ch5.ipynb new file mode 100644 index 00000000..2f6c5b6c --- /dev/null +++ b/Problems_In_Fluid_Flow/ch5.ipynb @@ -0,0 +1,757 @@ +{ + "metadata": { + "name": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 5 : Flow measurement in open channel\n" + ] + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 5.1 page no : 83" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "volumetric flow rate\n", + "chezy coefficient\n", + "velocity gradient in the channel\n", + "'''\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rho = 999.7;\n", + "g = 9.81;\n", + "mu = 1.308/1000;\n", + "s = 1./6950;\n", + "b = 0.65;\n", + "h = 32.6/100;\n", + "n = 0.016;\n", + "\n", + "#calculation\n", + "A = b*h;\n", + "P = b+2*h;\n", + "m = A/P;\n", + "u = s**.5*m**(2./3)/n;\n", + "Q = A*u\n", + "\n", + "print \"volumetric flow rate (m**3/s): %.4f\"%Q\n", + "C = u/m**0.5/s**0.5;\n", + "print \"chezy coefficient (m**0.5/s): %.4f\"%C\n", + "a = -m*rho*g*s/mu #delu/dely\n", + "print \"velocity gradient in the channel (s**-1): %.4f\"%a\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "volumetric flow rate (m**3/s): 0.0474\n", + "chezy coefficient (m**0.5/s): 46.1814\n", + "velocity gradient in the channel (s**-1): -175.5764\n" + ] + } + ], + "prompt_number": 1 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 5.2 page no : 85" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find depth of water\n", + "\n", + "from scipy.optimize import fsolve \n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "Q = 0.885\n", + "pi = 3.1428\n", + "s = 1./960\n", + "s = round(s*1000000)/1000000.\n", + "b = 1.36\n", + "n = 0.014\n", + "theta = 55.*pi/180.\n", + "\n", + "#calculation\n", + "\n", + "def flow(x):\n", + " a = (x*(b+x/math.tan(theta)))/(b+2*x/math.sin(theta))\n", + " y = a**(2./3)*s**(1./2)*(x*(b+x/math.tan(theta)))/n-Q\n", + " return y\n", + "x = fsolve(flow,0.1)\n", + "\n", + "print \"depth of water in (m): %.4f\"%x[0]\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "depth of water in (m): 0.4813\n" + ] + } + ], + "prompt_number": 2 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 5.3 page no : 86" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find slope of channel\n", + "\n", + "from scipy.optimize import fsolve \n", + "import math \n", + "from numpy import *\n", + "\n", + "# Initialization of Variable\n", + "n = 0.011\n", + "h = 0.12\n", + "Q = 25./10000.\n", + "\n", + "#calculation\n", + "def f(x): \n", + "\t return 1./x**2-1\n", + "\t \n", + "x = fsolve(f,0.1)\n", + "theta = 2.*arctan(x)\n", + "A = h*2*h/math.tan(theta/2)/2.\n", + "P = 2.*h*math.sqrt(2.)\n", + "s = Q**2.*n**2.*P**(4./3)/A**(10./3)\n", + "print \"the slope of channel in (radians): %f\"%s\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "the slope of channel in (radians): 0.000246\n" + ] + } + ], + "prompt_number": 4 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 5.4 pageno : 88" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "maximum velocity\n", + "maximum volumetric flow \n", + "maximum velocity of obtained fluid \n", + "maximum flow rate obtained\n", + "'''\n", + "\n", + "from scipy.optimize import fsolve \n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "\n", + "#part1\n", + "#maximizing eqution in theta & get a function\n", + "def theta(x):\n", + " return (x-.5*math.sin(2.*x))/2/x**2.-(1-math.cos(2.*x))/2/x\n", + "\n", + "x = fsolve(theta,2.2)\n", + "x = round(x*1000.)/1000.\n", + "a = (1-math.cos(x))/2.\n", + "print \"velocity will be maximum when stream depth in times of diameter is %.3f\"%(a)\n", + "\n", + "#part2\n", + "#maximizing eqution in theta & get a function\n", + "def theta2(x):\n", + " return 3*(x-.5*math.sin(2*x))**2*(1.-math.cos(2.*x))/2./x-(x-.5*math.sin(2.*x))**3./2./x**2 \n", + "\n", + "x1 = fsolve(theta2,2.2)\n", + "x1 = round(x1*1000)/1000.\n", + "a = (1-math.cos(x1))/2.\n", + "\n", + "print \"vlumetric flow will be maximum when stream depth in times of diameter is %.3f\"%(a)\n", + "\n", + "#part3\n", + "r = 1.\n", + "A = 1.*x-0.5*math.sin(2*x)\n", + "s = 0.35*3.14/180\n", + "P = 2.*x*r\n", + "C = 78.6\n", + "u = C*(A/P)**0.5*s**0.5\n", + "print \"maximum velocity of obtained fluid (m/s): %.4f\"%u\n", + "\n", + "#part4\n", + "print \"maximum flow rate obtained at angle in (radians): %.4f\"%x1\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "velocity will be maximum when stream depth in times of diameter is 0.813\n", + "vlumetric flow will be maximum when stream depth in times of diameter is 0.950\n", + "maximum velocity of obtained fluid (m/s): 4.7913\n", + "maximum flow rate obtained at angle in (radians): 2.6890\n" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 5.5 page no : 91" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "velocity of fluid \n", + "fluid depth over weir in (m)\n", + "fluid depth over weir in if SI units \n", + "base angle of the notch of weir\n", + "'''\n", + "\n", + "from scipy.optimize import fsolve \n", + "import math \n", + "import numpy\n", + "\n", + "#example 5.5 \n", + "# Initialization of Variable\n", + "g = 9.81\n", + "h = 28./100\n", + "Cd = 0.62\n", + "B = 46./100\n", + "Q = 0.355\n", + "n = 2. #from francis formula\n", + "\n", + "#calcualtion\n", + "\n", + "#part1\n", + "u = math.sqrt(2*g*h)\n", + "print \"velocity of fluid (m/s): %.4f\"%u\n", + "\n", + "#part2a\n", + "H = (3.*Q/2./Cd/B/(2.*g)**0.5)**(2./3)\n", + "\n", + "print \"fluid depth over weir in (m): %.4f\"%H\n", + "\n", + "#part2b\n", + "#using francis formula\n", + "def root(x):\n", + " return Q-1.84*(B-0.1*n*x)*x**1.5\n", + "\n", + "x = fsolve(root,0.2)\n", + "print \"fluid depth over weir in if SI units uesd in (m): %.4f\"%x\n", + "\n", + "#part3\n", + "H = 18.5/100\n", + "Q = 22./1000\n", + "a = 15.*Q/8/Cd/(2*g)**0.5/H**2.5\n", + "theta = 2*numpy.arctan(a)\n", + "print \"base angle of the notch of weir (degrees) %.4f\"%(theta*180/3.14)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "velocity of fluid (m/s): 2.3438\n", + "fluid depth over weir in (m): 0.5622\n", + "fluid depth over weir in if SI units uesd in (m): 0.7196\n", + "base angle of the notch of weir (degrees) 91.2010\n" + ] + } + ], + "prompt_number": 6 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 5.6 pageno : 93" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "alternative depth \n", + "maximum volumetric flow\n", + "Froude no.\n", + "% of kinetic energy in initial system\n", + "% of kinetic energy in final system \n", + "'''\n", + "\n", + "import math \n", + "from numpy import poly1d\n", + "#from scipy.optimize import root\n", + "from numpy import *\n", + "# Initialization of Variable\n", + "\n", + "Q = 0.675\n", + "B = 1.65\n", + "D = 19.5/100\n", + "g = 9.81\n", + "\n", + "#caculation\n", + "u = Q/B/D\n", + "u = round(u*1000.)/1000.\n", + "E = D+u**2./2./g\n", + "y = poly1d([1,-E, 0, 8.53/1000],False)\n", + "#y = poly1d([8.53/1000, 0, -E, 1],False)\n", + "x = roots(y)\n", + "print \"alternative depth in (m) %.4f\"%x[0]\n", + "print \"It is shooting flow\"\n", + "Dc = 2./3*E\n", + "Qmax = B*(g*Dc**3)**0.5\n", + "print \"maximum volumetric flow (m**3/s) %.4f\"%Qmax\n", + "Fr = u/math.sqrt(g*D)\n", + "print \"Froude no. %.4f\"%Fr\n", + "a = (E-D)/E\n", + "print \"%% of kinetic energy in initial system %.4f\"%(a*100)\n", + "b = (E-x[0])/E\n", + "print \"%% of kinetic energy in final system %.4f\"%(b*100)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "alternative depth in (m) 0.3495\n", + "It is shooting flow\n", + "maximum volumetric flow (m**3/s) 0.7639\n", + "Froude no. 1.5169\n", + "% of kinetic energy in initial system 53.4987\n", + "% of kinetic energy in final system 16.6510\n" + ] + } + ], + "prompt_number": 7 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 5.7 page no : 96" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "alternate depths \n", + "slode when depth is 12.9cm\n", + "slode when depth is 45.1cm \n", + "'''\n", + "\n", + "import math \n", + "from numpy import *\n", + "\n", + "# Initialization of Variable\n", + "\n", + "G = 338. #mass flow rate\n", + "rho = 998.\n", + "q = G/rho\n", + "E = 0.48\n", + "n = 0.015\n", + "g = 9.81\n", + "B = 0.4\n", + "y = poly1d([1, -E, 0 ,5.85/1000 ],False)\n", + "x = roots(y)\n", + "print \"alternate depths (m): %.4f %.4f\"%(x[0],x[1])\n", + "s = (G*n/rho/x[1]/(B*x[1]/(B+2*x[1]))**(2./3))**2\n", + "print \"slode when depth is 12.9cm %.4f\"%s\n", + "s = (G*n/rho/x[0]/(B*x[0]/(B+2*x[0]))**(2./3))**2\n", + "print \"slode when depth is 45.1cm %.4f\"%s\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "alternate depths (m): 0.4513 0.1291\n", + "slode when depth is 12.9cm 0.0461\n", + "slode when depth is 45.1cm 0.0018\n" + ] + } + ], + "prompt_number": 8 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 5.8 page no : 97" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "critical depth\n", + "critical velocity\n", + "Critical volumetric flow\n", + "'''\n", + "\n", + "import math \n", + "from numpy import *\n", + "\n", + "# Initialization of Variable\n", + "\n", + "pi = 3.14\n", + "theta = pi/3.\n", + "h = 1./math.tan(theta)\n", + "B = 0.845\n", + "E = 0.375\n", + "g = 9.81\n", + "\n", + "#calculation\n", + "#part1\n", + "\n", + "#deducing a polynomial(quadratic) in Dc \n", + "a = 5.*h\n", + "b = 3.*B-4*h*E\n", + "c = -2.*E*B\n", + "y = poly1d([a ,b ,c],False)\n", + "x = roots(y)\n", + "\n", + "print \"critical depth in (m): %.4f\"%x[1]\n", + "\n", + "#part2\n", + "Ac = x[1]*(B+x[1]*math.tan(theta/2))\n", + "Btc = B+x[1]*math.tan(theta/2.)*2\n", + "Dcbar = Ac/Btc\n", + "uc = math.sqrt(g*Dcbar)\n", + "print \"critical velocity (m/s): %.4f\"%uc\n", + "\n", + "#part3\n", + "Qc = Ac*uc\n", + "print \"Critical volumetric flow (m**3/s): %.4f\"%Qc\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "critical depth in (m): 0.2615\n", + "critical velocity (m/s): 1.4925\n", + "Critical volumetric flow (m**3/s): 0.3887\n" + ] + } + ], + "prompt_number": 9 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 5.9 page no : 99" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "volumetric flow rate over flat topped weir over rectangular section in non uniform width\n", + "volumetric flow rate over flat topped weir over rectangular section in uniform width\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "\n", + "B2 = 1.60 #breadth at 2\n", + "D2 = (1-0.047)*1.27 #depth at 2\n", + "g = 9.81\n", + "B1 = 2.95 #breadth at 1\n", + "D1 = 1.27 #depth at 1\n", + "Z = 0.\n", + "\n", + "#calculation\n", + "Q = B2*D2*(2*g*(D1-D2-Z)/(1-(B2*D2/B1/D1)**2))**0.5\n", + "print \"volumetric flow rate over flat topped weir over rectangular\\\n", + "section in non uniform width(m**3/s) : %.4f\"%Q\n", + "\n", + "#next part\n", + "B2 = 12.8\n", + "D1 = 2.58\n", + "Z = 1.25\n", + "Q = 1.705*B2*(D1-Z)**1.5\n", + "print \"volumetric flow rate over flat topped weir over rectangular section in uniform width (m**3/s): %.4f\"%Q\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "volumetric flow rate over flat topped weir over rectangularsection in non uniform width(m**3/s) : 2.4480\n", + "volumetric flow rate over flat topped weir over rectangular section in uniform width (m**3/s): 33.4743\n" + ] + } + ], + "prompt_number": 10 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 5.10 page no : 102" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "Normal depth \n", + "Critical depth \n", + "distance in (m) from upstream to that place\n", + "'''\n", + "\n", + "from numpy import linspace\n", + "from scipy.optimize import fsolve \n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "pi = 3.14\n", + "n = 0.022\n", + "B = 5.75\n", + "s = 0.15*pi/180\n", + "Q = 16.8\n", + "g = 9.81\n", + "\n", + "def normal(x):\n", + " y = Q-B*x/n*(B*x/(B+2*x))**(2./3)*s**0.5\n", + "\n", + "x = fsolve(normal,1.33)\n", + "print \"Normal depth in (m) : %.4f\"%x[0]\n", + "Dc = (Q**2/g/B**2)**(1./3)\n", + "print \"Critical depth in (m): %.4f\"%Dc\n", + "delD = .1\n", + "D = [1.55,1.65,1.75,1.85,1.95,2.05,2.15,2.25,2.35]\n", + "su = 0\n", + "for i in range(9):\n", + " delL = delD/s*(1-(Dc/D[i])**3.)/(1.-(x/D[i])**3.33)\n", + " su = su+delL\n", + "\n", + "print \"distance in (m) from upstream to that place: %.4f\"%su\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Normal depth in (m) : 1.3300\n", + "Critical depth in (m): 0.9547\n", + "distance in (m) from upstream to that place: 456.5757\n" + ] + }, + { + "output_type": "stream", + "stream": "stderr", + "text": [ + "/usr/lib/python2.7/dist-packages/scipy/optimize/minpack.py:227: RuntimeWarning: The iteration is not making good progress, as measured by the \n", + " improvement from the last ten iterations.\n", + " warnings.warn(msg, RuntimeWarning)\n" + ] + } + ], + "prompt_number": 11 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 5.11 page no : 105" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "critical depth \n", + "normal depth upstream\n", + "normal depth downstream \n", + "conjugate depth for upstream \n", + "conjugate depth for downstream \n", + "distance in (m) of occurence of jump by accurate method\n", + "distance in (m) of occurence of jump by not so accurate method\n", + "power loss in hydraulic jump per unit width\n", + "'''\n", + "\n", + "import math \n", + "from numpy import linspace\n", + "\n", + "# Initialization of Variable\n", + "\n", + "g = 9.81\n", + "q = 1.49\n", + "pi = 3.14\n", + "\n", + "#calculation\n", + "\n", + "#part1\n", + "Dc = (q**2/g)**.333\n", + "print \"critical depth in (m): %.4f\"%Dc\n", + "\n", + "#part2\n", + "n = 0.021\n", + "su = 1.85*pi/180 #slope upstream\n", + "sd = 0.035*pi/180 #slope downstream\n", + "Dnu = (n*q/math.sqrt(su))**(3./5)\n", + "Dnu = round(Dnu*1000)/1000.\n", + "print \"normal depth upstream in (m): %.4f\"%Dnu\n", + "Dnd = (n*q/math.sqrt(sd))**(3./5)\n", + "print \"normal depth downstream in (m): %.4f\"%Dnd\n", + "\n", + "#part3\n", + "D2u = -0.5*Dnu*(1-math.sqrt(1+8*q**2/g/Dnu**3))\n", + "D2u = round(D2u*1000)/1000.\n", + "print \"conjugate depth for upstream in (m): %.4f\"%D2u\n", + "D1d = -0.5*Dnd*(1-math.sqrt(1+8*q**2/g/Dnd**3))\n", + "print \"conjugate depth for downstream in (m): %.4f\"%D1d\n", + "\n", + "#part4\n", + "#accurate method\n", + "delD = .022\n", + "D = linspace(0.987,.022,9)\n", + "\n", + "dis = 0.\n", + "for i in range(8):\n", + " delL = delD/su*(1-(Dc/D[i])**3)/(1-(Dnu/D[i])**3.33)\n", + " dis = dis+delL\n", + "\n", + "print \"distance in (m) of occurence of jump by accurate method: %.4f\"%dis\n", + "\n", + "#not so accurate one\n", + "E1 = D2u+q**2./2./g/D2u**2\n", + "E2 = Dnd+q**2./2./g/Dnd**2\n", + "E2 = round(E2*1000)/1000.\n", + "E1 = round(E1*1000)/1000.\n", + "ahm = (D2u+Dnd)/2 #av. hyd.raulic mean\n", + "afv = .5*(q/D2u+q/Dnd) #av. fluid velocity\n", + "i = (afv*0.021/ahm**(2./3))**2\n", + "l = (E2-E1)/(su-i+0.0002)\n", + "print \"distance in (m) of occurence of jump by not so accurate method: %.4f\"%l\n", + "\n", + "#part5\n", + "rho = 998.\n", + "Eu = Dnu++q**2./2./g/Dnu**2\n", + "Eu = round(Eu*1000)/1000.\n", + "P = rho*g*q*(Eu-E1)\n", + "print \"power loss in hydraulic jump per unit width in (kW): %.4f\"%(P/1000)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "critical depth in (m): 0.6097\n", + "normal depth upstream in (m): 0.3500\n", + "normal depth downstream in (m): 1.1522\n", + "conjugate depth for upstream in (m): 0.9760\n", + "conjugate depth for downstream in (m): 0.2752\n", + "distance in (m) of occurence of jump by accurate method: 0.6270\n", + "distance in (m) of occurence of jump by not so accurate method: 4.4844\n", + "power loss in hydraulic jump per unit width in (kW): 2.6112\n" + ] + } + ], + "prompt_number": 13 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file diff --git a/Problems_In_Fluid_Flow/ch6.ipynb b/Problems_In_Fluid_Flow/ch6.ipynb new file mode 100644 index 00000000..d95ae4fb --- /dev/null +++ b/Problems_In_Fluid_Flow/ch6.ipynb @@ -0,0 +1,501 @@ +{ + "metadata": { + "name": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 6 : pumping of liquids\n" + ] + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 6.1 page no : 115" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "Max. height of toluene supported by atm. pressure\n", + "reynolds no \n", + "the maximum height above toulene \n", + "Maximum delivery rate \n", + "minimum smooth diameter of suction pipe\n", + "'''\n", + "\n", + "import math \n", + "from numpy import *\n", + "\n", + "# Initialization of Variable\n", + "atp = 100.2*1000.\n", + "g = 9.81\n", + "rho_w = 996.\n", + "rho_toluene = 867.\n", + "vap_pre_toluene = 4.535*1000\n", + "viscosity_toluene = 5.26/10000\n", + "\n", + "#calculation\n", + "m = (atp-vap_pre_toluene)/rho_toluene/g\n", + "print \"Max. height of toluene supported by atm. pressure (in m): %.4f\"%m\n", + "\n", + "#part(1)\n", + "hopw = 0.650 #head of pump in terms of water\n", + "hopt = hopw*rho_w/rho_toluene #head of pump in terms of toluene\n", + "Q = 1.8*10**-3 #flow in m**3/s\n", + "d = 2.3*10**-2 #diameter of pipe\n", + "pi = 3.14127\n", + "\n", + "#u = 4*Q/pi/d**2\n", + "#substituting this for reynolds no.\n", + "Re = 4*Q*rho_toluene/pi/d/viscosity_toluene #reynolds no.\n", + "print \"reynolds no : %.4f\"%Re\n", + "phi = 0.0396*Re**-0.25\n", + "\n", + "\n", + "#since both LHS and RHS are function of x(max. ht. ab. toluene) \n", + "#we define a new variable to solve the eqn\n", + "#y = (atp/rho_toluene/g)-(vap_pre_toluene/rho_toluene/g)-(4*phi*16*Q**2*x/pi**2/d**5/g)-hopt\n", + "#y = x \n", + "#these are two equations\n", + "\n", + "b = array([0,((atp/rho_toluene/g)-(vap_pre_toluene/rho_toluene/g)-hopt)])\n", + "A = array([[1, -1],[1, 4*phi*16*Q**2/pi**2/d**5/g]])\n", + "x = linalg.solve(A ,b)\n", + "print \"the maximum height above toulene in the tank the pump can be \\\n", + "located without risk while flow rate is 1.80dm**3/s (in m): %.4f\"%x[0]\n", + "\n", + "#solution of part(2)\n", + "l = 9. #length \n", + "u = math.sqrt(((atp/rho_toluene/g)-(vap_pre_toluene/rho_toluene/g)-hopt-l)*d*g/4/phi/l) #fluid velocity in pipes\n", + "Q = pi*d**2*u/4\n", + "print \"Maximum delivery rate if pump is located 9m above toluene tank(in m**3/s) %.4f\"%Q\n", + "\n", + "#solution of part(3)\n", + "#clubing d together we get\n", + "Q = 1.8/1000.\n", + "a = (atp/rho_toluene/g)-(vap_pre_toluene/rho_toluene/g)-hopt-l\n", + "b = a*pi**2*g/4./9./16./Q**2/0.0396/(4*Q*rho_toluene/pi/viscosity_toluene)**-0.25\n", + "d = (1./b)**(1./4.75)\n", + "print \"minimum smooth diameter of suction pipe which will have flow \\\n", + "rate as (1.8 dm**3/s) for pump kept at 9 m high (in m):\",d\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Max. height of toluene supported by atm. pressure (in m): 11.2477\n", + "reynolds no : 164260.3512\n", + "the maximum height above toulene in the tank the pump can be located without risk while flow rate is 1.80dm**3/s (in m): 6.3463\n", + "Maximum delivery rate if pump is located 9m above toluene tank(in m**3/s) 0.0009\n", + "minimum smooth diameter of suction pipe which will have flow rate as (1.8 dm**3/s) for pump kept at 9 m high (in m): 0.0306728431855\n" + ] + } + ], + "prompt_number": 2 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 6.2 pageno : 118" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "frequency of motor\n", + "diametr of impeller\n", + "'''\n", + "\n", + "import math \n", + "# Initialization of Variable\n", + "Q1 = 24.8/1000 #flow in pump 1\n", + "d1 = 11.8/100 #diameter of impeller 1\n", + "H1 = 14.7 #head of pump 1\n", + "N1 = 1450. #frequency of motor 1\n", + "Q2 = 48/1000. #flow in pump 2\n", + "\n", + "#calculation\n", + "H2 = 1.15*H1 #head of pump 2\n", + "specific_speed = N1*Q1**0.5/H1**0.75\n", + "N2 = specific_speed*H2**0.75/Q2**0.5 #frequency of motor 2\n", + "print \"frequency of motor 2 in rpm %.4f\"%N2 \n", + "d2 = math.sqrt(N2**2*H1/H2/N1**2/d1**2)\n", + "print \"diametr of impeller 2 (in m) %.4f\"%(1/d2 )\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "frequency of motor 2 in rpm 1157.4350\n", + "diametr of impeller 2 (in m) 0.1585\n" + ] + } + ], + "prompt_number": 4 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 6.3 page no : 120" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find Power required to pump fluid \n", + "\n", + "from matplotlib.pyplot import *\n", + "import math \n", + "%pylab inline\n", + "\n", + "# Initialization of Variable\n", + "Q = [0, 0.01, 0.02, 0.03 ,0.04, 0.05] #discharge\n", + "effi_hyd = [65.4 ,71, 71.9, 67.7, 57.5, 39.2]\n", + "effi_over = [0 ,36.1, 56.0, 61.0, 54.1, 37.0]\n", + "H_sys = [0 ,0, 0, 0, 0, 0]\n", + "d = 0.114 #diameter of pipe\n", + "d_o = 0.096 #diameter of impeller\n", + "h = 8.75 #elevation\n", + "g = 9.81 #acc. of gravity\n", + "rho = 999. #denisity of water\n", + "l = 60. #length of pipe\n", + "theta = 0.611 #angle in radians\n", + "B = 0.0125 #width of blades\n", + "pi = 3.1412\n", + "mu = 1.109/1000 #viscosity of water\n", + "omega = 2*pi*1750/60.\n", + "H_theor = []\n", + "# calculation\n", + "for i in range(6):\n", + " if i == 0:\n", + " H_sys[i] = h\n", + " else:\n", + " H_sys[i] = h+8.*Q[i]**2./pi**2/d**4/g*(1+8*l*0.0396/d*(4*rho*Q[i]/pi/d/mu)**-0.25)\n", + " H_theor.append(omega**2*d_o**2/g-omega*Q[i]/2/pi/g/B/math.tan(theta))\n", + "\n", + "#H_theor = omega**2*d_o**2/g-omega*Q/2/pi/g/B/math.tan(theta)\n", + "#print (H_sys\"head of system (in m)\")\n", + "#print (H_theor)\n", + "H_eff = [0,0,0,0,0,0]\n", + "for i in range(6):\n", + " H_eff[i] = effi_hyd[i]*H_theor[i]/100.\n", + "\n", + "#print (H_eff)\n", + "plot(Q,effi_hyd, 'r--d')\n", + "plot(Q,effi_over, 'g')\n", + "plot(Q,H_eff,'k')\n", + "plot(Q,H_theor)\n", + "plot(Q,H_sys ,'c-')\n", + "title('system characteritics')\n", + "ylabel('Head(m)or Efficiency(%)')\n", + "xlabel('volumetric flow rate(m**3/s)')\n", + "show()\n", + "\n", + "#calculation of power\n", + "#at intersecting point using datatrip b/w H_sys &H_eff\n", + "Q = 0.0336\n", + "effi_over = 59.9\n", + "H_eff = 13.10\n", + "P = H_eff*rho*g*Q/effi_over/10\n", + "print \"Power required to pump fluid at this rate(in KW): %.4f\"%P \n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Populating the interactive namespace from numpy and matplotlib\n" + ] + }, + { + "output_type": "stream", + "stream": "stderr", + "text": [ + "WARNING: pylab import has clobbered these variables: ['draw_if_interactive', 'pi', 'new_figure_manager']\n", + "`%pylab --no-import-all` prevents importing * from pylab and numpy\n" + ] + }, + { + "metadata": {}, + "output_type": "display_data", + "png": "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\n", + "text": [ + "<matplotlib.figure.Figure at 0x258a6d0>" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Power required to pump fluid at this rate(in KW): 7.2014\n" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 6.4 pageno : 123" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find the flow rate at which H_sys takes over HeffA\n", + "\n", + "import math \n", + "from matplotlib.pyplot import *\n", + "\n", + "# Initialization of Variable\n", + "#each is increased by five units to make each compatible for graph plotting\n", + "Q = [0, 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1] #flow rate\n", + "HeffA = [20.63 ,19.99, 17.80, 14.46, 10.33, 5.71, 0, 0, 0, 0, 0 ] #Heff of pump A\n", + "HeffB = [18 ,17, 14.95, 11.90, 8.10, 3.90, 0, 0, 0, 0, 0] #Heff of pump B\n", + "alpha = 1.\n", + "h = 10.4\n", + "d = 0.14\n", + "l = 98.\n", + "pi = 3.1412\n", + "g = 9.81\n", + "rho = 999.\n", + "mu = 0.001109\n", + "H_sys = [0,0,0,0,0,0,0,0,0,0,0]\n", + "for i in range(11):\n", + " if i == 0:\n", + " H_sys[i] = h\n", + " else:\n", + " H_sys[i] = h+8*Q[i]**2/pi**2/d**4/g*(1+8*l*0.0396/d*(4*rho*Q[i]/pi/d/mu)**-0.25)\n", + "\n", + "#H_sys is head of the system\n", + "print \"the head of system in terms of height of water : \",H_sys\n", + "plot(Q,H_sys,'r--d')\n", + "plot(Q,HeffA ,'-c')\n", + "plot(Q,HeffB)\n", + "show()\n", + "\n", + "#at intersecting point using datatrip b/w H_sys &H_effA\n", + "print \"the flow rate at which H_sys takes over HeffA \",0.03339\n", + "\n", + "\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "the head of system in terms of height of water : [10.4, 10.703503558535079, 11.434551925145852, 12.522017190713953, 13.934570851357016, 15.652293146483034, 17.66081196342499, 19.949010875049055, 22.507899154909985, 25.329974605787854, 28.4088306047139]\n" + ] + }, + { + "metadata": {}, + "output_type": "display_data", + "png": "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\neXPCw8MB8PDwoGPHjly4cMHqbaiMKe0DOHfuHFu2bGHs2LE2N0FuSttyc3PZuXMno0ePBtThRk9P\nT6u3oTKmtK9hw4a4urqSn59PcXEx+fn5tGrVSotmVMiY9nl5edGtWzdc76j54yi5paL2VTe3VDux\n32sN+/nz54265sKFC1Xeq7Watu/cuXPlrklLSyMxMZHu3btbNuBqMuX7B/Daa6+xcOFCnJxsrzCo\nKd+71NRUvLy8GDVqFF26dGHcuHHk5+dbLXZjmPK9a9KkCVOmTKF169a0bNmSRo0a8dhjj1ktdmMY\n0z5L3Gst5orRmNxS7f87jV2bbmu9OWPVtH1l78vLy+OZZ57hvffew8PDw6zxmaqm7VMUhW+++QZv\nb28iIiJs8vtryveuuLiY/fv389JLL7F//37q16/P/Pm2tVbalP/3Tp06xd///nfS0tK4cOECeXl5\nfPbZZ+YO0SSm7Huxhz0z5ojR2NxS7cRuzBr2O685d+4cvr6+Rt2rtZq27/avtUVFRQwZMoQ//elP\nREVFWSfoajClfT/99BObNm0iICCA4cOHs337dqKjo60We1VMaZuvry++vr7cf//9ADzzzDPs37/f\nOoEbyZT2/frrrzz00EM0bdoUFxcXnn76aX766SerxW4MU/KDo+SWylQrt1R3AqCoqEhp06aNkpqa\nquj1+ioncHbv3l06gWPMvVozpX0lJSXK888/r7z66qtWj9tYprSvrISEBKV///5WidlYpratR48e\nSkpKiqIoihITE6NMmzbNesEbwZT2JSYmKiEhIUp+fr5SUlKiREdHKx988IHV21CZ6uSHmJiYcpOL\njpJbbruzfdXNLdVO7IqiKFu2bFECAwOVtm3bKvPmzVMURVGWL1+uLF++vPSaCRMmKG3btlU6d+6s\n7Nu3r9J7bU1N27dz505Fp9MpYWFhSnh4uBIeHq58++23mrShMqZ8/25LSEiwuVUximJa25KSkpRu\n3bopnTt3VgYPHmxzq2IUxbT2LViwQAkODlZCQ0OV6Oho5ebNm1aPvypVtS8jI0Px9fVVGjZsqDRq\n1Ejx8/NTrl+/XuG9tqam7atubrHYQRtCCCG0YXtLG4QQQphEErsQQjgYSexCCOFgJLELIYSDkcQu\nhBAORhK7EEI4mP8HHfNwDjcyutAAAAAASUVORK5CYII=\n", + "text": [ + "<matplotlib.figure.Figure at 0x3203e10>" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "the flow rate at which H_sys takes over HeffA 0.03339\n" + ] + } + ], + "prompt_number": 7 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 6.5 pageno : 126" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "time t when the acceleration will be maximum\n", + "Maximum frequency of oscillation\n", + "'''\n", + "\n", + "import math\n", + "from numpy import *\n", + "\n", + "# Initialization of Variable\n", + "rho = 1000.\n", + "dc = .15\n", + "l = 7.8\n", + "g = 9.81\n", + "pi = 3.1428\n", + "atp = 105.4*1000\n", + "vap_pre = 10.85*1000\n", + "sl = .22\n", + "dp = 0.045\n", + "h = 4.6\n", + "\n", + "#(\"x(t) = sl/2*cos(2*pi*N*t)\" \"the function of print lcement\")\n", + "#\"since we have to maximize the acceleration double derivate the terms\")\n", + "#since double derivation have the term cos(kt) \n", + "#finding it maxima\n", + "t = linspace(0,5,100)\n", + "k = 1.\n", + "\n", + "def maximacheckerforcosine():\n", + " h = 0.00001\n", + " a = 0.00\n", + " for i in range(1,401): \n", + " if (math.cos(a+h)-math.cos(a-h))/2*h == 0 and math.cos(i-1)>0:\n", + " break\n", + " else:\n", + " a = 0.01+a\n", + " m = i-1\n", + " v = math.cos(i-1)\n", + " return m,v\n", + "\n", + "a, b = maximacheckerforcosine()\n", + "\n", + "print \"time t when the acceleration will be maximum(s)\",a\n", + "\n", + "#double derivative will result in a square of value of N\n", + "#lets consider its coefficient all will be devoid of N**2 \n", + "k = sl/2*(2*pi)**2 #accn max of piston\n", + "kp = k*1./4*pi*dc**2/1.*4/pi/dp**2 #accn coeff. ofsuction pipe\n", + "f = 1./4*pi*dp**2*l*rho*kp #force exerted by piston\n", + "p = f/1.*4./pi/dp**2 #pressure exerted by piston\n", + "\n", + "#calculation\n", + "o = atp-h*rho*g-vap_pre\n", + "#constant term of quadratic eqn\n", + "y = poly1d([-p, 0,o],False)\n", + "a = roots(y)\n", + "print \"Maximum frequency of oscillation if cavitation o be avoided(in Hz) %.4f\"%abs(a[0])\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "time t when the acceleration will be maximum(s) 0\n", + "Maximum frequency of oscillation if cavitation o be avoided(in Hz) 0.3622\n" + ] + } + ], + "prompt_number": 8 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 6.6 pageno : 128" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "mass of air required to lift the sulphuric acid tank\n", + "work done is magnitude of value in kg\n", + "The mass of air required \n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rhos = 1830. #density of acid\n", + "atp = 104.2*1000 #atmospheric pressure\n", + "temp = 11.+273 #temp in kelvin\n", + "M = 28.8/1000 #molar mass of air\n", + "R = 8.314 #universal gas constant\n", + "g = 9.81 #acceleration of gravity\n", + "pi = 3.14\n", + "d = 2.45 #diameter of tank\n", + "l = 10.5 #length of tank\n", + "h_s = 1.65 #height of surface of acid from below\n", + "effi = 0.93 #efficiency\n", + "\n", + "#calculation\n", + "mliq = pi*d**2*l*rhos/4\n", + "h_atm = atp/rhos/g #height conversion of atp\n", + "h_r = 4.3-1.65 #height difference\n", + "mair = g*h_r*mliq*M/(effi*R*temp*math.log(h_atm/(h_atm+h_s))) #mass of air\n", + "print \"mass of air required to lift the sulphuric acid tank %.4f\"%mair\n", + "print \"The negative sign indicates air is expanding & work done is magnitude of value in kg:\"\n", + "m = abs(mair/mliq)\n", + "print \"The mass of air required for per kilo of acid transferred: %.4f\"%m\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "mass of air required to lift the sulphuric acid tank -123.3851\n", + "The negative sign indicates air is expanding & work done is magnitude of value in kg:\n", + "The mass of air required for per kilo of acid transferred: 0.0014\n" + ] + } + ], + "prompt_number": 9 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file diff --git a/Problems_In_Fluid_Flow/ch7.ipynb b/Problems_In_Fluid_Flow/ch7.ipynb new file mode 100644 index 00000000..2c61cecf --- /dev/null +++ b/Problems_In_Fluid_Flow/ch7.ipynb @@ -0,0 +1,203 @@ +{ + "metadata": { + "name": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 7 : Flow Through Packed Beds\n" + ] + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "\n", + "example 7.1 page no : 136" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "average particle diameter\n", + "surface area per gram of cement\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "mu = 1.83/1000\n", + "rhom = 1.355*10000 #density mercury\n", + "K = 5.\n", + "g = 9.81\n", + "d = 2.5/100\n", + "pi = 3.14\n", + "thik = 2.73/100\n", + "rho = 3100. #density of particles\n", + "Q = 250./(12.*60+54)/10.**6\n", + "\n", + "#calculation\n", + "A = pi*d**2./4.\n", + "Vb = A*thik #volume of bed\n", + "Vp = 25.4/rho/1000 #volume of particles\n", + "e = 1-Vp/Vb\n", + "u = Q/A\n", + "delP = 12.5/100*rhom*g\n", + "S = math.sqrt(e**3*delP/K/u/thik/mu/(1-e)**2)\n", + "S = round(S/1000)*1000.\n", + "d = 6./S\n", + "print \"average particle diameter in (x10**-6m) %.4f\"%(d*10**6)\n", + "A = pi*d**2./1000/(4./3*pi*d**3/8*rho)\n", + "print \"surface area per gram of cement (cm**2): %.4f\"%(A*10**4)\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "average particle diameter in (x10**-6m) 47.6190\n", + "surface area per gram of cement (cm**2): 406.4516\n" + ] + } + ], + "prompt_number": 1 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 7.2 page no : 138" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find initial volumetric flow rate\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "mu = 2.5/1000\n", + "rho = 897.\n", + "g = 9.81\n", + "pi = 3.1414\n", + "K = 5.1\n", + "l = 6.35/1000\n", + "d = l\n", + "hei = 24.5+0.65\n", + "len = 24.5\n", + "dc = 2.65 #dia of column\n", + "thik = 0.76/1000\n", + "Vs = pi*d**2/4*l-pi*l/4*(d-2*thik)**2 #volume of each ring\n", + "n = 3.023*10**6\n", + "e = 1-Vs*n\n", + "e = round(e*1000)/1000.\n", + "Surfacearea = pi*d*l+2*pi*d**2/4+pi*(d-2*thik)*l-2*pi*(d-2*thik)**2/4\n", + "S = Surfacearea/Vs\n", + "S = round(S)\n", + "delP = hei*g*rho\n", + "delP = round(delP/100.)*100.\n", + "u = e**3*delP/K/S**2/mu/(1-e)**2/len\n", + "Q = pi*dc**2/4*u\n", + "print \"initial volumetric flow rate in (m**3/s): %.4f\"%Q\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "initial volumetric flow rate in (m**3/s): 2.8271\n" + ] + } + ], + "prompt_number": 2 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 7.3 page no : 140" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find pressure drop in terms of (cm of H20)\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "dr = 2. #dia of column\n", + "mu = 2.02/10**5\n", + "rho = 998.\n", + "K = 5.1\n", + "g = 9.81\n", + "Q = 10000./3600\n", + "l = 50.8/1000\n", + "d = l\n", + "n = 5790.\n", + "len = 18.\n", + "thik = 6.35/1000\n", + "pi = 3.1414\n", + "\n", + "#part1\n", + "#calculation\n", + "\n", + "CA = pi*dr**2./4 #cross sectional area\n", + "u = Q/CA\n", + "Vs = pi*d**2/4*l-pi*l/4*(d-2*thik)**2 #volume of each ring\n", + "e = 1-Vs*n\n", + "Surfacearea = pi*d*l+2*pi*d**2/4+pi*(d-2*thik)*l-2*pi*(d-2*thik)**2/4\n", + "S = Surfacearea/Vs\n", + "S = round(S*10)/10.\n", + "delP = K*S**2/e**3*mu*len*u*(1-e)**2\n", + "delh = delP/rho/g\n", + "print \"pressure drop in terms of (cm of H20) %.4f\"%(delh*100)\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "pressure drop in terms of (cm of H20) 0.3540\n" + ] + } + ], + "prompt_number": 3 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file diff --git a/Problems_In_Fluid_Flow/ch8.ipynb b/Problems_In_Fluid_Flow/ch8.ipynb new file mode 100644 index 00000000..97b6a74a --- /dev/null +++ b/Problems_In_Fluid_Flow/ch8.ipynb @@ -0,0 +1,467 @@ +{ + "metadata": { + "name": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 8 : Filtration" + ] + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 8.1 page no : 145" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "pressure drop at t = 30 min\n", + "the thickness of filtercake formed\n", + "thickness of cake required\n", + "average particle diameter\n", + "'''\n", + "\n", + "import math \n", + "from numpy import *\n", + "\n", + "# Initialization of Variable\n", + "\n", + "a = 78./1000 #dV/dt\n", + "rho = 998. #density of water\n", + "rhoc = 2230. #density of china clay\n", + "rhod = 1324. #density of cowdung cake\n", + "mu = 1.003/1000\n", + "P2 = 3.23*1000 #pressure after 2 min.\n", + "P5 = 6.53*1000 #pressure after 5 min.\n", + "t = 30*60.\n", + "b = array([[P2],[P5]])\n", + "A = array([[(a**2)*120., a],[(a**2)*300., a]])\n", + "x = linalg.solve(A, b)\n", + "P = x[0]*a**2*t+x[1]*a\n", + "print \"pressure drop at t = 30min in (kN/m**2):\",P/1000\n", + "\n", + "#part2\n", + "J = 0.0278 #mass fraction\n", + "l = 1.25\n", + "b1 = 0.7\n", + "A1 = l*b1*17*2 #area of filtering\n", + "V = a*30*60. #volume of filterate\n", + "e = 1-rhod/rhoc\n", + "nu = J*rho/((1-J)*(1-e)*rhoc-J*e*rho)\n", + "l1 = nu*V/A1\n", + "print \"the thickness of filtercake formed after 30 min in (m): %.4f\"%l1\n", + "\n", + "#part3\n", + "r = x[0][0]/mu/nu*A1**2\n", + "L = x[1][0]*A1/r/mu\n", + "print \"thickness of cake required in (m): %.4f\"%L\n", + "\n", + "#part 4\n", + "S = math.sqrt(r*e**3./5/(1-e)**2)\n", + "d = 6./S\n", + "print \"average particle diameter in(10**-6m): %.4f\"%(d*10**6)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "pressure drop at t = 30min in (kN/m**2): [ 34.03]\n", + "the thickness of filtercake formed after 30 min in (m): 0.1026\n", + "thickness of cake required in (m): 0.0032\n", + "average particle diameter in(10**-6m): 87.9625\n" + ] + } + ], + "prompt_number": 1 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 8.2 pageno :148" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "time at which the required pressure drop have taken place\n", + "volume of filterate \n", + "the time required to collect 750dm**3\n", + "time required to pass 10dm**3 volume \n", + "'''\n", + "\n", + "import math \n", + "from numpy import *\n", + "\n", + "\n", + "# Initialization of Variable\n", + "P1 = 5.34*1000 #pressure after 3 min.\n", + "P2 = 9.31*1000 #pressure after 8 min.\n", + "a = 240./1000000 #dV/dt\n", + "P3 = 15.*10**3 #final pressure\n", + "\n", + "#calculation\n", + "b = array([[P1],[P2]])\n", + "A = array([[a**2*180, a],[a**2*480, a]])\n", + "x = linalg.solve(A,b)\n", + "\n", + "#part1\n", + "t = (P3-x[1][0]*a)/x[0][0]/a**2\n", + "\n", + "print \"time at which the required pressure drop have taken place in (s): %.4f\"%t\n", + "\n", + "#part 2\n", + "V1 = a*t\n", + "print \"volume of filterate in (m**3): %.4f\"%V1\n", + "\n", + "#part 3\n", + "V2 = 0.75\n", + "t2 = t+x[0][0]/2/P3*(V2**2-V1**2)+x[1][0]/P3*(V2-V1)\n", + "print \"the time required to collect 750dm**3 of filterate in (s): %.4f\"%t2\n", + "\n", + "#part 4\n", + "P4 = 12.*10**3\n", + "a = P4/(x[0][0]*V2+x[1][0])\n", + "t = 10./1000/a\n", + "print \"time required to pass 10dm**3 volume in (s): %.4f\"%t\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "time at which the required pressure drop have taken place in (s): 909.9748\n", + "volume of filterate in (m**3): 0.2184\n", + "the time required to collect 750dm**3 of filterate in (s): 5289.2396\n", + "time required to pass 10dm**3 volume in (s): 153.8617\n" + ] + } + ], + "prompt_number": 15 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 8.3 pageno : 150" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find the thickness of filter \n", + "\n", + "import math \n", + "from numpy import *\n", + "\n", + "# Initialization of Variable\n", + "a = 16./1000 #dV/dt\n", + "J = 0.0876 #mass fraction\n", + "rho = 999. #density of water\n", + "rhoc = 3470. #density of slurry\n", + "mu = 1.12/1000\n", + "rhos = 1922. #density of dry filter cake\n", + "t1 = 3*60.\n", + "t2 = 8*60.\n", + "V1 = 33.8/1000 #volume at t1\n", + "V2 = 33.8/1000+23.25/1000 #volume at t2\n", + "P = 12*1000. #pressure difference\n", + "Ap = 70.**2./10000*2*9\n", + "As = 650/10000.\n", + "\n", + "#calculation\n", + "\n", + "b = array([t1,t2])\n", + "A = array([[V1**2/2/P, V1/P],[V2**2/2/P, V2/P]])\n", + "x = linalg.solve(A, b)\n", + "K1p = x[0]*As**2/Ap**2\n", + "K2p = x[1]*As/Ap\n", + "P2 = 15*1000. #final pressure drop\n", + "t = (P2-K2p*a)/K1p/a**2 #time for filterate\n", + "V = a*t #volume of filterate\n", + "e = 1-rhos/rhoc\n", + "nu = J*rho/((1-J)*(1-e)*rhoc-J*e*rho)\n", + "l = (11.-1)/200.\n", + "Vf = Ap*l/nu\n", + "tf = t+K1p/2/P2*(Vf**2-V**2)+K2p/P2*(Vf-V)\n", + "r = K1p/mu/nu*Ap**2\n", + "L = K2p*Ap/r/mu\n", + "print \"the thickness of filter which has resistance equal to resistance of filter medium in (m):%.5f\"%L\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "the thickness of filter which has resistance equal to resistance of filter medium in (m):0.00247\n" + ] + } + ], + "prompt_number": 8 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 8.4 page no : 154" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "Volume at P = 90kPa \n", + "Volume at p = 45kPa \n", + "'''\n", + "\n", + "import math \n", + "from numpy import *\n", + "\n", + "# Initialization of Variable\n", + "\n", + "t1 = 3*60. #time 3min\n", + "t2 = 12*60. #time 12min\n", + "t3 = 5*60. #time 5min\n", + "P = 45*1000. #pressure at t1&t2\n", + "P2 = 85*1000. #pres. at t3\n", + "a = 1.86 #area\n", + "mu = 1.29/1000.\n", + "c = 11.8\n", + "V1 = 5.21/1000 #volume at t1\n", + "V2 = 17.84/1000 #volume at t2\n", + "V3 = 10.57/1000 #volume at t3\n", + "\n", + "#calculation\n", + "b = array([t1,t2])\n", + "A = array([[mu*c/2/a**2/P*V1**2, V1/P],[mu*c/2/a**2/P*V2**2, V2/P]])\n", + "x = linalg.solve(A,b)\n", + "r45 = x[0]\n", + "r85 = (t3-x[1]*V3/P2)*2*a**2*P2/V3**2/mu/c\n", + "n = math.log(r45/r85)/math.log(45./85)\n", + "rbar = r45/(1-n)/(45.*1000)**n\n", + "r78 = rbar*(1-n)*(78.*1000)**n\n", + "\n", + "#part1\n", + "#polynomial in V as a1x**2+bx+c1 = 0\n", + "c1 = 90.*60 #time at 90 \n", + "Pt = 78*1000. #Pt = pressure at time t = 90\n", + "r78 = round(r78/10.**12)*10.**12\n", + "a1 = r78*mu/a**2/Pt*c/2.\n", + "b = x[1]/Pt\n", + "y = poly1d([a1,b,-c1],False)\n", + "V1 = roots(y)\n", + "print \"Volume at P = 90kPa in (m**3): %.4f\"%V1[1]\n", + "\n", + "#part2\n", + "Pt = 45.*1000\n", + "c1 = 90.*60\n", + "a1 = r45*mu/a**2/Pt*c/2\n", + "b = x[1]/Pt\n", + "y = poly1d([a1,b,-c1],False)\n", + "V1 = roots(y)\n", + "print \"Volume at p = 45kPa in (m**3): %.4f\"%V1[1]\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Volume at P = 90kPa in (m**3): 0.0660\n", + "Volume at p = 45kPa in (m**3): 0.0789\n" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 8.5 page no : 157" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "thickness of filter cake \n", + "rate at which wet cake will be scrapped\n", + "rate of which slurry is treated\n", + "'''\n", + "\n", + "from numpy import *\n", + "import math \n", + "\n", + "\n", + "# Initialization of Variable\n", + "t = 60*0.3/0.5 #time of 1 revollution\n", + "d = 34/1000000.\n", + "S = 6./d\n", + "e = 0.415\n", + "J = 0.154\n", + "P = 34.8*1000\n", + "mu = 1.17/1000\n", + "L = 2.35/1000\n", + "rho = 999. #density of water\n", + "rhos = 4430. #density of barium carbonate\n", + "\n", + "#calculation\n", + "#part1\n", + "nu = J*rho/((1-J)*(1-e)*rhos-J*e*rho)\n", + "r = 5*S**2*(1-e)**2/e**3\n", + "\n", + "#quadratic in l\n", + "#in the form of ax**2+bx+c = 0\n", + "c = -t\n", + "b = r*mu*L/nu/P\n", + "a = r*mu/2/nu/P\n", + "y = poly1d([a,b,c],False)\n", + "l = roots(y)\n", + "print \"thickness of filter cake in (m): %.4f\"%l[1]\n", + "\n", + "#part2\n", + "d = 1.2\n", + "l1 = 2.6\n", + "pi = 3.1428\n", + "u = pi*d*0.5/60\n", + "Q = u*l1*l[1]\n", + "mnet = Q*(1-e)*rhos+Q*e*rho\n", + "print \"rate at which wet cake will be scrapped in (kg/s): %.4f\"%mnet\n", + "\n", + "#part3\n", + "md = Q*(1-e)*rhos #rate at which solid scrapped from the drum\n", + "r = md/0.154\n", + "print \"rate of which slurry is treated is (kg/h): %.4f\"%(r*3600)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "thickness of filter cake in (m): 0.0122\n", + "rate at which wet cake will be scrapped in (kg/s): 3.0088\n", + "rate of which slurry is treated is (kg/h): 60635.4180\n" + ] + } + ], + "prompt_number": 7 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 8.6 page no : 159" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "time taken to collect sucrose crystal\n", + "volume of liquid separated\n", + "'''\n", + "\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "mu = 0.224\n", + "rho = 1328.\n", + "K = 5.\n", + "b = 3*.5 #radius\n", + "h = 2.5\n", + "pi = 3.1428\n", + "x = 2.1*.5\n", + "rhos = 1581. #density of sucrose\n", + "e = 0.435 #void ratio\n", + "J = 0.097 #mass fraction\n", + "m = 3500. #mass flowing\n", + "a = 85/10.**6 #side length\n", + "L = 48./1000 #thickness\n", + "omega = 2*pi*325./60.\n", + "\n", + "#calculation\n", + "bi = b**2-m/pi/h/(1-e)/rhos #inner radius\n", + "bi = math.sqrt(bi)\n", + "bi = round(bi*1000)/1000.\n", + "nu = J*rho/((1-J)*(1-e)*rhos-J*e*rho)\n", + "S = 6./a\n", + "r = 5*S**2*(1-e)**2/e**3\n", + "t = ((b**2-bi**2)*(1+2*L/b)+2*bi**2*math.log(bi/b))/(2*nu*rho*omega**2/r/mu*(b**2-x**2))\n", + "print \"time taken to collect sucrose crystal in (s): %.4f\"%t\n", + "\n", + "#part2\n", + "vl = pi*(b**2-bi**2)*h*e\n", + "vs = pi*(b**2-bi**2)*h/nu-vl\n", + "print \"volume of liquid separated as filterate i (m**3): %.4f\"%vs\n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "time taken to collect sucrose crystal in (s): 3287.3308\n", + "volume of liquid separated as filterate i (m**3): 21.1677\n" + ] + } + ], + "prompt_number": 8 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file diff --git a/Problems_In_Fluid_Flow/ch9.ipynb b/Problems_In_Fluid_Flow/ch9.ipynb new file mode 100644 index 00000000..9644490f --- /dev/null +++ b/Problems_In_Fluid_Flow/ch9.ipynb @@ -0,0 +1,370 @@ +{ + "metadata": { + "name": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 9 : Forces on bodies immersed in fluids" + ] + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 9.1 pageno : 166" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "The drag force on sphere\n", + "The drag force on cube\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rho = 1.2\n", + "mu = 1.85/100000\n", + "pi = 3.1428\n", + "d = 3.\n", + "v = 50.*1000/3600\n", + "\n", + "#calculation part 1\n", + "Re = d*rho*v/mu\n", + "\n", + "#from chart of drag coeff. vs Re\n", + "Cd = 0.2 #coeff. of drag\n", + "Ad = pi*d**2/4. #projected area\n", + "Fd = Ad*Cd*rho*v**2/2.\n", + "print \"The drag force on sphere in N\",Fd \n", + "\n", + "#part 2\n", + "v = 2.\n", + "l = 0.25\n", + "Re = l*v*rho/mu\n", + "zi = 4*pi*(l**3*3./4/pi)**(2/3.)/6./l**2 #sphericity\n", + "\n", + "#using graph\n", + "Cd = 2.\n", + "Ad = l**2\n", + "Fd = Ad*Cd*rho*v**2/2.\n", + "print \"The drag force on cube in N\",Fd \n", + "\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The drag force on sphere in N 163.6875\n", + "The drag force on cube in N 0.3\n" + ] + } + ], + "prompt_number": 1 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 9.2 page no : 168" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "Drag force in N\n", + "The drag coefficient\n", + "The lift force\n", + "The coefficient of lift\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rho = 1.2\n", + "mu = 1.85/100000\n", + "pi = 3.1428\n", + "g = 9.81\n", + "d = 1.38\n", + "t = 0.1 #thickness\n", + "v = 30*1000/3600.\n", + "T = 26.2 #Tension\n", + "m = 0.51 #mass\n", + "theta = 60.*pi/180.\n", + "\n", + "#calculation\n", + "Fd = T*math.cos(theta)\n", + "print \"Drag force in N: %.4f\"% Fd\n", + "A = pi*d**2/4.\n", + "Ad = A*math.cos(theta) #area component to drag\n", + "Cd = 2*Fd/Ad/rho/v**2 #coeff of drag\n", + "print \"The drag coefficient: %.4f\"% Cd \n", + "Fg = m*g #force of gravity\n", + "Fb = rho*pi*d**2/4.*t*g #buoyant force\n", + "Fl = Fg-Fb+T*math.sin(theta)\n", + "print \"The lift force in N : %.4f\"%Fl\n", + "Al = A*math.sin(theta)\n", + "Cl = 2*Fl/Al/rho/v**2\n", + "print \"The coefficient of lift: %.4f\"%Cl \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Drag force in N: 13.0909\n", + "The drag coefficient: 0.4202\n", + "The lift force in N : 25.9368\n", + "The coefficient of lift: 0.4803\n" + ] + } + ], + "prompt_number": 2 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 9.3 page no : 171" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find Diameter of sphere\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rhog = 1200. #density of glycerol\n", + "mu = 1.45\n", + "pi = 3.1428\n", + "g = 9.81\n", + "rhos = 2280. #density of sphere\n", + "v = 0.04 #terminal velocity\n", + "a = 2*mu*g*(rhos-rhog)/v**3./3./rhog**2 #a = Cd/2/Re\n", + "\n", + "#using graph of Cd/2/Re vs Re\n", + "Re = 0.32\n", + "d = Re*mu/v/rhog\n", + "print \"Diameter of sphere in (m): %.4f\"%d \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Diameter of sphere in (m): 0.0097\n" + ] + } + ], + "prompt_number": 3 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 9.4 page no : 173" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find The terminal velocity\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "rhoa = 1.218 #density of air\n", + "mu = 1.73/100000\n", + "pi = 3.1428\n", + "g = 9.81\n", + "rhog = 1200.\n", + "rhop = 2280. #density of polythene\n", + "d = 0.0034 #diameter\n", + "a = 4*d**3*(rhop-rhoa)*rhoa*g/3/mu**2 #a = Cd*Re**2\n", + "\n", + "#using graph of Cd*Re**2 vs Re\n", + "Re = 2200.\n", + "v = Re*mu/d/rhog\n", + "print \"The terminal velocity in (m/s) %f\"%v \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The terminal velocity in (m/s) 0.009328\n" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "example 9.6 page no : 177" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "'''\n", + "find\n", + "settling occurs in stoke-s law range\n", + "settling velocity\n", + "'''\n", + "\n", + "import math \n", + "\n", + "# Initialization of Variable\n", + "pi = 3.1428\n", + "rho = 825\n", + "mu = 1.21\n", + "g = 9.81\n", + "l = 0.02\n", + "de = 0.02 #dia exterior\n", + "di = 0.012 #dia interior\n", + "\n", + "# Initialization of Variable\n", + "rho = 998. #density of water\n", + "mu = 1.25/1000 #viscosity of water\n", + "w = 100. #mass of water\n", + "pi = 3.1428\n", + "g = 9.81\n", + "rhog = 2280. #density of glass\n", + "wg = 60. #mass of glass\n", + "d = 45.*10**-6 #diameter of glass sphere\n", + "\n", + "#claculation\n", + "rhom = (w+wg)/(w/rho+wg/rhog) #density of mixure\n", + "e = w/rho/(w/rho+wg/rhog) #volume fraction of watter\n", + "\n", + "#using charts\n", + "zi = math.exp(-4.19*(1.-e))\n", + "\n", + "K = d*(g*rho*(rhog-rho)*zi**2/mu**2)**(1./3) #stoke's law coeff.\n", + "print K\n", + "if K<3.3:\n", + " print \"settling occurs in stoke-s law range\"\n", + " U = g*d**2*e*zi*(rhog-rhom)/18/mu\n", + " print \"settling velocity in m/s: %f\"%U\n", + "else:\n", + " print \"settling does not occurs in stoke-s law range\"\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "0.504080734813\n", + "settling occurs in stoke-s law range\n", + "settling velocity in m/s: 0.000297\n" + ] + } + ], + "prompt_number": 7 + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "\n", + "example 9.7 page no : 180" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# find Time taken by particle to reach 80% of its velocity\n", + "\n", + "import math \n", + "from numpy import linspace\n", + "\n", + "\n", + "# Initialization of Variable\n", + "rhog = 1200. #density of glycerol\n", + "mu = 1.45 #viscosity of glycerol\n", + "pi = 3.1428\n", + "g = 9.81\n", + "rhos = 2280. #density of sphere\n", + "d = 8/1000.\n", + "s = 0.\n", + "uf = 0.8*0.026\n", + "\n", + "#calculation\n", + "def intre():\n", + " s = 0.\n", + " u = linspace(0,uf,1000)\n", + " for i in range(0,1000):\n", + " y = ((pi/6*d**3*rhos*g-pi*d**3/6*rhog*g-0.5*pi*d**2/4*24*mu/d/rhog*rhog*u[i])/pi*6/d**3/rhos)**(-1)*uf/1000\n", + " s = s+y\n", + " a = s\n", + " return a\n", + "\n", + "t = intre()\n", + "print \"Time taken by particle to reach 80%% of its velocity in (s): %f\"%t\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Time taken by particle to reach 80% of its velocity in (s): 0.009020\n" + ] + } + ], + "prompt_number": 9 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file diff --git a/Problems_In_Fluid_Flow/screenshots/pic1.png b/Problems_In_Fluid_Flow/screenshots/pic1.png Binary files differnew file mode 100644 index 00000000..ad04e9de --- /dev/null +++ b/Problems_In_Fluid_Flow/screenshots/pic1.png diff --git a/Problems_In_Fluid_Flow/screenshots/pic2.png b/Problems_In_Fluid_Flow/screenshots/pic2.png Binary files differnew file mode 100644 index 00000000..1bb10249 --- /dev/null +++ b/Problems_In_Fluid_Flow/screenshots/pic2.png diff --git a/Problems_In_Fluid_Flow/screenshots/pic3.png b/Problems_In_Fluid_Flow/screenshots/pic3.png Binary files differnew file mode 100644 index 00000000..06f61a6f --- /dev/null +++ b/Problems_In_Fluid_Flow/screenshots/pic3.png |