erwincoumans/tiny-differentiable-simulator
A differentiable rigid-body physics simulator in C++ and CUDA designed for reinforcement learning and robotics applications.

Tiny Differentiable Simulator is a zero-dependency header-only physics library supporting forward and inverse rigid-body dynamics with automatic differentiation. It provides contact models using impulse-level LCP and spring-dampers, plus actuator models for motors and series-elastic actuators. The library works with automatic differentiation scalar types like CppAD, Stan Math fvar, and ceres::Jet, enabling gradient-based optimization in reinforcement learning and robotics training pipelines.