New question #687862 on Yade:
https://answers.launchpad.net/yade/+question/687862
Hi,
I am wondering what is the best way to avoid detecting self interactions for
particles inside a group mask and at the same time keep interactions among
particles with a different mask, which is compatible with the former one.
For example in the script cubePBscaled.py [1], I want to ignore interactions
for the PBs assembling the box (bodies: bbb, bA, bB, bC, bD etc. with mask=3),
but I want to keep interactions among bodies with b.mask=1, i.e. the falling
cuboids.
Currently, if I set collider.avoidSelfInteractionMask = 3, the contacts among
the bodies with b.mask=1 are not detected either, cause masks 1 and 3 have
common bits.
To be clear, what I want is:
- to detect possible contact for particles in the group masks: 1-1
(cuboid-cuboid), 1-3 (cuboid-box) and
- to ignore possible contact for particles in the the group mask: 3-3 (box-box).
Looking in Collider.cpp [2], currently we have:
!( (b1->groupMask == b2->groupMask) &&
b1->maskCompatible(avoidSelfInteractionMask) )
and I can achieve what I need, using:
!( (b1->groupMask == b2->groupMask) && b1->groupMask ==
avoidSelfInteractionMask )
Is there a chance I can introduce a new flag to do this, e.g.
"avoidSelfInteractionMaskOnly" or is there a workaround, without changing the
collider?
Thanks in advance!
Vasileios
[1]
https://gitlab.com/yade-dev/trunk/blob/master/examples/PotentialBlocks/cubePBscaled.py
[2] https://gitlab.com/yade-dev/trunk/blob/master/pkg/common/Collider.cpp#L40
--
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