Software:Eigen (C++ library)

From HandWiki
Eigen
Eigen Silly Professor 135x135.png
Developer(s)
  • Benoît Jacob
  • Gaël Guennebaud
Written inC++
Operating systemCross-platform
TypeLibrary
LicenseMPL 2.0

Eigen is a high-level C++ library of template headers for linear algebra, matrix and vector operations, geometrical transformations, numerical solvers and related algorithms. Eigen is open-source software licensed under the Mozilla Public License 2.0 since version 3.1.1. Earlier versions were licensed under the GNU Lesser General Public License.[1] Version 1.0 was released in Dec 2006.[2]

Eigen is implemented using the expression templates metaprogramming technique, meaning it builds expression trees at compile time and generates custom code to evaluate these. Using expression templates and a cost model of floating point operations, the library performs its own loop unrolling and vectorization.[3] Eigen itself can provide BLAS and a subset of LAPACK interfaces.[4]

Release 3.4 (2021) includes many improvements.[5]

See also

References