[eigen] Sparse usage feedback

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


Dear List,



(I'm not sure if this one mail the the proper way to give some feedback on

my Eigen usage,

or if I should have made one focused mail per issue, or if I should ahev

filed wishes on bugzilla :

please correct me if I'm wrong. )



Using Eigen as a sparse backend, I have had the following issues :



1°) The iterators feel java-ish :

«for(SparseMatrixType::InnerIterator it(mat,k); it; ++it)»

I'd have expected to be able to get a begin() and an end() iterator

instead,

as is conventional in C++ (cf. STL).



2°) The iterator do not expose row() and col() through an iterator

interface

(i.e. with operator*()) which make it impossible to manipulate sequences

of

coords with the standard algorithms operating on iterator sequences.



3°) This is not possible to construct a Sparse from a Dense

(it is just a reminder because I believe it should be

implemented Really Soon Now ;)

http://forum.kde.org/viewtopic.php?p=48537#p48537 )



Not sparse specific, but I also was annoyed by :



4°) I think some scalar operation traits are missing

(i.e. trying to multiply an int matrix with a double fails to find

‘struct Eigen::ei_scalar_product_traits<double, int>’ )



5°) I think that the typedefs in i.e.  SparseLU<> should be public

I may need to know the LMatrixType & cie to make some metaprogramming of

my own

(or did I missed some traits struct ?)



However, I do want to state that these annoyances were really minor and 

that working with Eigen is an overall very good experience : many thanks

for the hard work ! :)



Best regards,



Bernard



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/