Hello everyone,
Thanks again for the help with the previous questions I had on lapack bindings.
Now I have what I think is a more general question related to symmetric_adaptor. Namely, the code
#include <boost/numeric/bindings/ublas/matrix.hpp>
#include <boost/numeric/bindings/ublas/symmetric.hpp>
namespace ublas = boost::numeric::ublas;
typedef float real_t;
typedef ublas::matrix<real_t, ublas::column_major> m_t;
typedef ublas::symmetric_adaptor<m_t, ublas::lower> symml_t;
int main()
{
m_t al(5,5);
symml_t sal;
sal.assign(al);
return 0;
}
does not compile, with boost/numeric/ublas/symmetric.hpp returning a 'no matching function' error. I gather that this is a misuse of the method symmetric_adaptor::assign(matrix_expression &), but I don't know why. I suppose a matrix does not qualify as a matrix_expression? How does one associate a matrix with a symmetric_adaptor after said symmetric_adaptor has been constructed?
Thanks,
-David