11 #ifndef EIGEN_SPARSEVIEW_H 12 #define EIGEN_SPARSEVIEW_H 18 template<
typename MatrixType>
21 typedef typename MatrixType::Index
Index;
30 template<
typename MatrixType>
38 SparseView(const MatrixType& mat, const Scalar& m_reference = Scalar(0),
40 m_matrix(mat), m_reference(m_reference), m_epsilon(m_epsilon) {}
44 inline Index rows()
const {
return m_matrix.rows(); }
45 inline Index cols()
const {
return m_matrix.cols(); }
56 template<
typename MatrixType>
61 typedef typename _MatrixTypeNested::InnerIterator
IterBase;
63 IterBase(view.m_matrix, outer), m_view(view)
70 IterBase::operator++();
75 using IterBase::value;
85 IterBase::operator++();
90 template<
typename Derived>
#define EIGEN_STRONG_INLINE
EIGEN_STRONG_INLINE InnerIterator & operator++()
iterative scaling algorithm to equilibrate rows and column norms in matrices
Holds information about the various numeric (i.e. scalar) types allowed by Eigen. ...
bool isMuchSmallerThan(const Scalar &x, const OtherScalar &y, typename NumTraits< Scalar >::Real precision=NumTraits< Scalar >::dummy_precision())
internal::traits< Derived >::Scalar Scalar
const unsigned int RowMajorBit
const SparseView< Derived > sparseView(const Scalar &m_reference=Scalar(0), const typename NumTraits< Scalar >::Real &m_epsilon=NumTraits< Scalar >::dummy_precision()) const
InnerIterator(const SparseView &view, Index outer)
NumTraits< Scalar >::Real m_epsilon
#define EIGEN_SPARSE_PUBLIC_INTERFACE(Derived)
Base class of any sparse matrices or sparse expressions.
MatrixType::Nested MatrixTypeNested
internal::remove_all< MatrixTypeNested >::type _MatrixTypeNested
MatrixTypeNested m_matrix
const SparseView & m_view
void incrementToNonZero()
internal::traits< Derived >::Index Index
_MatrixTypeNested::InnerIterator IterBase