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

    Status: Answered => Open

Andrea Puglisi is still having a problem:
Dear Klaus,

with quite a large delay I wish to thank you. I continued to work with
clumps of spheres, it seemed to me simpler. Now I would like to try
again with the pfacet approach. I am trying a simple exercise, i.e.
replace your cylinder with an object (a tetrahedron from a .gts file,
http://gts.sourceforge.net/samples/tetrahedron.gts.gz ) which *should*
be transported by the horizontal belt.

Again I face the problem already described to you at the beginning. The
object apparently does not interact with the belt. I can't understand
the basic rules of interaction of grids.

from yade.gridpfacet import *

##### Parameter ####                                                            
                                                               
r=1     # radius cylinder                                                       
                                                               
phi=30. # friction angle                                                        
                                                               
E=1e7   # Young's modulus                                                       
                                                               

#### Engines ####                                                               
                                                               
O.engines=[
 ForceResetter(),
 InsertionSortCollider([
  Bo1_Sphere_Aabb(),
  Bo1_Wall_Aabb(),
  Bo1_PFacet_Aabb(),
 ]),
 InteractionLoop([
  Ig2_GridNode_GridNode_GridNodeGeom6D(),
  Ig2_Wall_Sphere_ScGeom(),
  Ig2_Sphere_PFacet_ScGridCoGeom(),
 ],
 [
  
Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(setCohesionNow=True,setCohesionOnNewContacts=False),
 # internal cylinder physics                    
  Ip2_FrictMat_FrictMat_FrictPhys()     # physics for external interactions, 
i.e., cylinder-cylinder interaction                               
 ],
 [
  Law2_ScGeom6D_CohFrictPhys_CohesionMoment(),  # contact law for "internal" 
cylinder forces                                                   
  Law2_ScGeom_FrictPhys_CundallStrack(),
 ]
 ),
 NewtonIntegrator(gravity=(-0.,0,-10),damping=0.5,label='newton'),
]

#### Creat materials ####                                                       
                                                               
O.materials.append( CohFrictMat( 
young=E,poisson=0.3,density=1000,frictionAngle=radians(phi),normalCohesion=1e10,shearCohesion=1e10,momentRota\
tionLaw=True,label='cMat' ) ) # material to create the gridConnections          
                                                               
O.materials.append( FrictMat( 
young=E,poisson=0.3,density=1000,frictionAngle=radians(phi),label='fMat' ) ) # 
material for general interactions

#### Create box and wall ####                                                   
                                                               
wallId = O.bodies.append( wall(position=(0,0,0),sense=0, 
axis=2,color=[0,1,1],material='fMat') )
O.bodies[wallId].state.vel=Vector3(1.,0,0)
O.bodies[wallId].mask=3

#### Create cylinder ####                                                       
                                                               
#nodeIds=[]                                                                     
                                                               
#cylIds=[]                                                                      
                                                               
#nodeIds.append( O.bodies.append( 
gridNode([0,2*r,0],r,wire=False,fixed=False,material='cMat',color=[1,0,0]) ) )  
                             
#nodeIds.append( O.bodies.append( 
gridNode([0,2*r,2*r],r,wire=False,fixed=False,material='cMat',color=[1,0,0]) ) 
)                             


nodeIds,cylIds,pfIds =  
gtsPFacet('tetra.gts',shift=(0,0,3),scale=1.,radius=1e-2,wire=False,fixed=False,materialNodes='cMat',material='fMat',c\
olor=[0,0,1])

for id in nodeIds:
  O.bodies[id].bounded=1
  O.bodies[id].mask=2

#cylIds.append( O.bodies.append(
gridConnection(nodeIds[1],nodeIds[0],r,color=[1,0,0],material='fMat') )
)


#### Creat a pFacets -> based on 3 vertices ####

#v1=Vector3(0,4*r,0)                                                            
                                                               
#v2=Vector3(20*r,-r,0)                                                          
                                                               
#v3=Vector3(20*r,-r,10*r)                                                       
                                                               
#vertices=[v1,v2,v3]                                                            
                                                               
#pfacetCreator1(vertices,r/2.,nodesIds=[],cylIds=[],pfIds=[],wire=False,color=[1,1,1],fixed=True,materialNodes='cMat',material='fMat')
         

#### For viewing ####                                                           
                                                               
from yade import qt
qt.View()
Gl1_Sphere.stripes=True

#### Set a time step ####                                                       
                                                               
O.dt=1e-05

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

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