yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #00955
Question about parameters in SpheresContactGeometry
Hi
I see an inflation in the amount of members in this class.
This class should be very simple, with no excess parameters for all
those using the traditional Cundall's contact law.
Which means, this class should have only rad1, rad2, penetrationDepth
and normal, nothing more (except perhaps ContactPoint).
Keep in mind this contact law/parameters is probably the first thing
people will look for when seeing Yade for the first time.
If they try to read SpheresContactGeometry.hpp now, they will get the
impression all this is a lot too complex (and it is!).
Currently, the registered parameters are :
(normal)
(contactPoint)
(radius1)
(radius2)
(contactPoint) // to allow access from python
(facetContactFace)
// hasShear
(hasShear)
(pos1)
(pos2)
(ori1)
(ori2)
(cp1rel)
(cp2rel)
(d1)
(d2)
(d0)
(initRelOri12));
And members include functions like unrollSpherePtToPlane,
rollPlanePtToSphere, setTgPlanePts, which are also very specific if I
understand correctly.
My question is : is this additional code supposed to be removed at one
point (as suggested in the comment "// begin abusive storage") or not?
When Cosurgi needed this sort of additional parameter for a complex
contact law (creep behaviour in the CohesiveFrictional class group), he
added them in cohesive-frictional Contact_Physics_.
It might be the good method to avoid overloading the geometry class with
data wich is used by only one contact law, as InteractionPhysics tend to
be a different class for each different contact law. Another way, of
course, is to create a new geometryClass inheriting from
SpheresContactGeometry...
Additional note, in SpheresContactGeometry.hpp, I see :
* TODO: add torsion code, that will (if a flag is on) compute torsion
angle on the contact axis.
*
* TODO: add bending code, that will compute bending angle of the
contact axis
The code for this is in CohesiveFrictionalContactLaw already, its been
developped by Cosurgi.
Bruno
--
_______________
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