Fix SparseMatrix/SparseVector::sum()

SparseMatrix/SparseVector::sum() uses Map to compute the sum. But Map expects a
pointer.
This commit is contained in:
Jens Mueller 2010-05-27 17:02:24 +02:00
parent a240f83216
commit 48b8ace517

View File

@ -42,7 +42,7 @@ typename ei_traits<SparseMatrix<_Scalar,_Options> >::Scalar
SparseMatrix<_Scalar,_Options>::sum() const
{
ei_assert(rows()>0 && cols()>0 && "you are using a non initialized matrix");
return Matrix<Scalar,1,Dynamic>::Map(m_data.value(0), m_data.size()).sum();
return Matrix<Scalar,1,Dynamic>::Map(&m_data.value(0), m_data.size()).sum();
}
template<typename _Scalar, int _Options>
@ -50,7 +50,7 @@ typename ei_traits<SparseVector<_Scalar,_Options> >::Scalar
SparseVector<_Scalar,_Options>::sum() const
{
ei_assert(rows()>0 && cols()>0 && "you are using a non initialized matrix");
return Matrix<Scalar,1,Dynamic>::Map(m_data.value(0), m_data.size()).sum();
return Matrix<Scalar,1,Dynamic>::Map(&m_data.value(0), m_data.size()).sum();
}
#endif // EIGEN_SPARSEREDUX_H