Learn MPM 2D with Python

Learn MPM 2D with Python#

Yongjin Choi

License: MIT Book

This repository is part of the instructional materials for CEE-8813-H: Numerical Modeling and Data Science in Geotechnics, offered by the School of Civil and Environmental Engineering at Georgia Tech.

It provides a general background of material point method (MPM) and hands-on practice for 2D material point method (MPM) code using Python jupyter notebook. At the end of the course, you will be able to implement following two simulations with MPM:

Elastic ball collision: practice-1 Open in Colab

Granular column collapse: practice-2 Open in Colab

Prerequisite#

  • This practice uses numpy library in python.

  • If you want to start with simpler 1D MPM examples, this site provides solid background and hands-on examples.

Install#

The examples are ready to run on Google Colab without any installation. However, if you prefer to run them locally on your machine, follow these steps:

# Initiate a python virtual environment.
python -m virtualenv venv
# Activate the virtual environment.
source venv/bin/activate
# Install dependencies.
python -m pip install --upgrade pip
pip install -r ./book/requirements.txt

Inspiration#

Acknowledgments#

Thanks for Dr. Macedo, Vivek Bokkisa and Sean Flournoy for providing valuable feedbacks and suggestions.