Public Types | Public Member Functions | Public Attributes | Friends
SparseVector< _Scalar, _Flags > Class Template Reference

a sparse vector class More...

List of all members.

Public Types

enum  { IsColVector }
typedef SparseMatrixBase
< SparseVector
SparseBase
- Public Types inherited from SparseMatrixBase< Derived >
enum  {
  RowsAtCompileTime,
  ColsAtCompileTime,
  SizeAtCompileTime,
  MaxRowsAtCompileTime,
  MaxColsAtCompileTime,
  MaxSizeAtCompileTime,
  IsVectorAtCompileTime,
  Flags,
  CoeffReadCost,
  IsRowMajor
}
typedef SparseTranspose
< typename ei_cleantype
< ConjugateReturnType >::type > 
AdjointReturnType
typedef ei_meta_if< NumTraits
< Scalar >::IsComplex, const
SparseCwiseUnaryOp
< ei_scalar_conjugate_op
< Scalar >, Derived >, const
Derived & >::ret 
ConjugateReturnType
typedef CwiseUnaryOp
< ei_scalar_imag_op< Scalar >
, Derived > 
ImagReturnType
typedef CwiseUnaryOp
< ei_scalar_real_op< Scalar >
, Derived > 
RealReturnType
typedef ei_traits< Derived >
::Scalar 
Scalar

Public Member Functions

CompressedStorage< Scalar > & _data ()
CompressedStorage< Scalar > & _data () const
const int * _innerIndexPtr () const
int * _innerIndexPtr ()
const Scalar * _valuePtr () const
Scalar * _valuePtr ()
Scalar coeff (int row, int col) const
Scalar coeff (int i) const
Scalar & coeffRef (int row, int col)
Scalar & coeffRef (int i)
int cols () const
void endFill ()
Scalar & fill (int r, int c)
Scalar & fill (int i)
Scalar & fillrand (int r, int c)
Scalar & fillrand (int i)
int innerNonZeros (int j) const
int innerSize () const
int nonZeros () const
SparseVectoroperator= (const SparseVector &other)
template<typename OtherDerived >
SparseVectoroperator= (const SparseMatrixBase< OtherDerived > &other)
int outerSize () const
void prune (Scalar reference, RealScalar epsilon=precision< RealScalar >())
void reserve (int reserveSize)
void resize (int rows, int cols)
void resize (int newSize)
void resizeNonZeros (int size)
int rows () const
void setZero ()
 SparseVector (int size)
 SparseVector (int rows, int cols)
template<typename OtherDerived >
 SparseVector (const MatrixBase< OtherDerived > &other)
template<typename OtherDerived >
 SparseVector (const SparseMatrixBase< OtherDerived > &other)
 SparseVector (const SparseVector &other)
void startFill (int reserve)
void swap (SparseVector &other)
 ~SparseVector ()
