NDDEM
Public Types | Public Member Functions | Protected Member Functions | Private Types | List of all members
Eigen::SparseMapBase< Derived, WriteAccessors > Class Template Reference

Common base class for writable Map and Ref instance of sparse matrix and vector. More...

#include <SparseMap.h>

+ Inheritance diagram for Eigen::SparseMapBase< Derived, WriteAccessors >:

Public Types

enum  { IsRowMajor = Base::IsRowMajor }
 
typedef SparseMapBase< Derived, ReadOnlyAccessorsBase
 
typedef Base::Scalar Scalar
 
typedef Base::StorageIndex StorageIndex
 
- Public Types inherited from Eigen::SparseMapBase< Derived, ReadOnlyAccessors >
enum  { IsRowMajor = Base::IsRowMajor }
 
typedef SparseCompressedBase< Derived > Base
 
typedef Base::Scalar Scalar
 
typedef Base::StorageIndex StorageIndex
 
- Public Types inherited from Eigen::SparseCompressedBase< Derived >
typedef SparseMatrixBase< Derived > Base
 
- Public Types inherited from Eigen::SparseMatrixBase< Derived >
enum  {
  RowsAtCompileTime = internal::traits<Derived>::RowsAtCompileTime , ColsAtCompileTime = internal::traits<Derived>::ColsAtCompileTime , SizeAtCompileTime , MaxRowsAtCompileTime = RowsAtCompileTime ,
  MaxColsAtCompileTime = ColsAtCompileTime , MaxSizeAtCompileTime , IsVectorAtCompileTime = RowsAtCompileTime == 1 || ColsAtCompileTime == 1 , NumDimensions = int(MaxSizeAtCompileTime) == 1 ? 0 : bool(IsVectorAtCompileTime) ? 1 : 2 ,
  Flags = internal::traits<Derived>::Flags , IsRowMajor = Flags&RowMajorBit ? 1 : 0 , InnerSizeAtCompileTime , _HasDirectAccess = (int(Flags)&DirectAccessBit) ? 1 : 0
}
 
typedef internal::traits< Derived >::Scalar Scalar
 
typedef Scalar value_type
 
typedef internal::packet_traits< Scalar >::type PacketScalar
 
typedef internal::traits< Derived >::StorageKind StorageKind
 
typedef internal::traits< Derived >::StorageIndex StorageIndex
 
typedef internal::add_const_on_value_type_if_arithmetic< typename internal::packet_traits< Scalar >::type >::type PacketReturnType
 
typedef SparseMatrixBase StorageBaseType
 
typedef Matrix< StorageIndex, Dynamic, 1 > IndexVector
 
typedef Matrix< Scalar, Dynamic, 1 > ScalarVector
 
typedef internal::conditional< NumTraits< Scalar >::IsComplex, CwiseUnaryOp< internal::scalar_conjugate_op< Scalar >, Eigen::Transpose< const Derived > >, Transpose< const Derived > >::type AdjointReturnType
 
typedef Transpose< Derived > TransposeReturnType
 
typedef internal::add_const< Transpose< const Derived > >::type ConstTransposeReturnType
 
typedef SparseMatrix< Scalar, Flags &RowMajorBit ? RowMajor :ColMajor, StorageIndexPlainObject
 
typedef NumTraits< Scalar >::Real RealScalar
 
typedef internal::conditional< _HasDirectAccess, const Scalar &, Scalar >::type CoeffReturnType
 
typedef CwiseNullaryOp< internal::scalar_constant_op< Scalar >, Matrix< Scalar, Dynamic, Dynamic > > ConstantReturnType
 
typedef Matrix< Scalar, RowsAtCompileTime, ColsAtCompileTimeDenseMatrixType
 
typedef Matrix< Scalar, EIGEN_SIZE_MAX(RowsAtCompileTime, ColsAtCompileTime), EIGEN_SIZE_MAX(RowsAtCompileTime, ColsAtCompileTime)> SquareMatrixType
 
typedef EigenBase< Derived > Base
 
