fragma
A finite element solver for simulating crack propagation using the phase-field approach to fracture.
Built on top of fenicsx, fragma supports advanced features like:
- Crack propagation in anisotropic media
- Indirect load control using path-following methods
The full documentation is available at: https://floiseau.github.io/fragma.
📦 Installation
To run fragma, install the required Python modules in a dedicated environment:
- Create and activate a dedicated environment:
conda create -n fragma
conda activate fragma
- Install FEniCSx (with GMSH):
conda install -c conda-forge fenics-dolfinx=0.10 pyvista mpich gmsh # Linux and macOS
conda install -c conda-forge fenics-dolfinx=0.10 pyvista pyamg gmsh # Windows
- Install
fragma:
pip install . # If you cloned the repo
pip install fragma # If you want to install from pypi
Quick Start
Test fragma with ready-to-run examples:
cd examples/XX_example_name
./run.sh
Visualize results using Paraview or PyVista.
Usage
Requirements
- A GMSH mesh file (
mesh.geo) - A
parameters.tomlconfiguration file (seeexamples)
Running a Simulation
- Navigate to your simulation directory.
- Activate the environment:
conda activate fragma
- Run the solver:
fragma
Note:
- Use
OMP_NUM_THREADS=1on some Linux distributions to control thread usage:OMP_NUM_THREADS=1 python path/to/repo/fragma/main.py
Outputs
- Results are saved in the
resultsdirectory:- VTK files (e.g.,
Displacement.pvd) for field visualization - CSV files (e.g.,
probes.csv) for scalar outputs
- VTK files (e.g.,
Release files for fragma 2026.1.22
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| fragma-2026.1.22.tar.gz | 38.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fragma-2026.1.22-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 79.3 kB
Release files / fragma-2026.1.22.tar.gz
| Download URL | fragma-2026.1.22.tar.gz |
|---|---|
| Size | 38.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cee0c6a6b67044e4971c8373c3c280475d76af6b6bd9763d1725705325a60284
|
|
BLAKE2b-256 checksum How to use checksums |
7ee3fa89da53d57a9060d714ee1b27317bd893ecf1341526c88bcb94c511fc72
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 22, 2026.
Transparency logRelease files / fragma-2026.1.22-py3-none-any.whl
| Download URL | fragma-2026.1.22-py3-none-any.whl |
|---|---|
| Size | 40.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
91983cfdf5ae6816b0b8fdc289eb6d7a6a1f9ee64f5bb7857cd0b1b97dcad8a1
|
|
BLAKE2b-256 checksum How to use checksums |
6a4226d9990dc446cec432c86047bc67e3cf41f6651a9cd6e4451e21107aacec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 22, 2026.
Transparency log