yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #04731
Re: [yade-dev] Trouble with use of CohesiveFrictionalPM in new version
UPDATE!!!
I finally managed to find out what induced assembly explosion, and this can
probably be an issue for those who work with the Moment Rotation Law (Bruno,
Jerome,...). Thanks to Vaclav and Janek remarks about quaternion
normalization, I just tried to normalize the only quaternion that appears in
CFpm, say:
Quaternionr delta( b1->state->ori * phys->initialOrientation1.conjugate()
*phys->initialOrientation2 * b2->state->ori.conjugate());
+ delta.normalize();
and, miracle, it makes the law working, with results comparable to what I
had with older versions. This is great. However, I am still wondering why,
these little change solves the problem because it should have only caused
problem if the MRL was used, and I checked that, even without the MRL,
explosion occured. Moreover, I don't get why this problem does not appear
for CohesiveFrictionalContactLaw...
Anyway, this means that CohesiveFrictionalPM does not need wm3 anymore.
Sorry for all the maydays I sent, but CFpm is the basis on which I work, and
I had to make it up to date.
Cheers
Luc
2010/6/2 Bruno Chareyre <bruno.chareyre@xxxxxxxxxxx>
> I just tried your script with r2260 and CohFric law (with moment law). I
> don't see any problem, except that the automatic timestep is too high. After
> reducing it, I see no problem.
>
> B.
>
> luc scholtes a écrit :
>
>> Hi guys,
>>
>> After few investigations about CohesiveFrictionalPM in latest version, I
>> must admit that I still do not have any idea where to look for, so if one of
>> you could have any suggestion, it would be very kind.
>>
>> 1- CohesiveFrictionalPM seems to work well when it is used in basic
>> simulations (say two elements, sphere/sphere or sphere/box) and without the
>> moment law (the moment law produces the same "explosive behaviour" when used
>> with CohesiveFrictionalContactLaw, so it is probably due to some problems
>> with quaternion computation in Eigen as it worked well with wm3... Unless
>> there was something wrong with wm3...)
>>
>> 2- I don't understand why, but when CohesiveFrictionalPM is used in a
>> TriaxialTest or a uniaxial test (without the moment law, though), everything
>> explodes. Since there have been a lot of changes during the last weeks (I
>> use rev2185 without any problem), I don't really know where to check
>> first... I have attached a script that I use for Triaxial Testing. I tested
>> it with CohesiveFrictionalPM as well as with CohesiveFrictionalContactLaw.
>> RESULTS -> if the moment law is desactivated, it works for
>> CohesiveFrictionalContactLaw but not for CohesiveFrictionalPM.
>>
>> The first thing I have noticed is that, if the timestep is fixed with
>> O.dt=-0.2*utils.PWaveTimeStep() (see the - before
>> 0.2*utils.PWaveTimeStep()), GlobalStiffnessTimeStepper() does not update the
>> timestep for CohesiveFrictionalPM (it does for
>> CohesiveFrictionalContactLaw), and, the walls just go through the assembly.
>>
>> Then, fixing the timestep with O.dt=0.2*utils.PWaveTimeStep() (without the
>> -), I could see that after few iterations, everything explodes again. Having
>> a look into the TriaxialRecorder file, I could see that the kinematic
>> energy, as well as the unbalanced force increase dramatically.
>>
>> The only (!!!!) difference between the two laws is that, one uses the
>> penetration depth as the interacting distance, whereas the other initializes
>> the interacting distance to the penetration depth when an interaction is
>> detected, and I saw this: https://bugs.launchpad.net/yade/+bug/399963. Do
>> you think it could be related?
>>
>> Please... help
>>
>> Luc
>>
>>
>> ------------------------------------------------------------------------
>>
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~yade-dev<https://launchpad.net/%7Eyade-dev>
>> Post to : yade-dev@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~yade-dev<https://launchpad.net/%7Eyade-dev>
>> More help : https://help.launchpad.net/ListHelp
>>
>
>
> --
> _______________
> Bruno Chareyre
> Associate Professor
> Grenoble INP
> Lab. 3SR
> 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-dev<https://launchpad.net/%7Eyade-dev>
> Post to : yade-dev@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~yade-dev<https://launchpad.net/%7Eyade-dev>
> More help : https://help.launchpad.net/ListHelp
>
References