← Back to team overview

yade-users team mailing list archive

Re: [Question #706540]: Trouble in generating sphere packing

 

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

Description changed to:
Hello,

I'm trying to create a random sphere packing that consists of roughly 21,182 particles for Marshall hot mix design simulation.
I am trying to generate:
28 particles of aggregates size (0.0125<=x<0.019)
86 particles of aggregates size (0.0095<=x<0.0125)
2,071 particles of aggregates size (0.000475<=x<0.0095)
18,997 particles of aggregates size (0.00236<=x<0.00475)
I want to create it randomly to the following code, but I was only able to generate it in layer per layer by using makeCloud.

import random
import math
from yade import geom, pack, utils, plot, ymport

# Define material properties
youngModulus = 1e7
poissonRatio = 0.25
density = 2000

# Create material
material = O.materials.append(FrictMat(young=youngModulus, poisson=poissonRatio, density=density))

# Define cylinder with funnel parameters
center = (0, 0, 0)
diameter = 0.102
height = 0.064

# create cylindrical body with radius 0.102 m and height 0.064 m
cylinder = geom.facetCylinder(center=center, radius=diameter/2, height=height, segmentsNumber=80, wallMask=6)

# assign material to each body in the cylinder
for body in cylinder:
    body.bodyMat = material

# add cylinder to simulation
O.bodies.append(cylinder)

# Define cylinder with funnel parameters
center1 = (0,0,height/2)
dBunker = 0.2
dOutput = 0.102
hBunker = 0
hOutput = 0.08
hPipe = 0

# create funnel as a bunker with diameter 0.102 m, height 0.064 m
funnel = geom.facetBunker(center=center1, dBunker=dBunker, dOutput=dOutput, hBunker=hBunker,hOutput=hOutput, hPipe=hPipe, segmentsNumber=80, wallMask=4)

# assign material to each body in the funnel
for body in funnel:
    body.bodyMat = material

# add funnel to simulation
O.bodies.append(funnel)

Thank you,
Huan

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