This website, while active, is no longer being frequently updated. For the most recent information visit our Oxford website: https://mechmat.web.ox.ac.uk/


Please find below the source files and documentation for most of the codes tat 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

Julia code for phase field fracture and fatigue

Julia code for efficient fracture and fatigue predictions using the phase field method. 

Paper: P.K. Kristensen, A. Golahmar, E. Martínez-Pañeda, C.F. Niordson. Accelerated high-cycle phase field fatigue predictions. European Journal of Mechanics A/Solids 100, 104991 (2023)

Download code (.zip file)

MATLAB code for electrochemical phase field hydrogen fractures

MATLAB code to simulate hydrogen embrittlement using phase field fracture and electrolyte modelling.

Paper: T. Hageman, E. Martínez-Pañeda. A phase field-based framework for electro-chemo-mechanical fracture: crack-contained electrolytes, chemical reactions and stabilisation. Computer Methods in Applied Mechanics and Engineering 415, 116235 (2023)


Download code (.zip file)

COMSOL phase field code to predict material biodegradation

COMSOL implementation of a phase field model for prediting biocorrosion. 

Paper: S. Kovacevic, W. Ali, E. Martínez-Pañeda, J. LLorca. Phase-field modeling of pitting and mechanically-assisted corrosion of Mg alloys for biomedical applications. Acta Biomaterialia 164, 641-658 (2023)

Download code (.zip file)

COMSOL phase field code to predict concrete corrosion-induced cracking

COMSOL implementation of a phase field-based model for predicting corrosion-induced cracking in concrete. 

Paper: E. Korec, M. Jirasek, H.S. Wong, E. Martínez-Pañeda. A phase-field chemo-mechanical model for corrosion-induced cracking in reinforced concrete. Construction and Building Materials 393, 131964 (2023)

Download code (.zip file)

MATLAB code to predict corrosion under charge conservation conditions

Finite element MATLAB code to simulate natural corrosion rates in the absence of external current sources.

Paper: T. Hageman, C. Andrade, E. Martínez-Pañeda. Corrosion rates under charge-conservation conditions. Electrochimica Acta 461, 142624 (2023)

Download code (.zip file)

COMSOL implementation of electro-chemo-mechanical phase field corrosion

COMSOL implementation of phase field corrosion accounting for the role of mechanics and electrolyte electrochemistry. 

Paper: C. Cui, R. Ma, E. Martínez-Pañeda. Electro-chemo-mechanical phase field modeling of localized corrosion: theory and COMSOL implementation. Engineering with Computers (2023)

Download code (.zip file)

Abaqus UEL subroutine for piezoresistive fracture

Abaqus UEL subroutine to simulate coupled deformation-electrical-phase field fracture behaviour in CNT-based composites.

Paper: L. Quinteros, E. García-Macías, E. Martínez-Pañeda. Electromechanical phase-field fracture modelling of piezoresistive CNT-based composites. Computer Methods in Applied Mechanics and Engineering 407, 115941 (2023)

Download code (.zip file)

MATLAB code to predict H uptake using lumped integration

Finite element MATLAB code for electrochemical reactions, using lumped integration for efficiency and robustness, and particularised to the case of hydrogen uptake. 

Paper: T. Hageman, E. Martínez-Pañeda. Stabilising effects of lumped integration schemes for the simulation of metal-electrolyte reactions. Journal of The Electrochemical Society 170, 021511 (2023) 

Download code (.zip file)

COMSOL-MATLAB code to estimate H diffusivity from isothermal TDS

COMSOL-MATLAB files to fit the output of an isothermal TDS experiment so as to obtain the diffusivity of hydrogen in metals.

Paper: A. Zafra, Z. Harris, E. Korec, E. Martínez-Pañeda. On the relative efficacy of electropermeation and isothermal desorption approaches for measuring hydrogen diffusivity. International Journal of Hydrogen Energy 48, 1218-1233 (2023)

