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

    Status: Open => Answered

Jan Stránský proposed the following answer:
Hello,

> walls=aabbWalls([(0,-0.5,0),(1000e-3,0.5,250e-3)],thickness=0,material='walls')
> wallIds=O.bodies.append(walls)
> ...
> for i in O.bodies:
>    i.state.blockedDOFs="yXZ"

when doing
i.state.blockedDOFs="yXZ"
You are blocking some DOFs, but you are freeing some at the same time, both 
translation and rotation. Then the body should have nonzero state.mass and 
nonzero state.inertia. Which is not the case of aabbWalls with thickness=0. 
Mass and inertia, computed from zero volume, are zero.

So, either skip the aabb boxes, or after setting blockedDOFs:
- check if the mass is 0. If so, assign some positive value.
- check if the inertia is Vector3(0,0,0). If so, assign some nonzero vector

cheers
Jan

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