Courses

Course materials and self-paced learning modules for geotechnical computing, data science, and research software development.

CEE-8813-H: Numerical Modeling and Data Science for Geotechnics

Finite element method tutorial for foundation

This repository contains a Python implementation of a 2D finite element method (FEM) analysis for foundation problems. The code simulates the stress distribution in soil under a rigid footing load, accounting for variable soil stiffness with depth.

Repository

Learn MPM with Jupyter Notebook

While many open-source Material Point Method (MPM) codes utilize modularization for robust development and maintenance, their sophisticated structure can make it challenging for beginners to follow the core computational cycle of MPM. This online notebook simplifies the learning process by introducing the fundamental principles of MPM and implementing its essential algorithms in a simple, sequential manner. It also includes hands-on coding examples for simulating elastic ball collisions and granular column collapse, offering an accessible entry point for MPM beginners.

Get started

Regression and classification with machine learning

This repository introduces classification and regression methods in machine learning.

Repository

Basics of DevOps for Engineers

As an engineering researcher, I realized the importance and the challenges of systematic version control when developing research software, collaborating with other researchers, and handling environment dependency issues during software deployment.

Fortunately, there are tools and workflows that make these tasks much easier. I made this learning module in the hope that it can help engineers and researchers who are new to these topics get started more easily and practically. It focuses on essential tools and workflows that support effective research code and software development.

Get started

Others

Quick tutorial for C++

Repository

Containers and docker for machine learning projects

Module