yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #07918
Re: Strange behaviour of function unbalancedForce
Hi Bruno,
I think I finally found something. The unbalancedForce is calculated by summing
the noremal and shear forces stored in NormShearPhys. My WireMatPM has just
normal forces so I used NormPhys. Strange that I can get some values.
I fixed it locally by using NormPhys and the noremal force only. Of course,
this is not what we want in general.
Any idea how we can fix this problem permanently? I could derive the WirePhys
from NormShearPhys but it wouldn't be a nice solution. I ccould as well put an
if statement in unalancedForce, something like:
if I->phys == WirePhys
only normal force
else
normal and shear force
Any other idea?
Thanks,
Klaus
On Mon, 10 Oct 2011 11:51:40 PM Bruno Chareyre wrote:
> Hi,
>
> If you can get 0 after pausing, then it's a good starting point for
> debugging. In release build, you may try and check if there are forces
> on the bodies.
> In debug build (does it give 0 too?) you could set a breakpoint at
> Shop.cpp:162 and see what happens line by line, surely the best way.
>
> Bruno
>
> On 10/10/11 14:16, Klaus Thoeni wrote:
> > Hi,
> >
> > yes, if you pause the simulation unbalancedForce() is still exactly 0.
> >
> > Regarding the results for displacements:
> > - if I run the same file with -j1 I will get exactly the same
> > deformation, however the the unbalancedForce is not exactly the same
> > - if I compare the displacements of a case where I used
> > multi-threading the displacements are exactly the same for a certain
> > amount of iterations then the slightly differ (even if unbalancedForce
> > is 0 from beginning)
> >
> > I am still trying to find out what's going on. Any hints are welcome!
> >
> > Thanks,
> > Klaus
> >
> >
> >
> > On Fri, Oct 7, 2011 at 9:35 PM, Bruno Chareyre
> >
> > <bruno.chareyre@xxxxxxxxxxx <mailto:bruno.chareyre@xxxxxxxxxxx>> wrote:
> > I can't imagine any explanation yet. It is strange.
> > I wonder if the unbalanced force will also be exactly 0 if you
> > pause the
> > simulation and type unbalancedForce() in the terminal.
> > Are you sure that the results in terms of positions and deformation
> > of the net are always the same? else it could mean that there is
> > another problem that the unbalanced force is only reflecting.
> >
> > Bruno
> >
> > On 07/10/11 07:08, Klaus Thoeni wrote:
> > > Hi guys,
> > >
> > > yes, you have to try it several times in order to reproduce the
> >
> > strange
> >
> > > behaviour.
> > >
> > > However, I found out a bit more. Actually it might be a problem
> >
> > with multi-
> >
> > > threading. Maybe someone can try to reproduce the behaviour. The
> >
> > following
> >
> > > link provides a slightly modified version my script and a bash
> >
> > script which
> >
> > > allows for several executions for -j1 and -j2 (before running the
> >
> > script make
> >
> > > sure it is executable 'chmod +x runscript'). In addition I
> >
> > included as well my
> >
> > > results.
> > >
> > > http://bit.ly/rtN0w3
> > >
> > > Something very strange is that my desktop has the same problem
> >
> > even with -j1
> >
> > > (eaven cpu usage is more than 100% and I have no idea why)
> >
> > whereas my notebook
> >
> > > gives the right results in that case (cpu usage is max 100%) just
> >
> > have a look
> >
> > > at the graphs. It would be good to find out if this problem
> >
> > effects just me or
> >
> > > if it is a general problem in YADE. Any hints are welcome and I
> >
> > really
> >
> > > appreciate your help!
> > >
> > > Thanks
> > >
> > > Klaus
> > >
> > > On Thu, 6 Oct 2011 07:58:24 PM Bruno Chareyre wrote:
> > >> I tried the script and didn't find the problem. It needs more runs
> > >> maybe. But first, could you explain how you use the function (in a
> > >> periodic engine/ live typing/a command in the script)? It would
> > >> help understanding what happens.
> > >>
> > >> Bruno
> > >>
> > >> On 06/10/11 07:53, Klaus Thoeni wrote:
> > >>> Hi Anton,
> > >>>
> > >>> I tired it already (I know this issue), still the same
> >
> > behaviour. And now
> >
> > >>> actually I got zero for Bruno's branch as well. Very strange :-(
> > >>> Not sure what the problem is. Would be great if someone could
> >
> > try if
> >
> > >>> he/she gets the same behaviour.
> > >>>
> > >>> Thanks,
> > >>> Klaus
> > >>>
> > >>> On Thu, 6 Oct 2011 04:30:53 PM Anton Gladky wrote:
> > >>>> Hi Klaus,
> > >>>> try to start your script with -j1 option.
> > >>>> There are sometimes some issues with "numerical" error in
> >
> > multi-thread
> >
> > >>>> mode.
> > >>>>
> > >>>> Anton
> > >>>>
> > >>>> On Thu, Oct 6, 2011 at 6:40 AM, Klaus Thoeni
> >
> > <klaus.thoeni@xxxxxxxxx <mailto:klaus.thoeni@xxxxxxxxx>>
> >
> > > wrote:
> > >>>>> Hi guys,
> > >>>>>
> > >>>>> I just wanted to use the function unbalancedForce in one of
> >
> > my scripts.
> >
> > >>>>> And look what is happening: running the same simulation
> >
> > several times
> >
> > >>>>> after each other gives different results for the
> >
> > unbalancedForce. Well
> >
> > >>>>> either some values which seem all right or just zero. The
> >
> > script I used
> >
> > >>>>> is:
> > >>>>> examples/WireMatPM/wirecontacttest.py
> > >>>>>
> > >>>>> Even using different computers and different versions of yade
> >
> > gives
> >
> > >>>>> this problem. However, it doesn't happen all the time. It
> >
> > seems like
> >
> > >>>>> you have to try several times to get the wrog value (which is
> >
> > zero)
> >
> > >>>>> for unbalancedForce and if I use Bruno's collide2 branch it
> >
> > seems to
> >
> > >>>>> work all the time.
> > >>>>>
> > >>>>> So I don't know if it is a problem with my script or a
> >
> > problem of the
> >
> > >>>>> current trunk version. Can anyone reproduce this problem?
> > >>>>>
> > >>>>> Thanks
> > >>>>> Klaus
> > >>>>>
> > >>>>> _______________________________________________
> > >>>>> Mailing list: https://launchpad.net/~yade-dev
> >
> > <https://launchpad.net/%7Eyade-dev>
> >
> > >>>>> Post to : yade-dev@xxxxxxxxxxxxxxxxxxx
> >
> > <mailto:yade-dev@xxxxxxxxxxxxxxxxxxx>
> >
> > >>>>> Unsubscribe : https://launchpad.net/~yade-dev
> >
> > <https://launchpad.net/%7Eyade-dev>
> >
> > >>>>> More help : https://help.launchpad.net/ListHelp
> > >>>>
> > >>>> _______________________________________________
> > >>>> Mailing list: https://launchpad.net/~yade-dev
> >
> > <https://launchpad.net/%7Eyade-dev>
> >
> > >>>> Post to : yade-dev@xxxxxxxxxxxxxxxxxxx
> >
> > <mailto:yade-dev@xxxxxxxxxxxxxxxxxxx>
> >
> > >>>> Unsubscribe : https://launchpad.net/~yade-dev
> >
> > <https://launchpad.net/%7Eyade-dev>
> >
> > >>>> More help : https://help.launchpad.net/ListHelp
> > >>>
> > >>> _______________________________________________
> > >>> Mailing list: https://launchpad.net/~yade-dev
> >
> > <https://launchpad.net/%7Eyade-dev>
> >
> > >>> Post to : yade-dev@xxxxxxxxxxxxxxxxxxx
> >
> > <mailto: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
> > ENSE³ - Grenoble INP
> > 11, rue des Mathématiques
> > BP 46
> > 38402 St Martin d'Hères, France
> > Tél : +33 4 56 52 86 21 <tel:%2B33%204%2056%2052%2086%2021>
> > Fax : +33 4 76 82 70 43 <tel:%2B33%204%2076%2082%2070%2043>
> > ________________
> >
> >
> > _______________________________________________
> > Mailing list: https://launchpad.net/~yade-dev
> > <https://launchpad.net/%7Eyade-dev>
> > Post to : yade-dev@xxxxxxxxxxxxxxxxxxx
> > <mailto:yade-dev@xxxxxxxxxxxxxxxxxxx>
> > Unsubscribe : https://launchpad.net/~yade-dev
> > <https://launchpad.net/%7Eyade-dev>
> > More help : https://help.launchpad.net/ListHelp
References