Section: robotpkg/math
Priority: extra
Maintainer: openrobots@laas.fr
Source: /opt/robotpkg/var/lib/robotpkg/packages/bsd/Ubuntu-26.04-x86_64/pub/eigen3-3.4.0~doc.tgz
Package: robotpkg-eigen3+doc
Version: 3.4.0
Architecture: amd64
Homepage: http://eigen.tuxfamily.org/
Depends: libstdc++6
Conflicts: robotpkg-eigen3
Provides: robotpkg-eigen3
Replaces: robotpkg-eigen3
Description: a C++ template library for linear algebra
 License: gnu-lgpl-v3
 Debian-Packager: robotpkg@laas.fr
 Eigen is a C++ template library for linear algebra: vectors, matrices,
 and related algorithms. It is:
 .
 * Versatile. (See modules and tutorial). Eigen handles, without code
   duplication, and in a completely integrated way:
 .
   o both fixed-size and dynamic-size matrices and vectors.
   o both dense and sparse (the latter is still experimental) matrices
   and vectors.   
   o both plain matrices/vectors and abstract expressions.
   o both column-major (the default) and row-major matrix storage.
   o both basic matrix/vector manipulation and many more advanced,
     specialized modules providing algorithms for linear algebra,
     geometry, quaternions, or advanced array manipulation. 
   o various numeric types out of the box, including std::complex
     numbers, while being easy to extend to custom numeric types.  
 .
 * Fast. (See benchmark).
   o Expression templates allow to intelligently remove temporaries and
     enable lazy evaluation, when that is appropriate -- Eigen takes care
     of this automatically and handles aliasing too in most cases. 
   o Explicit vectorization is performed for the SSE (2 and later),
     AltiVec and ARM NEON (in the development branch for now) instruction
     sets, with graceful fallback to non-vectorized code. Expression
     templates allow to perform these optimizations globally for whole
     expressions. 
   o With fixed-size objects, dynamic memory allocation is avoided, and
     the loops are unrolled when that makes sense. 
   o For large matrices, special attention is paid to cache-friendliness. 
 .
 * Elegant. (See API showcase). The API is extremely clean and
   expressive, thanks to expression templates. Implementing an
   algorithm on top of Eigen feels like just copying pseudocode. You
   can use complex expressions and still rely on Eigen to produce
   optimized code: there is no need for you to manually decompose
   expressions into small steps. 
 .
 * Compiler-friendy. Eigen has very reasonable compilation times at
   least with GCC, compared to other C++ libraries based on expression
   templates and heavy metaprogramming. Eigen is also standard C++ and
   supports various compilers.  
 .
 Homepage:
 http://eigen.tuxfamily.org/

