Comment 9 for bug 1790167

Revision history for this message
Bruno Chareyre (bruno-chareyre) wrote :

> OK... We need neverErase=True for DFNFlow so what should we do? Create a functor to erase the interactions?

No there is no need for an extra functor. The place where erasing is triggered is Law2::action() (based on the bool returned).

I don't think we really need neverErase=True for DFNFlow. What we really need is to keep interactions alive until a condition is met. What about erasing (i.e. returning false) beyond a certain distance?
This way it would be possible to keep interactions for a sufficient period without interfering with neverErase (which really means to defer deletion to another functor).
This being said, using neverErase=True is probably a solution, in the short term.

Again, I guess some contacts forces could go wrong when two particles detach-touch-detach-..., if not-erased virtual interactions don't receive correct updates. A two sphere example could help check this.

Bruno