There is considerable interest in the Material Point Method (MPM) in the computational geotechnics community since it can model problems involving large deformations, e.g. landslides, collapses etc. without being too far from the standard finite element method, which can struggle with large deformation problems. The open-source code AMPLE developed at Durham University in recent years is a compact set of MATLAB functions that address the severe learning curve for researchers wishing to understand, and start using, the MPM. It is well known that MATLAB can be very slow hence limiting its utility for major studies of large problems, so here we introduce an MPM code with the same aims as AMPLE but written in the relatively new language Julia, specifically for fast runtimes. We highlight areas where MATLAB code constructs are inefficient if just transferred to Julia and show that to unlock large speed gains with Julia, one needs to code in a different way and we demonstrate this on a geotechnical problem. While this paper is concerned with the MPM, the advice regarding coding using Julia is transferable to other computational geotechnics methods and tools.
10th European Conference on Numerical Methods in Geotechnical Engineering (NUMGE2023)
2. Finite element, finite difference, discrete element, material point and other methods