gen_evp#

Description#

This material model is a generalized implementation of elastic, elastic-plastic or viscoplastic, and multi potential constitutive equations. The model is constructed entirely using object “bricks.” For the moment, the model will be constructed using an elasticity object, a number of “potentials” and interactions between the potentials. Potentials represent inelastic dissipations which describe the evolution of independent inelastic deformation mechanisms. Hardening mechanisms are modeled with objects within the individual potentials (type of hardening depending on the type of potential) and are thus not yet specified. This behavior is essentially a manager of sub-model objects, and will be discussed in general terms about the permissible variables.

The model’s internal variables are determined by the sub-objects which have been selected by the user. The general storage form includes variables which are “global” to the material laws, and therefore form relations with the imposed (observable) variables or apply to all the potentials. Each potential may additionally contain “parameter” variables which do not have associated forces, and “hardening” variables which do have associated forces. The distinction concerns the form of interaction which is possible. The total variables may therefore be envisioned as:

(244)#\[[\ten \varepsilon_{el} \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 noted to assume a linear elastic small deformation law 1extensions which change the \(\ten \varepsilon_{el}\) variable will be given in the next release of ZéBuLoN. Again, the \(\bf p_i\) and \(\bf h_i\) variables are defined by the chosen potentials.

The model additionally stores auxiliary variables used as secondary output data. These variables take the following form:

(245)#\[[\ldots] [\ten \varepsilon_{1} \ldots] [\ten \varepsilon_{2} \ldots]\ldots [\ten \varepsilon_{n} \ldots]\]

The first bracketed term is again for the “global” auxiliary variables and the following bracketed terms indicates each potential’s variables. In the event of more than one potential, the first total inelastic strain, \(\ten \varepsilon_{in}=\sum\ten \varepsilon_i\) will be stored in addition to each inelastic deformation component.

If interactions are present, the hardening variable evolutions will take the form:

(246)#\[\dot{\bf h}_i = \dot{\lambda}_i~{\bf m}_i(\ten \sigma,~ v_i,~{\bf H}_i) - \dot{\bf \omega}_i({\bf H}_i)\]

where \(\dot{\lambda}_i\) is the plasticity or viscoplasticity multiplier for the \(i\)-th potential, \(v_i\) is the cumulated inelastic strain equivalent, 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 2exceptions are available.

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

(247)#\[{\bf H}_i = {\bf M}_{ij}~{\bf h}_j\]

Syntax#

The material file structure for the gen_evp 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_evp [ modifier ] \(~\,\) **elasticity <ELASTICITY> [ **global_output ] [ **damage <DAMAGE> ] [ **localization <LOCALIZATION> ] [ **global_function <GLOBAL_FUNCTION> ] [ **thermal_strain <THERMAL_STRAIN> ] [ **conductivity <CONDUCTIVITY> ] [ **potential <POTENTIAL> [ name ] ] \(~\,~\,~\,~\,\) ... [ **interaction <INTERACTION> ] \(~\,~\,~\,~\,\) ...

The compatibility of objects with the other objects, and with the integration method will be investigated during the running of the problem. Because of the dynamic nature of these models however, it is often difficult to make any verification as to the physical meaning of a particular model combination. It is therefore strongly advised to observe the material behavior on a single element. This allows experimentation of the integration method and selection of the output variables without performing costly full scale calculations.

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.

Unless the option **global_output is given, the internal variables are stored in their local material frame instead of the global one.

Stored Variables

The stored variables for this model are the following:

prefix

size

description

default

eto

T-2

total (small deformation) strain

yes

sig

T-2

Cauchy stress

yes

eel

T-2

elastic strain

no

ein

T-2

total inelastic strain tensor

yes

enmi

T-2

potential named nm inelastic strain tensor

yes

The variable ein is only stored in the event of multiple potentials. The separate inelastic strain tensors for each potential, and their hardening variable names will be given for each separate potential type.

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 verifications 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_evp
 **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

Different cases using this behavior are described more fully in the example handbook.

This behavior is designed to work normally with all the integration methods, and gives the best tangent matrix possible for a given model. The use of specialized options may however limit the use to a certain integration, or otherwise. The user of this behavior is therefore advised to try the theta_method method integration on a volume element, and adjust solution parameters according to the messages output if any 3This process will be automated for the best combination in later versions of the code.