List of Numerical Libraries - C++

C++

  • Armadillo is a C++ linear algebra library (matrix and vector maths), aiming towards a good balance between speed and ease of use. It employs template classes, and has optional links to BLAS and LAPACK.
  • Blitz++ is a high-performance vector mathematics library written in C++.
  • Dlib is a modern C++ library with easy to use linear algebra and optimization tools which benefit from optimized BLAS and LAPACK libraries.
  • Eigen is a vector mathematics library with performance comparable with Intel's Math Kernel Library
  • Hermes Project: C++/Python library for rapid prototyping of space- and space-time adaptive hp-FEM solvers.
  • IML++ is a C++ library for solving linear systems of equations, capable of dealing with dense, sparse, and distributed matrices.
  • IT++ is a C++ library for linear algebra (matrices and vectors), signal processing and communications. Functionality similar to MATLAB and Octave.
  • LAMA is a C++ template library for writing numerical solvers targeting various hardwares (eg. GPUs through CUDA or OpenCL) on distributed memory systems, hiding the hardware specific programming from the program developer
  • LAPACK++, a C++ wrapper library for LAPACK and BLAS
  • LinBox is a C++ template library for doing exact computational linear algebra.
  • MTL4 is a generic C++ template library providing sparse and dense BLAS functionality. MTL4 establishes an intuitive interface (similar to MATLAB) and broad applicability thanks to Generic programming.
  • The NAG C++ Library is a collection of mathematical and statistical routines for C++.
  • NTL is a C++ library for number theory.
  • GNU Scientific Library (GSL) is a numerical library for C and C++ programmers. It is free software under the GNU General Public License. The library provides a wide range of mathematical routines such as random number generators, etc. There are over 1000 functions in total with an extensive test suite.

Read more about this topic:  List Of Numerical Libraries