SOLFEC

Solfec implements instances of the Non–Smooth Contact Dynamics Method [1], [2] and the Discrete Element Method using MPI, C, Python and several 3rd party codes written in C/C++/Fortran. It includes mesh, convex polyhedra, sphere and ellipsoid based shapes, linear elastic first order finite elements, pseudo-rigid and rigid kinematics, velocity based Signorini–Coulomb contact/impact law, and a parallel time stepping combined with a simple dynamic load balancing. Solfec has been developed as a part of research [3], and it continues to be developed and maintained since.

More details can be found in:

References:

[1]CMAME, 177(3–4):329–349, 1999.
[2]CMAME, 177(3–4):235–257, 1999.
[3]IJNME, 87(1–5):437–456, 2011.