Question #181411 on Yade changed:
https://answers.launchpad.net/yade/+question/181411
Status: Solved => Open
Giulia Macaro is still having a problem:
I still have some problem with the cylinder. The bounding box for a chained
cylinder is not implemented for periodic simulations.
There is only the if(!scene->isPeriodic) option:
if(!scene->isPeriodic){
const Vector3r& O = se3.position;
Vector3r O2 = se3.position+cylinder->segment;
aabb->min=aabb->max=O;
for (int k=0;k<3;k++){
aabb->min[k]=min(aabb->min[k],min(O[k],O2[k])-cylinder->radius);
aabb->max[k]=max(aabb->max[k],max(O[k],O2[k])+cylinder->radius);
}
return;
}
I guess I need to specify the position in relation to the periodic cell..
something like
const Vector3r& O = scene->cell->unshearPt(se3.position);
Vector3r O2 = scene->cell->unshearPt(se3.position)+cylinder->segment;
Is that correct? It seems working now, but I don't know if I'm forgetting
something else.
I've got another question: for my simulations I need a rigid cylinder with a
circular lateral surface.
I have chosen to use the chainedCylinder instead of the facetCylinder because I
don't want to use the non-circular surface given when then cylinder is created
with facets. But at the same time I need a non-deformable cylinder..
So I'm trying to get rid of the deformable chained state, like blocking the
rotations of each part of the chain and the translations in the direction
parallel to the axis of the cylinder with O.bodies[].state.blockedDOFs='xXYZ'.
Would it be enough, or should I include a condition imposing the same lateral
and vertical displacement for each body of the chain?
Thanks for your suggestions,
Giulia
--
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