Project details for Armadillo library

Screenshot Armadillo library 5.000

by cu24gjf - April 13, 2015, 05:05:36 CET [ Project Homepage BibTeX Download ]

view ( today), download ( today ), 0 subscriptions

OverallWhole StarWhole StarWhole StarWhole StarEmpty Star
FeaturesWhole StarWhole StarWhole StarWhole Star1/2 Star
UsabilityWhole StarWhole StarWhole StarWhole Star1/2 Star
DocumentationWhole StarWhole StarWhole Star1/2 StarEmpty Star
(based on 3 votes)

Armadillo is a template C++ linear algebra library (matrix maths) aiming towards a good balance between speed and ease of use. The API is similar to MATLAB.

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 via an optional integration with LAPACK, or one of its high performance drop-in replacements (eg. Intel MKL, AMD ACML, or OpenBLAS).

A delayed evaluation approach is employed (at compile time) to combine several operations into one and reduce (or eliminate) the need for temporaries. This is automatically accomplished through recursive templates and template meta-programming.

Useful for conversion of research code into production environments, or if C++ has been decided as the language of choice, due to speed and/or integration capabilities.

Distributed under a license that is useful in both open-source and commercial/proprietary contexts.

Primarily developed at NICTA (Australia) by Conrad Sanderson, with contributions from around the world.

Changes to previous version:
  • added spsolve() for solving sparse systems of linear equations
  • added svds() for singular value decomposition of sparse matrices
  • added nonzeros() for extracting non-zero values from matrices
  • added handling of diagonal views by sparse matrices
  • expanded repmat() to handle sparse matrices
  • expanded join_rows() and join_cols() to handle sparse matrices
  • sort_index() and stable_sort_index() have been placed in the delayed operations framework for increased efficiency
  • use of 64 bit integers is automatically enabled when using C++11
  • workaround for a bug in recent releases of Apple Xcode
  • workaround for a bug in LAPACK 3.5
BibTeX Entry: Download
Supported Operating Systems: Linux, Windows, Unix, Mac Os X
Data Formats: Ascii, Binary, Hdf, Csv
Tags: Matlab, Matrix Library, Atlas, Lapack, Linear Algebra, Templates
Archive: download here


No one has posted any comments yet. Perhaps you'd like to be the first?

Leave a comment

You must be logged in to post comments.