← Back to team overview

yade-users team mailing list archive

Re: "Arbitrary parameter" in CohesiveFrictionalRelationships (or SimpleElasticRelationships)

 

Jerome Duriez said:     (by the date of Thu, 17 Apr 2008 10:28:36 +0200)

Thank you Jerome for working with moment law! You are the first
person to try it after I implemented it with all testing.

This law is "different" from Jean-Patrick law in only one way: it is
implemented using quaternions. The most important formula is only one
line and looks like:

delta=A'*A^(-1)*B*B'^(-1)

where A,B are initial body orientation, and A',B' are current
orientation, expressed using quaternions. Whole calculation is just a
few lines. I've seen JP's law and it wasn't just a few lines... it
was a too long for me to understand it. So I had to develop this one
from scratch. I tested it very much, and it works for all cases that
I tried.

I should put a wiki page about this "theoretical background", sometime.

Basically this law should work in a similar way as JP's law, with one
exception: This formula behaves elastically for both bending AND
twisting. While JP did not have twisting. It means that to fully
reproduce JP results you would need to set twisting stiffness to zero.

But currently only one stiffness is used "kr". It is used for both
bending and twisting. We need to introduce another stiffness
parameter here.


> Thank you for these explanations. I think I see clear now for normal and 
> tangential stiffnesses but I see always differences for rolling 
> stiffness. In the mentionned paper the rolling stiffness kr (the one of 
> "moment" = kr * "angle"), is defined as :
> kr = a dimensionless parameter Br which multiplies ks * 
> (mean(radii))^2,         (where ks is so the tangential stiffness of Fs 
> = ks * Delta(us))
> 
> So I see two differences with what is in CohesiveFrictionalRelationships :
> 
> - first of all that's not (mean(radii))^2 that appears in Yade but 
> product(radii)

yes, I used product of two radii instead of square of minimum radii.
If you feel uncomfortable with that you can change it and commit it.
Just comment the original line.

> - secondly, even in the case of a contact between two bodies with same 
> radii (where this last remark vanishes), no parameter (which could be 
> the "Br") appears in Yade, except this 2.0 (whereas for example in the 
> paper the calibrated value of Br was 0.12)

I had another paper from JP, and there he was checking different
values, between 0.01 and 4.0. I picked just one of them (happened to
be 2.0). But it would be very useful from your side, if you
implemented this as an additional parameter, configured from
FileGenerator.

 
> To finish, but that's maybe less important, in this 
> CohesiveFrictionalContactLaw the moment seems to not be limited by a 
> plastic threshold. Is there an existing class where it is the case ?

yep. There is no plastic threshold, as I was too lazy to implement
it. The moment low is currently fully elastic. You are welcome to add
plastic threshold parameter and commit it :) But provide also a way
for not using it (for example a bool flag). So that later if someone
wants elastic-only behaviour - he can get it.

best regards
-- 
Janek Kozicki                                                         |
_______________________________________________
Yade-users mailing list
Yade-users@xxxxxxxxxxxxxxxx
https://lists.berlios.de/mailman/listinfo/yade-users



Follow ups

References