← Back to team overview

yade-users team mailing list archive

Re: Energy dissipation

 

> > Doesn't the problem with different plasticity condition come into play
> > only if you store shear force instead of strain? That would break for
> > non-linear elasticity...?
> Not sure it makes a difference. How do you define the plastic strain in 
> your case? I guess it uses plastic = total - elastic, with elastic = 
> some sort of  ftmax/ks (remember... ;)).
> Now, what if you cannot write elastic=ftmax/ks due to non linearity?

I don't store plastic strain at all (for shear plasticity, at least). At
each step:

1. normal strain εN and stress σN are evaluated; 

2. current "trial" shear strain εT is computed*, with corresponding
trial stress σT(εT); for admissible state f(σN,|σT(εT)|)<=0, there is no
dissipation and the contact is done for this timestep. In case of
non-admissible f(σN,|σT|)>0, shear strain is modified** to have new
value εT2 so that f(σN,|σT(εT2)|=0; dissipated energy increment is |
εT-εT2|*σT(εT2), which is added to cummulative dissipated energy. In the
Cpm model, plastic flow rule is non-associated and σN doesn't have to be
recomputed again, after changing σT.***

* For total strain, you just use that value; for incremental, you add
current incremental to the previous value.
** by moving the equilibrium position, for total formulation; for
incremental, cummulative strain value would be set.
*** radial stress return; if stress return were not radial, one would
have to iterate to find suitable combination of σN, |σT| to satisfy
plasticity condition, as it is usually done in implicit scehemes.

I didn't say anything about computing elastic energy... that would need
some more thought.

> Worth than that : unload the normal component with null shear velocity. 
> It will meet the plasticity criterion at some point (assuming purely 
> frictional law). Some elastic energy will be transfered to plasticity 
> with total dUs=0. I see this special case only now... I'll have to 
> tackle this even for FrictPhys_basic.

That works just fine in the scenario described above, as far as I see.

Cheers, v.





Follow ups

References