A simple Discrete Element Method implementation in Python.
A particle bouncing on top of a particle (with comparatively infinite density and no gravity).
![Video](https://camo.githubusercontent.com/847c6276319e5a66e34fcb88882df0e254a101f161e117c7ab5807aafa8f1fd6/687474703a2f2f696d672e796f75747562652e636f6d2f76692f4d697a6c44767346632d772f302e6a7067)
A series of particles dropped on top of a particle (with comparatively infinite density and no gravity) with small offsets.
![Video](https://camo.githubusercontent.com/db8ec2576b31b1448739501ea020d32cefb150e54fab864980f39633e53a136a/687474703a2f2f696d672e796f75747562652e636f6d2f76692f583031586e366f6b7372732f302e6a7067)
A particle bouncing on top of a fixed wall.
![Video](https://camo.githubusercontent.com/a2ff961b1d3b894da9d71dfeb1f0d09babc50d1459edcc05a45ffffd37219632/687474703a2f2f696d672e796f75747562652e636f6d2f76692f445936516d3556334345632f302e6a7067)
Particles with and without friction sliding off of other particles (with comparatively infinite density and no gravity).
![Video](https://camo.githubusercontent.com/8816811c881f56f022c7845524554ea367c7b5cf3e9c89245a8fb70497063d30/687474703a2f2f696d672e796f75747562652e636f6d2f76692f4b32615f623733307962732f302e6a7067)
Particles with and without friction sliding along a fixed wall from a starting velocity.
![Video](https://camo.githubusercontent.com/dda62566ca361275f6c18c9223158ff1c4e783af586c103cf06e790a56de7ea5/687474703a2f2f696d672e796f75747562652e636f6d2f76692f4d665467585375456667412f302e6a7067)