SimcenterKnowledge

Materials > Using custom materials > Simcenter Samcef user-defined material models

Simcenter Samcef UMAT subroutine

In the Simcenter Samcef UMAT XML file, you set the data for your user-defined materials.

Among all the data, for a given material definition, you specify the cardSpec tag that set the name of the specialized subroutine in which you want to parse that material.

For more information on the UMAT XML definition, see Simcenter Samcef UMAT XML file.

In this subroutine, you implement how you want to parse the material data and how this material interacts with the computation (constitutive equations, …).

The OVMBXX.f UMAT root subroutine

All these specialized subroutines are gathered in the UMAT OVMBXX.f main routine.

Note:

You cannot change the name of that main routine.

In this routine, you design switches that will use the cardSpec tags to call the suitable specialized subroutine.

For instance, if in the following OVMBXX.f routine:

 SUBROUTINE OVMBXX (..)      IF (USROUT(1:6).EQ.'OVMB01') THEN     CALL OVMB01 (.....)ELSE IF (USROUT(1:6).EQ.'OVMB02') THEN     CALL OVMB02 (....) END
  1. The user material with the cardSpec tag of name OVMB01 will be parsed by the OVMB01.f specific subroutine.

  2. The user material with the cardSpec tag of name OVMB02 will be parsed by the OVMB02.f specific subroutine.

Note:

These specific subroutines must be named as OVMB01.f, OVMB02.f, etc... where OVMB is the generic name for all of them.

A detailed example of this mechanism is available in the Samcef UMAT material page in the Simcenter Samcef documentation.

The OVMB* subroutines

In these subroutines you parse and analyze one of your user-defined material in 3 basic steps:

  1. You parse your user-defined material parameters and related quantities.

  2. You set state variables.

  3. You use these variables in the definition of the constitutive equations.

A detailed example of this workflow is available in the Samcef User-defined material: an elastic damage behavior page in the Simcenter Samcef documentation.

Compiling the UMAT routines

After you design these routines, you need to compile them into a dll file and add the created dll to the Simcenter Samcef environment. For more information, see Compiling the Simcenter Samcef UMAT subroutine.

Learn more

Simcenter Samcef user-defined materials overview

Simcenter Samcef UMAT workflow

Simcenter Samcef UMAT XML file

Compiling the Simcenter Samcef UMAT subroutine

Prerequisites for Simcenter Samcef user-defined materials

Simcenter Samcef UMAT troubleshooting

Simcenter Samcef UMAT output requests and results

Simcenter Samcef UMAT export

Import of a Simcenter Samcef UMAT material

Define a Simcenter Samcef UMAT material

Quick links

Command reference

Pre/Post video examples

Bulk Entry Descriptions

Simcenter 3D tutorials

Browse Simcenter 3D help by product area

Simcenter Samcef UMAT subroutine, Simcenter 3D 2021.1 Series

© 2020 Siemens

window.mainLanguage="en_US"

window.delivId=""

window.projectId=""

MathJax.Hub.Config({ TeX: { extensions: ["autoload-all.js"] }, tex2jax: { displayMath: [ ] }, "SVG": { scale: 125 } });

Source: https://docs.sw.siemens.com/en-US/doc/289054037/PL20200601120302950.advanced/xid1665700 · retrieved 2026-07-17