TinyDEM: Minimal open granular DEM code with sliding, rolling and twisting friction
arXiv:2507.12610 · doi:10.1016/j.cpc.2025.109942
Abstract
This article introduces TinyDEM, a lightweight implementation of a full-fledged discrete element method (DEM) solver in 3D. Newton's damped equations of motion are solved explicitly for translations and rotations of a polydisperse ensemble of dry, soft, granular spherical particles, using quaternions to represent their orientation in space without gimbal lock. Particle collisions are modeled as inelastic and frictional, including full exchange of torque. With a general particle-mesh collision routine, complex rigid geometries can be simulated. TinyDEM is designed to be a compact standalone program written in simple C++11, devoid of explicit pointer arithmetics and advanced concepts such as manual memory management or polymorphism. It is parallelized with OpenMP and published freely under the 3-clause BSD license. TinyDEM can serve as an entry point into classical DEM simulations or as a foundation for more complex models of particle dynamics.
14 pages, 6 figures, 3 tables
References in corpus (13)
- Jamming at Zero Temperature and Zero Applied Stress: the Epitome of Disorder
- Granular flow down an inclined plane: Bagnold scaling and rheology
- A model for collisions in granular gases
- Jamming during the discharge of granular matter from a silo
- Statistics of the contact network in frictional and frictionless granular packings
- Rolling friction of a viscous sphere on a hard plane
- Free open reference implementation of a two-phase PEM fuel cell model
- The shape of jamming arches in two-dimensional deposits of granular materials
- Granular packings with sliding, rolling and twisting friction
- On the Shape of the Tail of a Two Dimensional Sand Pile
- OpenFPM: A scalable open framework for particle and particle-mesh codes on parallel computers
- PolyHoop: Soft particle and tissue dynamics with topological transitions
- Influence of Rotations on the Critical State of Soil Mechanics