Computers and Geotechnics · 2025
A high-performance backend-agnostic Material Point Method solver in Julia
Zenan Huo, Yury Alkhimenkov, Michel Jaboyedoff, Yury Podladchikov, Ludovic Räss, Emmanuel Wyser, and Gang Mei.
Lead developer and corresponding author
A Julia-native, full-stack toolchain for building, running, and visualizing high-resolution Material Point Method simulations of landslide motion.

Landslide runout is a large-deformation problem. Once a slope fails, the moving mass can stretch, fragment, collide, and travel across complex terrain. Conventional mesh-based methods can become compromised by mesh distortion at exactly this stage. The Material Point Method (MPM) avoids that failure mode by carrying material state on particles while solving momentum on a temporary background grid.
LandslideSIM turns that numerical method into a connected Julia workflow. It covers model generation from real terrain, backend-agnostic simulation on CPUs and GPUs, and post-processing for ParaView or browser-based inspection. Researchers can prototype and run production-scale models without maintaining separate high-level and accelerator codebases.
MaterialPointGenerator.jl discretizes 2D and 3D geometries, DEM terrain, geological partitions, and SLBL-predicted failure surfaces into structured material particles. It avoids volumetric meshing and keeps preprocessing fast enough for resolution studies.
MaterialPointSolver.jl implements MPM once and executes it across CPU, NVIDIA CUDA, AMD ROCm, Intel oneAPI, and Apple Metal backends. Algorithms are modular plugins, so constitutive models and transfer schemes can evolve without rebuilding the entire solver.
MaterialPointVisualizer.jl converts HDF5 results into VTP data and ParaView-compatible animations, reconstructs surfaces, detects exposed particles, and provides local or web interfaces for large particle datasets.
Real slopes rarely fit a clean box. The generator accepts DEM, STL, raster, point-cloud, and polygon inputs through the supporting FastPointQuery.jl package. It can trim terrain, assign heterogeneous material IDs, and couple an SLBL failure-surface prediction to an MPM-ready particle model.
The preprocessing research also establishes upper bounds for geometric and property-assignment errors. That makes grid spacing a documented modeling choice rather than a purely visual judgment. In the published benchmarks, up to 100 million structured particles were generated in under 10 seconds; a 5.33-million-particle STL model completed in 0.6 seconds on a consumer CPU.
MaterialPointSolver.jl uses Julia’s multiple dispatch and KernelAbstractions.jl to separate MPM physics from the execution backend. The same model code can move from a laptop CPU to different GPU vendors, which keeps rapid scientific prototyping and production execution in one environment.
Four validation problems cover elastic collision, soil collapse, granular spreading, and a dedicated performance benchmark. Against optimized vectorized MATLAB code, the published solver reached 3.5x speedup on a single CPU thread and 19.4x on 20 CPU threads. GPU tests reached 78% effective bandwidth utilization, or 1,453 GiB/s, in two dimensions. A 10 GB consumer GPU accommodated approximately 19.7 million double-precision particles; NVIDIA GH200 accommodated approximately 190 million.
using MaterialPointGenerator
using MaterialPointSolver
using MaterialPointVisualizer
# Generate the particle domain, solve it on the selected backend,
# then export the time series for analysis and rendering.
Simulation output is only useful when researchers can interrogate it. The visualization package writes VTP files, prepares ParaView animations, and supports surface reconstruction for presentation-quality rendering. Its GUI and web pathways are designed for particle counts beyond a million, keeping the final stage part of the same reproducible toolchain.
Computers and Geotechnics · 2025
Zenan Huo, Yury Alkhimenkov, Michel Jaboyedoff, Yury Podladchikov, Ludovic Räss, Emmanuel Wyser, and Gang Mei.
Engineering with Computers · 2025
Zenan Huo, Xiangcou Zheng, Michel Jaboyedoff, Yury Podladchikov, Gang Mei, and Xiong Tang.
The project grew from work at the University of Lausanne’s Risk Group, with support acknowledged from the China Scholarship Council. Its publications connect collaborators at the University of Lausanne, MIT, Terranum, China University of Geosciences (Beijing), Shenzhen University, and the Chinese Academy of Sciences.
LandslideSIM was released as open-source research software. Its final package releases extend beyond the exact versions archived with each publication.