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

    Status: Open => Answered

Luc Scholtès proposed the following answer:
Hi,

Yes, there is an easier way. Juste define the material parameters in
such lines:

def sphereMat(): return JCFpmMat(type=1,density=DENS,young=YOUNG,poisson = 
ALPHA,frictionAngle=radians(FRICT),tensileStrength=TENS,cohesion=COH)
def wallMat(): return 
JCFpmMat(type=0,density=DENS,young=YOUNG,frictionAngle=radians(0))

Second, make sure that you have these lines in your engines list:

...
InsertionSortCollider([Bo1_Box_Aabb(),Bo1_Sphere_Aabb(aabbEnlargeFactor=intR,label='Saabb')]),
InteractionLoop(
  
[Ig2_Sphere_Sphere_ScGeom(interactionDetectionFactor=intR,label='SSgeom'),Ig2_Box_Sphere_ScGeom()],
  
[Ip2_JCFpmMat_JCFpmMat_JCFpmPhys(cohesiveTresholdIteration=1,label='interactionPhys')],
  
[Law2_ScGeom_JCFpmPhys_JointedCohesiveFrictionalPM(recordCracks=True,Key=OUT,label='interactionLaw')]
),
...

with intR a value that you previously determined to ensure a
coordination number K equal to the value you want for the packing you
use (K=10 for sandstone).

Then, the key parameter is: cohesiveTresholdIteration which defines the
iteration up to which you want to create bonds between particles (the
first one here).

Thus, just by runnning

O.step()

the bonds will be created.

After, you may want to reset the interaction radius to 1 by typing

SSgeom.interactionDetectionFactor=-1.
Saabb.aabbEnlargeFactor=-1.

You can check that the coordination number K corresponds to the one you
want by:

numSSlinks=0
numCohesivelinks=0
for i in O.interactions:
    if isinstance(O.bodies[i.id1].shape,Sphere) and 
isinstance(O.bodies[i.id2].shape,Sphere):
      numSSlinks+=1
    if i.phys.isCohesive :
      numCohesivelinks+=1
print "| K=", 2.0*numCohesivelinks/numSpheres

and then run your simulation (triaxial loading).

Luc

-- 
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