Project details for Armadillo library

Screenshot Armadillo library 3.920

by cu24gjf - November 1, 2013, 03:19:07 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, with an API is similar to MATLAB. 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 (during compile time) to combine several operations into one and reduce (or eliminate) the need for temporaries. This is accomplished through recursive templates and template meta-programming.

This library is useful if C++ has been decided as the language of choice (due to speed and/or integration capabilities), rather than another language like Matlab or Octave. It is distributed under a license that is useful in both open-source and commercial/proprietary contexts.

Changes to previous version:
  • faster multiplication of a matrix with a transpose of itself
  • faster round(), exp2() and log2() when using C++11
  • added signum function: sign()
  • added move constructors when using C++11
  • added 2D fast Fourier transform: fft2()
  • added .tube() for easier extraction of vectors and subcubes from cubes
  • added vectorise() for reshaping matrices into vectors
  • added all() and any() for indicating presence of elements satisfying a relational condition
  • minor fix for inplace reshape()
  • minor corrections for compilation issues under GCC 4.8+ and MSVC
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.