← 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: Open => Answered

Jan Stránský proposed the following answer:
Hi Ning,

Peri3dController does not work very good if all prescribed values are
stress with comparable magnitude (like in your case). Try to pass the
youngEstimation and poissonEstimation parameters to Peri3dController (
https://yade-dem.org/doc/yade.wrapper.html#yade.wrapper.Peri3dController)
Jan


2012/9/17 ceguo <question208644@xxxxxxxxxxxxxxxxxxxxx>

> 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.
>
> _______________________________________________
> Mailing list: https://launchpad.net/~yade-users
> Post to     : yade-users@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~yade-users
> More help   : https://help.launchpad.net/ListHelp
>

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