Boost logo

Ublas :

Subject: Re: [ublas] [bindings] matrix traits
From: Thomas Klimpel (Thomas.Klimpel_at_[hidden])
Date: 2009-01-08 18:41:55

Karl Meerbergen wrote:
> I have committed the idea of the workspace that we discussed last year.

Very good. I also like the fact that I'm still able to understand the implementation.

> I also removed some bugs.

Are there bugs that are not exposed by the regression tests? I remember seeing that the glas tests for syev and syev_d failed, but I always thought that this was a glas issue. I tried to test them again now, but they now have a compile error that I don't understand. (
syev.cpp:32: instantiated from here
/home/klimpel/cpp/glas/trunk/glas/glas/concept/pointer.hpp:17: error: no type named 'pointer' in 'class glas::matrix_symmetric_collection<glas::dense_matrix<double, glas::column_orientation> >'
syev.cpp:32: instantiated from here
/home/klimpel/cpp/glas/trunk/glas/glas/backend/glas/container/contiguous_dense_vector.hpp:104: error: no matching function for call to 'storage_ptr(const glas::dense_matrix_column_view<glas::matrix_symmetric_collection<glas::dense_matrix<double, glas::column_orientation> > >&)'
(While I'm at glas: py/ is missing the executable flag, and the tests for ./toolbox/mase/ semiseparable and semiseparable_d also fail for me.)

I also see that you removed matrix_traits<...>::storage_size, which is good because it was neither needed nor used. So there are now three changes with respect to tw506.pdf: matrix_traits<...>::num_rows and matrix_traits<...>::num_columns instead of matrix_traits<...>::size1 and matrix_traits<...>::size2, and no matrix_traits<...>::storage_size. Apart from that, I still consider tw506.pdf to be the most authoritative documentation of the numeric-bindings library.

> some functions still need furth work to use workspace3

I will update hbevx, heevd, heevx, syevd and syevx. I will also update the regression tests to use the new simplified syntax "workspace(wc,wr)".