← Back to team overview

yade-users team mailing list archive

Re: BexContainer not thread-synchronized; call sync() first!

 

Hi Nejib,

There is written somewhere in the engine:

height0 = height; depth0 = depth; width0 = width;

If this line is not commented, you will have only the strain increment developed during the current simulation. If you want the total deformation, you just need to comment this line.

 Luc

I think that depends on

nejib hadda a écrit :
Hi Luc,
Just a question about the ThreeDTriaxialEngine, did you wrote it in the
manner that it gives directly the increment of the  deformations
(delta_eps_ii) and not total deformations (esp_ii) or something goes
wrong with my simulations!

Thanks








Le lundi 22 février 2010 à 15:38 +0100, Luc SIBILLE a écrit :
Hi all, Hi Nejib,

   I am currently updating the ThreeDTriaxial engine for the last bazaar
version, thus maybe Nejib you don't need to do it yourself, but it is
up to you. I will keep you update if it works or not.

  Best

  Luc

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

_______________________________________________
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





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



Follow ups

References