Eigen (C++ library)
This article may rely excessively on sources too closely associated with the subject, potentially preventing the article from being verifiable and neutral. (January 2016) |
Developer(s) |
|
---|---|
Stable release | 3.4[1]
/ 18 August 2021 |
Written in | C++ |
Operating system | Cross-platform |
Type | Library |
License | MPL 2.0 |
Website | eigen |
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.[2] Version 1.0 was released in Dec 2006.[3]
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.[4] Eigen itself can provide BLAS and a subset of LAPACK interfaces.[5]
See also
[edit]References
[edit]- ^ Rasmus Munk Larsen (19 August 2021). "Eigen 3.4 released!".
- ^ "Eigen License". tuxfamily.org. Retrieved 19 Jan 2021.
- ^ "[eigen] Release 1.0".
- ^ Guennebaud, Gaël (2013). Eigen: A C++ linear algebra library (PDF). Eurographics/CGLibs.
- ^ "Todo - Eigen". eigen.tuxfamily.org.
The eigen_blas library is complete. The eigen_lapack currently implements cholesky and lu decomposition. Contact us if you want to help.