A. Tasora and M. Anitescu, "A Fast NCP Sovler for Large Rigid-Body Problems with Contacts, Friction, and Joints," Preprint ANL/MCS-P1476-0108, January 2008. [pdf]
The simulation of multibody systems with rigid contacts entails the solution of nonsmooth equations of motion. The dynamics is nonsmooth because of the discontinuous nature of noninterpenetration, collision, and adhesion constraints. We propose a solver that is able to handle the simulation of multibody systems of vast complexity, with more than 100,000 colliding rigid bodies. The huge number of nonsmooth constraints arising from unilateral contacts with friction gives rise to a nonlinear complementarity problem (NCP), which
we solve by means of a high-performance iterative method.
The method has been implemented as a high-performance software library,
written in C++. Complex simulation scenarios involving thousands of moving
parts have been extensively tested, showing a remarkable performance of the
numerical scheme compared to other algorithms.