Armadillo C++ linear algebra library
- Armadillo is a high quality C++ linear algebra library, aiming towards a good balance between speed and ease of use; the syntax (API) is deliberately similar to Matlab
- Useful for development of algorithms in machine learning, pattern recognition, signal processing, bioinformatics, statistics, etc
- Provides efficient classes for vectors, matrices and cubes, as well as many functions which operate on the classes (eg. contiguous and non-contiguous submatrix views)
- Integer, floating point and complex numbers are supported, as well as a subset of trigonometric and statistics functions
- Various matrix decompositions are provided through integration with LAPACK, or one of its high performance drop-in replacements (such as the multi-threaded Intel MKL, or AMD ACML, or OpenBLAS libraries)
- An automatic expression evaluator (via template meta-programming) combines several operations to increase efficiency
- Useful for algorithm development directly in C++, or quick conversion of research code into production environments
- The library is open-source software, distributed under a license useful in both open-source and proprietary contexts
- Primarily developed at Data61 (Australia) by Conrad Sanderson, with contributions from around the world
Visit the Armadillo website to find out more.
Previous post:
Coming up next: