Armadillo is an open source library of C++ linear algebra tools. It supports integers, floating points, complex numbers, and a subset of trigonometric and statistic functions. It is designed with an easy-to-use interface. There are also matrix decompositions provided through optional integration with LAPACK or the Linear Algebra Package that provides routines for solving systems of linear equations and linear least squares, Eigenvalue problems, and singular value decomposition.

Additionally, Armadillo supports recursive templates and template meta-programming that combines various operations into one and reduce the need for temporaries. This will come very useful with the use of C++ language with its speed and integration capabilities.

]]>