Many mechanical constitutive models require the storage of solution-dependent state variables (plastic strains, “back stress,” saturation values, etc. in rate constitutive forms or historical data for theories written in integral form). You should allocate storage for these variables in the associated material definition (see “Allocating space” in “User subroutines: overview,”Section 18.1.1). There is no restriction on the number of state variables associated with a user-defined material.
The user material subroutines are provided with the material state at the start of each increment, as described below. They must return values for the new stresses and the new internal state variables. State variables associated with UMAT and VUMAT can be output to the output database file (.odb) and results file (.fil) using the output identifiers SDV and SDVn (see “Abaqus/Standard output variable identifiers,”Section 4.2.1, and “Abaqus/Explicit output variable identifiers,”Section 4.2.2).

Material state in Abaqus/Standard

User subroutine UMAT is called for each material point at each iteration of every increment. It is provided with the material state at the start of the increment (stress, solution-dependent state variables, temperature, and any predefined field variables) and with the increments in temperature, predefined state variables, strain, and time.
In addition to updating the stresses and the solution-dependent state variables to their values at the end of the increment, subroutine UMAT must also provide the material Jacobian matrix, Material state - 图1, for the mechanical constitutive model. This matrix will also depend on the integration scheme used if the constitutive model is in rate form and is integrated numerically in the subroutine. For any nontrivial constitutive model these will be challenging tasks. For example, the accuracy with which the Jacobian matrix is defined will usually be a major determinant of the convergence rate of the solution and, therefore, will have a strong influence on computational efficiency.
If you specify the viscoelastic behavior of materials in the frequency domain, user subroutine UMAT must also provide the damping (loss modulus) contribution to the material Jacobian matrix, in addition to the stiffness (storage modulus) contribution.
image.png