Armadillo is a C++ linear algebra library (matrix maths) aiming towards a good balance between speed and ease of use. Integer, floating point, and complex numbers are supported, as well as a subset of trigonometric and statistics functions. Various matrix decompositions are provided through optional integration with LAPACK and ATLAS libraries. A delayed evaluation approach, based on template meta-programming, is used (during compile time) to combine several operations into one and reduce or eliminate the need for temporaries.
| Tags | Scientific/Engineering Mathematics Software Development Libraries machine learning Statistics |
|---|---|
| Licenses | LGPL |
| Operating Systems | Unix POSIX Linux Mac OS X Windows |
| Implementation | C++ |
Recent releases


Release Notes: This release contains faster eigen decomposition via optional use of the "divide and conquer" algorithm. It also contains faster transposition of vectors and compound expressions.


Release Notes: This release contains fixes for complex number versions of inplace transpose and economical singular value decomposition.


Release Notes: This release fixes several compilation errors and handling of diagonal matrices.


Release Notes: This release adds support for non-contiguous submatrices and improves detection of vector expressions by many functions. It also has considerable speedups for handling fixed size matrices as well as submatrices with one row or column.


Release Notes: This release has a faster repmat() function and adds workarounds for non-conforming C++ compilers