./math/eigen3, C++ template library for linear algebra

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 3.4.0nb1, Package name: eigen3-3.4.0nb1, Maintainer: pkgsrc-users

Eigen 3 is a C++ template library for linear algebra: It is:
* Versatile. Eigen handles and in a completely integrated way:
o both fixed-size and dynamic-size matrices and vectors.
o both dense and sparse 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.
* Fast.
o Expression templates allow to intelligently remove temporaries and enable
lazy evaluation, when that is appropriate.
o Explicit vectorization is performed for the SSE (2 and later) and AltiVec
instruction sets, with graceful fallback to non-vectorized code.
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. 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 good compiler support, is standard C++98 and
maintains very reasonable compilation times.


Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 2092.862 KB

Version history: (Expand)


CVS history: (Expand)


   2023-05-02 11:32:57 by Thomas Klausner | Files touched by this commit (3)
Log message:
eigen3: remove patch that was rejected upstream

Eigen's intention here was that if the user is going to print their
types via something like
```
os << matrix;
```
then they should be including `<ostream>` explicitly on their own,
and not rely on a transitively included header.  So this was by
design.  As it is, it should build and run if
- you never actually call those functions, and don't include `<ostream>` \ 
on your own
- you do call those functions, and do include `<ostream>` in your own.

Bump PKGREVISION.
   2023-03-30 19:31:18 by Tobias Nygren | Files touched by this commit (2)
Log message:
eigen3: remove .orig file from PLIST
   2023-03-30 18:04:21 by Thomas Klausner | Files touched by this commit (2)
Log message:
eigen3: regen distinfo

The distfile currently provided by the URL has the proper WRKSRC.
No other change to previous version, no idea why I got a different one.

Noted by tnn@
   2023-03-29 10:55:01 by Thomas Klausner | Files touched by this commit (2)
Log message:
eigen3: add upstream bug report URL
   2023-03-29 10:50:27 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
eigen3: update to 3.4.0.

Notice: that 3.4.x will be the last major release series of Eigen
that will support c++03. The master branch will drop c++03 support
after this release.

Changelog -- too long, see
https://eigen.tuxfamily.org/index.php?title=3.4
   2022-01-19 10:52:09 by Niclas Rosenvik | Files touched by this commit (1)
Log message:
disable package registry in eigen3 to not populate fake homedir
   2021-10-26 12:56:13 by Nia Alarie | Files touched by this commit (458)
Log message:
math: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes
   2021-10-07 16:28:36 by Nia Alarie | Files touched by this commit (458)
Log message:
math: Remove SHA1 hashes for distfiles