2D MATLAB XFEM Codes
Here is a collection of MATLAB codes which are being offered for download in an attempt to help increase understanding of enriched finite element methods. Note that all codes were verified in MATLAB R2009a, thus older versions of MATLAB may have difficulties running parts of any of the following files.
All simulations in documentation or on the website were performed on a Pentium 4 3.0 GHz CPU with 4 GB of memory within MATLAB R2009a in x64 Windows XP. Older versions of MATLAB before 7.2 may not be able to solve the system of equations accurately, leading to erroneous results.
2D Plane Stress/Strain for Cracks, Inclusions, and Voids
This code includes the ability to model homogeneous1,2 cracks in addition to material interfaces3 and voids4 on a structured mesh of rectangular size. Modify the geometry according to inputGeometry.m and run xfemQuasiStatic to solve the given problem. Variables which can be modified include material properties (E1, v1, E2, v2), geometric properties (domain height, domain width, crack location, inclusions and voids), applied loading, boundary conditions and plots (level sets, initial mesh, deformed mesh, stress contours). For optimization and quasi-static problems, a reanalysis algorithm5 is used to reduce the computational time.
MATLAB XFEM (MXFEM) Package with Cracks, Inclusions and Voids v1.2 (DOWNLOAD)
Version 1.2 should be relatively empty of bugs and is well documented.
MATLAB XFEM (MXFEM) Package with Cracks, Inclusions and Voids v1.3 (DOWNLOAD)
Version 1.3 is more experimental and is not well documented. This version allows the ability to model variable amplitude loading as well as being more user-friendly to create new crack direction, equivalent stress intensity factor range, or fatigue subroutines.
Please reference the use of the MXFEM code in any resulting publications as:
Pais, M., "MATLAB Extended Finite Element (MXFEM) Code v1.2," www.matthewpais.com, 2011.
Pais, M., "MATLAB Extended Finite Element (MXFEM) Code v1.3," www.matthewpais.com, 2011.
1. Moes, N., Dolbow, J., Belytschko, T. (1999) "A finite element method for crack growth without remeshing," International Journal for Numerical Methods in Engineering, 46, 131-150.
2. Stolarska, M., Chopp, D.L., Moes, N., Belytschko, T. (2001) "Modeling crack growth by level sets in the extended finite element method," International Journal for Numerical Methods in Engineering, 51, 943-960.
3. Moes, N., Cloirec, M., Cartraud, P., Remacle, J.F. (2003) "A computational approach to handle complex microstructure geometries," Computer Methods in Applied Mechanics and Engineering, 192, 3163-3177.
4. Sukumar, N., Chopp, D.L., Moes, N., Belytschko, T. (2001) "Modeling holes and inclusions by level sets in the extended finite-element method," Computer Methods in Applied Mechanics and Engineering, 190, 6183-6200.
5. Pais, M., Kim, N.H., Davis, T. (2010) "Reanalysis of the extended finite element method for crack initiation and propagation," 51st AIAA/ASME/ASCE/AHS/ASC Structures, Structural Dynamics, and Materials Conference, Orlando, Florida.