|
Ublas : |
From: Michael Stevens (mail_at_[hidden])
Date: 2005-12-18 11:21:13
Hello,
On Sunday, 18. December 2005 12:09, eeitan_at_[hidden] wrote:
> hello, i am using the boost files:
>
> and typedef's
>
> typedef boost::numeric::ublas::matrix<double,
> boost::numeric::ublas::row_major> Matrix;
> typedef boost::numeric::ublas::symmetric_matrix<double,
> boost::numeric::ublas::lower, boost::numeric::ublas::row_major>
> SymetricMatrix;
> typedef boost::numeric::ublas::compressed_matrix<double,
> boost::numeric::ublas::row_major> SparseMatrix;
> typedef boost::numeric::ublas::vector<double> Vector;
> typedef std::vector<Vector> Base;
That is an awful lot of code. Maybe you could isolate what is failing to a
small test case.
> working with boost 1.32 is o.k. but with 1.33 i get the assertion error:
> Assertion failed in file
> /usr/local/include/boost-1_33/boost/numeric/ublas/matrix.hpp at line 2556:
> it_ < (*this) ().size_common_
> EXCEPTION: bad index
>
> what could be the problem ????
Hmmm. Interesting.
The test at this line is in 'class identity_matrix' in
const_iterator2 function operator ++
Looks like you are assigning from a identity matrix somewhere in you code..
Can it be that this identity matrix is not square? This assertion in question
is comparing the index to the 'size_common_'. This looks wrong I think this
should be the 'size2'.
Looks like a bug was introduced into the handing of non square indentity
matrices somewhere before 1.33.0
Michael
-- ___________________________________ Michael Stevens Systems Engineering 34128 Kassel, Germany Phone/Fax: +49 561 5218038 Navigation Systems, Estimation and Bayesian Filtering http://bayesclasses.sf.net ___________________________________