Classes | Public Types | Public Member Functions | Protected Types | Protected Attributes
Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index > Class Template Reference

A sparse matrix class designed for matrix assembly purpose. More...

#include <DynamicSparseMatrix.h>

Inheritance diagram for Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >:
Inheritance graph
[legend]

List of all members.

Classes

class  InnerIterator
class  ReverseInnerIterator

Public Types

enum  { Options = _Options }
typedef MappedSparseMatrix
< Scalar, Flags
Map

Public Member Functions

std::vector
< internal::CompressedStorage
< Scalar, Index > > & 
_data ()
const std::vector
< internal::CompressedStorage
< Scalar, Index > > & 
_data () const
Scalar coeff (Index row, Index col) const
ScalarcoeffRef (Index row, Index col)
Index cols () const
EIGEN_DEPRECATED DynamicSparseMatrix ()
EIGEN_DEPRECATED DynamicSparseMatrix (Index rows, Index cols)
template<typename OtherDerived >
EIGEN_DEPRECATED DynamicSparseMatrix (const SparseMatrixBase< OtherDerived > &other)
 DynamicSparseMatrix (const DynamicSparseMatrix &other)
EIGEN_DEPRECATED void endFill ()
EIGEN_DEPRECATED Scalarfill (Index row, Index col)
EIGEN_DEPRECATED Scalarfillrand (Index row, Index col)
void finalize ()
Index innerNonZeros (Index j) const
Index innerSize () const
Scalarinsert (Index row, Index col)
ScalarinsertBack (Index row, Index col)
ScalarinsertBackByOuterInner (Index outer, Index inner)
Index nonZeros () const
DynamicSparseMatrixoperator= (const DynamicSparseMatrix &other)
Index outerSize () const
void prune (Scalar reference, RealScalar epsilon=NumTraits< RealScalar >::dummy_precision())
void reserve (Index reserveSize=1000)
void resize (Index rows, Index cols)
void resizeAndKeepData (Index rows, Index cols)
Index rows () const
void setZero ()
EIGEN_DEPRECATED void startFill (Index reserveSize=1000)
void startVec (Index)
void swap (DynamicSparseMatrix &other)
 ~DynamicSparseMatrix ()

Protected Types

typedef DynamicSparseMatrix
< Scalar,(Flags &~RowMajorBit)|(IsRowMajor?RowMajorBit:0)> 
TransposedSparseMatrix

Protected Attributes

std::vector
< internal::CompressedStorage
< Scalar, Index > > 
m_data
Index m_innerSize

Detailed Description

template<typename _Scalar, int _Options, typename _Index>
class Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >

A sparse matrix class designed for matrix assembly purpose.

Deprecated:
use a SparseMatrix in an uncompressed mode
Parameters:
_Scalarthe 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

Definition at line 56 of file DynamicSparseMatrix.h.


Member Typedef Documentation

template<typename _Scalar, int _Options, typename _Index>
typedef MappedSparseMatrix<Scalar,Flags> Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::Map

Definition at line 64 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
typedef DynamicSparseMatrix<Scalar,(Flags&~RowMajorBit)|(IsRowMajor?RowMajorBit:0)> Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::TransposedSparseMatrix [protected]

Definition at line 73 of file DynamicSparseMatrix.h.


Member Enumeration Documentation

template<typename _Scalar, int _Options, typename _Index>
anonymous enum
Enumerator:
Options 

Definition at line 67 of file DynamicSparseMatrix.h.


Constructor & Destructor Documentation

template<typename _Scalar, int _Options, typename _Index>
EIGEN_DEPRECATED Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::DynamicSparseMatrix ( ) [inline]

The class DynamicSparseMatrix is deprectaed

Definition at line 226 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
EIGEN_DEPRECATED Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::DynamicSparseMatrix ( Index  rows,
Index  cols 
) [inline]

The class DynamicSparseMatrix is deprectaed

Definition at line 233 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
template<typename OtherDerived >
EIGEN_DEPRECATED Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::DynamicSparseMatrix ( const SparseMatrixBase< OtherDerived > &  other) [inline, explicit]

The class DynamicSparseMatrix is deprectaed

Definition at line 241 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::DynamicSparseMatrix ( const DynamicSparseMatrix< _Scalar, _Options, _Index > &  other) [inline]

Definition at line 247 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::~DynamicSparseMatrix ( ) [inline]

Destructor

Definition at line 276 of file DynamicSparseMatrix.h.


Member Function Documentation

