← Back to team overview

yade-users team mailing list archive

Re: [Question #208644]: How to save a confined pack and later load it for shear

 

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

    Status: Needs information => Open

ceguo gave more information on the question:
Hi Bruno,

It seems the first script cannot terminate (due to poorly chosen parameter??). Actually I tested a 2D script below:
=========================================================================================
O.materials.append(FrictMat(young=1.e8,poisson=.7,frictionAngle=0.5,density=2650))
sp = pack.SpherePack()
sp.makeCloud(minCorner=(0,0,0),maxCorner=(.2,.2,0),rMean=.005,rRelFuzz=.5,num=300,periodic=True,seed=1)
sp.toSimulation()
O.cell.hSize = Matrix3(.2,0,0, 0,.2,0, 0,0,1.)
O.dt = utils.PWaveTimeStep()
O.engines = [
   ForceResetter(),
   InsertionSortCollider([Bo1_Sphere_Aabb()]),
   InteractionLoop(
      [Ig2_Sphere_Sphere_ScGeom()],
      [Ip2_FrictMat_FrictMat_FrictPhys()],
      [Law2_ScGeom_FrictPhys_CundallStrack()]
   ),
   PeriTriaxController(
      dynCell=True,
      goal=(-5.e3,-5.e3,0),
      stressMask=3,
      relStressTol=.001,
      maxUnbalanced=.01,
      maxStrainRate=(.1,.1,0),
      label='conf'
   ),
   NewtonIntegrator(damping=.2)
]
O.run();O.wait()
O.cell.trsf=Matrix3.Identity
O.save('./conf.xml.bz2')
O.pause()
=======================================================================================
This one can generate conf.xml.bz2 and terminate smoothly. But the second script doesn't work....
=======================================================================================
from yade import plot
O.load('conf.xml.bz2')
def saveAddData():
   stress = utils.getStress()
   plot.addData(
      stress_yy = stress[4],
      strain_yy = O.cell.trsf[4]
   )
O.engines = O.engines + [PyRunner(command='saveAddData()',iterPeriod=1000)]
conf.goal=(-5.e3,-1.e-1,0)
conf.stressMask=1
conf.maxStrainRate=(1.,.1,1.)
O.run();O.wait()
plot.saveDataTxt('result_drained.txt',vars=('stress_yy','strain_yy'))
O.pause()
==========================================================================================
Besides, these days I'm struggling to find a good 2d simulation with YADE. But the result is not good at all. By varying the frictional coefficients at confining state or by filling a packing with different number of particles (I want to get packings with different initial void ratios for shear), the behaviours of the packings are NOT consistent at all. By consistent I mean dense packing is more dilative while loose packing is more contractive. I'm not sure if there is intrinsic error in my 2d simulation...

Any sharing of experience in 2d simulation is appreciated.

Ning

-- 
You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.


Follow ups