C++ Armadillo introduction and installation














































C++ Armadillo introduction and installation




Introduction::

Armadillo is a high quality linear algebra library (matrix maths) for the C++ language, aiming towards a good balance between speed and ease of use
 
Provides high-level syntax and functionality deliberately similar to Matlab
 
Useful for algorithm development directly in C++, or quick conversion of research code into production environments (eg. software & hardware products)
 
Provides efficient classes for vectors, matrices and cubes (1st, 2nd and 3rd order tensors); dense and sparse matrices are supported
 
Integer, floating point and complex numbers are supported
 
Various matrix decompositions are provided through integration with LAPACK, or one of its high performance drop-in replacements (eg. multi-threaded Intel MKL, or OpenBLAS)
 
A sophisticated expression evaluator (based on template meta-programming) automatically combines several operations to increase speed and efficiency
 
Can automatically use OpenMP multi-threading (parallelisation) to speed up computationally expensive operations
 
Available under a permissive license, useful for both open-source and proprietary (closed-source) software
 
Can be used for machine learning, pattern recognition, computer vision, signal processing, bioinformatics, statistics, finance, etc

Features:

 Simple syntax
 Numerical type support.
 Based on LAPACK library.
 Fast matrix manipulation using template metaprograming.
 Matrix save and load in file as Matlab
 Interfacing with other libraries: via STL-iterators
 Open source development
 Cross-platform usability 

Installation:

To install armadillo library on ubuntu(Linux) copy these commands in terminal and press enter.
 
sudo apt-get install liblapack-dev
sudo apt-get install libblas-dev
sudo apt-get install libboost-dev
sudo apt-get install libarmadillo-dev

More Articles of Shubham Loya:

Name Views Likes
C++ OpenCV cv::trace() 1555 1
C++ Armadillo :: Real and Imaginary part 1628 1
C++ OpenCV cv::perspectiveTransform() 5325 1
C++ Armadillo :: find_nonfinite 792 2
C++ Armadillo introduction and installation 596 1
C++ Armadillo :: Kron 1307 1
C++ Armadillo :: Accessing row and column and operations on it 1403 1
C++ Armadillo :: cond 481 2
C++ Armadillo :: pseudo-inverse 2886 1
C++ OpenCV cv::flip() 1834 1
C++ OpenCV cv::transpose() 6949 1
C++ Armadillo :: any 532 2
C++ Armadillo :: Max and Min of matrices 918 1
C++ OpenCV cv::pow() 2395 1
C++ Armadillo :: fliplr and flipud 1000 2
C++ Armadillo :: Sort 1230 1
C++ Armadillo :: Determinant of Matrix 883 1
C++ Armadillo :: Indices of Unique elements of matrix 957 1
C++ Armadillo :: eps 492 3
C++ Armadillo :: Inverse 1507 1
C++ Armadillo :: Transpose of Matrix 1230 1
C++ Armadillo :: Basic Arithmetic Operations 453 1
C++ Armadillo :: Cross Product of vectors 1273 4
C++ OpenCV program to play a video 1184 1
C++ Armadillo :: Diagonal of Matrix 947 1
C++ Armadillo :: Absolute value of Matrix 1147 1
C++ Armadillo :: Conj 482 2
C++ Armadillo :: expmat 954 2
C++ OpenCV Input from Camera 1945 1
C++ OpenCV program to convert BGR image to grayscale image 5675 1
C++ Armadillo :: Intersect 764 2
C++ Armadillo :: Nonzeros 994 2
C++ Armadillo :: Dot Product of vectors 1664 2
C++ OpenCV:: Transforming BGR image to Grey scale image 580 2
C++ OpenCV to rotate an image 11173 1
C++ Armadillo :: Unique elements of matrix 809 1
C++ Armadillo :: Log Determinant 797 1
C++ Armadillo :: Sort_index 1509 2
C++ Armadillo :: Max Min 1596 1
C++ Armadillo :: Shift 918 1
C++ Armadillo :: Square root of Matrix 1729 1
C++ OpenCV cv::cvtColor() 2322 1

Comments