← Back to team overview

yade-users team mailing list archive

Re: [Question #678982]: about TriaxialStressController

 

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

    Status: Answered => Open

Alireza Sadeghi is still having a problem:
Dear Robert,

Thank you very much for your help. I used the sample, but the code
didn't stop. I think the threshold for instability force was too small.
I run the below code, and in the second section of it (deviatoric part)
it doesn't stop when it reach to -0.2 strain in z direction. What can I
do for it?

Thank you very much for your help.

Best Regards

Alireza


#===============================================

from yade import utils, plot
from yade import pack, qt
from datetime import datetime


qtr=qt.Renderer()
qtr.bgColor=(1,1,1)

stabilityThreshold=0.01

#================= define the materials =======================

O.materials.append(CohFrictMat(normalCohesion= 1e20, shearCohesion=
1e20, isCohesive= True, young=6.81e8, density=1377.5e2, poisson=0.3,
frictionAngle= 0.31, fragile=False, label='Coke'))

O.materials.append(CohFrictMat(normalCohesion= 1e20, shearCohesion= 1e20, isCohesive= False, young=4e9, 
density=1523.6, poisson=0.3, frictionAngle= 0.0, fragile=False, label='wall'))


#=================== define walls ==============================

walls=aabbWalls([(0,0,0),(2e-1,2e-1,2e-1)],thickness=0.0003,oversizeFactor=1.0,material='wall')
wallIds=O.bodies.append(walls)

#=================== define packing ============================

nums=['t']

mats=['Coke']

coke=(5e-3,1000)

nums=pack.SpherePack()

nums.makeCloud((0,0,0),(2e-1,2e-1,2e-1),rMean=coke[0],rRelFuzz=1e-4,num=coke[1])

O.bodies.append([utils.sphere(c,r,material=mats[0],color=(0,0,1)) for
c,r in nums])

#=================== define Engine =============================

O.engines=[
	ForceResetter(),
	InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb(),Bo1_Facet_Aabb()]),
	InteractionLoop([Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Box_Sphere_ScGeom6D(),Ig2_Facet_Sphere_ScGeom6D()],
	[Ip2_CohFrictMat_CohFrictMat_CohFrictPhys()],
	[Law2_ScGeom_FrictPhys_CundallStrack(),Law2_ScGeom6D_CohFrictPhys_CohesionMoment()]
	),
	NewtonIntegrator(damping=0.4,gravity=[0,0,0])
]
O.dt=2e-6

#=================  APPLYING CONFINING PRESSURE   ================

triax=TriaxialStressController(
	
	maxMultiplier=1.000,  
	finalMaxMultiplier=1.000,  
	thickness = 0,
	stressMask = 7,
	internalCompaction=False, 
)


O.engines=O.engines+[triax]

triax.goal1=-1.0e5
triax.goal2=-1.0e5
triax.goal3=-1.0e5
triax.wall_back_activated=True

while 1:
  O.run(1000, True)
  unb=unbalancedForce()
  print 'unbalanced force:',unb,' mean stress: ',triax.meanStress
  if unb<stabilityThreshold and abs(-100000-triax.meanStress)/100000<0.01:
    break

#=====================   DEVIATORIC LOADING   =======================
triax.stressMask = 3
triax.goal1=-1e5
triax.goal2=-1e5
triax.goal3=-0.2

O.saveTmp()

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.