MPM-Geomechanics is a program that allows us to model the behavior of geo-materials, like soil and rock, when these materials are subjected to different initial and boundary conditions. Currently, the geo-materials are present in several areas of the society, like for example in the slopes and excavation process in mining industry activities, or in the study of risk associated to naturals disasters.
The objective of this repository is to provide a platform for developing the MPM for the study of geomechanical problems involving large deformations and distortions.
If you are interested to collaborate with this project, please contact to fabricio.fernandez@ucn.cl. There are several topics for developing in this project, here there are a few of them:
- contact method for large terrain models using STL meshes (Zhang et al., 2023) ✅
- penalty method for avoiding any penetration in STL meshes ✅
- one direction hydro-mechanical coupling ✅
- axisymmetric formulation (Nairn & Guilkey, 2015)
- implicit (Nair & Roy, 2012) and semi-implicit (Kularathna et al., 2021) time integration
- convected particle domain interpolation (Sadeghirad et al., 2011)
- thermo-mechanics formulation (Zhan et al., 2024)
- update stress schemes USF 🚧, USL ✅ and MUSL ✅ (Buzzi et al., 2008)
- damage constitutive models (Homel & Herbold, 2016)
- viscous constitutive models
- critical state constitutive models (Sheng et al., 2000)
- MPI implementation for process optimization (Ku & Kim, 2023)
- ...
The main features of the program in the actuality are:
- Three-dimensional formulation (can simulated 2D plane strain problems too)
- Dynamic formulation (suitable for earthquake and general dynamic problems)
- Shared memory parallelization (for computational time reduction)
- Several constitutive models for soils and rock, including softening and hardening options.
To generate the documentation locally with Doxygen, run the following command from the project root:
doxygen Doxyfile
The documentation will be saved in the /docs/
folder, with the main entry point at:
/docs/index.html
You can open this file in any web browser.
For the online documentation, visit: MPM-Geomechanics
- Go to the Actions page.
- Select the latest run of the MSBuild workflow for Window, or CI for Linux.
- At the bottom, you will find the available artifacts under the Artifacts section.
- Download the
compiled-binaries
artifact to get the compiled code.
In this example an soil slope failure is simulated using an elastoplastic material:
For more details of this simulation see the input file slope-failure.json
In this example an elastoplastic body impacts over an elastic body. The fracturing process in rock masses is captured using an exponential strain softening over tensile strength in the elastoplastic material:
Fracturing induced by exponential softening over the tensile strength. The yellow body is subjected to an initial velocity. The withe body is elastic.
An elasto-plastic body impacts over an elastic body. The exponential softening used over the tensile strength, in order to reproduce the fracturing process in the body.
See exponential-softening.json input file for simulation details.
In this example is tested the refinement mesh behavior. The fixed (left-bottom) and free boundary (right-up) conditions are tested too.
See exponential-softening-refined.json input file for simulation details.
If you are part of the team, clone the repo and submit pull requests from your branches.
If you are an external contributor, please fork the repository and submit a pull request from your fork.
This simulator is provided for academic and research purposes. It is distributed "as is", without any warranties of any kind, express or implied, including but not limited to warranties of merchantability or fitness for a particular purpose.
The use of this simulator and the interpretation of its results are the sole responsibility of the user. The developers and the affiliated institution shall not be held liable for any direct or indirect damages, economic losses, or consequences resulting from the use of this software.