Home » Blog » Blog » Most Typically Used Subroutines in Abaqus

Most Typically Used Subroutines in Abaqus

In this article you will read

Table of Contents

Main Article

Last updated on:

Abaqus provides the users with an extensive array of user subroutines regarding standard, explicit (or CFD analyses). For instance, here we introduce some of the most popular and important subroutines in Abaqus/Standard and Explicit. Writing user subroutines with Abaqus will be presented in the last part of the article. However, all user subroutines applicable in Abaqus can be found in the Abaqus User Subroutines Reference Guide:

Subroutine Reference Guide in Documentation

We start with simpler ones:

1. DLOAD (Abaqus/Standard) & VDLOAD (Abaqus/Explicit)

They are typically used when a load is a complex function of time and/or position (a f (t, x) function for a load). So, use these subroutines to define nonuniform, distributed mechanical loads (pressures and body forces). These subroutines can also be used to define a load that varies with element number and/or integration point number.

DLOAD VDLOAD Usage in Abaqus CAE | writing user subroutines with Abaqus

Abaqus DLOAD and VDLOAD Subroutines

This training package helps Abaqus users to prepare complex DLoad and VDLoad subroutines. With the help of these workshops, you can get acquainted with the basic and comprehensive way of DLoad and VLoad subroutine writing and their applications. By viewing this package as an engineer, you can do basic projects with complex loads.

2. DISP (Abaqus/Standard) & VDISP (Abaqus/Explicit)

They can be used to prescribe translational and rotational boundary conditions; for all degrees of freedom listed in the associated BC. You can specify values for either the degree of freedom or its time derivatives, such as velocity
and acceleration.

3. FRIC (Abaqus/Standard) & VFRIC (Abaqus/Explicit) & VFRICTION (Abaqus/Explicit)

These subroutines are used when more complex models than those provided with Abaqus are needed to describe the transmission of shear forces between surfaces in contact. writing user subroutines with Abaqus will be available in other posts and products.

Introduction to VFRICTION and VFRIC Subroutines in ABAQUS

This tutorial help you in cases where the classical Columbian equations are more complex and cannot be implemented by the graphical ABAQUS environment. This package introduces and teaches how to write these two subroutines. This introduction contains explaining different optional and mandatory parameters of VFRICTION and VFRIC subroutines.

4. FILM (Abaqus/Standard)

Typically used when either the film coefficient, h, or sink temperature, θs, is a complex function of time, position, and/or surface temperature.

5. HETVAL (Abaqus/Standard) & VHETVAL (Abaqus/Explicit)

We use that to define complex models for internal heat generation in a material, such as might occur when the material undergoes a phase change. VHETVAL more recently (from Abaqus 2018) added to Abaqus.

6. UEXPAN (Abaqus/Standard)

Use this subroutine to define incremental thermal strains when the material’s thermal expansion is too complex to model with Abaqus itself.

writing user subroutines with abaqus

In this tutorial, how to define increments of thermal strains, in order to model thermal expansion, is taught. The implementation of thermal expansion in model is done with UEXPAN and VUEXPAN subroutines for Abaqus/Standard solver (implicit method). In user subroutines UEXPAN or VUEXPAN, the increments of thermal strains can be defined as functions of predefined field variables, temperature, and state variables.

UEXPAN and VUEXPAN are called for all integration points of part elements where the definition of material or gasket behavior includes user-subroutine-defined thermal expansion.

The subroutines are used when the material’s thermal expansion behavior is too complex to model with the "EXPANSION" option in the Abaqus software environment. For example, the subroutines are used in problems where the thermal strains are complexly dependent on temperature, predefined field variables, and state variables, and there is a need to update these variables.

The user subroutine UEXPAN is called twice per element point in each iteration during coupled thermal-electrical-structural or coupled temperature-displacement analyses.

7. DFLUX (Abaqus/Standard) & VDFLUX (Abaqus/Explicit)

When a nonuniform distributed flux is a function of position, time, temperature, etc., in a heat transfer or mass diffusion analysis, you may need to use this subroutine. VDFLUX, more recently (from Abaqus 2016) added to Abaqus.

DFLUX subroutine in ABAQUS-Front

DFLUX subroutine (VDFLUX Subroutine) is used for thermal loading in various body flux and surface flux states in heat transfer and temperature displacement solvers when flux load is a function of time, place, or other parameters. In this package, you will learn “when do you need to use this subroutine?”, “how to use the DFLUX subroutine”, “what is the difference between DFLUX & VDFLUX?”, “how to convert DFLUX to VDFLUX and vice versa?”, and “How to use it in an example?”. Three workshops are presented so you can learn all these stuff in action: Simulation of welding between two plate with DFLUX subroutine, Simulation of Arc welding between two tube with DFLUX, and Simulation of different types of functional heat flux(Body-surface-Element) in plate with Johnson-cook plasticity with VDFLUX subroutine(Thermomechanical Analysis).

8. USDFLD (Abaqus/Standard) & VUSDFLD (Abaqus/Explicit)

They can define the values of field variables directly at the integration points of elements. The subroutines have access to solution data, so the field variable values can be functions of element variables such as stress, strain, strain rate, etc. We can define most material properties in Abaqus as functions of field variables. Therefore, the material properties can be a function of the solution data.
We use them usually when needing to model complex material behavior and do not want to develop a UMAT/VUMAT subroutine.( writing user subroutines with Abaqus)

