UMAT4COMSOL: An Abaqus user material (UMAT) subroutine wrapper for COMSOL
S. Lucarini, E. Martínez-Pañeda
TL;DR
This work tackles the limitation of COMSOL in directly utilizing Abaqus UMAT material models by introducing UMAT4COMSOL, a C-based wrapper that enables Abaqus Fortran UMATs to be used as COMSOL External Materials. It details the required input/output transformations between COMSOL and Abaqus conventions for both small-strain and finite-strain constitutive laws, and demonstrates accuracy and convergence parity through elastoplasticity, hyperelasticity, crystal plasticity, and a coupled hydrogen diffusion–deformation benchmark. The results show exact or near-exact agreement with Abaqus across multiple complex material models, validating the wrapper’s ability to extend COMSOL’s multiphysics capabilities with Abaqus-era material physics. By enabling this nonintrusive integration, UMAT4COMSOL broadens the practical impact of advanced material modelling in multi-physics contexts, with the code freely available to the community.
Abstract
We present a wrapper that allows Abaqus user material subroutines (UMATs) to be used as an External Material library in the software COMSOL Multiphysics. The wrapper, written in C language, transforms COMSOL's external material subroutine inputs and outputs into Fortran-coded Abaqus UMAT inputs and outputs, by means of a consistent variable transformation. This significantly facilitates conducting coupled, multi-physics studies employing the advanced material models that the solid mechanics community has developed over the past decades. We exemplify the potential of our new framework, UMAT4COMSOL, by conducting numerical experiments in the areas of elastoplasticity, hyperelasticity and crystal plasticity. The source code, detailed documentation and example tutorials are made freely available to download at www.empaneda.com/codes.
