This the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

SudoDEM

1 - Overview

SudoDEM is specifically designed for modeling non-spherical particles using discrete element method (DEM), which inherits a basic framework of an open-source DEM code, YADE. The project aims to develop a robust 2/3D DEM code for convex particles, e.g., polyhedrons, super-ellipsoids, poly-superellipsoids, cylinders and cones. The concave shapes can be constructed by grouping the convex ones with the typical “clump” technique.

cover image

Why SudoDEM

A sound name is the beginning to get things started. The word SudoDEM is coined as a combination of ‘sudo’ and ‘DEM’. The prefix ‘sudo’ is a program for Unix-like computer operating systems that allows users to run programs as the superuser, i.e., ‘super user do’, which here means a powerful and flexible DEM simulator. On the other hand, the pronunciation of ‘sudo’ sounds like ‘pseudo’, implying that SudoDEM does and will consist of features distinguishing from the conventional DEM codes.

SudoDEM is specifically designed for modeling non-spherical particles using discrete element method (DEM), which inherits a basic framework of an open-source DEM code, YADE1. A profound modification was performed on YADE for higher efficiency in modeling non-spherical particles. The project is hosted on ResearchGate with a goal of developing a robust 2/3D DEM code for convex particles, e.g., super-ellipsoids, poly-superellipsoids, cylinders, cones, polyhedrons. In SudoDEM, some general optimization algorithms e.g., Levenberg-Marquardt and Nelder-Mead simplex are adopted for contact detection of superquadric particles. The popular Gilbert-Johnson-Keerthi (GJK) algorithm used in computer graphic simulation is employed for convex and non-convex (under construction) polytopes.

The project of SudoDEM is hosted on an individual website, and the synchronous update can be also found on the Researchgate Page.

The users are appreciated to cite our work as, but not limited to, listed below.

(1) Zhao S., Zhao J. (2019). SudoDEM: an open-source discrete element code for non-spherical particles, in preparation.

(2) Zhao S., Zhao J. (2019). A poly-superellipsoid-based approach on particle morphology for DEM modeling of granular media. International Journal for Numerical and Analytical Methods in Geomechanics, 43(13): 2147–2169.

(3) Zhao S., Evans T. M., Zhou X. (2018). Effects of curvature-related DEM contact model on the macro-and micro-mechanical behaviours of granular soils. Gétechnique, 68(12): 1085–1098.

(4) Zhao S., Zhang N., Zhou X., Zhang L. (2017). Particle shape effects on fabric of granular random packing. Powder technology, 310, 175–186.

Disclaimers

BECAUSE THE CODE IS FREE OF CHARGE, THERE IS NO WARRANTY ‘AS IS’; NOT EVEN FOR MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgments

The work was partially supported by the Hong Kong Scholars Program (2018), the National Natural Science Foundation of China (by Project No. 51679207, 51909095), Research Grants Council of Hong Kong (by GRF Project No. 16205418, TBRS Project No. T22-603/15N and CRF Project No. C6012-15G). The following open-source tools but not limited to are acknowledged: Ubuntu, YADE, Python, Boost, Eigen, Voro++, Paraview, Pov-Ray, GIMP, InkScape, Veusz and LaTeX.


  1. https://yade-dev.gitlab.io/trunk/ ↩︎

2 - Download

Package


Please check this website or follow the Project on Researchgate for the updates if needed.

The source code of SudoDEM2D/3D is hosted at a GitHub repository SudoDEM.

Note: Binaries were compiled just for Ubuntu 14 ~ 18. For other Linux distributions, you have to comiple and install from the sources. The compilation and installation without root will be introduced in the quick guide listed below.

Manual

The latest quick guide: Version 1.2.

Examples

Scripts of examples for both 2D and 3D in the subfolder of source code, here

Installation

Read the installation guide in the codes for compiling the sources on your computer.


References

If you plan to publish your research work using this code, please consider citing one of the following publications:

  • Zhao S., Zhao J. (2021). SudoDEM : Unleashing the predictive power of the discrete element method on simulation for non-spherical granular particles. Computer Physics Communications, 259, 107670. (PDF)
  • Zhao S., Zhao J. (2019) A poly-superellipsoid-based approach on particle morphology for DEM modeling of granular media. International Journal for Numerical and Analytical Methods in Geomechanics. 43(13): 2147-2169. (PDF)
  • Zhao S., Evans T. M., Zhou X. (2018). Effects of curvature-related DEM contact model on the macro-and micro-mechanical behaviours of granular soils. Gétechnique, 68(12): 1085–1098. (PDF)
  • Zhao S., Zhang N., Zhou X., Zhang L. (2017). Particle shape effects on fabric of granular random packing. Powder Technology, 310, 175–186. (PDF)

Back to top

3 - Features

How to contribute to the docs

SudoDEM = sudo + DEM: a powerful ‘pseudo’ DEM simulator

Basic Features

Forked off YADE in 2014 with basic features:

  • C++ and Python (2.7)
  • OpenMP acceleration
  • Linux platform

More

You may concern:

  • Learning curve — easy to get started
  • Documents — YADE community and our quick guide
  • Both 2D & 3D — Sure
  • Non-spherical particles — the focus of SudoDEM
  • Shape customization — the general interface of contact detection algorithms
  • Efficiency — :)

Others

  • The Hertz-Mindlin Model: for super-ellipsoids only
  • The Rolling Resistance Model: for both spheres and non-spheres
  • Flexible Membrane: constructed by using the finite element (FE)
  • Easy Compilation and Installation: less dependencies, which help to compile and install SudoDEM on a PC or server without the root permission.
  • Damping: local and viscous damping

On the list:

  • MPI & GPU acceleration (on-going)
  • Upgrading to Python 3
  • Escaping from Boost

Back to top 

4 - Gallery

GUI for 2D and 3D

4.1 - Screenshots for SudoDEM2D

SudoDEM2D

Shear of super-elliptical particles with periodic boundaries

4.2 - Screenshots for SudoDEM3D

SudoDEM3D

Triaxial Compression

gif1

A triaxial compression test of poly-superellipsoidal particles

Mixture of Cubes and Spheres

Mixture of cones, spheres, cylinders and polyhedrons

Packing of polyhedral particles

A cubic packing of super-ellipsoidal particles

Packings of cones, cylinders and cubes

Packing of superellipsoids

Flexible membrane

A landslide impacting a flexible barrier

Visualization via Pov-ray

Back to top