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

Hello,

In the script below, I create a spiral, a beam(lets just call it a beam, 
because i'm not yet sure what exactly it is XD), and a sphere. You can copy the 
script and run it in yade.
The weird part is: the collision detection between the sphere and chained 
cylinders has no problem, but the collision detection between the spiral and 
the beam(both chained cylinder) seems to have some problem. you can see that in 
the 3D view, there's no interactions between the spiral and the beam even 
though there should be.
I can't work this out. someone tells me what goes wrong plz. Thx a lot. 

Here comes my script. (copy this and run it in yade, my version of yade is 
1.07.0)

#test.py
young=5.0e5
poisson=4
density=2.60e3 
frictionAngle=radians(30)
O.materials.append(CohFrictMat(young=young,poisson=poisson,density=density,frictionAngle=frictionAngle,normalCohesion=1e13,shearCohesion=1e13,momentRotationLaw=True,label='mat'))
O.dt=1e-5

O.engines=[
        ForceResetter(),
        InsertionSortCollider([
                Bo1_ChainedCylinder_Aabb(),
                Bo1_Sphere_Aabb(),
        ]),
        InteractionLoop(
                
[Ig2_ChainedCylinder_ChainedCylinder_ScGeom6D(),Ig2_Sphere_ChainedCylinder_CylScGeom6D()],
                [Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(setCohesionNow=True)],
                
[Law2_ScGeom6D_CohFrictPhys_CohesionMoment(label='law'),Law2_CylScGeom6D_CohFrictPhys_CohesionMoment()]
        ),
        NewtonIntegrator(damping=0.15,gravity=[0,-9.81,0]),
]


#Generate a spiral
Ne=200
for i in range(0, Ne):
        omega=60.0/float(Ne); hy=0.10; hz=0.15;
        px=float(i)*(omega/60.0); py=sin(float(i)*omega)*hy; 
pz=cos(float(i)*omega)*hz;
        px2=float(i+1.)*(omega/60.0); py2=sin(float(i+1.)*omega)*hy; 
pz2=cos(float(i+1.)*omega)*hz;
        utils.chainedCylinder(begin=Vector3(pz,py,px), 
radius=0.005,end=Vector3(pz2,py2,px2),color=Vector3(0.6,0.5,0.5))

#Generate a beam
for i in range(0,40):
        utils.chainedCylinder(begin=Vector3(0,-0.12,float(i/40.0)), 
radius=0.005,end=Vector3(0,-0.12,float(i+1.0)/40.0),color=Vector3(0.6,0.5,0.5))

#Create a sphere
O.bodies.append(utils.sphere((0,0,0.5),radius=0.025))

#Constraints
O.bodies[Ne-1].state.blockedDOFs='xyzXYZ'
O.bodies[1].state.blockedDOFs='xyzXYZ'
O.bodies[200].state.blockedDOFs='xyzXYZ'
O.bodies[239].state.blockedDOFs='xyzXYZ'

yade.qt.View();

O.saveTmp()

-- 
You received this question notification because you are a member of
yade-users, which 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