← Back to team overview

yade-users team mailing list archive

Re: [Question #136034]: quasi-static equilibrium

 

Question #136034 on Yade changed:
https://answers.launchpad.net/yade/+question/136034

Chareyre proposed the following answer:
A few comments :

1.a) PeriTriaxController (with dynCell=True) is not confounding statics and dynamics : it
is purely dynamic.
1.b) I recall there is no exact theoretical derivation of stiffness from contact list for
"granular" materials (i.e. 3-4 interactions per element, no cohesion nor rolling
friction); and that is the reason why I didn't use for periodic case the static strategy
used for TT with boxes.

> 2. The measure of staticity depends on the formulation used (damping,
> for instance);

I don't see why unbF would depend on formulation, since it only employs
forces.

> the example Bruno gave (with free sphere rotating) is
> perhaps good for cundall damping, though I would personally try to
> employ another daming algorithm to get rid of the energy anyway (imagine
> the sphere touches at some point another particle, and the energy is
> back there -- increase in unbalanced force witout any work on the
> boundary).

When the sphere touch back, you will have a small increase in unbF. It seems consistent :
you lost a bit of staticity. I see no problem in that. It is not really different than
breaking a contact at iteration N, so that unbF(N+1)>unbF(N) due to ongoing internal
reorganisations.

> Intergral (over the whole system) energy measures are consistent, since
> energy is what is conserved in the system.

Energy measure is consistent, but evaluating staticity and energy conservation are two
different things. Kinetic vs. elastic energy ratio is a good measure of staticity, but I
still have to hear what is the disadvantage of unbF, I don't see any.
Considering that tracing energy is cpu-time consuming, and that there are so many laws,
damping methods, and boundary conditions for which energy tracing is not implemented, and
will not any time soon due to excessive complexity, I don't see energy as a candidate for
routine staticity evaluation.
OTOH, unbF applies for any model where forces are defined, i.e. everything, without
specific lines of code.

> Currently, we compare apples and oranges
> (maxStrainRate and mass for work, numerical damping for dissipation).

I don't understand what comparisons are refered to here. Out-of-staticity errors and
damping (or dissipation) are two different things, even if they interact on each other.
You can have out-of-staticity effects, without  damping, in a purely elastic problem :
apply a force on a steel bar at t=0, get the displacement to define the force/disp
relation for the bar. Ouch : disp. is a sinusoidal function of time!


> 3. The energy "balance" between work on the boundary (increment of
> meanfield kinetic energy approx, which immediately transforms in elastic
> potential and fluctuation kinetic energy; [...] 

This is all good, but I don't think you are really speaking of non-staticity errors here.
Whatever you do with energy, you will not escape the problem of numerical waves : a
perturbation (typically contact breakage inside the packing) trigger non-equilibrium. It
will need a number of steps before the system goes back to equilibrium. This number
depends on physics, but also on the explicit FD scheme that propagates information at the
speed of 1 particle/iteration.
In fact, in a triaxial simulation of ~20k spheres, such perturbations are constantly
appearing and stabilizing (making sure that they all occure independently one after the
other would need weeks-long simulations). You have to choose a loading rate so that
stabilization process will be fast enough compared to loading, and this is not a matter of
energy.

I agree with what you say about energy fluxes and all. That is really interesting, but not
practical for choosing a loading rate.
Most of the quasi-static stabilisation processes have a velocity in particle/iteration,
not in m/s, that is the key point (same for loading rate, that can be considered in s-1 or
iter-1 depending on what effects matter).

> Currently, only maxStrainRate controls the proportion; it is
> dimensionally incorrect (wherefore the necessity for trial-and-error)
> and constant (it is likely to give too low influx at the beginning, and
> too high at the end -- slower-than-necessary dynamization, and slower-
> than-necessary stabilization).

I used to define loading rates with ramps. I stopped bothering with that : in a typical
triaxial loading, the max rate will be imposed by the error you admit on peak and residual
stresses, i.e. typically 0.01<eps<0.3. Increasing rate in the very early loading - if
admissible - will make you save time on a very short interval : around 3% of the total
simulation. It is not worth the effort to calibrate separately the different stages.

Bruno

You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.