Radius Expansion Method
Hi,
I use the Radius Expansion Method (REM) to generate a granular bed with a specified particle distribution. I use a discrete form of the cumulative curve of particle distributions. However, after simulation the distribution of particles in the bed differs from the theoretical distribution (see: http://
Best Regards from Poland,
Wojciech Sobieski
-------
from yade.pack import *
from yade import utils
from yade import export
from yade import plot
import sys
import os
import subprocess
file = 'p06_w1_10'
n_s = 10000
e_target = 0.413
mi = 0.5
seed = 5
n_band = sum(1 for line in open(file+'.txt'))
input = open(file+
psdSizes = []
psdCumm = []
try:
for line in input:
psdSizes.
psdCumm.
finally:
input.close()
psdCumm[0] = 0.0
psdCumm[n_band-1] = 1.0
subprocess.
input = open(str(
try:
for line in input:
l = float(line[0:])
finally:
input.close()
mn = Vector3(0,0,0)
mx = Vector3(l,2*l,l)
O.materials.
O.bodies.
O.materials.
sp = yade._packSpher
sp.makeCloud(
O.bodies.
#------
# here the particle distribution is correct:
vtkExporter = export.
vtkExporter.
os.mkdir(str(file))
triax = TriaxialStressC
finalMaxMult
maxMultiplier = 1.0001,
stressMask = 7,
internalComp
goal1 = 10000,goal2 = 10000,goal3 = 10000)
O.engines=[
ForceResetter(),
InsertionSortC
[Bo1_
InteractionLoop(
[Ig2_
[Ip2_
[Law2_
GlobalStiffnes
active=1,
timeStepUpda
timestepSafe
triax,
NewtonIntegrat
VTKRecorder(
]
while triax.porosity > e_target:
mi = 0.999*mi
setContactFri
print "\r Friction:",mi
print "\r Porosity:
sys.stdout.
O.run(500,1)
#------
# here the particle distribution in not correct:
vtkExporter = export.
vtkExporter.
input = open('set_
input.write(
input.close()
export.
subprocess.
subprocess.
print "\r --------"
print "\r Final friction:",mi
print "\r Final porosity:
Question information
- Language:
- English Edit question
- Status:
- Solved
- For:
- Yade Edit question
- Assignee:
- No assignee Edit question
- Solved by:
- Wojciech Sobieski
- Solved:
- Last query:
- Last reply: