Pinocchio
A C++ and Python library implementing fast rigid body dynamics algorithms and their analytical derivatives, used in robotics, biomechanics, and physics simulation.
Pinocchio implements rigid body dynamics algorithms for poly-articulated systems, building on Roy Featherstone's foundational work, and provides analytical derivatives of algorithms such as the Recursive Newton-Euler and Articulated-Body algorithms. Those derivatives support gradient-based optimization, control, and learning applications built on top of the library.
It handles closed-loop kinematic mechanisms, frictional contact problems, and differentiable physics computations, and is used as a foundation by other robotics software such as Aligator, Crocoddyl, and the Stack-of-Tasks controller framework. It is built on Eigen for linear algebra and the coal library for collision detection, and includes a Python interface for fast prototyping.
Originally designed for robotics, it is also used in biomechanics, computer graphics, and vision applications, and is developed by the Willow team at Inria.