Integrating a law over a step
A nonlinear law is not a formula that turns a strain into a stress: the stress also depends on the history, carried by internal variables that evolve. A finite-element code, or a test machine, asks the law a discrete question: the gradients were
The objects of a step
A law has three kinds of variables, which the code stores as flat vectors (in sans-serif in this page):
| meaning | example (poroelastoplasticity) | |
|---|---|---|
| the gradients: the primal fields at the point | strain | |
| the fluxes conjugate to them | stress | |
| the internal variables: what the point remembers | plastic strain |
A symmetric second-order tensor enters these vectors by its six Kelvin–Mandel components
The residual route
Integrating the evolution laws of the internal variables over the step by an implicit scheme (backward Euler in all the laws shipped) gives as many equations as internal variables, written as a residual
For von Mises plasticity, for instance, J2Plasticity):
This is the standard form of the implicit integration of inelastic laws (Simo and Hughes, 1998). The residual is solved by Newton's method, with the Jacobian
The elastic predictor
A rate-independent law has two regimes. If the stress computed with the internal variables frozen at elastic function; a damage law gives its threshold the same way. On an elastic step the internal variables do not depend on
The consistent tangent
A global Newton method on the structure needs the derivative of the fluxes at the end of the step with respect to the gradients at the end of the step, through the integration algorithm:
and the chain rule on
On an elastic step the second term vanishes. This is the tangent consistent with the integration algorithm, the one that keeps the quadratic convergence of the structural Newton method (Simo and Taylor, 1985); the tangent of the continuous law (the "continuum" tangent) does not. The four partial derivatives are again computed by automatic differentiation, so a law never contains a derivative written by hand.
For a law of several fields the formula is unchanged:
The potential route
Many laws derive from two potentials, in the framework of generalized standard materials (Germain et al., 1983): a free energy
Over a step, replace the rate by the difference quotient
Its stationarity in
with its Jacobian the Hessian of
Each flux may carry a sign: a poroelastic free energy written in the strain and the pore pressure gives the stress as BiotPoroelasticity).
Derivatives with respect to the parameters, exact
Identifying a law means differentiating its response with respect to its parameters
The code obtains this without forming it. It first solves
The value of
No tolerance is ever applied to a derivative, and no finite difference is used anywhere. The same holds for a dual strain or a dual time step, which is how the tests check the consistent tangent: the Jacobian of the whole step, computed with dual numbers carried through the predictor and the Newton iterations, equals
Driving a point: mixed control
A material test prescribes some components by their gradient (an axial strain) and others by their flux (free lateral faces: zero lateral stress). Let
The consistent tangent makes this iteration converge quadratically; with a linear hardening law a single correction is exact. A step whose local or global iteration fails is retried as two half steps, recursively, which is also what a finite-element driver does.