List of all members.
Classes |
class | InnerIterator |
Public Types |
enum | { Options = _Options
} |
typedef MappedSparseMatrix
< Scalar, Flags > | Map |
Public Member Functions |
Index | rows () const |
Index | cols () const |
Index | innerSize () const |
Index | outerSize () const |
Index | innerNonZeros (Index j) const |
std::vector< CompressedStorage
< Scalar, Index > > & | _data () |
const std::vector
< CompressedStorage< Scalar,
Index > > & | _data () const |
Scalar | coeff (Index row, Index col) const |
Scalar & | coeffRef (Index row, Index col) |
void | setZero () |
Index | nonZeros () const |
void | reserve (Index reserveSize=1000) |
void | startVec (Index) |
Scalar & | insertBack (Index row, Index col) |
Scalar & | insertBackByOuterInner (Index outer, Index inner) |
Scalar & | insert (Index row, Index col) |
void | finalize () |
void | prune (Scalar reference, RealScalar epsilon=NumTraits< RealScalar >::dummy_precision()) |
void | resize (Index rows, Index cols) |
void | resizeAndKeepData (Index rows, Index cols) |
| DynamicSparseMatrix () |
| DynamicSparseMatrix (Index rows, Index cols) |
template<typename OtherDerived > |
| DynamicSparseMatrix (const SparseMatrixBase< OtherDerived > &other) |
| DynamicSparseMatrix (const DynamicSparseMatrix &other) |
void | swap (DynamicSparseMatrix &other) |
DynamicSparseMatrix & | operator= (const DynamicSparseMatrix &other) |
| ~DynamicSparseMatrix () |
EIGEN_DEPRECATED void | startFill (Index reserveSize=1000) |
EIGEN_DEPRECATED Scalar & | fill (Index row, Index col) |
EIGEN_DEPRECATED Scalar & | fillrand (Index row, Index col) |
EIGEN_DEPRECATED void | endFill () |
Protected Types |
typedef DynamicSparseMatrix
< Scalar,(Flags &~RowMajorBit)|(IsRowMajor?RowMajorBit:0)> | TransposedSparseMatrix |
Protected Attributes |
Index | m_innerSize |
std::vector< CompressedStorage
< Scalar, Index > > | m_data |
Detailed Description
template<typename _Scalar, int _Options, typename _Index>
class DynamicSparseMatrix< _Scalar, _Options, _Index >
A sparse matrix class designed for matrix assembly purpose.
- Parameters:
-
| _Scalar | the scalar type, i.e. the type of the coefficients |
Unlike SparseMatrix, this class provides a much higher degree of flexibility. In particular, it allows random read/write accesses in log(rho*outer_size) where rho
is the probability that a coefficient is nonzero and outer_size is the number of columns if the matrix is column-major and the number of rows otherwise.
Internally, the data are stored as a std::vector of compressed vector. The performances of random writes might decrease as the number of nonzeros per inner-vector increase. In practice, we observed very good performance till about 100 nonzeros/vector, and the performance remains relatively good till 500 nonzeros/vectors.
- See also:
- SparseMatrix
Member Typedef Documentation
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
Member Enumeration Documentation
template<typename _Scalar, int _Options, typename _Index>
Constructor & Destructor Documentation
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
template<typename OtherDerived >
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
Member Function Documentation
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
- Returns:
- the coefficient value at given position row, col This operation involes a log(rho*outer_size) binary search.
template<typename _Scalar, int _Options, typename _Index>
- Returns:
- a reference to the coefficient value at given position row, col This operation involes a log(rho*outer_size) binary search. If the coefficient does not exist yet, then a sorted insertion into a sequential buffer is performed.
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
- Deprecated:
- use insert() inserts a nonzero coefficient at given coordinates row, col and returns its reference assuming that: 1 - the coefficient does not exist yet 2 - this the coefficient with greater inner coordinate for the given outer coordinate. In other words, assuming
*this
is column-major, then there must not exists any nonzero coefficient of coordinates i
x
col such that i
>= row. Otherwise the matrix is invalid.
- See also:
- fillrand(), coeffRef()
template<typename _Scalar, int _Options, typename _Index>
- Deprecated:
- use insert() Like fill() but with random inner coordinates. Compared to the generic coeffRef(), the unique limitation is that we assume the coefficient does not exist yet.
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
- Returns:
- a reference to the non zero coefficient at position row, col assuming that:
- the nonzero does not already exist
- the new coefficient is the last one of the given inner vector.
- See also:
- insert, insertBackByOuterInner
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
Suppress all nonzeros which are smaller than reference under the tolerence epsilon
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
Resize the matrix without preserving the data (the matrix is set to zero)
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
- Deprecated:
- Set the matrix to zero and reserve the memory for reserveSize nonzero coefficients.
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
Member Data Documentation
template<typename _Scalar, int _Options, typename _Index>
template<typename _Scalar, int _Options, typename _Index>
The documentation for this class was generated from the following file:
- /home/hauberg/Dokumenter/Capture/humim-tracker-0.1/src/ntk/geometry/Eigen/src/Sparse/DynamicSparseMatrix.h