GrainLearning / grainLearning

A Bayesian uncertainty quantification toolbox for discrete and continuum numerical models of granular materials, developed by various projects of the University of Twente (NL), the Netherlands eScience Center (NL), University of Newcastle (AU), and Hiroshima University (JP).
https://grainlearning.readthedocs.io/
GNU General Public License v2.0
9 stars 1 forks source link
bayesian-inference low-discrepancy-sequences mixture-models parameter-identification sequential-monte-carlo uncertainty-quantification

Welcome to GrainLearning!

fair-software.eu recommendations Badges
code repository github repo badge
license github license badge
community registry RSD workflow pypi badge
citation DOI
Best practices checklist workflow cii badge
howfairis fair-software.eu
Documentation Documentation Status
Code Quality Coverage Quality Gate Status
Paper DOI

Bayesian uncertainty quantification for discrete and continuum numerical models of granular materials, developed by various projects of the University of Twente (NL), the Netherlands eScience Center (NL), University of Newcastle (AU), and Hiroshima University (JP). Browse to the GrainLearning documentation to get started.

Features

Installation

Install using poetry

  1. Install poetry following these instructions.
  2. Clone the repository: git clone https://github.com/GrainLearning/grainLearning.git
  3. Go to the source code directory: cd grainLearning
  4. Activate the virtual environment: poetry shell
  5. Install GrainLearning and its dependencies: poetry install

Install using pip

  1. Clone the repository: git clone https://github.com/GrainLearning/grainLearning.git
  2. Go to the source code directory: cd grainLearning
  3. Activate the virtual environment: conda create --name grainlearning python=3.11 && conda activate grainlearning
  4. Install GrainLearning and its dependencies: pip install .

Developers please refer to README.dev.md.

To install GrainLearning including the RNN module capabilities check grainlearning/rnn/README.md.

For Windows users

One command installation

Stable versions of GrainLearning can be installed via pip install grainlearning However, you still need to clone the GrainLearning repository to run the tutorials.

Tutorials

  1. Linear regression with the run_sim callback function of the BayesianCalibration class, in python_linear_regression_solve.py

  2. Nonlinear, multivariate regression

  3. Interact with the numerical model of your choice via run_sim , in linear_regression_solve.py

  4. Load existing DEM simulation data and run GrainLearning for one iteration, in oedo_load_and_resample.py

  5. Example of GrainLearning integration into YADE

  6. Data-driven module tutorials:

Citing GrainLearning

Please choose from the following:

Software using GrainLearning

Community

The original development of GrainLearning is done by Hongyang Cheng, in collaboration with Klaus Thoeni , Philipp Hartmann, and Takayuki Shuku. The software is currently maintained by Hongyang Cheng and Stefan Luding with the help of Luisa Orozco and Retief Lubbe. The GrainLearning project receives contributions from students and collaborators.

Help and Support

For assistance with the GrainLearning software, please create an issue on the GitHub Issues page.

Credits

This package was created with Cookiecutter and the NLeSC/python-template.