- Public Types inherited from Eigen::EigenBase< Derived >
typedef Eigen::Index Index
 The interface type of indices. More...
 
typedef internal::traits< Derived >::StorageKind StorageKind
 

Public Member Functions

ScalarvaluePtr ()
 
StorageIndexinnerIndexPtr ()
 
StorageIndexouterIndexPtr ()
 
StorageIndexinnerNonZeroPtr ()
 
ScalarcoeffRef (Index row, Index col)
 
 SparseMapBase (Index rows, Index cols, Index nnz, StorageIndex *outerIndexPtr, StorageIndex *innerIndexPtr, Scalar *valuePtr, StorageIndex *innerNonZerosPtr=0)
 
 SparseMapBase (Index size, Index nnz, StorageIndex *innerIndexPtr, Scalar *valuePtr)
 
 ~SparseMapBase ()
 
template<typename OtherDerived >
Derived & operator= (const EigenBase< OtherDerived > &other)
 
template<typename OtherDerived >
Derived & operator= (const ReturnByValue< OtherDerived > &other)
 
template<typename OtherDerived >
Derived & operator= (const SparseMatrixBase< OtherDerived > &other)
 
Derived & operator= (const Derived &other)
 
- Public Member Functions inherited from Eigen::SparseMapBase< Derived, ReadOnlyAccessors >
Index rows () const
 
Index cols () const
 
Index innerSize () const
 
Index outerSize () const
 
Index nonZeros () const
 
bool isCompressed () const
 
const ScalarvaluePtr () const
 
const StorageIndexinnerIndexPtr () const
 
const StorageIndexouterIndexPtr () const
 
const StorageIndexinnerNonZeroPtr () const
 
Scalar coeff (Index row, Index col) const
 
 SparseMapBase (Index rows, Index cols, Index nnz, IndexPointer outerIndexPtr, IndexPointer innerIndexPtr, ScalarPointer valuePtr, IndexPointer innerNonZerosPtr=0)
 
 SparseMapBase (Index size, Index nnz, IndexPointer innerIndexPtr, ScalarPointer valuePtr)
 
 ~SparseMapBase ()
 
template<typename OtherDerived >
Derived & operator= (const EigenBase< OtherDerived > &other)
 
template<typename OtherDerived >
Derived & operator= (const ReturnByValue< OtherDerived > &other)
 
template<typename OtherDerived >
Derived & operator= (const SparseMatrixBase< OtherDerived > &other)
 
Derived & operator= (const Derived &other)
 
- Public Member Functions inherited from Eigen::SparseCompressedBase< Derived >
Index nonZeros () const
 
const ScalarvaluePtr () const
 
ScalarvaluePtr ()
 
const StorageIndexinnerIndexPtr () const
 
StorageIndexinnerIndexPtr ()
 
const StorageIndexouterIndexPtr () const
 
StorageIndexouterIndexPtr ()
 
const StorageIndexinnerNonZeroPtr () const
 
StorageIndexinnerNonZeroPtr ()
 
bool isCompressed () const
 
const Map< const Array< Scalar, Dynamic, 1 > > coeffs () const
 
Map< Array< Scalar, Dynamic, 1 > > coeffs ()
 
template<typename OtherDerived >
Derived & operator= (const EigenBase< OtherDerived > &other)
 
template<typename OtherDerived >
Derived & operator= (const ReturnByValue< OtherDerived > &other)
 
template<typename OtherDerived >
Derived & operator= (const SparseMatrixBase< OtherDerived > &other)
 
Derived & operator= (const Derived &other)
 
- Public Member Functions inherited from Eigen::SparseMatrixBase< Derived >
template<typename OtherDerived >
Derived & operator= (const EigenBase< OtherDerived > &other)
 
const Derived & derived () const
 
Derived & derived ()
 
Derived & const_cast_derived () const
 
Index rows () const
 
Index cols () const
 
Index size () const
 
bool isVector () const
 
Index outerSize () const
 
Index innerSize () const
 
bool isRValue () const
 
