On coding a general user material subroutine

As a tutorial, this post shows a simple and extensible user material subroutine (UMAT), where large deformation is considered. For simplicity, the hypoelasticiy is adopted as the material law. The robustness and correctness of the general UMAT is demonstrated in two examples: one is the uniaxial extention test of a single element; the other is the triaxial compression test of a single element.

Caption: (a) uniaxial extension test of a single element (Force v.s. extention). (b) triaxial compression test of a single element (Volume strain v.s. compression). Both examples show the consistent results with the one obtained by the built-in subroutine.

The source code can be found here: Hypoelasticity

Detailed comments are added in the source code for explanation. The framework designed in the source code can be easily applied to other material laws, such as hyperelasticity, plasticity and viscoelasticity.

⬅️ Go back