← Back to team overview

yade-users team mailing list archive

Re: [Question #664343]: Lack of recoil in sphere-pfacet impact?

 

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

    Status: Answered => Open

Andrea Puglisi is still having a problem:
Dear Jérôme, thanks for your answer. Unfortunately I found no change in
behavior after changing the variables O.bodies[i].state.blockedDOFs  of
the elements of the pfacet. Most importantly, I can exhibit many
examples where the pfacet moves after interaction among themselves, even
if their degrees of freedom (according to the variable blockedDOFs) are
totally blocked. For instance

from yade.gridpfacet import *
from yade import pack,ymport,export,geom,bodiesHandling,qt

phimat=30.	# friction angle
E=1e8	# Young's modulus

#### Engines ####
O.engines=[
        ForceResetter(),
        InsertionSortCollider([
                Bo1_Sphere_Aabb(),
                Bo1_Wall_Aabb(),
                Bo1_PFacet_Aabb(),
                Bo1_Facet_Aabb(),
        ]),
        InteractionLoop(
                [
                  Ig2_GridNode_GridNode_GridNodeGeom6D(),#internal = ScGeom6D
                 Ig2_Sphere_PFacet_ScGridCoGeom(), #cyl-facet 
                 Ig2_Wall_Sphere_ScGeom(),#cyl-wall
                 Ig2_Wall_PFacet_ScGeom(),
                 Ig2_PFacet_PFacet_ScGeom(),
                 Ig2_Sphere_Sphere_ScGeom(),
                 Ig2_Facet_Sphere_ScGeom(),
                ],
                [
                  Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(setCohesionNow=True,setCohesionOnNewContacts=False),	
                 Ip2_FrictMat_FrictMat_FrictPhys()	
                ],
                [
                  Law2_ScGeom6D_CohFrictPhys_CohesionMoment(),	
                 Law2_ScGeom_FrictPhys_CundallStrack(),       
                ]
        ),
  NewtonIntegrator(gravity=(0.,0,-0.01),damping=0),
]


O.materials.append( CohFrictMat( young=E*1e2,poisson=0.3,density=100,frictionAngle=radians(phimat),normalCohesion=1e10,shearCohesion=1e10,momentRotationLaw=True,label='cMat' ) ) 
O.materials.append( FrictMat( young=E,poisson=0.3,density=1000,frictionAngle=radians(phimat),label='fMat' ) ) 

##### Create two pfacets
rr=0.02

v1=Vector3(0,0,5)
v2=Vector3(0,1,5)
v3=Vector3(1,0,3)
vertices=[v1,v2,v3]
pfacetCreator1(vertices,rr,nodesIds=[],cylIds=[],pfIds=[],wire=False,color=[1,1,1],fixed=False,materialNodes='cMat',material='fMat')

v1=Vector3(-1,-1,0)
v2=Vector3(-1,2,0)
v3=Vector3(2,-1,0)
vertices=[v1,v2,v3]
pfacetCreator1(vertices,rr,nodesIds=[],cylIds=[],pfIds=[],wire=False,color=[1,1,1],fixed=True,materialNodes='cMat',material='fMat')


#### For viewing ####
from yade import qt
qt.View()
qtr = qt.Renderer()

#### Set a time step ####
O.dt=PWaveTimeStep()  # non accurate time-step

#### Allows to reload the simulation ####
O.saveTmp()


------------------------------------------------------
(sorry I have no idea how ti make smaller examples)

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