A Computationally Efficient Vectorized Implementation of Localizing Gradient Damage Method in MATLAB

Subrato Sarkar
DOI: https://doi.org/10.48550/arXiv.2301.06503
2023-01-17
Abstract:In this work, a recently developed fracture modeling method called localizing gradient damage method (LGDM) is implemented in MATLAB. MATLAB is well-known in the computational research community for its simple and easy-to-learn coding interface. As a result, MATLAB is generally preferred for the initial development (prototyping) of computational models by researchers. However, MATLAB-developed codes are seldom used for large-scale simulations (after initial development is complete) due to their computational inefficiency. Hence, a computationally efficient implementation of LGDM using MATLAB vectorization is presented in this work. The choice of LGDM (as the fracture modeling method) is based on its thermodynamically consistent formulation built upon the micromorphic framework. Moreover, the non-linear coupled field formulation of LGDM makes it suitable for testing the computational efficiency of vectorized MATLAB implementation in a non-linear finite element setting. It is shown in this work that the vectorized MATLAB implementation can save significant computational resources and time as compared to non-vectorized implementations (that are parallelized with MATLAB parfor). The vectorized MATLAB implementation is tested by solving numerical problems in 1D, 2D and 3D on a consumer-grade PC, demonstrating the capability of vectorized implementation to run simulations efficiently on systems with limited resources. The sample source codes are provided as supplementary materials that would be helpful to researchers working on similar coupled field models.
Numerical Analysis
What problem does this paper attempt to address?
The main problem that this paper attempts to solve is the issue of improving the computational efficiency of the Localized Gradient - Damage Method (LGDM) using MATLAB. Specifically, the author optimizes the implementation of LGDM in MATLAB by introducing vectorization techniques, thereby significantly reducing the computation time and memory usage, enabling large - scale simulations to run efficiently even on resource - limited systems. ### Background and Problem Description of the Paper - **Research Background**: Computational material fracture is a broad research area, involving applications from the nano/micro scale to large - scale structures. However, the learning curve for computational fracture modeling is very steep, making it difficult for novice researchers and even experienced researchers to start, because developing these computational fracture models from scratch requires a great deal of effort and there is a lack of open - source code. - **Existing Challenges**: Although MATLAB is popular in the computational research community due to its simple coding interface, its computational efficiency is low and it is not usually used for large - scale simulations. This limits the wide use of MATLAB in practical applications. - **Research Objectives**: This paper aims to improve the computational efficiency of LGDM in MATLAB through vectorization techniques, enabling it to handle nonlinear phenomena such as material fracture more efficiently. ### Solutions - **Vectorized Implementation**: The author proposes a vectorized MATLAB implementation that improves computational efficiency by eliminating loop operations and using matrix operations. - **Performance Comparison**: By comparing with non - vectorized implementations (including the version using MATLAB parallel loop `parfor`), the significant advantages of the vectorized implementation are demonstrated. - **Scope of Application**: The vectorized implementation is applicable not only to 1D, 2D, and 3D problems, but can also run efficiently on consumer - grade PCs, demonstrating its applicability on resource - limited systems. ### Main Contributions - **Efficient Vectorized Implementation**: Through vectorization techniques, the computational efficiency of LGDM in MATLAB is significantly improved, reducing the computation time and memory usage. - **Detailed Code Structure Comparison**: The structural differences between non - vectorized and vectorized MATLAB codes are discussed in detail, providing a reference for the vectorization of other coupled - field nonlinear methods. - **Open - Source Code**: Example source code is provided as supplementary material, which helps researchers understand and modify the code. ### Conclusions Through vectorization techniques, the computational efficiency of MATLAB implementation has been significantly improved, enabling large - scale simulations to run efficiently on resource - limited systems. This improvement not only enhances the computational efficiency, but also improves the understandability and modifiability of the code, which is of great significance for the development of the computational fracture modeling field.