Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms.