Open source
Research software, libraries and teaching resources developed at GeM and freely available. Most of them are hosted on the GeM GitLab, on GitHub or on the Nantes Université GitLab.
Numerical methods and finite elements

PY_XFEM
Python · finite elements · X-FEM
Python library of finite element and related tools, including the extended finite element method (X-FEM), for research and teaching.
Developers: Nicolas Chevaugeon
Reference: N. Chevaugeon, py_XFEM, software deposited in HAL (2024) – HAL record →
TwoScale
C++ · FEniCSx · PETSc · LGPL-3.0 licence
Distributed implementation of the two-scale method (Salzman & Moës) for the FEniCSx finite element library, with PETSc.
Developers: Alexis Salzman
Reference: A. Salzman, N. Moës, “A two-scale solver for linear elasticity problems in the context of parallel message passing”, Computer Methods in Applied Mechanics and Engineering, 407, 2023 – article → · HAL →
eXlibris
C++ · GPL licence
Set of C++ libraries for the extended finite element method (X-FEM) and the Thick Level Set (TLS) damage method, with applications to fracture and cohesive zones.
Developers: Nicolas Moës and the GeM Models and simulation team (A. Salzman, N. Chevaugeon, G. Legrain, B. Lé, G. Marckmann, K. Moreau…)
lip2d
Python · damage · Lip-field
Python implementation of the Lip-field method for brittle damage, a Lipschitz regularization of softening models.
Developers: Nicolas Chevaugeon
Reference: N. Moës, N. Chevaugeon, “Lipschitz regularization for softening material models: the Lip-field approach”, Comptes Rendus. Mécanique, 2021 – article → · HAL →
N. Chevaugeon, N. Moës, “Lipschitz regularization for fracture: the Lip-field approach”, Computer Methods in Applied Mechanics and Engineering, 2022 – article → · HAL →
Dynamics and vibrations

OSCILATE
Python · SymPy · Apache-2.0 licence
Symbolic solution of systems of coupled nonlinear oscillators with the method of multiple scales, using SymPy.
Developers: Vincent Mahé
Reference: V. Mahé, OSCILATE, software deposited in HAL (2026) – HAL record →
Equal[iseR]
MATLAB · Python · Apache-2.0 licence
Frequency-domain solver for the vibration analysis of structures subject to unilateral contact and friction: an adaptation of the harmonic balance method based on a weighted residual formulation.
Developers: Mathias Legrand, Christophe Pierre, Sebastian McDonald, Arash Hashemi
Reference: M. Legrand, C. Pierre, Journal of Structural Dynamics, 2024 – article → · HAL →
A. Hashemi, C. Pierre, M. Legrand, Journal of Structural Dynamics, 2025 – article → · HAL →
Materials and constitutive models
MatLib
C++ · Python interface
Library of numerical constitutive models for nonlinear thermo-mechanics and other dissipative coupled behaviours, usable from various solvers. A light version and Jupyter notebooks are used for teaching.
Developers: Laurent Stainier
concrete-deep-segmentation
Python · deep learning
Modular deep learning segmentation algorithm for concrete microscopic images: two convolutional neural networks detect pores and aggregates.
Developers: Benoît Hilloulin
Reference: B. Hilloulin, I. Bekrine, E. Schmitt, “Modular deep learning segmentation algorithm for concrete microscopic images”, Construction and Building Materials, 2022 – article → · HAL →
Teaching resources
simpleTruss
Python · trusses
Small Python code to solve linear truss problems (2D), with plots of the deformed configuration and normal forces.
Developers: Grégory Legrain
Immersion BSc : essai de traction
Data · lab work
Data from a uniaxial tensile test on a PMMA specimen (real and synthetic data) and assignment, for the Bachelor of Science in Engineering immersion.
Developers: Grégory Legrain
MecaPix
Python · Django · GPL-3.0 licence
Web application for image-based measurements in experimental mechanics: digital image correlation (Pyxel, PyDIC, pyvale), point tracking in videos and camera testing, available from a web browser.
Developers: Gilles Marckmann
Shiny Phys
Python · Shiny · browser
Interactive teaching applications in numerical analysis and mechanics (numerical integration, forced oscillations…), running directly in the browser with Shinylive.
Developers: Nicolas Chevaugeon
Miscellaneous
Biblio Harvester
Python · bibliometrics
Harvesting and consolidation of the publications and theses of a laboratory from several sources (HAL, Scopus, OpenAlex, Google Scholar, theses.fr…), then generation of a static website. It feeds the publication lists of this website.
Developers: Gilles Marckmann
WordPress plugin: Biblio Harvester – Publications displays the file produced by the harvester in a WordPress site: filters, search, CSV export, lists by team or by author. Gilles Marckmann, with Claude (Anthropic) – download version 1.0.0 (zip) →
Publications HAL
PHP · WordPress plugin
WordPress plugin displaying the publications of a HAL collection or query, with type and year filters, search, pagination and thumbnails. Usable by any laboratory; French and English interface.
Developers: Gilles Marckmann, with Claude (Anthropic)
Cite and deposit software
When you use one of these tools, please cite its reference article or its HAL record. GeM members can deposit their own software in HAL (archived in Software Heritage) so that it can be cited and found: see the Open science page.