is a comprehensive, template based, C++ linear algebra library designed with alternative interfaces for LAPACK and ATLAS libraries.
The tool is created to offer both speed and ease of use, as well as a familiar syntax (or API), similar to Matlab.
Armadillo allows you to script various types of mathematical functions that you can integrate in components or applications. It can help you develop algorithms in machine learning, process signals, generate statistics, even recognize patterns.
It can come in handy for bioinformatics, statistics or other scientific studies and provides you with classes of vectors, matrices, cubes functions.
It can work with several categories of numbers, such as integer, floating or complex, as well as with trigonometric functions.
Armadillo integrates well with LAPACK or other similar tools, allowing you to inherit and extend their capabilities. It allows you to create routines for solving both linear equations and matrices or to decompose a matrix.
Similar algebra solutions can be provided by integrations with libraries such as Intel MKL, AMD ACML or certain editions of BLAS.
The tool provides you with an automatic expression evaluator, that you can access via the specific template and use to combine multiple algorithms.
It allows you to increase the efficiency and speed of compiling by performing several operations at the same time.
Armadillo can be used with one of the supported development environments, such as C++ or Visual C++ and with GCC, Intel pr MSVC C++ compilers.
Moreover, the tool features a detailed documentation that allows you to get accustomed with the syntax and the functions that you can generate.
Armadillo is also accompanied by templates and examples, designed to help you get started with defining functions or algorithms.