PeriTriaxController control

Asked by fengjingyu on 2018-12-22

Hi,

While learning PeriTriaxController,I think I misunderstood the meaning of the parameters.The goal is the target pressure and relStressTol gives the target a range to float up and down.The condition at the end of compression is that any axis is within the range of goal+or-relStressTol and the unbalanced force is lower than maxUnbalanced.But the terminal displays this data.
(0.0, 0.0, 0.0, nan)
(0.0, 0.0, 0.0, nan)
(0.0, 0.0, 0.0, nan)
(0.0, 0.0, 0.0, nan)
(0.0, 0.0, 0.0, nan)
(0.0, 0.0, 0.0, nan)
(0.0, 0.0, 0.0, nan)
(0.0, 0.0, 0.0, nan)
Finished

Please point out my mistake, thank you.
Feng

Here's my script

######################
# encoding: utf-8
from yade import pack, qt, plot

O.periodic=True

spheres=O.materials.append(FrictMat(young=64e9,poisson=0.12,density=2650,frictionAngle=0.0005))
s=O.materials.append(FrictMat(young=64e9,poisson=0.12,density=2650,frictionAngle=0.231))

sp=pack.SpherePack()
sp.makeCloud((0,0,0),(5,5,5),rMean=.5,rRelFuzz=.5,periodic=True)
n=sp.toSimulation(material=spheres)

O.engines=[
   ForceResetter(),
   InsertionSortCollider([Bo1_Sphere_Aabb()]),
   InteractionLoop(
      [Ig2_Sphere_Sphere_ScGeom()],
      [Ip2_FrictMat_FrictMat_FrictPhys()],
      [Law2_ScGeom_FrictPhys_CundallStrack()]
   ),
   PeriTriaxController(label='triax',
      goal=(20,20,20),stressMask=7,
      dynCell=True,maxStrainRate=(0.2,0.2,0.2),
      maxUnbalanced=1,relStressTol=1,
      doneHook='compactionFinished()'
   ),
   NewtonIntegrator(damping=.1),
   PyRunner(command='addPlotData()',iterPeriod=300),
]
O.dt=1*PWaveTimeStep()
O.trackEnergy=True

def addPlotData():
   print(triax.stress[0],triax.stress[1],triax.stress[2],unbalancedForce())

qt.View()
qt.Controller()
O.saveTmp()

def compactionFinished():
   for i in n:
        O.bodies[i].material = O.materials[s]

   triax.doneHook='triaxFinished()'
   triax.maxUnbalanced=1

def triaxFinished():
   print 'Finished'
   O.pause()

Question information

Language:
English Edit question
Status:
Solved
For:
Yade Edit question
Assignee:
No assignee Edit question
Solved by:
fengjingyu
Solved:
2018-12-22
Last query:
2018-12-22
Last reply:
fengjingyu (fengjing) said : #1

Hi everyone,

I understand the meaning of relStressTol.It must be a percentage.

I'm sorry to ask such a silly question.