Chrono is a physics-based modelling and simulation infrastructure based on a platform-independent open-source design implemented in C++. A ProjectChrono library can be embedded in a software project to simulate, for instance, wheeled and tracked vehicles operating on deformable terrains, robots, mechatronic systems, compliant mechanisms, and fluid solid interaction phenomena. Systems can be made of rigid and flexible/compliant parts with constraints, motors and contacts; parts can have three-dimensional shapes for collision detection.
ProjectChrono can be downloaded here.
Help on how to use ProjectChrono is found here.