template<typename _Scalar, int _Options, typename _Index>
std::vector<internal::CompressedStorage<Scalar,Index> >& Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::_data ( ) [inline]

Definition at line 86 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
const std::vector<internal::CompressedStorage<Scalar,Index> >& Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::_data ( ) const [inline]

Definition at line 87 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
Scalar Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::coeff ( Index  row,
Index  col 
) const [inline]
Returns:
the coefficient value at given position row, col This operation involes a log(rho*outer_size) binary search.

Definition at line 92 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
Scalar& Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::coeffRef ( Index  row,
Index  col 
) [inline]
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.

Definition at line 103 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
Index Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::cols ( void  ) const [inline]
Returns:
the number of columns.
See also:
rows()

Reimplemented from Eigen::SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >.

Definition at line 81 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
EIGEN_DEPRECATED void Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::endFill ( ) [inline]
Deprecated:
use finalize() Does nothing. Provided for compatibility with SparseMatrix.

Definition at line 316 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
EIGEN_DEPRECATED Scalar& Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::fill ( Index  row,
Index  col 
) [inline]
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()

Definition at line 297 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
EIGEN_DEPRECATED Scalar& Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::fillrand ( Index  row,
Index  col 
) [inline]
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.

Definition at line 309 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
void Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::finalize ( ) [inline]

Does nothing: provided for compatibility with SparseMatrix

Definition at line 186 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
Index Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::innerNonZeros ( Index  j) const [inline]

Definition at line 84 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
Index Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::innerSize ( ) const [inline]
Returns:
the size of the inner dimension according to the storage order, i.e., the number of rows for a columns major matrix, and the number of cols otherwise

Reimplemented from Eigen::SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >.

Definition at line 82 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
Scalar& Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::insert ( Index  row,
Index  col 
) [inline]

Definition at line 165 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
Scalar& Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::insertBack ( Index  row,
Index  col 
) [inline]
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

Definition at line 150 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
Scalar& Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::insertBackByOuterInner ( Index  outer,
Index  inner 
) [inline]
See also:
insertBack

Definition at line 156 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
Index Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::nonZeros ( ) const [inline]
Returns:
the number of non zero coefficients

Reimplemented from Eigen::SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >.

Definition at line 120 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
DynamicSparseMatrix& Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::operator= ( const DynamicSparseMatrix< _Scalar, _Options, _Index > &  other) [inline]
template<typename _Scalar, int _Options, typename _Index>
Index Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::outerSize ( ) const [inline]
Returns:
the size of the storage major dimension, i.e., the number of columns for a columns major matrix, and the number of rows otherwise

Reimplemented from Eigen::SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >.

Definition at line 83 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
void Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::prune ( Scalar  reference,
RealScalar  epsilon = NumTraits<RealScalar>::dummy_precision() 
) [inline]

Suppress all nonzeros which are smaller than reference under the tolerence epsilon

Definition at line 189 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
void Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::reserve ( Index  reserveSize = 1000) [inline]

Definition at line 130 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
void Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::resize ( Index  rows,
Index  cols 
) [inline]

Resize the matrix without preserving the data (the matrix is set to zero)

Definition at line 197 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
void Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::resizeAndKeepData ( Index  rows,
Index  cols 
) [inline]

Definition at line 208 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
Index Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::rows ( void  ) const [inline]
Returns:
the number of rows.
See also:
cols()

Reimplemented from Eigen::SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >.

Definition at line 80 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
void Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::setZero ( ) [inline]

Definition at line 113 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
EIGEN_DEPRECATED void Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::startFill ( Index  reserveSize = 1000) [inline]
Deprecated:
Set the matrix to zero and reserve the memory for reserveSize nonzero coefficients.

Definition at line 282 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
void Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::startVec ( Index  ) [inline]

Does nothing: provided for compatibility with SparseMatrix

Definition at line 143 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
void Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::swap ( DynamicSparseMatrix< _Scalar, _Options, _Index > &  other) [inline]

Definition at line 253 of file DynamicSparseMatrix.h.


Member Data Documentation

template<typename _Scalar, int _Options, typename _Index>
std::vector<internal::CompressedStorage<Scalar,Index> > Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::m_data [protected]

Definition at line 76 of file DynamicSparseMatrix.h.

template<typename _Scalar, int _Options, typename _Index>
Index Eigen::DynamicSparseMatrix< _Scalar, _Options, _Index >::m_innerSize [protected]

Definition at line 75 of file DynamicSparseMatrix.h.


The documentation for this class was generated from the following file:


acado
Author(s): Milan Vukov, Rien Quirynen
autogenerated on Sat Jun 8 2019 19:40:40