yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #00000
Re: [Yade-commits] r1359 - in trunk: core gui/py lib/import pkg/common/DataClass/PhysicalParameters pkg/common/Engine/DeusExMachina pkg/common/Engine/StandAloneEngine pkg/dem/Engine/EngineUnit pkg/dem/Engine/StandAloneEngine pkg/dem/RenderingEngine/GLDrawElasticContactInteraction
> Moreover it seems to me that
> InteractionGeometryMetaEngine doesn't care if interactions are real or
> not. On the contrary it chooses if it is the case or not :
> l.46 InteractionGeometryMetaEngine.cpp :
> interaction->isReal =
> b1->interactingGeometry && b2->interactingGeometry && //
> some bodies do not have interactingGeometry
> // FIXME put this inside VolatileInteractionCriterion dynlib
> (
> persistentInteractions->find(interaction->getId1(),interaction->getId2())
> == 0 )
> &&
> operator()( b1->interactingGeometry ,
> b2->interactingGeometry , b1->physicalParameters->se3 ,
> b2->physicalParameters->se3 , interaction );
>
> So ???
>
>
Yes. But! Any body that can interact with something gets its
InteractingGeometry with its creation.
E.q. if (body->interactingGeometry) then body_is_interactable else
body_is_non_interactable
InteractionGeometryMetaEngine cares about creating the _InteractionGeometry_
from two InteractingGeometries.
E.q. the _InteractionGeometryMetaEngine_ determines whether interaction
isReal or only potential.
Therefore, there is no controversy:
1. A collider find the potential interaction (intersecting bounding volumes).
The Interaction isNew=1, isReal=0.
2. InteractionPhysicsMetaEngine create InteractionPhysics for new interaction
(once for all interaction time). The Interaction isNew=0, isReal=0.
3. InteractionGeometryMetaEngine create InteractingGeometry if the bodies are
really in contact (on each time step). The Interaction isNew=0, isReal=1.
4. Calculating forces, ect...
5. The bodies separated. They surfaces not intersect, but AABBs intersect yet.
Interaction potential again. Do not have to calculate physics. Do not have to
calculate geometry. isNew=0, isReal=0.
6. They AABBs not intersect. The interaction is removed.
--
Best regards, Sergei D.
_______________________________________________
yade-dev mailing list
yade-dev@xxxxxxxxxxxxxxxx
https://lists.berlios.de/mailman/listinfo/yade-dev
References