Parallel-CDM
Parallel-CDM: Parallel Implementation of Continuum Damage Mechanics Simulations using FEM and MATLAB - Published in JOSS (2025)
Science Score: 98.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 4 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org -
○Academic email domains
-
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Scientific Fields
Repository
Basic Info
- Host: GitHub
- Owner: Habiba-Eldababy
- License: mit
- Language: MATLAB
- Default Branch: main
- Size: 4.66 MB
Statistics
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 1
Metadata Files
README.md
Parallel-CDM
This repository contains a MATLAB-based code and the relevant documentation to solve Computational Damage Mechanics (CDM) problems in parallel. This is a significantly enhanced and updated version of a serial-based CDM code published here. The repo contains the following folders:
a) Paper: contains the article files
b) Code: contains all the code files
c) Documentation: contains a document with a thorough explanation of the code functionalities, limitations, how-to-run instructions, and more.
d) Test Problems: contains the mesh details and hyperparameters for several benchmark problems
Software Features
This code performs parallel‐based simulations of continuum damage mechanics problems. In its current formulation, the following features are available:
- The code models the performance of quasi‐brittle materials, and the user can select between two relevant damage models that capture such behavior: the Mazars [1] and the Geers [2] damage laws.
- The code performs quasi‐static simulations for 2D problems (plane‐strain or plane‐stress).
- The code supports the analysis of both structured and unstructured meshes, with quadrilateral elements that contain 4 Gauss points.
- Two numerical solvers are available, namely the Newton‐Raphson (NR) [3] and the Unified Arc‐Length (UAL) [4] methods.
- The code supports displacement‐driven analysis (Dirichlet BCs are imposed).
- The code can be run either in serial or parallel mode.
Software Prerequisites
This code requires MATLAB and the Parallel Computing Toolbox to be installed. The code is compatible with MATLAB version R2022b and later. While we recommend using GMSH to generate a new mesh, the user can pick any relevant software of their choice. The generated mesh should be stored in a .txt file, modified by the user to match the format that is explained in the Documentation (see the “IV. Model files structure” section).
Code structure
The code is a compilation of several .m files. The main script is FEM_Main_Script_2D.m, which is the only code‐related file the user needs to open and edit. In this file the user specifies the working/saving directories (line 12) and the model name (line 15). This file then calls the solver (Newton‐Raphson or UAL) and the analysis starts.
Each file named func____.m serves a specific purpose, and a brief description of its functionality is provided at the beginning of the file. The overall code follows a typical FEM workflow (element‐level procedures, assembly to global matrices, solution for unknown degrees of freedom).
The analysis generates output data at each load increment, which are stored in the Saved Files folder. It also prints contour plots for damage, local strain, and nonlocal strain at the last load increment, which are stored in the Images folder.
Contributions and support
We invite you to explore our parallel-based code to substantially accelerate computationally intensive CDM simulations. We welcome contributions from the community – a list of potential aspects for improvement are listed in the Contributing.md file or associated Section X in the Documentation. For further instructions or inquiries, please contact:
- Habiba Eldababy (hed279@nyu.edu)
- Mostafa Mobasher (mm11504@nyu.edu)
Owner
- Login: Habiba-Eldababy
- Kind: user
- Repositories: 1
- Profile: https://github.com/Habiba-Eldababy
JOSS Publication
Parallel-CDM: Parallel Implementation of Continuum Damage Mechanics Simulations using FEM and MATLAB
Authors
Mechanical Engineering Department, Tandon School of Engineering, New York University, USA, Mechanical Engineering Department, New York University Abu Dhabi, UAE
Mechanical Engineering Department, Tandon School of Engineering, New York University, USA, Mechanical Engineering Department, New York University Abu Dhabi, UAE
Civil and Urban Engineering Department, New York University Abu Dhabi, UAE
Mechanical Engineering Department, Tandon School of Engineering, New York University, USA, Civil and Urban Engineering Department, New York University Abu Dhabi, UAE
Tags
parallel computing finite element method continuum damage mechanicsCitation (CITATION.cff)
cff-version: "1.2.0"
authors:
- family-names: Eldababy
given-names: Habiba
orcid: "https://orcid.org/0009-0005-1659-9411"
- family-names: Saji
given-names: Roshan Philip
- family-names: Pantidis
given-names: Panos
- family-names: Mobasher
given-names: Mostafa
doi: 10.5281/zenodo.16790622
message: If you use this software, please cite our article in the
Journal of Open Source Software.
preferred-citation:
authors:
- family-names: Eldababy
given-names: Habiba
orcid: "https://orcid.org/0009-0005-1659-9411"
- family-names: Saji
given-names: Roshan Philip
- family-names: Pantidis
given-names: Panos
- family-names: Mobasher
given-names: Mostafa
date-published: 2025-08-13
doi: 10.21105/joss.07610
issn: 2475-9066
issue: 112
journal: Journal of Open Source Software
publisher:
name: Open Journals
start: 7610
title: "Parallel-CDM: Parallel Implementation of Continuum Damage
Mechanics Simulations using FEM and MATLAB"
type: article
url: "https://joss.theoj.org/papers/10.21105/joss.07610"
volume: 10
title: "Parallel-CDM: Parallel Implementation of Continuum Damage
Mechanics Simulations using FEM and MATLAB"
GitHub Events
Total
- Create event: 1
- Release event: 1
- Issues event: 7
- Watch event: 1
- Delete event: 1
- Issue comment event: 9
- Public event: 1
- Push event: 79
- Pull request event: 2
Last Year
- Create event: 1
- Release event: 1
- Issues event: 7
- Watch event: 1
- Delete event: 1
- Issue comment event: 9
- Public event: 1
- Push event: 79
- Pull request event: 2
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 5
- Total pull requests: 1
- Average time to close issues: 6 months
- Average time to close pull requests: 7 minutes
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 0.6
- Average comments per pull request: 0.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 5
- Pull requests: 1
- Average time to close issues: 6 months
- Average time to close pull requests: 7 minutes
- Issue authors: 1
- Pull request authors: 1
- Average comments per issue: 0.6
- Average comments per pull request: 0.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- tiburoch (5)
Pull Request Authors
- kyleniemeyer (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v4 composite
- actions/upload-artifact v4 composite
- openjournals/openjournals-draft-action master composite