← Back to team overview

yade-dev team mailing list archive

Re: [yade-dev] Trouble with use of CohesiveFrictionalPM in new version

 

I am not an expert in CohesiveFrictionalPM as I am using my own one,

If you do not find the reason, analyzing the code, try to find in what
revision it was broken.
If you say, that it is working in r 2185, try r2200. And then compiling
several revision you will get
exactly the problem revision. In then it will be much easier to find the
solution.
______________________________

Anton Gladkyy


2010/5/28 luc scholtes <lscholtes63@xxxxxxxxx>

> 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
>
>

Follow ups

References