Derived & markAsRValue ()
 
 SparseMatrixBase ()
 
template<typename OtherDerived >
Derived & operator= (const ReturnByValue< OtherDerived > &other)
 
template<typename OtherDerived >
Derived & operator= (const SparseMatrixBase< OtherDerived > &other)
 
Derived & operator= (const Derived &other)
 
template<typename OtherDerived >
Derived & operator+= (const SparseMatrixBase< OtherDerived > &other)
 
template<typename OtherDerived >
Derived & operator-= (const SparseMatrixBase< OtherDerived > &other)
 
template<typename OtherDerived >
Derived & operator+= (const DiagonalBase< OtherDerived > &other)
 
template<typename OtherDerived >
Derived & operator-= (const DiagonalBase< OtherDerived > &other)
 
template<typename OtherDerived >
Derived & operator+= (const EigenBase< OtherDerived > &other)
 
template<typename OtherDerived >
Derived & operator-= (const EigenBase< OtherDerived > &other)
 
Derived & operator*= (const Scalar &other)
 
Derived & operator/= (const Scalar &other)
 
template<typename OtherDerived >
EIGEN_STRONG_INLINE const CwiseProductDenseReturnType< OtherDerived >::Type cwiseProduct (const MatrixBase< OtherDerived > &other) const
 
template<typename OtherDerived >
const Product< Derived, OtherDerived > operator* (const DiagonalBase< OtherDerived > &other) const
 
template<typename OtherDerived >
const Product< Derived, OtherDerived, AliasFreeProductoperator* (const SparseMatrixBase< OtherDerived > &other) const
 
template<typename OtherDerived >
const Product< Derived, OtherDerived > operator* (const MatrixBase< OtherDerived > &other) const
 
SparseSymmetricPermutationProduct< Derived, Upper|LowertwistedBy (const PermutationMatrix< Dynamic, Dynamic, StorageIndex > &perm) const
 
template<typename OtherDerived >
Derived & operator*= (const SparseMatrixBase< OtherDerived > &other)
 
template<int Mode>
const TriangularView< const Derived, Mode > triangularView () const
 
template<unsigned int UpLo>
ConstSelfAdjointViewReturnType< UpLo >::Type selfadjointView () const
 
template<unsigned int UpLo>
SelfAdjointViewReturnType< UpLo >::Type selfadjointView ()
 
template<typename OtherDerived >
Scalar dot (const MatrixBase< OtherDerived > &other) const
 
template<typename OtherDerived >
Scalar dot (const SparseMatrixBase< OtherDerived > &other) const
 
RealScalar squaredNorm () const
 
RealScalar norm () const
 
RealScalar blueNorm () const
 
TransposeReturnType transpose ()
 
const ConstTransposeReturnType transpose () const
 
const AdjointReturnType adjoint () const
 
DenseMatrixType toDense () const
 