- Public Member Functions inherited from SparseMatrixBase< Derived >
const AdjointReturnType adjoint () const
template<typename OtherDerived >
void assignGeneric (const OtherDerived &other)
template<typename NewType >
const SparseCwiseUnaryOp
< ei_scalar_cast_op< typename
ei_traits< Derived >::Scalar,
NewType >, Derived > 
cast () const
SparseInnerVectorSet< Derived, 1 > col (int j)
const SparseInnerVectorSet
< Derived, 1 > 
col (int j) const
int cols () const
ConjugateReturnType conjugate () const
const SparseCwise< Derived > cwise () const
SparseCwise< Derived > cwise ()
template<typename OtherDerived >
Scalar dot (const MatrixBase< OtherDerived > &other) const
template<typename OtherDerived >
Scalar dot (const SparseMatrixBase< OtherDerived > &other) const
const ei_eval< Derived >::type eval () const
const ImagReturnType imag () const
int innerSize () const
SparseInnerVectorSet< Derived, 1 > innerVector (int outer)
const SparseInnerVectorSet
< Derived, 1 > 
innerVector (int outer) const
SparseInnerVectorSet< Derived,
Dynamic > 
innerVectors (int outerStart, int outerSize)
const SparseInnerVectorSet
< Derived, Dynamic > 
innerVectors (int outerStart, int outerSize) const
template<typename OtherDerived >
bool isApprox (const SparseMatrixBase< OtherDerived > &other, RealScalar prec=precision< Scalar >()) const
template<typename OtherDerived >
bool isApprox (const MatrixBase< OtherDerived > &other, RealScalar prec=precision< Scalar >()) const
bool isRValue () const
bool isVector () const
Derived & markAsRValue ()
template<unsigned int Added>
const SparseFlagged< Derived,
Added, 0 > 
marked () const
int nonZeros () const
RealScalar norm () const
const SparseCwiseUnaryOp
< ei_scalar_multiple_op
< typename ei_traits< Derived >
::Scalar >, Derived > 
operator* (const Scalar &scalar) const
template<typename OtherDerived >
const SparseProductReturnType
< Derived, OtherDerived >
::Type 
operator* (const SparseMatrixBase< OtherDerived > &other) const
template<typename OtherDerived >
const SparseProductReturnType
< Derived, OtherDerived >
::Type 
operator* (const MatrixBase< OtherDerived > &other) const
Derived & operator*= (const Scalar &other)
template<typename OtherDerived >
Derived & operator*= (const SparseMatrixBase< OtherDerived > &other)
template<typename OtherDerived >
const SparseCwiseBinaryOp
< ei_scalar_sum_op< typename
ei_traits< Derived >::Scalar >
, Derived, OtherDerived > 
operator+ (const SparseMatrixBase< OtherDerived > &other) const
template<typename OtherDerived >
Derived & operator+= (const SparseMatrixBase< OtherDerived > &other)
const SparseCwiseUnaryOp
< ei_scalar_opposite_op
< typename ei_traits< Derived >
::Scalar >, Derived > 
operator- () const
template<typename OtherDerived >
const SparseCwiseBinaryOp
< ei_scalar_difference_op
< typename ei_traits< Derived >
::Scalar >, Derived,
OtherDerived > 
operator- (const SparseMatrixBase< OtherDerived > &other) const
template<typename OtherDerived >
Derived & operator-= (const SparseMatrixBase< OtherDerived > &other)
const SparseCwiseUnaryOp
< ei_scalar_quotient1_op
< typename ei_traits< Derived >
::Scalar >, Derived > 
operator/ (const Scalar &scalar) const
Derived & operator/= (const Scalar &other)
Derived & operator= (const Derived &other)
template<typename OtherDerived >
Derived & operator= (const SparseMatrixBase< OtherDerived > &other)
template<typename Lhs , typename Rhs >
Derived & operator= (const SparseProduct< Lhs, Rhs, SparseTimeSparseProduct > &product)
int outerSize () const
const RealReturnType real () const
SparseInnerVectorSet< Derived, 1 > row (int i)
const SparseInnerVectorSet
< Derived, 1 > 
row (int i) const
int rows () const
int size () const
template<typename OtherDerived >
ei_plain_matrix_type_column_major
< OtherDerived >::type 
solveTriangular (const MatrixBase< OtherDerived > &other) const
template<typename OtherDerived >
void solveTriangularInPlace (MatrixBase< OtherDerived > &other) const
RealScalar squaredNorm () const
SparseInnerVectorSet< Derived,
Dynamic > 
subcols (int start, int size)
const SparseInnerVectorSet
< Derived, Dynamic > 
subcols (int start, int size) const
SparseInnerVectorSet< Derived,
Dynamic > 
subrows (int start, int size)
const SparseInnerVectorSet
< Derived, Dynamic > 
subrows (int start, int size) const
Scalar sum () const
Matrix< Scalar,
RowsAtCompileTime,
ColsAtCompileTime > 
toDense () const
SparseTranspose< Derived > transpose ()
const SparseTranspose< Derived > transpose () const
template<typename CustomUnaryOp >
const SparseCwiseUnaryOp
< CustomUnaryOp, Derived > 
unaryExpr (const CustomUnaryOp &func=CustomUnaryOp()) const

Public Attributes

CompressedStorage< Scalar > m_data
int m_size

Friends

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

Additional Inherited Members

- Protected Attributes inherited from SparseMatrixBase< Derived >
bool m_isRValue

Detailed Description

template<typename _Scalar, int _Flags>
class Eigen::SparseVector< _Scalar, _Flags >

a sparse vector class

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.


Constructor & Destructor Documentation

~SparseVector ( )
inline

Destructor


Member Function Documentation

Scalar& coeffRef ( int  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.

Scalar& fillrand ( int  i)
inline

Like fill() but with random coordinates.

int nonZeros ( ) const
inline
Returns:
the number of non zero coefficients

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