← Back to team overview

yade-users team mailing list archive

Re: [Question #677931]: material in PeriTriaxController

 

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

    Status: Open => Answered

Chareyre proposed the following answer:
Hi, last inserted material is used by default, as you just found.

Le sam. 19 janv. 2019 11:32, fengjingyu <
question677931@xxxxxxxxxxxxxxxxxxxxx> a écrit :

> New question #677931 on Yade:
> https://answers.launchpad.net/yade/+question/677931
>
> Hi,
>
> I just added a line of code about the material and didn't use it when
> generating the cloud.But I found that the results changed. Why is that?
>
> I've tried to generate default material in the cloud (
> FrictMat(density=2e3,young=30e9,poisson=.3,frictionAngle=.5236)).But we
> can't get to the first stable state.
>
> Thanks,
>
> Feng
>
> ####################################
> # encoding: utf-8
>
> sigmaIso=-25000
>
>
> idSteel=O.materials.append(FrictMat(young=210e9,poisson=.25,frictionAngle=.8,label="steel"))
>
> from yade import pack, qt, plot
>
> O.periodic=True
>
> sp=pack.SpherePack()
> sp.makeCloud((0,0,0),(2,2,2),rMean=.1,rRelFuzz=.3,periodic=True)
> #sp.toSimulation(material='sphereMat')
> sp.toSimulation()
>
> O.engines=[
>    ForceResetter(),
>    InsertionSortCollider([Bo1_Sphere_Aabb()]),
>    InteractionLoop(
>       [Ig2_Sphere_Sphere_ScGeom()],
>       [Ip2_FrictMat_FrictMat_FrictPhys()],
>       [Law2_ScGeom_FrictPhys_CundallStrack()]
>    ),
>    PeriTriaxController(label='triax',
>       goal=(sigmaIso,sigmaIso,sigmaIso),stressMask=7,
>       dynCell=True,maxStrainRate=(10,10,10),
>       maxUnbalanced=.1,relStressTol=1e-3,
>       doneHook='compactionFinished()'
>    ),
>    NewtonIntegrator(damping=.2),
>    PyRunner(command='addPlotData()',iterPeriod=100),
> ]
> O.dt=.5*PWaveTimeStep()
>
> def addPlotData():
>         plot.addData(x=triax.stress[0],y=triax.stress[1],z=triax.stress[2],
>                 a=triax.strain[0],b=triax.strain[1],c=triax.strain[2],
>                 q=triax.stress[2]-0.5*(triax.stress[0]+triax.stress[1]),
>                 p=(triax.stress[0]+triax.stress[1]+triax.stress[2])/3,
>
> k=(triax.stress[0]*0.5+triax.stress[1]*0.5)/triax.stress[2]
>         )
>         print(triax.stress[2],triax.strain[2])
>         plot.saveDataTxt('kz2.txt',vars=('k','z','c'))
>
> def compactionFinished():
>    O.cell.trsf=Matrix3.Identity
>    triax.goal=(sigmaIso,sigmaIso,-.5)
>    triax.stressMask=3
>    triax.maxStrainRate=(0,0,.1)
>    triax.doneHook='triaxFinished()'
>    triax.maxUnbalanced=10
>
> def triaxFinished():
>    print 'Finished'
>    O.pause()
>
> --
> You received this question notification because your team yade-users 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 your team yade-users is
an answer contact for Yade.