Parallel-CDM

Parallel-CDM: Parallel Implementation of Continuum Damage Mechanics Simulations using FEM and MATLAB - Published in JOSS (2025)

https://github.com/habiba-eldababy/parallel-cdm

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

Engineering Computer Science - 60% confidence
Last synced: 6 months ago · JSON representation ·

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
Created over 1 year ago · Last pushed 6 months ago
Metadata Files
Readme Contributing License Citation

README.md

Parallel-CDM

DOI
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

JOSS Publication

Parallel-CDM: Parallel Implementation of Continuum Damage Mechanics Simulations using FEM and MATLAB
Published
August 13, 2025
Volume 10, Issue 112, Page 7610
Authors
Habiba Eldababy ORCID
Mechanical Engineering Department, Tandon School of Engineering, New York University, USA, Mechanical Engineering Department, New York University Abu Dhabi, UAE
Roshan Philip Saji
Mechanical Engineering Department, Tandon School of Engineering, New York University, USA, Mechanical Engineering Department, New York University Abu Dhabi, UAE
Panos Pantidis
Civil and Urban Engineering Department, New York University Abu Dhabi, UAE
Mostafa Mobasher
Mechanical Engineering Department, Tandon School of Engineering, New York University, USA, Civil and Urban Engineering Department, New York University Abu Dhabi, UAE
Editor
Patrick Diehl ORCID
Tags
parallel computing finite element method continuum damage mechanics

Citation (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

.github/workflows/draft-pdf.yml actions
  • actions/checkout v4 composite
  • actions/upload-artifact v4 composite
  • openjournals/openjournals-draft-action master composite