pyrootmemo is a Python package for modelling the contribution of root systems to the shear strength of soil. It provides a consistent, object-oriented interface to several root reinforcement models, making it easy to compare results across models, fit parameters to measurements, and extend the library with new models.
- Models currently implemented are below. Modular structure of
pyrootmemomakes it very easy to extend the further models. Please consult our Contribution Guidelines.
| Model | Class | Description |
|---|---|---|
| Wu/Waldron Model | Wwm |
Peak reinforcement assuming simultaneous mobilisation of all roots |
| Fibre Bundle Model | Fbm |
Progressive breakage with load sharing between roots (Pollen & Simon 2005) |
| Root Bundle Model Weibull | Rbmw |
Displacement-driven reinforcement with Weibull survival function (Schwarz et al. 2013) |
| Axial Pullout | AxialPullout |
Force–displacement response of a single root pulled out of soil |
| Waldron | Waldron |
Direct shear reinforcement model (Waldron 1977) |
We recommend working in a virtual environment, e.g. Miniforge
conda create -n rrmm python
conda activate rrmmgit clone https://github.com/rootmemo/pyrootmemo.git
cd pyrootmemo
poetry installJupyter Notebooks in tests/*.ipynb provide comprehensive tutorials covering each model.
Full documentation is available at pyrootmemo.readthedocs.io, including a quickstart guide, theoretical background, and API reference.
Contributions are welcome! Check out the contributing guidelines. By contributing to this project you agree to abide by its Code of Conduct.
pyrootmemo was created by Anil Yildiz (RWTH Aachen University, Germany) and Gerrit Meijer (University of Bath, United Kingdom). It is licensed under the terms of the MIT license.
pyrootmemo was created with cookiecutter and the py-pkgs-cookiecutter template.