Medial Code Documentation
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Protected Member Functions | Protected Attributes | Friends
Eigen::SparseVector< _Scalar, _Options, _StorageIndex > Class Template Reference

a sparse vector class More...

#include <SparseVector.h>

Inheritance diagram for Eigen::SparseVector< _Scalar, _Options, _StorageIndex >:
Eigen::SparseCompressedBase< SparseVector< _Scalar, _Options, _StorageIndex > > Eigen::SparseMatrixBase< Derived > Eigen::internal::special_scalar_op_base< Derived, internal::traits< Derived >::Scalar, NumTraits< internal::traits< Derived >::Scalar >::Real, EigenBase< Derived > > Eigen::EigenBase< Derived >

Public Types

enum  { IsColVector = internal::traits<SparseVector>::IsColVector }
 
enum  { Options = _Options }
 
typedef internal::CompressedStorage< Scalar, StorageIndex > Storage
 
typedef Base::InnerIterator InnerIterator
 
typedef Base::ReverseInnerIterator ReverseInnerIterator
 
- Public Types inherited from Eigen::SparseCompressedBase< SparseVector< _Scalar, _Options, _StorageIndex > >
typedef SparseMatrixBase< SparseVector< _Scalar, _Options, _StorageIndex > > 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 , 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
 The numeric type of the expression' coefficients, e.g.
 
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< typenameinternal::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< constDerived > >, Transpose< constDerived > >::type AdjointReturnType
 
typedef Transpose< Derived > TransposeReturnType
 
typedef internal::add_const< Transpose< constDerived > >::type ConstTransposeReturnType
 
typedef SparseMatrix< Scalar, Flags &RowMajorBit ? RowMajor :ColMajor, StorageIndex > PlainObject
 