template<typename OtherDerived >
bool isApprox (const SparseMatrixBase< OtherDerived > &other, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
template<typename OtherDerived >
bool isApprox (const MatrixBase< OtherDerived > &other, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
const internal::eval< Derived >::type eval () const
 
Scalar sum () const
 
const SparseView< Derived > pruned (const Scalar &reference=Scalar(0), const RealScalar &epsilon=NumTraits< Scalar >::dummy_precision()) const
 
template<typename OtherDerived >
EIGEN_STRONG_INLINE Derived & operator-= (const SparseMatrixBase< OtherDerived > &other)
 
template<typename OtherDerived >
EIGEN_STRONG_INLINE Derived & operator+= (const SparseMatrixBase< OtherDerived > &other)
 
template<typename OtherDerived >
EIGEN_STRONG_INLINE const SparseMatrixBase< Derived >::template CwiseProductDenseReturnType< OtherDerived >::Type cwiseProduct (const MatrixBase< OtherDerived > &other) const
 
template<typename OtherDerived >
internal::traits< Derived >::Scalar dot (const MatrixBase< OtherDerived > &other) const
 
template<typename OtherDerived >
internal::traits< Derived >::Scalar dot (const SparseMatrixBase< OtherDerived > &other) const
 
template<unsigned int UpLo>
SparseMatrixBase< Derived >::template ConstSelfAdjointViewReturnType< UpLo >::Type selfadjointView () const
 
template<unsigned int UpLo>
SparseMatrixBase< Derived >::template SelfAdjointViewReturnType< UpLo >::Type selfadjointView ()
 
- Public Member Functions inherited from Eigen::EigenBase< Derived >
EIGEN_DEVICE_FUNC Derived & derived ()
 
EIGEN_DEVICE_FUNC const Derived & derived () const
 
EIGEN_DEVICE_FUNC Derived & const_cast_derived () const
 
EIGEN_DEVICE_FUNC const Derived & const_derived () const
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index size () const EIGEN_NOEXCEPT
 
template<typename Dest >
EIGEN_DEVICE_FUNC void evalTo (Dest &dst) const
 
template<typename Dest >
EIGEN_DEVICE_FUNC void addTo (Dest &dst) const
 
template<typename Dest >
EIGEN_DEVICE_FUNC void subTo (Dest &dst) const
 
template<typename Dest >
EIGEN_DEVICE_FUNC void applyThisOnTheRight (Dest &dst) const
 
template<typename Dest >
EIGEN_DEVICE_FUNC void applyThisOnTheLeft (Dest &dst) const
 

Protected Member Functions

 SparseMapBase ()
 
- Protected Member Functions inherited from Eigen::SparseMapBase< Derived, ReadOnlyAccessors >
 SparseMapBase ()
 
- Protected Member Functions inherited from Eigen::SparseCompressedBase< Derived >
Eigen::Map< IndexVectorinnerNonZeros ()
 
const Eigen::Map< const IndexVectorinnerNonZeros () const
 
 SparseCompressedBase ()
 
internal::LowerBoundIndex lower_bound (Index row, Index col) const
 
- Protected Member Functions inherited from Eigen::SparseMatrixBase< Derived >
template<typename OtherDerived >
Derived & assign (const OtherDerived &other)
 
template<typename OtherDerived >
void assignGeneric (const OtherDerived &other)
 

Private Types

typedef MapBase< Derived, ReadOnlyAccessorsReadOnlyMapBase
 

Additional Inherited Members

- Protected Types inherited from Eigen::SparseMapBase< Derived, ReadOnlyAccessors >
typedef internal::conditional< bool(internal::is_lvalue< Derived >::value), Scalar *, const Scalar * >::type ScalarPointer
 
typedef internal::conditional< bool(internal::is_lvalue< Derived >::value), StorageIndex *, const StorageIndex * >::type IndexPointer
 
- Protected Types inherited from Eigen::SparseCompressedBase< Derived >
typedef Base::IndexVector IndexVector
 
- Static Protected Member Functions inherited from Eigen::SparseMatrixBase< Derived >
static StorageIndex convert_index (const Index idx)
 
- Protected Attributes inherited from Eigen::SparseMapBase< Derived, ReadOnlyAccessors >
Index m_outerSize
 
Index m_innerSize
 
Array< StorageIndex, 2, 1 > m_zero_nnz
 
IndexPointer m_outerIndex
 
IndexPointer m_innerIndices
 
ScalarPointer m_values
 
IndexPointer m_innerNonZeros
 
- Protected Attributes inherited from Eigen::SparseMatrixBase< Derived >
bool m_isRValue
 

Detailed Description

template<typename Derived>
class Eigen::SparseMapBase< Derived, WriteAccessors >

Common base class for writable Map and Ref instance of sparse matrix and vector.

class SparseMapBase

Member Typedef Documentation

◆ Base

template<typename Derived >
typedef SparseMapBase<Derived, ReadOnlyAccessors> Eigen::SparseMapBase< Derived, WriteAccessors >::Base

◆ ReadOnlyMapBase

template<typename Derived >
typedef MapBase<Derived, ReadOnlyAccessors> Eigen::SparseMapBase< Derived, WriteAccessors >::ReadOnlyMapBase
private

◆ Scalar

template<typename Derived >
typedef Base::Scalar Eigen::SparseMapBase< Derived, WriteAccessors >::Scalar

◆ StorageIndex

template<typename Derived >
typedef Base::StorageIndex Eigen::SparseMapBase< Derived, WriteAccessors >::StorageIndex

Member Enumeration Documentation

◆ anonymous enum

template<typename Derived >
anonymous enum
Enumerator
IsRowMajor 

Constructor & Destructor Documentation

◆ SparseMapBase() [1/3]

template<typename Derived >
Eigen::SparseMapBase< Derived, WriteAccessors >::SparseMapBase ( Index  rows,
Index  cols,
Index  nnz,
StorageIndex outerIndexPtr,
StorageIndex innerIndexPtr,
Scalar valuePtr,
StorageIndex innerNonZerosPtr = 0 
)
inline

◆ SparseMapBase() [2/3]

template<typename Derived >
Eigen::SparseMapBase< Derived, WriteAccessors >::SparseMapBase ( Index  size,
Index  nnz,
StorageIndex innerIndexPtr,
Scalar valuePtr 
)
inline

◆ ~SparseMapBase()

template<typename Derived >
Eigen::SparseMapBase< Derived, WriteAccessors >::~SparseMapBase ( )
inline

Empty destructor

◆ SparseMapBase() [3/3]

template<typename Derived >
Eigen::SparseMapBase< Derived, WriteAccessors >::SparseMapBase ( )
inlineprotected

Member Function Documentation

◆ coeffRef()

template<typename Derived >
Scalar& Eigen::SparseMapBase< Derived, WriteAccessors >::coeffRef ( Index  row,
Index  col 
)
inline

Returns
a non-const reference to the value of the matrix at position i, j

If the element does not exist then it is inserted via the insert(Index,Index) function which itself turns the matrix into a non compressed form if that was not the case.

This is a O(log(nnz_j)) operation (binary search) plus the cost of insert(Index,Index) function if the element does not already exist.

◆ innerIndexPtr()

template<typename Derived >
StorageIndex* Eigen::SparseMapBase< Derived, WriteAccessors >::innerIndexPtr ( )
inline

Returns
a const pointer to the array of inner indices. This function is aimed at interoperability with other libraries.
See also
valuePtr(), outerIndexPtr()

◆ innerNonZeroPtr()

template<typename Derived >
StorageIndex* Eigen::SparseMapBase< Derived, WriteAccessors >::innerNonZeroPtr ( )
inline

Returns
a const pointer to the array of the number of non zeros of the inner vectors. This function is aimed at interoperability with other libraries.
Warning
it returns the null pointer 0 in compressed mode

◆ operator=() [1/4]

template<typename Derived >
Derived & Eigen::SparseMatrixBase< Derived >::operator=
inline

◆ operator=() [2/4]

template<typename Derived >
template<typename OtherDerived >
Derived & Eigen::SparseMatrixBase< Derived >::operator= ( typename OtherDerived  )

◆ operator=() [3/4]

template<typename Derived >
template<typename OtherDerived >
Derived & Eigen::SparseMatrixBase< Derived >::operator= ( typename OtherDerived  )

◆ operator=() [4/4]

template<typename Derived >
template<typename OtherDerived >
Derived & Eigen::SparseMatrixBase< Derived >::operator= ( typename OtherDerived  )
inline

◆ outerIndexPtr()

template<typename Derived >
StorageIndex* Eigen::SparseMapBase< Derived, WriteAccessors >::outerIndexPtr ( )
inline

Returns
a const pointer to the array of the starting positions of the inner vectors. This function is aimed at interoperability with other libraries.
See also
valuePtr(), innerIndexPtr()

◆ valuePtr()

template<typename Derived >
Scalar* Eigen::SparseMapBase< Derived, WriteAccessors >::valuePtr ( )
inline

Returns
a const pointer to the array of values. This function is aimed at interoperability with other libraries.
See also
innerIndexPtr(), outerIndexPtr()

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