New question #562171 on Yade:
https://answers.launchpad.net/yade/+question/562171

I’m using PeriTriaxController to get packing with desired porosity.But when I 
used ‘triax.stress' to get average stresses ,it showed (0,0,0).And it's weird 
this script can work.So where should I change?Here is my script:
r=1.75e-05
O.periodic=True
O.cell.hSize=Matrix3(41*r,0,0,
                    0,41*r,0,
                    0,0,41*r)

O.materials.append(FrictMat(young=1.1e11,poisson=0.3,density=8900e12,frictionAngle=0,label='sphere'))
sp=pack.SpherePack()
sp.makeCloud((0,0,0),(40*r,40*r,40*r),r,0,4000,False)
O.bodies.append([sphere(center,rad,material='sphere') for center,rad in sp])


############################triax########################################################
triax=PeriTriaxController(goal=(-2e4,-2e4,-2e4),stressMask=7)
############################Engine#######################################################
O.engines=[
        ForceResetter(),
        InsertionSortCollider([Bo1_Sphere_Aabb()],verletDist=0.05*r),
        InteractionLoop(
                [Ig2_Sphere_Sphere_ScGeom()],
                [Ip2_FrictMat_FrictMat_MindlinPhys()],
                [Law2_ScGeom_MindlinPhys_HertzWithLinearShear()]
        ),
        PyRunner(command='controlporosity()',iterPeriod=1),
        triax,
        NewtonIntegrator(damping=.2)
]

O.dt=PWaveTimeStep()
def controlporosity():
        targateporosity=0.36
        a=utils.porosity()
        if a<targateporosity:
                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     : [email protected]
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp

Reply via email to