typedef NumTraits< Scalar >::Real RealScalar
 This is the "real scalar" type; if the Scalar type is already real numbers (e.g.
 
typedef internal::conditional< _HasDirectAccess, constScalar &, Scalar >::type CoeffReturnType
 
typedef CwiseNullaryOp< internal::scalar_constant_op< Scalar >, Matrix< Scalar, Dynamic, Dynamic > > ConstantReturnType
 
typedef Matrix< Scalar, RowsAtCompileTime, ColsAtCompileTimeDenseMatrixType
 type of the equivalent dense matrix
 
typedef Matrix< Scalar, EIGEN_SIZE_MAX(RowsAtCompileTime, ColsAtCompileTime), EIGEN_SIZE_MAX(RowsAtCompileTime, ColsAtCompileTime)> SquareMatrixType
 type of the equivalent square matrix
 
typedef internal::special_scalar_op_base< Derived, Scalar, RealScalar, EigenBase< Derived > > Base
 
typedef Block< Derived, IsRowMajor?1:Dynamic, IsRowMajor?Dynamic:1, trueInnerVectorReturnType
 
typedef Block< const Derived, IsRowMajor?1:Dynamic, IsRowMajor?Dynamic:1, trueConstInnerVectorReturnType
 
typedef Block< Derived, Dynamic, Dynamic, trueInnerVectorsReturnType
 
typedef Block< const Derived, Dynamic, Dynamic, trueConstInnerVectorsReturnType
 
- Public Types inherited from Eigen::EigenBase< Derived >
typedef Eigen::Index Index
 The interface type of indices.
 
typedef internal::traits< Derived >::StorageKind StorageKind
 

Public Member Functions

EIGEN_STRONG_INLINE Index rows () const
 
EIGEN_STRONG_INLINE Index cols () const
 
EIGEN_STRONG_INLINE Index innerSize () const
 
EIGEN_STRONG_INLINE Index outerSize () const
 
EIGEN_STRONG_INLINE const Scalar * valuePtr () const
 
EIGEN_STRONG_INLINE Scalar * valuePtr ()
 
EIGEN_STRONG_INLINE const StorageIndex * innerIndexPtr () const
 
EIGEN_STRONG_INLINE StorageIndex * innerIndexPtr ()
 
const StorageIndex * outerIndexPtr () const
 
StorageIndex * outerIndexPtr ()
 
const StorageIndex * innerNonZeroPtr () const
 
StorageIndex * innerNonZeroPtr ()
 
Storagedata ()
 
const Storagedata () const
 
Scalar coeff (Index row, Index col) const
 
Scalar coeff (Index i) const
 
Scalar & coeffRef (Index row, Index col)
 
Scalar & coeffRef (Index i)
 
void setZero ()
 
Index nonZeros () const
 
void startVec (Index outer)
 
Scalar & insertBackByOuterInner (Index outer, Index inner)
 
Scalar & insertBack (Index i)
 
Scalar & insertBackByOuterInnerUnordered (Index outer, Index inner)
 
Scalar & insertBackUnordered (Index i)
 
Scalar & insert (Index row, Index col)
 
Scalar & insert (Index i)
 
void reserve (Index reserveSize)
 
void finalize ()
 
void prune (const Scalar &reference, const RealScalar &epsilon=NumTraits< RealScalar >::dummy_precision())
 
void resize (Index rows, Index cols)
 
void resize (Index newSize)
 
void resizeNonZeros (Index size)
 
 SparseVector (Index size)
 
 SparseVector (Index rows, Index cols)
 
template<typename OtherDerived >
 SparseVector (const SparseMatrixBase< OtherDerived > &other)
 
 SparseVector (const SparseVector &other)
 
void swap (SparseVector &other)
 Swaps the values of *this and other.
 
SparseVectoroperator= (const SparseVector &other)
 
template<typename OtherDerived >
SparseVectoroperator= (const SparseMatrixBase< OtherDerived > &other)
 
template<typename Lhs , typename Rhs >
SparseVectoroperator= (const SparseSparseProduct< Lhs, Rhs > &product)
 
 ~SparseVector ()
 Destructor.
 
Scalar sum () const
 Overloaded for performance.
 
EIGEN_DEPRECATED void startFill (Index reserve)
 
EIGEN_DEPRECATED Scalar & fill (Index r, Index c)
 
EIGEN_DEPRECATED Scalar & fill (Index i)
 
EIGEN_DEPRECATED Scalar & fillrand (Index r, Index c)
 
EIGEN_DEPRECATED Scalar & fillrand (Index i)
 
EIGEN_DEPRECATED void endFill ()
 
EIGEN_DEPRECATED Storage_data ()
 
EIGEN_DEPRECATED const Storage_data () const
 
- Public Member Functions inherited from Eigen::SparseCompressedBase< SparseVector< _Scalar, _Options, _StorageIndex > >
Index nonZeros () const
 
const Scalar * valuePtr () const
 
Scalar * valuePtr ()
 
const StorageIndex * innerIndexPtr () const
 
StorageIndex * innerIndexPtr ()
 
const StorageIndex * outerIndexPtr () const
 
StorageIndex * outerIndexPtr ()
 
const StorageIndex * innerNonZeroPtr () const
 
StorageIndex * innerNonZeroPtr ()
 
bool isCompressed () const
 
SparseVector< _Scalar, _Options, _StorageIndex > & operator= (const EigenBase< OtherDerived > &other)
 
SparseVector< _Scalar, _Options, _StorageIndex > & operator= (const ReturnByValue< OtherDerived > &other)
 
SparseVector< _Scalar, _Options, _StorageIndex > & operator= (const SparseMatrixBase< OtherDerived > &other)
 
SparseVector< _Scalar, _Options, _StorageIndex > & operator= (const SparseVector< _Scalar, _Options, _StorageIndex > &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 ()
 
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)
 
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, OtherDerivedoperator* (const DiagonalBase< OtherDerived > &other) const
 
template<typename OtherDerived >
const Product< Derived, OtherDerived, AliasFreeProduct > operator* (const SparseMatrixBase< OtherDerived > &other) const
 
template<typename OtherDerived >
const Product< Derived, OtherDerivedoperator* (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
 
InnerVectorReturnType innerVector (Index outer)
 
const ConstInnerVectorReturnType innerVector (Index outer) const
 
InnerVectorsReturnType innerVectors (Index outerStart, Index outerSize)
 
const ConstInnerVectorsReturnType innerVectors (Index outerStart, Index outerSize) 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 ()
 
void operator* (dummy) const
 
void operator/ (dummy) const
 
- Public Member Functions inherited from Eigen::internal::special_scalar_op_base< Derived, internal::traits< Derived >::Scalar, NumTraits< internal::traits< Derived >::Scalar >::Real, EigenBase< Derived > >
void operator* (dummy) const
 
void operator/ (dummy) const
 
- 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 Index rows () const
 
EIGEN_DEVICE_FUNC Index cols () const
 
EIGEN_DEVICE_FUNC Index size () const
 
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
 

Static Protected Member Functions

static void check_template_parameters ()
 
- Static Protected Member Functions inherited from Eigen::SparseMatrixBase< Derived >
static StorageIndex convert_index (const Index idx)
 

Protected Attributes

Storage m_data
 
Index m_size
 
- Protected Attributes inherited from Eigen::SparseMatrixBase< Derived >
bool m_isRValue
 

Friends

std::ostream & operator<< (std::ostream &s, const SparseVector &m)
 

Additional Inherited Members

- Protected Types inherited from Eigen::SparseCompressedBase< SparseVector< _Scalar, _Options, _StorageIndex > >
typedef Base::IndexVector IndexVector
 
- Protected Member Functions inherited from Eigen::SparseCompressedBase< SparseVector< _Scalar, _Options, _StorageIndex > >
Eigen::Map< IndexVectorinnerNonZeros ()
 
const Eigen::Map< const IndexVectorinnerNonZeros () const
 
 SparseCompressedBase ()
 Default constructor.
 
- Protected Member Functions inherited from Eigen::SparseMatrixBase< Derived >
template<typename OtherDerived >
Derived & assign (const OtherDerived &other)
 
template<typename OtherDerived >
void assignGeneric (const OtherDerived &other)
 

Detailed Description

template<typename _Scalar, int _Options, typename _StorageIndex>
class Eigen::SparseVector< _Scalar, _Options, _StorageIndex >

a sparse vector class

Template Parameters
_Scalarthe scalar type, i.e. the type of the coefficients

See http://www.netlib.org/linalg/html_templates/node91.html for details on the storage scheme.

This class can be extended with the help of the plugin mechanism described on the page TopicCustomizingEigen by defining the preprocessor symbol EIGEN_SPARSEVECTOR_PLUGIN.

Member Function Documentation

◆ coeffRef()

template<typename _Scalar , int _Options, typename _StorageIndex >
Scalar & Eigen::SparseVector< _Scalar, _Options, _StorageIndex >::coeffRef ( Index  i)
inline
Returns
a reference to the coefficient value at given index i This operation involes a log(rho*size) binary search. If the coefficient does not exist yet, then a sorted insertion into a sequential buffer is performed.

This insertion might be very costly if the number of nonzeros above i is large.

◆ nonZeros()

template<typename _Scalar , int _Options, typename _StorageIndex >
Index Eigen::SparseVector< _Scalar, _Options, _StorageIndex >::nonZeros ( ) const
inline
Returns
the number of non zero coefficients

◆ swap()

template<typename _Scalar , int _Options, typename _StorageIndex >
void Eigen::SparseVector< _Scalar, _Options, _StorageIndex >::swap ( SparseVector< _Scalar, _Options, _StorageIndex > &  other)
inline

Swaps the values of *this and other.

Overloaded for performance: this version performs a shallow swap by swaping pointers and attributes only.

See also
SparseMatrixBase::swap()

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