You are on page 1of 2

from pylab import *

import pylab as pl
from math import *
from scipy.integrate import odeint
import numpy as np
import time
epsilon=0.675
#porosidade
rhog=5000
#densidade do fluido (ar) [kg/m3]
rhop=930.
#densidade da particula (PET) [kg/m3]
mu=17.4*10**-6
#viscosidade do fluido (ar) [Pa.s]
dp=0.0017
#dimetro das partculas (PET) [m]
#vg=80.
#velocidade do fluido () [m/s]
#vp=0.
#velocidade das particulas () [m/s]
g=9.8
#acelerao da gravidade [m/s2]
Ff=0.001
#fator de atrito volumtrico
def Ergun (vg,vp):
#Equao de Ergun, para dP/dz em [Pa/m], assumindo esfericidade igual a unid
ade
#dPdz=-150.0*mu*abs(vg-vp)*((1.-epsilon)**2)/(dp**2*epsilon**3) - 1.75*r
hog*(epsilon-1.)*abs(vg-vp)**2/(dp*epsilon**3)
dPdz=(-150.0*mu*abs(vg-vp)*((1.-epsilon)**2))/((dp**2)*(epsilon**3)) - (
1.75*rhog*(1.-epsilon)*(abs((vg-vp)**2)))/(dp*(epsilon**3))
return dPdz
print ("%.2f psi/m" % (Ergun(80.,0.)*1.45*10**-4))
def balanco (v,z):
vg=v[0]
vp=v[1]
dVgdz=+Ergun(vg,vp)/(2*rhog*vg)-g/(2*vg)-(Fd(vp,vg)+Ff)/(rhog*epsilon*vg
)
dVpdz=-g*(rhog-rhop)/(2*vp*rhop)+Fd(vp,vg))/(rhop*(1.-epsilon)*vp)
return (dVgdz,dVpdz)
def mesh (L,dz):
return linspace(0,dz,L)
def Re(vg,vp):
Re= rhog*abs(vg-vp)/mu
return Re
def Fd (vg,vp):
if Re(vg,vp)>=1000.0:
Fd = ((3./4)*0.44*(1.-epsilon)*(epsilon**(-2.67))*((vg-vp)**2)*r
hog)/dp
else:
Fd = ((3./4)*(24./Re(vg,vp)(1.+0.15*(Re(vg,vp)**0.687))*(1.-epsi
lon)*(epsilon**(-2.67))*((vg-vp)**2)*rhog)/dp)
return Fd

def main():
x=odeint(balanco,(80,0.0001),mesh(100,0.0001))
pl.plot(x[:,0], 'blue')
pl.plot(x[:,1], 'red')
pl.xlabel('Comprimento [m]')
pl.ylabel('Velocidade [m/s]')
pl.show()
return 0
if __name__ == '__main__':
main()

You might also like