A simple example for Umat subroutine in Abaqus



Umat subroutine is a powerful tool to define complex material properties. Before starting to learn more about it we need to have some background information about Abaqus and what subroutine means.

What is Abaqus?

The Abaqus is an FEA software that offers powerful and complete solutions for both simple and complex engineering problems covering a large number of industrial applications. In the automotive industry, for example, it is possible to consider full vehicle loads, dynamic vibration, multibody systems, impact/crash, nonlinear static, thermal coupling, and acoustic-structural coupling using a common model data structure and integrated solver technology. There are many companies that take advantage of Abaqus for their processes and tools, to reduce costs and inefficiencies, and gain a competitive advantage. Abaqus provides options such as scripting and using subroutine to offer more flexibility in simulating the process.


User subroutines allow advanced users to customize their  Abaqus simulation for a wide variety of applications. Information on writing user subroutines and detailed descriptions of each subroutine are available in the Abaqus documentation. A listing and explanation of associated utility routines also appear in that guide (Click here). One of the most interesting subroutines that have been used many times is the Umat subroutine. The Umat subroutine allows users to simulate a process using complex material.

Umat subroutine

In this video, you will learn how to create a model using Umat code. Umat is useful in defining the behaviour of a material and its response to the applied load. Some people think, Umat is for defining new material properties but that is not correct! To define new material behaviour you can use USDFLD code but Umat is used to define material response and how stress is distributed in part. For example, if you want to define the anisotropic behaviour or even new failure criteria it is better to use Umat subroutine. To define damage properties in the material it is common to use Umat subroutine but it is possible to use USDFLD instead. If you are interested to learn USDFLD, please visit the following link:

An Example for USDFLD Subroutine in Abaqus

In order to understand the concept of this video, you might need to have a brief background of continuum mechanics. As it was explained in this course we need to form a tensor that links the stress to stress. We know it as young modules for the 1D tensile test. However, for the 3D problems, it will be a 4 order tensor.

In Umat subroutine Video

At the beginning of the video, a simple explanation of the Umat subroutine is provided. It explains why we need to use the Umat subroutine and how it helps to define complex material properties. The provided example is very simple and easy to understand. We used a simple component for a tensile test by the uniform load on top of it. Only the elastic material is defined and the subroutine code uses Von mises criteria to predict the stress. The video is short so you can learn it in less than 15 minutes. You will have the output file (*ODB) and the Abaqus CAE file.

For more advanced coding to define anisotropic material please check the following product:

Anisotropic material in Umat code for Abaqus

 In this video, we avoid giving too many details so you can easily use the product. Here, you can find the following files:

Abaqus files: CAE, ODB, INP, and JNL

Video files: How to create this model and PowerPoint file.

For more information please send me an Email:




Easy learning

1 review for A simple example for Umat subroutine in Abaqus

  1. HyperLyceum Team (verified owner)

    You probably can find the UMAT code on the internet but here have the explanations

Only logged in customers who have purchased this product may leave a review.