mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-01-18 14:34:17 +08:00
7947ae0e50
Cheesy slashdot joke included.
48 lines
2.1 KiB
Plaintext
48 lines
2.1 KiB
Plaintext
Eigen 2 business plan, aka TODO.
|
|
|
|
This is the work branch for Eigen2, eventually to supersede to Eigen 1 in
|
|
/trunk/kdesupport/eigen.
|
|
|
|
Eigen2 starts as a fork of the orphaned code of Tvmet.
|
|
|
|
- Phase A: cleanup and reorganize Tvmet code.
|
|
-- port from autotools to CMake (IN PROGRESS)
|
|
-- Remove unneeded/obsolete configure checks (IN PROGRESS)
|
|
-- Remove other unneeded defines and #ifdefs, like TVMET_DYNAMIC_MEMORY
|
|
(we want to use fixed-size only at this stage).
|
|
-- Make sure the test-suite compiles and succeeds.
|
|
-- add a meta-header including all headers (requested by Andre)
|
|
|
|
- Phase B: Complete the fixed-size part of Eigen 2.
|
|
-- Add to the Vector and Matrix classes all the useful methods from
|
|
Eigen 1. Also implement the other useful features from Eigen 1, like
|
|
projective geometry, linear regression, quaternions.
|
|
Make sure all that works nicely with the expression templates.
|
|
-- review the API for consistency, naming scheme etc.
|
|
-- Make sure all the optimizations of Eigen 1 survive in Eigen 2. For
|
|
instance, in Eigen 1 we hand-unroll most of the nested loops that GCC 4.1
|
|
fails to unroll. This is most useful and we need to make sure that Eigen 2
|
|
does it too.
|
|
-- Extend the test-suite to cover everything.
|
|
-- Rename consistently Tvmet to Eigen while giving credit (keep copyright
|
|
lines, mention Tvmet in documentation, README, website, etc.)
|
|
|
|
- Phase C: Do the dynamic-size part of Eigen 2 (as a GMM++ wrapper).
|
|
-- Import a SVN snapshot of GMM++ (there have been useful changes since the
|
|
last stable release 2.0.2).
|
|
-- Write the wrapping classes using the expression template mechanisms from
|
|
Tvmet.
|
|
-- Evaluate adding some methods/functions from Eigen 1, like those for linear
|
|
regression.
|
|
-- Review the whole API (fixed-size and dynamic-size) for consistency and
|
|
add bridges between the fixed-size and dynamic-size classes: constructors,
|
|
conversion operators, etc.
|
|
-- In a perfect world we would be able to do dynamic-size matrices with
|
|
fixed-size-matrix entries.
|
|
-- give credit to GMM in the documentation, README, website, etc.
|
|
|
|
- Phase D: ??????
|
|
|
|
- Phase E: $$$ Profit!!! $$$
|
|
|