← Back to team overview

yade-dev team mailing list archive

Re: PeriTriaxController

 

Bruno Chareyre a écrit :
Václav Šmilauer a écrit :
I'm not sure I understand completely.
First reaction :
Why not change "goal" with time, in comp=M*goal? It would give a strain rate.
Goal is user-defined and shouldn't change. It describes, well, the goal
state.
This is a problem perhaps. In many cases, what you want is a continuous response to a continuously changing loading. Typically : triaxial loading is constant strain rate + constant stresses, the final ("goal") state doesn't really matters, except for stopping the simulation at some point.

Second :
It could be simpler to prescribe strainrates/stresses.
Could be right. Not sure if you woudn't want, in some special cases,
prescribe strain rather than strain rate, though.

In some special cases, yes probably.

Currently, as soon as you reach all the goal components (strains or
stresses) and the packing is stable etc, doneHook is called. With
strainRate, that wouldn't work as well. There must be some 4th condition
regulate rate? Is it meaningful? I am a little at loss, since I have
only few cases I can imagine, but I want to make it quite generic.

I think if you want it very generic you need to introduce, the rate of loading AND the final loading. Currently you have only the the final loading.

It is just the cell size that changes, but it really means that (for
compression) particles on the right get closer to the particles on the
left. I was thinking about this linear displacement, but then I wasn't
sure if one should prescribe velocity (and perhaps get adversary inertia
effects later) or just change position and ignore inertia...


I think you just linearly transform all coordinates with a matrix. Conceptualy, it is like a displacement if the matrix represents the transformation, or a a velocity if the matrix represents the rate of transformation... Same duality as before.

This is a question for Gaël and Vincent (could you guys keep this discussion in yade-dev?).
why not...

assuming that the transformation matrix H is such that r = H s, where r is the real coordinates of the grains, then you can apply a strain rate on your sample by imposing \dot{H}. If \dot{r} is the vector of the velocities of the grains, \dot{r} = H \ dot{s} + \dot{H} s, then imposing some component of \dot{H} is equivalent to imposing a strain rate


Also : Gaël just suggested that instead of the (displacement = stress_error/stiffness) approach used with boxes, the periodic stress could be imposed directly in the periodic cell, provided the cell has an inertia. In that case the strain of the cell would be just a result of the imposed stress and this artificial inertia. He said this method works well.


I confirm


Gael


Bruno





Follow ups

References