Please find below the source files and documentation for most of the codes that we have developed during our research. Please remember to cite the corresponding paper(s) if you use any of these codes for research or industrial purposes. Do not hesitate to contact us if questions arise.


Codes available for download

Abaqus UMATHT subroutine for coupled hydrogen diffusion

UMATHTABAQUS user material (mechanical UMAT and thermal UMATHT) subroutines for implementing hydrogen diffusion coupled with mechanical deformation, suitable for multiple traps.

Paper: R. Fernández-Sousa, C. Betegón, E. Martínez-Pañeda. Analysis of the influence of microstructural traps on hydrogen assisted fatigue. Acta Materialia 199, 253-263 (2020)

Download code (.zip file)

Abaqus UEL subroutine for distortion gradient plasticity

UELDGPABAQUS user-element subroutine (UEL) for Gurtin (2004) distortion gradient plasticity formulation, incorporating the role of the plastic spin as well as dissipative and energetic higher order contributions.

Paper: S. Fuentes-Alonso, E. Martínez-Pañeda. Fracture in distortion gradient plasticity. International Journal of Engineering Science 156: 103369 (2020)

Download code (.zip file)

Abaqus UEL for phase field fracture/fatigue and quasi-Newton

UEL Quasi-NewtonABAQUS user-element subroutine (UEL) with phase field fatigue (and fracture). Includes an input file for using Quasi-Newton to run in a robust monolithic manner and a document with detailed instructions.

Paper: P.K. Kristensen, E. Martínez-Pañeda. Phase field fracture modelling using quasi-Newton methods and a new adaptive step scheme. Theoretical and Applied Fracture Mechanics 107: 102446 (2020)

Download code (.zip file)

Abaqus UMAT for power law hardening plasticity

UMAT Plasticity codeABAQUS user-material subroutine (UMAT) with a plane strain/3D implementation of von Mises plasticity with isotropic power law hardening. Includes documentation.

Paper: E. Martínez-Pañeda, S. Fuentes-Alonso, C. Betegón. Gradient-enhanced statistical analysis of cleavage fracture. European Journal of Mechanics – A/Solids 77: 103785 (2019)

Download code (.zip file)

FEniCS script for phase field fracture

FEniCS code phase fieldFEniCS Python script with a staggered implementation of the phase field fracture method, suitable for 2D and 3D case studies. Includes detailed documenation, with a line-by-line of code explanation, facilitating the learning of both FEniCS and phase field fracture methods.

Paper: Hirshikesh, S. Natarajan, R. K. Annabattula, E. Martínez-Pañeda. Phase field modelling of crack propagation in functionally graded materials. Composites Part B: Engineering 169: 239-248 (2019)

Download code (.zip file)

Abaqus UEL subroutine for strain gradient plasticity

UEL SGPABAQUS user-element subroutine (UEL) for Gudmundson (2004) higher order strain gradient plasticity formulation, including both energetic and dissipative length scales.

Paper: E. Martínez-Pañeda, V.S. Deshpande, C.F. Niordson, N.A. Fleck. The role of plastic strain gradients in the crack growth resistance of metals. Journal of the Mechanics and Physics of Solids, 126: 136-150 (2019)

Download code (.zip file)

Abaqus UEL subroutine for phase field fracture and hydrogen diffusion

Phase field HABAQUS user-element subroutine (UEL) for the coupled deformation – hydrogen transport – phase field fracture scheme presented in the associated paper.

Paper: E. Martínez-Pañeda, A. Golahmar, C.F. Niordson. A phase field formulation for hydrogen assisted cracking. Computer Methods in Applied Mechanics and Engineering, 342: 742-761 (2018)

Download code (.zip file)

Abaqus UEL subroutine for phase field fracture

UEL Phase FieldABAQUS user-element subroutine (UEL) with a robust phase field formulation for fracture. Several staggered integration schemes are available, as detailed in the accompanying documentation. (See also the code above for a monolithic quasi-Newton implementation)

Paper: E. Martínez-Pañeda, A. Golahmar, C.F. Niordson. A phase field formulation for hydrogen assisted cracking. Computer Methods in Applied Mechanics and Engineering, 342: 742-761 (2018)

Code - PhaseFieldUEL (.zip file)

Control algorithm for convergence problems in crack propagation studies

Control AlgorithmABAQUS input files with a control algorithm to overcome convergence problems in cohesive zone modelling of crack propagation. The code is largely inspired by the work by Segurado and Llorca (2004) on particle fracture in composites.

Paper: E. Martínez-Pañeda, S. del Busto, C. Betegón. Non-local plasticity effects on notch fracture mechanics. Theoretical and Applied Fracture Mechanics, 92: 276-287 (2017)

Download code (.zip file)

Matlab script for hydrogen assisted cracking predictions

Matlab H codeMatlab script to predict the variation with the applied potential of the cracking threshold and the stage II crack growth rate. The model builds on Gerberich’s decohesion dislocation-based model, strain gradient plasticity and advanced electrochemistry. See details in the associated paper.

Paper: E. Martínez-Pañeda, C.F. Niordson, R.P. Gangloff. Strain gradient plasticity-based modeling of hydrogen environment assisted cracking. Acta Materialia, 105: 9-16 (2017)

Download code (.zip file)

Abaqus2Matlab: a suitable tool for finite element post-processing

Abaqus2MatlabA toolbox to connect Abaqus and Matlab, enabling the usage of the statistical analysis, image processing, integrated graph-plotting and mathematical optimization capabilities of Matlab to post-process the outcome of advanced finite element calculations. See

Paper: G. Papazafeiropoulos, M. Muñiz-Calvente, E. Martínez-Pañeda. Abaqus2Matlab: a suitable tool for finite element post-processing. Advances in Engineering Software, 105: 9-16 (2017)

Download code (.zip file / Matlab app / Version 2.0)

Abaqus USDFLD subroutine for Functionally Graded Materials

USDFLD codeABAQUS USDFLD Subroutine for the implementation of a continuous variation of the material elastic properties between integration points.

Paper: E. Martínez-Pañeda. On the finite element implementation of functionally graded materials. Materials, 12(2): 287 (2019)

Download code (.zip file)

Matlab non-linear X-FEM code for MSG plasticity

Matlab X-FEMNon-linear eXtendend Finite Element code developed in MATLAB including the following material models: linear elasticity, von Mises plasticity and conventional mechanism-based strain gradient (CMSG) plasticity. Particularly appealing to capture the singularity intrinsic to MSG plasticity.

Paper: E. Martínez-Pañeda, S. Natarajan, S. Bordas. Gradient plasticity crack tip characterization by means of the extended finite element method. Computational Mechanics, 59: 831-842 (2017)

Download code (.zip file)

Abaqus UEL subroutine for cohesive elements

UEL cohesive elementsABAQUS user-element subroutine (UEL) with a cohesive zone formulation. Includes the dependence of the cohesive strength on the total hydrogen concentration and the effect of cyclic loading.

Paper: S. del Busto, C. Betegón, E. Martínez-Pañeda. A cohesive zone framework for environmentally assisted fatigue. Engineering Fracture Mechanics, 185: 210-226 (2017)

Download code (.zip file)

Abaqus UMAT subroutine for CMSG plasticity

CMSGcodeABAQUS User Material (UMAT) subroutine with the constitutive formulation of the conventional mechanism-based strain gradient (CMSG) plasticity theory.

Paper: E. Martínez-Pañeda and C. Betegón. Modeling damage and fracture within strain-gradient plasticity. International Journal of Solids and Structures, 59: 208-215 (2015)

Download code (.zip file)