Discussion:
[deprecated list] Problem in ElasticContact law + needs clarification
Bruno Chareyre
2009-07-02 20:58:51 UTC
Permalink
Hello

Elastic contact law is broken in the default TriaxialTest. I guess it is
linked with r1822.
It looks like friction is almost inactive ("almost" because shearForce
is not null when I look into a xml, but the sample still has a
negligible shear strength).

Not clear for me :

-What is the result of "#ifdef SCG_SHEAR" by default?
-TriaxialTest generates a contact law with useShear=0 by default, is
that correct? When I put useShear=1, the result looks better.
-momentRotationLaw="1" by default, is that correct? (it has always been
that way perhaps, if nobody opposes, i'll set it false by default)
-Could we please keep the old version of this contact law by default?

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
________________


_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Václav Šmilauer
2009-07-02 21:54:49 UTC
Permalink
Post by Bruno Chareyre
Elastic contact law is broken in the default TriaxialTest. I guess it is
linked with r1822.
I think not related, that was only renaming things. You can get
modifications here:
http://bazaar.launchpad.net/~vcs-imports/yade/trunk/annotate/head%
3A/pkg/dem/Engine/StandAloneEngine/ElasticContactLaw.cpp
.
Post by Bruno Chareyre
It looks like friction is almost inactive ("almost" because shearForce
is not null when I look into a xml, but the sample still has a
negligible shear strength).
-What is the result of "#ifdef SCG_SHEAR" by default?
SpheresContactGeometry stores current shear and prevNormal (which, as is
the current practice, what various InteractionPhysics' do).

However, it is used by the ElasticContactLaw only if useShear==True. In
that case, there is SpheresContactGeometry::updateShear, which uses the
incremental formulation to update displacement (not force), which is
then used to compute the force.

Without useShear, it uses the old algorithm that was there since ages,
the incremental one updating force, which I moved (a few months back) to
SpheresContactGeometry::updateShearForce to make it usable from
different constitutive laws, since that code was duplicated at least 5x.
But the code itself did not change, and IIRC (not sure 100%) I verified
that by running TriaxialTest with both versions (inline shear update vs.
updateShearForce) with exacly same results.
Post by Bruno Chareyre
-TriaxialTest generates a contact law with useShear=0 by default, is
that correct? When I put useShear=1, the result looks better.
I know there was some difference for triaxial with and without useShear,
and thought that perhaps I didn't write updateShear correctly (as
updateShearForce didn't have influence on the results). I didn't have
time (and interest) to solve that back then, so I disabled useShear by
default in triaxial. You can compare SpheresContactGeometry::updateShear
and ::updateShearForce, they are almost the smae from the top down.
Post by Bruno Chareyre
-momentRotationLaw="1" by default, is that correct? (it has always been
that way perhaps, if nobody opposes, i'll set it false by default)
It must have been like that since ages, as it is the default (in
ElasticContactLaw's ctor) and nothing sets that in TriaxialTest.
Post by Bruno Chareyre
-Could we please keep the old version of this contact law by default?
Which one is it? I had the same results for useShear==False as for the
original contact law, but to you the results don't seem correct; does
that mean that the old results were incorrect as well? Confusing stuff.

Vaclav



_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Bruno Chareyre
2009-07-03 11:11:37 UTC
Permalink
Post by Václav Šmilauer
Post by Bruno Chareyre
-Could we please keep the old version of this contact law by default?
Which one is it? I had the same results for useShear==False as for the
original contact law, but to you the results don't seem correct; does
that mean that the old results were incorrect as well? Confusing stuff.
The old results were at least approximately similar with the ones
obtained now with useShear==true (i.e. peak stress approximately 3 times
confining stress with a decent contact friction).

If you saw no difference between useShear==False and the old results, it
means the bug has been introduced even before.
Unfortunately, I've been away from Yade for a few month and I can't
really figure out what happened. It could be just a small mistake like
the one introduced by JFJ once before.

Bruno
Post by Václav Šmilauer
Vaclav
_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Unsubscribe : https://launchpad.net/~yade-users
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
________________


_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Bruno Chareyre
2009-07-03 17:58:18 UTC
Permalink
Post by Bruno Chareyre
-What is the result of "#ifdef SCG_SHEAR" by default?
I was really asking the default result of this #ifdef.
Apparently, SCG_SHEAR is defined by default, which is a bit strange
since useShear is false by default at the same time.

Could it be part of the problem?

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
________________


_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Václav Šmilauer
2009-07-03 18:20:30 UTC
Permalink
Post by Bruno Chareyre
I was really asking the default result of this #ifdef.
Apparently, SCG_SHEAR is defined by default, which is a bit strange
since useShear is false by default at the same time.
Could it be part of the problem?
No, it is #defined by default so that you can choose at runtime which
algorithm to use; I wasn't sure at that time if the algorithm was right,
and I wanted to clearly separate if from the old code at the level of
the code. (Can we move the discussion to the bugreport? I already wrote
a response there ;-) ) V.



_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp

Luc Sibille
2009-07-03 07:50:33 UTC
Permalink
Post by Bruno Chareyre
Hello
Elastic contact law is broken in the default TriaxialTest. I guess it is
linked with r1822.
It looks like friction is almost inactive ("almost" because shearForce
is not null when I look into a xml, but the sample still has a
negligible shear strength).
-What is the result of "#ifdef SCG_SHEAR" by default?
-TriaxialTest generates a contact law with useShear=0 by default, is
that correct? When I put useShear=1, the result looks better.
-momentRotationLaw="1" by default, is that correct? (it has always been
that way perhaps, if nobody opposes, i'll set it false by default)
According to me momentRotationLaw="1" by default is not correct but I
understood, that until now, this booleen is not used... Ok for
momentRotationLaw="0"
Post by Bruno Chareyre
-Could we please keep the old version of this contact law by default?
Ok for me

Luc
Post by Bruno Chareyre
Bruno
--
Luc Sibille

Université de Nantes - Laboratoire GeM UMR CNRS

IUT de Saint Nazaire
58, rue Michel-Ange - BP 420
44606 Saint-Nazaire Cedex, France

Tel: +33 (0)2 40 17 81 78

_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Loading...