Download code (.zip file)

Abaqus UMAT for phase field fracture with a Drucker-Prager criterion

ABAQUS UMAT user subroutine for implementing a generalised version of phase field fracture allowing for any fracture driving force split (including Drucker-Prager) and any choice of crack density function.

Paper: Y. Navidtehrani, C. Betegón, E. Martínez-Pañeda. A general framework for decomposing the phase field fracture driving force, particularised to a Drucker-Prager failure surface. Theoretical and Applied Fracture Mechanics 121, 103555 (2022)

Download code (.zip file)

COMSOL module to predict hydrogen uptake in metals

COMSOL Physics builder to predict hydrogen uptake through an electro-chemo-mechanics framework that resolves the HER.

Paper: T. Hageman, E. Martínez-Pañeda. An electro-chemo-mechanical framework for predicting hydrogen uptake in metals due to aqueous electrolytes. Corrosion Science 208, 110681 (2022)

Download code (.zip file)

BrazVal: A MATLAB App to assess the validity of the Brazilian test

MATLAB App that enables assessing the validity of the Brazilian test and provides the material strength from test data.

Paper: Y. Navidtehrani, C. Betegón, R.W. Zimmerman, E. Martínez-Pañeda. Griffith-based analysis of crack initiation location in a Brazilian test. International Journal of Rock Mechanics and Mining Sciences 159, 105227 (2022)

Download code (.zip file)

COMSOL model for phase field fatigue in Li-Ion battery materials


COMSOL implementation of a coupled deformation-diffusion-fracture/fatigue model with application to cracking in Li-Ion battery electrode particles

Paper: W. Ai, B. Wu, E. Martínez-Pañeda. A coupled phase field formulation for modelling fatigue cracking in lithium-ion battery electrode particles. Journal of Power Sources 544, 231805 (2022)

Download code (.zip file)

Abaqus UMAT for phase field fracture


Phase field UMATABAQUS user material (UMAT) user subroutine for implementing phase field fracture without the need for user elements by taking advantage of the heat transfer equation.

Paper: Y. Navidtehrani, C. Betegón, E. Martínez-Pañeda. A simple and robust Abaqus implementation of the phase field fracture method. Applications in Engineering Science 6, 100050 (2021).

Paper: Y. Navidtehrani, C. Betegón, E. Martínez-Pañeda. A unified Abaqus implementation of the phase field fracture method using only a user material subroutine. Materials 14(8): 1913 (2021).

Download code (.zip file)

Abaqus UEL subroutine for phase field corrosion

 

UEL Corrosion

ABAQUS user element subroutine (UEL) to implement the phase field method for corrosion modelling, which enables predicting uniform and localised corrosion, pitting, the pit-to-crack transition and stress corrosion cracking (SCC). 

Paper: C. Cui, R. Ma, E. Martínez-Pañeda. A phase field formulation for dissolution-driven stress corrosion cracking. Journal of the Mechanics and Physics of Solids 147: 104254 (2021)

Download Code (.zip file)

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)

Download code (.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 www.abaqus2matlab.com

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)

Abaqus UELMAT for phase field fracture

ABAQUS UELMAT subroutine to implement the phase field fracture method in combination with any material model available in ABAQUS.

Paper: Z. Khalil, A.Y. Elghazouli, E. Martínez-Pañeda. A generalised phase field model for fatigue crack growth in elastic-plastic solids with an efficient monolithic solver. Computer Methods in Applied Mechanics and Engineering 388, 114286 (2022)
 
Paper: M. Simoes, C. Braithwaite, A. Makaya, E. Martínez-Pañeda. Modelling fatigue crack growth in Shape Memory Alloys. Fatigue & Fracture of Engineering Materials & Structures 45, 1243-1257 (2022)

Download code (.zip file)

Contact us

Write to e.martinez-paneda@imperial.ac.uk for establishing a collaboration or to inquire for vacancies.