Code_Aster deals with "UMAT"

8 September 2010

UMAT routine is a well known input format for Abaqus users, used for constitutive laws integration. The contents of this routine should include the integration of the constitutive law, that is on an integration point, compute the stress tensor, internal variables and the tangent operator.

Use of UMAT routines in a study

(see document [U2.10.01])

Creating dynamic library:

The dynamic library containing the UMAT routine must be prepared before running the calculation. For this, the user has a simple way to compile the library using the utility as_run [U1.04.00] (with a version of astk greater or equal than 1.8.3). The operation is as follows:

  • the user writes his own routine, for example umat.f
  • he creates the dynamic library associated to this routine :
    cd  /path/files/study
    as_run --make_shared -o libumat.so umat.f

Writing command file:

The coupling between UMAT and Code_Aster in the command file is illustrated below:

  • The material data are provided in the operator DEFI_MATERIAU [U4.43.01], under the keyword UMAT / UMAT_FO (50 possible coefficients, scalars or functions).
    • LIBRAIRIE=’/path/files/study/libumat.so’
    • NOM_ROUTINE=’umat’
    • NB_VARI = number of internal variables of behavior;

With this mechanism, it is quite possible to have several different UMAT behaviors (several routines in a library or even different libraries, see for example the test umat002a).

The study is then launched as usual.


See tests :

  • umat001 (thermo-elastic test with STAT_NON_LINE);
  • umat002(analytic test multi-directional with SIMU_POINT_MAT).

Current limitations

  • only 3D, AXIS, D_PLAN are allowed (and C_PLAN via ALGO_C_PLAN=’DEBORST’) ;
  • energies are not automatically computed by Code_Aster ;
  • there is no thermo-mechanical coupling.