← Back to team overview

yade-users team mailing list archive

Re: [Question #688685]: permeability - PFV

 

Question #688685 on Yade changed:
https://answers.launchpad.net/yade/+question/688685

Othman Sh gave more information on the question:
I have some updates. I realized that since I'm fixing the spheres in
their position and I don't want any deformation in the packing, I don't
need the mechanical engine so I removed it (This was based on answer #7
in [1]). The errors are now fixed but I don't get any results. For
instance, flow.averageVelocity() is nan.

Would you please help?

Thanks, 
Othman


[1] https://answers.launchpad.net/yade/+question/685707 


-----------------------------------------------
# -*- coding: utf-8 -*-

import numpy as np
from yade import pack, ymport, plot


radiuscyl=.08
heightcyl=.25

dP=4e3 #Pa
visc=1e-3 #Pa.sec
density=1000 #kg/m3
g=9.81 #m/s2
O.materials.append(FrictMat(young = 5e10, poisson = 0.15,frictionAngle = atan(.2), density=1920))

############################ spheres #############################
sp=pack.SpherePack()
sp.makeCloud((0,0,0),(.4,.4,2),rMean=0.0083,rRelFuzz=0.1)	
#### cylinder extraction 										
pred=pack.inCylinder((.3,.3,0),(.3,.3,heightcyl),radiuscyl) 						
spFilter=filterSpherePack(pred,sp,Material=Material, returnSpherePack=True)				
spFilter.toSimulation()

yade.qt.View()
Height=max(utils.aabbDim())

#Fix all particles in their positions. No deformation
for i in O.bodies:
	i.state.blockedDOFs='xyzXYZ'


#B. Activate flow engine and set boundary conditions in order to get permeability
flow=FlowEngine()
flow.useSolver=3
flow.viscosity=visc
flow.boundaryUseMaxMin=[1,1,1,1,1,1] #if you want wall to be boundary, set this 0. If you don't have a wall, make it 1 so that spheres will be boundary
flow.bndCondIsPressure=[0,0,0,0,1,1] #[xmin,xmax,ymin,ymax,zmin,zmax]
flow.bndCondValue=[0,0,0,0,0,dP]


#Permeability calculations
Q=max(flow.averageVelocity())
Permeability=abs((density*g*Q*Height)/dP)
print ("average velocity: ",Q, "Permeability: ",Permeability)

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.