yade-users team mailing list archive
-
yade-users team
-
Mailing list archive
-
Message #02411
Re: BexContainer not thread-synchronized; call sync() first!
Hi evrybody !
I fixed to ThreeDtriaxial test on the 0.20.2 version of Yade.
Bruno, I am not used to bazar version and I've never been working on it,
but since you say that it is newer than the one I have and currently
evrybody is developping it, I'm going to switch on it.
Le vendredi 19 février 2010 à 12:01 +0100, nejib hadda a écrit :
> Hi,
>
> I fixed the problem of sync() for yade 0.20.2 in ThreeDTriaxialEngine by
> adding:
>
> void ThreeDTriaxialEngine::updateParameters ( MetaBody * ncb )
>
> Now yade can load the xml file and run it until it comes to write data
> to the Wallstresses file:
>
> For example, in my xml file I ask Yade to records data evry 50
> iterations, and the current iteration in my xml file is 3221: Yade
> crashes at the 3251st iteration but not for a sync() problem but rather
> it throws me an error message related to The TriaxialStateRecorder.cpp
> file
>
> "TriaxialStateRecorder::action (this=0x9ec08f8, ncb=0xb44e220) at
> pkg/dem/Engine/DeusExMachina/TriaxialStateRecorder.cpp:89"
>
> the problem is located here:
>
> void TriaxialStateRecorder::action (MetaBody * ncb )
> {.
> .
> .
> if ( ! ( Omega::instance().getCurrentIteration() %
> triaxialCompressionEngine->computeStressStrainInterval == 0 ) )
>
> triaxialCompressionEngine->computeStressStrain ( ncb );
> .
> .
> .
>
> In the Xml file, I ommited the TriaxialStateRecorder engine, and load it
> in yade it runs with no crashes.
>
> May be someone can Have an idea to fix this problem, Thanks !
>
>
>
>
>
>
>
>
>
>
>
>
> Le jeudi 18 février 2010 à 20:18 +0100, Václav Šmilauer a écrit :
> > > I'm using the new version of yade 0.20.2, I replaced the triaxial
> > > compression engine by the TreeDTriaxialEngine.
> > 0.20.2 is quite old, given changes we've done recently...
> >
> > > Can you tell me how can I sync'ing forces in this engine!
> > Have a look at TriaxialStressController::applyCondition(MetaBody* ncb),
> > it is just a single line:
> >
> > ncb->bex.sync();
> >
> > you can put it to ThreeDTriaxialEngine, although that one doesn't access
> > "bex" (forces) at all; it looks like bug elsewhere, but you would have
> > track down where exactly is this bex being read.
> >
> > v
> >
> >
> > _______________________________________________
> > Mailing list: https://launchpad.net/~yade-users
> > Post to : yade-users@xxxxxxxxxxxxxxxxxxx
> > Unsubscribe : https://launchpad.net/~yade-users
> > More help : https://help.launchpad.net/ListHelp
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~yade-users
> Post to : yade-users@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~yade-users
> More help : https://help.launchpad.net/ListHelp
Follow ups
References