Skip to main content

A Bayesian uncertainty quantification toolbox for discrete and continuum numerical models of granular materials

Project description

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

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

  • Installation using Windows Subsystem for Linux (WSL)
    • Enable WSL1 or WSL2 according to the instructions here
    • Install GrainLearning using poetry or pip
  • Installation using anaconda (if no WSLs are available on your Windows system)
    • Open Anaconda Prompt and install GrainLearning using pip. This should create a virtual environment, named GrainLearning.
    • Choose that environment from your anaconda navigator: click Environments and select grainlearning from the drop-down menu

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:

  • DOI A DOI for citing the software
  • H. Cheng, T. Shuku, K. Thoeni, P. Tempone, S. Luding, V. Magnanimo. An iterative Bayesian filtering framework for fast and automated calibration of DEM models. Comput. Methods Appl. Mech. Eng., 350 (2019), pp. 268-294, 10.1016/j.cma.2019.01.027

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

grainlearning-2.0.3.tar.gz (5.0 MB view details)

Uploaded Source

Built Distribution

grainlearning-2.0.3-py3-none-any.whl (5.0 MB view details)

Uploaded Python 3

File details

Details for the file grainlearning-2.0.3.tar.gz.

File metadata

  • Download URL: grainlearning-2.0.3.tar.gz
  • Upload date:
  • Size: 5.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.19

File hashes

Hashes for grainlearning-2.0.3.tar.gz
Algorithm Hash digest
SHA256 9bba08c256b7ed5024f53f3c5f048000e9af1a198804403795ff3aa8bb623433
MD5 0cfafa2fb415d831d6757fb33668b207
BLAKE2b-256 7c9a7d1d1b333d085bf24a59cb3b3e921ec88a395ae6260343bae7d73ce5f5db

See more details on using hashes here.

File details

Details for the file grainlearning-2.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for grainlearning-2.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 ed704910d7559b39e45bb3671a10ee4d454759de42f87ce25a18278abbcb9469
MD5 0782dfa6e563c53949be0cae44bcd2b8
BLAKE2b-256 ffbb45ca40f65bf6d762716d5f83bb04f9c9c5daa1772e278c9fcb4bc558f9eb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page