* Fast C++ library for linear algebra (matrix maths) and scientific computing
* Easy to use functions and syntax, deliberately similar to Matlab / Octave
* Uses template meta-programming techniques to increase efficiency
* Provides user-friendly wrappers for OpenBLAS, Intel MKL, LAPACK, ATLAS, ARPACK, SuperLU and FFTW libraries
* Useful for machine learning, pattern recognition, signal processing, bioinformatics, statistics, finance, etc.

* Downloads: http://arma.sourceforge.net/download.html
* Documentation: http://arma.sourceforge.net/docs.html
* Bug reports: http://arma.sourceforge.net/faq.html
* Git repo: https://gitlab.com/conradsnicta/armadillo-code

Features

  • Easy to use - has many MATLAB like functions
  • Useful for prototyping directly in C++
  • Useful for conversion of research code into production environments
  • Permissively licensed - can be used in proprietary software and products
  • Used for machine learning, pattern recognition, computer vision, signal processing, bioinformatics, statistics, finance, etc
  • Efficient classes for vectors, matrices, cubes (1st, 2nd, 3rd order tensors)
  • Supports dense and sparse matrices
  • Fast singular value decomposition (SVD), eigen decomposition, QR, LU, Cholesky, FFT
  • Clustering using k-means and Gaussian Mixture Models (GMM)
  • Automatic vectorisation of expressions (SIMD)
  • Contiguous and non-contiguous submatrices
  • Automatically combines several operations into one to increase speed and efficiency
  • Read/write data in CSV files
  • Automatically uses OpenMP for acceleration via multi-threading
  • Used for speeding up NumPy / Python via CARMA: https://github.com/RUrlus/carma
  • Used for machine learning and pattern recognition by MLPACK: https://mlpack.org/
  • Used for numerical optimisation by Ensmallen: https://ensmallen.org/

Project Activity

See All Activity >

License

Apache License V2.0

Follow Armadillo

Armadillo Web Site

Other Useful Business Software
The Secure Workspace for Remote Work Icon
The Secure Workspace for Remote Work

Venn isolates and protects work from any personal use on the same computer, whether BYO or company issued.

Venn is a secure workspace for remote work that isolates and protects work from any personal use on the same computer. Work lives in a secure local enclave that is company controlled, where all data is encrypted and access is managed. Within the enclave – visually indicated by the Blue Border around these applications – business activity is walled off from anything that happens on the personal side. As a result, work and personal uses can now safely coexist on the same computer.

Additional Project Details

Operating Systems

Cygwin, MinGW/MSYS2, Linux, BSD, Mac, Windows

Intended Audience

Information Technology, Science/Research, Education, Advanced End Users, Developers, Engineering

Programming Language

MATLAB, C++

Related Categories

MATLAB Algorithms, MATLAB Mathematics Software, MATLAB Machine Learning Software, MATLAB Computer Vision Libraries, C++ Algorithms, C++ Mathematics Software, C++ Machine Learning Software, C++ Computer Vision Libraries

Registered

2008-02-08