This package provides a high-performance, backend-agnostic implementation of the Material Point Method (MPM) using the Julia Language. It is lightweight and user-friendly, allowing efficient execution on various hardware accelerators with a single codebase. Please check here for the documentation.
Just type ] in Julia's REPL
:
julia> ]
(@1.11) Pkg> add MaterialPointSolver
These features can be combined in any way.
-
Basis function:
- ✅ standard MPM
- ✅ uGIMP (uniformed Generalized interpolation MPM)
- ✅ cubic B-spline (boundary modified)
-
Stress update scheme:
- ✅ USL (update stress last)
- ✅ USF (update stress first)
- ✅ MUSL (modified USL)
-
MPM formulation:
- ✅ one-phase single-point
- 🚧 two-phase single-point (saturated/unsaturated)
-
Constitutive model:
-
✅ linear elastic
-
✅ hyper elastic (Neo-Hookean)
-
✅ Drucker-Prager (with softening/harding)
-
🚧 Mohr-Coulomb
-
✅ Bingham
…
-
-
Others:
- ✅ affine MPM
- ✅
$\bar{F}$ -based volumetric locking elimination - ✅ Gaussian random field
- ✅ one-click switch between
FP64
andFP32
- ✅ user-defined algorithms/extensions at any level
If you use MaterialPointSolver.jl
in your research, please consider to cite this paper:
@article{index,
title={Here is the title},
author={authors},
journal={journal},
year={year}
}
Caution
This is the latest version of MaterialPointSover.jl
, if you want to see the examples in the paper, please move to https://github.com/LandslideSIM/Archive_MaterialPointSolver.jl_paper.
This project is sponsored by Risk Group | Université de Lausanne and China Scholarship Council [中国国家留学基金管理委员会].
-
[package]: elastoPlasm.jl is fully witten in Julia, it solves explicit elasto-plastic problems within a finite deformation framework.
-
[package]: Tesserae.jl is an MPM-related Julia package, it provides some useful functions that can be used for MPM, such as convenient macros for transferring data between grids and particles.
-
[code]: MPM-Julia is the code for the paper: Sinai, V.P. Nguyen, C.T. Nguyen and S. Bordas. Programming the Material Point Method in Julia. Advances in Engineering Software,105: 17--29, 2017.
-
[code]: jump is for the theory of the MPM described in the book 'The Material Point Method: Theory, Implementations and Applications (Scientific Computation) 1st ed. 2023 Edition'. https://link.springer.com/book/10.1007/978-3-031-24070-6