yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #05212
Re: moment law, doing it right
just to make this clear - please correct me if I'm wrong:
this:
rollingStiffness is Kr (rolling)
twistingStiffness is Kr (twisting)
?? is `Rolling stiffness coefficient β` (rolling)
?? is `Rolling stiffness coefficient β` (twisting)
OR this:
rollingStiffness is `Rolling stiffness coefficient β` (rolling)
twistingStiffness is `Rolling stiffness coefficient β` (twisting)
?
Further:
rollingFriction is `Moment limit coefficient η` (rolling)
twistingFriction is `Moment limit coefficient η` (twisting)
rollingCohesion is a cohesion on rolling, that increases maximum
allowed moment even if Fn is zero
twistingCohesion is a cohesion on twisting
Ah, yes, for now we used similar values for both DOFs stiffness...
The best would be to split that into :
rollingStiffness is Krot_r (rolling) - or Krot_b (bending), for its equivalent
twistingStiffness is Krot_t (twisting)
rollingFriction is `Bending moment friction` (pick a variable name)
twistingFriction is `Twisting moment friction`
rollingAdhesion is `Bending moment cohesion` (pick a variable name)
twistingAdhesion is ...?
In total, it makes 6 additional physical parameters compared to
FrictPhys contact.
In addition, there is a difference between body variables and
interaction variables, like k=E.D for the stiffness of 3D contacts.
So, you will have additional rollingModulus (we can also name them
rollingStiffness but it will generate confusion), twistingModulus,
rollingCohesion, twistingCohesion in Body physics (friction is
non-dimensional and is always the same for bodies and interactions).
For instance, in Ip2_2xCohFrictMat_CohFrictPhys.cpp:60, we have :
contactPhysics->shearAdhesion =
shearCohesion*pow(std::min(Db, Da),2);
This conversion from body to interaction is a matter of modeling and
different users will want different formula. This is why you see so many
funky coefficients looking at the different laws, relations between ks
and twisting stiffness, etc.
For now, lets forget β's and others, and lets make an Iphysics
containing all 6 parameters.
We can later discuss what is the most "standard" way to assign them
values (but anyway there will be many possible definitions, they can
correspond to different Ip2 functors giving different definitions of
CohFrict contact properties from CohFrict bodies.
I hope it helps. :-)
Bruno
References