USDFLD AND VUSDFLD SUBROUTINES in ABAQUS

In this usable tutorial, the material properties can change to an arbitrary dependent variable. One of the most important advantages of this subroutine is simplicity and applicability. Various and high usage examples are unique characteristics of the training package.

This training package includes 5 workshops that help you to fully learn how to use USDFLD and VUSDFLD subroutines in Abaqus software. By means of these subroutines, you will have expertise redefine field variables at a material point by the solution dependence of standard and explicit, respectively.

9. CREEP

Use this subroutine to define time-dependent, viscoplastic deformation in a material. The deformation is divided into deviatoric behavior (creep) and volumetric behavior (swelling).

10. UGENS

Use this subroutine to define complex, nonlinear mechanical behavior for shell elements directly in terms of the shell element’s section stiffness.

11. UMAT (Abaqus/Standard) & VUMAT (Abaqus/Explicit)

To define any complex, constitutive models for materials that cannot be modeled with the available Abaqus material models.

UMAT subroutine | Learn UMAT Abaqus | Umat Abaqus course

This package is usable when the material model is not available in ABAQUS software. If you follow this tutorial package, including standard and explicit solver, you will have the ability to write, debug and verify your subroutine based on customized material to use this in complex structures. These lectures are an introduction to write advanced UMAT and VUMAT subroutines in hyperelastic Martials, Composites and Metal and so on.

Watch Demo

12. UMATHT (Abaqus/Standard) & VUMATHT (Abaqus/Explicit)

Use these subroutines to define the thermal constitutive behavior of the material as well as internal heat generation during heat transfer processes. VUMATHT more recently (from Abaqus 2018) added to Abaqus.

UMATHT Abaqus

UMATHT stands for User Material Heat Transfer. This subroutine is used to define a material's thermal behavior. When you have a thermal analysis and want to define the material's behavior and properties, which the Abaqus CAE cannot support, you need to use the UMATHT subroutine. This subroutine needs to define different variables, including the internal thermal energy per unit mass, the variation of internal thermal energy per unit mass with respect to temperature, etc. In this package, you will learn what the UMATHT subroutine is? When do we need to use it? And how it works, with some examples.

13. UEL (Abaqus/Standard) & VUEL (Abaqus/Explicit)

When it is necessary to create elements with an element formulation that is not available in Abaqus element library, we use them.

Introduction to UEL SUBROUTINE in ABAQUS

UEL stands for User-defined Elements. When you have a finite element analysis that requires an element type that doesn't exist in the Abaqus element library, you must write a UEL subroutine. Or, when you want to define various element shape functions, the UEL would be the best choice. This subroutine is one of the most sophisticated in the Abaqus and is intended for advanced users. With this tutorial package, you can become an advanced user and learn how to write such a complex subroutine. This package contains two workshops: writing a UEL subroutine for a planar beam element with nonlinear section behavior and writing a UEL subroutine for a beam element with specific boundary conditions and loading. Watch Demo

14. UEXTERNALDB (Abaqus/Standard) & VEXTERNALDB (Abaqus/Explicit)

To manage external databases that may be used by other user subroutine or other software programs that are providing Abaqus data and/or using data generated by Abaqus.

writing user subroutines with Abaqus, is there any tutorial?

It would be useful to see Abaqus Documentation to understand how it would be hard to start an Abaqus simulation without any Abaqus tutorial.

Related Articles

Author

Alvin Molberg

Alvin Molberg is a distinguished expert in Mechanical Engineering and a pivotal figure at CAE Assistant, where he serves as the Training Manager. With advanced degrees from the University of Michigan and New Mexico State University, Alvin specializes in complex fields including composite materials, aerospace engineering, and additive manufacturing. His deep proficiency in Abaqus and finite element analysis allows him to master advanced subroutines for specialized industrial applications. Dedicated to bridging the gap between theory and simulation, he develops comprehensive training packages that empower engineers worldwide to resolve complex technical hurdles and optimize high-performance materials in modern aerospace and research sectors.

Your comments

Leave a Reply

This package includes the free version of the two following packages. The following packages include 11 workshops for writing different types of subroutines and give you instructions and points to write your own UMAT/VUMAT subroutine. Here, a UMAT Abaqus example is free to download.

UMAT Subroutine (VUMAT Subroutine) introduction” is used when the material model is not available in ABAQUS software. If you follow this tutorial package, including standard and explicit solver, you will have the ability to write, debug and verify your subroutine based on customized material to use this in complex structures. These lectures are the introduction to writing advanced UMAT and VUMAT subroutines in hyperelastic Martials, Composites, and Metal, and so on. Watch Demo

“Advanced UMAT Subroutine (VUMAT Subroutine)” training package helps Abaqus users to prepare complex UMAT and VUMAT subroutines. This training package is suitable for those who are familiar with subroutine or want to learn UMAT/VUMAT subroutine Professionally. Equations for computational plasticity based on kinematic stiffness are also discussed. In addition, metal damage has been implemented based on Johnson Cook’s model. Watch Demo