Marmot
(MAteRialMOdellingToolbox) is a C++-library aiming to provide robust and efficient implementations of state-of-the-art constitutive models for different materials, in particular for quasi-brittle materials such as (sprayed) concrete, rock and soils. It uses modern, object-oriented programming techniques and provides a generic interface that can be easily wrapped into your application. Standard interfaces for commercial finite element codes, such as Abaqus, Plaxis and open source codes like MOOSE or OpenSees, are ready-to-use available.
Truss in compression using a micropolar von Mises plasticity model.
Plane strain compression using a micropolar Drucker-Prager plasticity model
Triaxial compression using an orthotropic jointed rock plasticity model
Marmot
requires the Eigen (>3.3.8) and the autodiff (>0.6.0) libraries:
git clone https://gitlab.com/libeigen/eigen.git
cd eigen
mkdir build
cd build
cmake ..
sudo make install
git clone https://github.com/autodiff/autodiff.git
cd autodiff
mkdir build
cd build
cmake -DAUTODIFF_BUILD_TESTS=OFF -DAUTODIFF_BUILD_PYTHON=OFF -DAUTODIFF_BUILD_EXAMPLES=OFF -DAUTODIFF_BUILD_DOCS=OFF ..
sudo make install
For anaconda
users, those libraries can also be installed from the channels.
Marmot
including all submodules can be installed with the following steps:
git clone --recurse-submodules https://github.com/MAteRialMOdelingToolbox/Marmot/
cd Marmot
mkdir build
cd build
cmake ..
make
sudo make install
CMake options CORE_MODULES
, ELEMENT_MODULES
and MATERIAL_MODULES
allow to specify the modules which should be compiled, either by passing a
semicolon seperated list
, option none
or option all
(default).
For instance:
git clone --recurse-submodules https://github.com/MAteRialMOdelingToolbox/Marmot/
cd Marmot
mkdir build
cd build
cmake \
-DCORE_MODULES='MarmotMechanicsCore;MarmotFiniteElementCore' \
-DELEMENT_MODULES='none' \
-DMATERIAL_MODULES='all' \
..
make
sudo make install
CMake option CMAKE_INSTALL_PREFIX
allows to specify the installation directory.
For instance:
git clone --recurse-submodules https://github.com/MAteRialMOdelingToolbox/Marmot/
cd Marmot
mkdir build
cd build
cmake \
-DCMAKE_INSTALL_PREFIX=/your/special/installationdirectory \
..
make
make install
The Abaqus-MarmotInterface allows to use Marmot
in Abaqus simulations.
The chamois App allows to use Marmot
directly in MOOSE.
A singularity container recipe is available.
The documentation can be found under https://materialmodelingtoolbox.github.io/Marmot/.
This library is freely available under the LGPLV2 license. Please find the details in the LICENSE.md
file.
The principal developers are (in alphabetical order):
- Alexander Dummer @alexdummer (since 2019), University of Innsbruck
- Paul Hofer @advktEntnschdl (since 2020), University of Innsbruck
- Thomas Mader @maderthomas (since 2019), University of Innsbruck
- Matthias Neuner @matthiasneuner (since 2015), University of Innsbruck, Stanford University
- Magdalena Schreter @mschreter (since 2015), University of Innsbruck
Contributors are (in alphabetical order):
- Andreas Brugger @theBruegge, University of Innsbruck
- Peter Gamnitzer, University of Innsbruck
The results of the following publications were obtained using Marmot
:
-
On discrepancies between time-dependent nonlinear 3D and 2D finite element simulations of deep tunnel advance: A numerical study on the Brenner Base Tunnel. M Neuner, M Schreter, P Gamnitzer, G Hofstetter - Computers and Geotechnics, 2020 https://doi.org/10.1016/j.compgeo.2019.103355
-
On the importance of advanced constitutive models in finite element simulations of deep tunnel advance. M Schreter, M Neuner, D Unteregger, G Hofstetter - Tunnelling and Underground Space Technology, 2018 https://doi.org/10.1016/j.tust.2018.06.008
-
A 3D gradient-enhanced micropolar damage-plasticity approach for modeling quasi-brittle failure of cohesive-frictional materials. M Neuner, P Gamnitzer, G Hofstetter - Computers & Structures, 2020 https://doi.org/10.1016/j.compstruc.2020.106332
-
On the prediction of complex shear dominated concrete failure by means of classical and higher order damage-plasticity continuum models. M Neuner, P Hofer, G Hofstetter - Engineering Structures, 2022 https://10.1016/j.engstruct.2021.113506
-
An extended gradient-enhanced damage-plasticity model for concrete considering nonlinear creep and failure due to creep. A Dummer, M Neuner, G Hofstetter - International Journal of Solids and Structures, 2022 https://doi.org/10.1016/j.ijsolstr.2022.111541
-
A gradient enhanced transversely isotropic damage plasticity model for rock - formulation and comparison of different approaches. T Mader, M Schreter, G Hofstetter - International Journal for Numerical and Analytical Methods in Geomechanics, 2022; 46: 933-960 https://doi.org/10.1002/nag.3327