This repository contains a user-defined material subroutine (VUMAT) implementing the Johnson–Cook constitutive model for finite deformation plasticity with strain rate and temperature dependence, as well as isotropic damage evolution. The code is developed for use in Abaqus/Explicit
and written in double precision Fortran.
The implementation is fully documented and based on a return mapping algorithm using the bisection method for stable plastic correction. Damage initiation is based on the Johnson–Cook criterion, while damage evolution follows a displacement-based linear softening law (Displacement at Failure).
A detailed derivation of the governing equations and numerical implementation is provided in the following PDF:
The validation/
folder contains input files and plots for comparing this VUMAT implementation against Abaqus' built-in Johnson–Cook model. The test consists of a single-element cube made of Ti-6Al-4V undergoing uniaxial deformation.
jc_ti64_abq_builtin.inp
— Abaqus built-in Johnson–Cook modeljc_ti64_vumat.inp
— Custom Johnson–Cook VUMAT
The plots below compare the stress–strain response and damage evolution between the two models. The agreement confirms the accuracy of the implementation.
Material parameters used in the validation test are referenced in validation/citations.md
.
If you use this code in your work, please cite it using the following Zenodo record:
BibTeX:
@software{arcidiacono2025johnsoncook,
author = {Arcidiacono, Mauro F. and Rahimi, Salaheddin},
title = {Johnson–Cook VUMAT with Damage and Thermal Effects},
version = {v1.0.0},
year = {2025},
publisher = {Zenodo},
doi = {10.5281/zenodo.15839293},
url = {https://doi.org/10.5281/zenodo.15839293}
}