gen_fefp#

Description#

This material model provides a generalized framework for elastic, elastoplastic, viscoplastic, and multi-potential constitutive formulations at finite strains, based on the multiplicative decomposition of the deformation gradient. Similar to gen_evp, the model is constructed from an elasticity object, a set of inelastic potentials, and the interactions between these potentials. Each potential represents an inelastic dissipation mechanism and governs the evolution of an independent inelastic deformation. Hardening mechanisms are incorporated through dedicated objects associated with the corresponding potentials.

Important

To extend small strain models to finite strains, one can use “modifiers” such as lagrange_rotate or lagrange_polar (hypo-elastic formulations). Nevertheless, these types of extensions (although allowed in gen_evp due to its generic implementation) are artificial from a physical modeling perspective and do not generally correspond to a physically consistent description, particularly for single crystal plasticity. For the latter case, only models based on the multiplicative decomposition are widely accepted in the literature due to their more appropriate description of lattice rotation, and plastic spin [M4, M5].

The set of internal variables is defined by the sub-objects selected by the user. Two categories of variables are distinguished: global variables, which are associated with the overall constitutive model and relate to imposed (observable) quantities, and potential-specific variables, which are associated with individual inelastic potentials.

The complete set of internal variables can therefore be organized as follows:

\[[\ten F^e\ldots ] [ \bf p_1 {\bf h}_1 ] [ \bf p_2 {\bf h}_2 ] \ldots [ \bf p_n {\bf h}_n ]\]

where the first bracketed term represents the “global” model variables and each additional represents the potential mechanisms chosen. The first term is the elastic part of the deformation gradient.

\[\ten F = \ten F^e\ten F^p\]

Again, the \(\bf p_i\) and \(\bf h_i\) variables are defined by the chosen potentials.

If interactions are present, the evolution of hardening variables will take the form:

\[\dot{\bf h}_i = \dot{\lambda}_i~{\bf m}_i(\ten \Pi^M,~ v_i,~{\bf H}_i) - \dot{\bf \omega}_i({\bf H}_i)\]

where \(\ten \Pi^M\) is the Mandel stress tensor, \(\dot{\lambda}_i\) is the plasticity or viscoplasticity multiplier for the \(i\)-th potential, \(v_i\) is the accumulated inelastic strain, and \(\bf H_i\) are the associated forces for the potential \(i\). Note that the evolution equations will normally only be written in terms of the associated force and thus one can immediately extend these models to include state coupling.

State coupling is given through symmetric interaction matrices \(\bf M\):

\[{\bf H}_i = {\bf M}_{ij}~{\bf h}_j\]

Note

  • For now, only the \(\theta\)-integration method is available for this behavior.

  • The consistent tangent matrix is generally not symmetric. For that, use **no_symmetrize option in ***resolution section.

Syntax#

The material file structure for the gen_fefp model consists of an elasticity object, an optional thermal strain object, an optional arbitrary number of potentials (without restriction on types), and a number of optional interaction objects:

***behavior gen_fefp \(~\,\) **elasticity <ELASTICITY> [ **thermal_strain <THERMAL_STRAIN> ] [ **potential <POTENTIAL> [ name ] ] \(~\,~\,~\,~\,\) ... [ **interaction <INTERACTION> ] \(~\,~\,~\,~\,\) ...

Multi-potential models are primarily used for cases of time independent plasticity in combination with viscoplastic deformation, or to assemble multiple crystalline deformation systems. By default, there is no thermal strain, no inelastic deformation or any interactions.

The optional names (name) given after each potential type are used as a means to specify individual potentials (for interactions), and in construction of the output variable names. Normally, it is advised to use ep for a plastic potential’s name, and ev for a viscoplastic one.

Note

  • The syntax is identical to gen_evp, except that gen_evp must be replaced by gen_fefp and a compatible finite-strain formulation (e.g. updated_lagrangian) must be chosen.

  • gen_fefp does not support all features available in gen_evp (e.g. damage and localization rules).

Stored Variables

The stored variables for this model are the following:

prefix

size

description

default

Fe

UT-2

elastic part of the deformation gradient

yes

sig

T-2

Cauchy stress

yes

mandel

UT-2

Mandel stress tensor

yes

Re

UT-2

lattice rotation tensor \(\ten F^e=\ten R^e\ten U^e\)

yes

Ue

T-2

elastic right stretch tensor

yes

phic

S

the lattice rotation angle

yes

Fp

UT-2

plastic part of the deformation gradient

yes

nmi

T-2

potential named nm inelastic strain tensor

yes

nmcum

S

potential named nm cumulative inelastic strain

yes

The lattice rotation angle is given by \(\phi_c = \text{arcos}\left(\dfrac 12 \left(\trace{\ten R^e}-1\right)\right)\).

Because the behavior does not know any specifics of the potentials or the user supplied names, and the applications of the same potential object may differ according to the rest of the behavior options, the variable names are vaguely specified at this moment. Name verification are strongly advised with the -v command line switch or using the **verbose output option.

Example#

The first example is for a viscoplastic behavior with two kinematic hardening variables and a Von Mises criterion (see the following sections for the sub-model syntax):

***behavior gen_fefp
 **elasticity isotropic
    young 200000.
    poisson 0.30
 **potential gen_evp ev
  *criterion mises
  *flow norton
       n  7.0
       K  400.
  *kinematic nonlinear
      C  15000.0
      D  300.0
  *kinematic nonlinear
      C  6000.0
      D  100.0
  *isotropic constant
       R0 130.0
***return