yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #01087
Re: contact logic (again)
To summarize:
1. Colliders:
a) create potential (isNew !isReal) interactions, for overlapping AABBs
b) delete interactions that were potential (isNew&!isReal) but now
don't have overlapping AABBs
c) keep isReal interactions (regardless of geometrical overlap)
2. InteractionGeometryMetaEngine:
a) set isReal on interactions that are real (bodies collide not only
with AABBs, but also with their volumes)
3. ConstitutiveLaws
a) may set !isReal, they do not change anything else (let alone
deleting interactions directly!)
Perfect!
Remaining problem: who deletes interaction that was ever only
potential and now there is no AABB overlap anymore? It would have to
keep track of when was the interaction seen last (something like
Interaction::cycle). I propose long Interaction::lastSeen for
iteration number. All interactions that are isNew && !isReal &&
lastSeen<currentIteration can be deleted safely. Whould that be OK?
Currently, PersistentSAPCollider sets isReal=false at the beginning of
the loop.
Mmmh... Is there really a problem here? What is the difference with 1.b)
above?
You can let the collider delete those interactions, disregarding the
"lastseen" iteration.
PersistentSAPCollider is NOT reseting isReal for the case we are
discussing :
/
if(!haveDistantTransient) I->isReal=false;/
This is the only place where isReal can be set false if it is not set in
the constitutive law (e.g. ElasticContactLaw).
This line will be totally removed eventually, when the
haveDistantTransient behaviour will be the default. Or perhaps this line
will be left here and only the default value of hDT will be changed to
keep both behaviours possible?
Bruno
_______________________________________________
Mailing list: https://launchpad.net/~yade-dev
Post to : yade-dev@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~yade-dev
More help : https://help.launchpad.net/ListHelp
--
_______________
Chareyre Bruno
Maitre de conference
Grenoble INP
Laboratoire 3SR - bureau E145
BP 53 - 38041, Grenoble cedex 9 - France
Tél : 33 4 56 52 86 21
Fax : 33 4 76 82 70 43
________________
Follow ups
References