← Back to team overview

yade-users team mailing list archive

[Question #689153]: on interactions for JCFpMat() under JCFpmPhys() engines

 

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

Hi, I encountered a problem about the JCFpm (My topic involves faults), that is

when I set the materials to be JCFpmMat() and use the corresponding engines: Ip2_JCFpmMat_JCFpmMat_JCFpmPhys() and  Law2_ScGeom_JCFpmPhys_JointedCohesiveFrictionalPM(), no interations were generated and the obtained unbalanced forces is NAN during the calculation. 

There is a simple test for this problem:

from yade import pack, plot
O.materials.append(JCFpmMat(type=1, young=1e8, poisson=0.3,
                            frictionAngle=radians(0), density=2600,
                            tensileStrength=0, cohesion=1e6,
                            jointNormalStiffness=0, jointShearStiffness=0,
                            jointCohesion=0, jointFrictionAngle=radians(0),
                            jointDilationAngle=0.0, label='spheres'))

mn, mx = Vector3(0, 0, 0), Vector3(45e3, 3.7e3, 10e3)
sp = pack.SpherePack()
sp.makeCloud(mn, mx, 370, 0.2, 2500, False, seed=0) 
O.bodies.append([sphere(center, rad*1.3, material='spheres') for center, rad in sp])

O.engines=[
    ForceResetter(),
	InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Facet_Aabb()]),
	InteractionLoop(
		[Ig2_Sphere_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom()],
		[Ip2_JCFpmMat_JCFpmMat_JCFpmPhys(cohesiveTresholdIteration=1,label='interactionPhys')],
		[Law2_ScGeom_JCFpmPhys_JointedCohesiveFrictionalPM(smoothJoint=True,label='interactionLaw')]),
    NewtonIntegrator(damping=0.8, kinSplit=True, gravity=(0, 0, 0), label='newtonInitial')]

O.dt = 0.1* utils.PWaveTimeStep()

O.step()
__________________________

Then, I  change the O.engines to be as follows, and interactions can be detected,  forces between the spheres can also be obtained.
 
O.engines = [
    ForceResetter(),
    InsertionSortCollider([Bo1_Sphere_Aabb(), Bo1_Box_Aabb()]),
    InteractionLoop([Ig2_Sphere_Sphere_ScGeom(), Ig2_Facet_Sphere_ScGeom(), Ig2_Box_Sphere_ScGeom()],
                    [Ip2_FrictMat_FrictMat_FrictPhys()], [Law2_ScGeom_FrictPhys_CundallStrack()]),
    NewtonIntegrator(damping=0.8, kinSplit=True, gravity=(0, 0, 0), label='newtonInitial')]

However, I under these engines cohesion can not be set for the interactions and I am afraid the behavior of faults can not be described correctly.  

I am using the latest version yade-2020.01.a

Would you please help me to identify what's the problem? 

Thank you very much in advance.
Yang


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