Advertisement
j0hnn1e

post

Aug 25th, 2018
949
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.05 KB | None | 0 0
  1. from yade import pack, export, plot
  2. from yade import utils, ymport
  3. import math,numpy
  4. #from yade import plot
  5. r_cyl=75
  6. h_cyl=250
  7. #psdSizes,psdCumm=[2.36,4.75,6.3,9.5,12.5,19,25],[.365,.512,.596,.77,.864,.974,1] #Category 4, N100
  8. psdSizes,psdCumm=[2.36,4.75,6.3,9.5,12.5],[0.347,0.657,0.76,0.973,1] #Category 3, N70
  9.  
  10.  
  11. cyl1=O.bodies.append(geom.facetCylinder((0,0,0),r_cyl,h_cyl,wallMask=6))
  12. fill_size=100
  13. pred=pack.inCylinder(centerBottom=(0,0,-(h_cyl/2)+1),centerTop=(0,0,fill_size),radius=r_cyl-3)
  14. idAggregate=O.materials.append(FrictMat(density=2600,young=30e9,poisson=.4,frictionAngle=1.0472,label="aggregate")) #frictionangle in rad
  15. sp=pack.SpherePack()
  16. sp.makeCloud((-r_cyl,-r_cyl,-(h_cyl/2)),(r_cyl,r_cyl,h_cyl/2),psdSizes=psdSizes,psdCumm=psdCumm,num=14000,distributeMass=False)
  17. #sp.makeCloud((-r_cyl,-r_cyl,-(h_cyl/2)),(r_cyl,r_cyl,h_cyl/2),rMean=3,rRelFuzz=.5,num=5000)#enforce positive mass
  18. sp2 = pack.filterSpherePack(pred,sp,returnSpherePack=True)
  19. sp2.toSimulation()
  20. print (len(O.bodies)-1) #no of spheres generated
  21. O.dt=0.005*PWaveTimeStep()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement