Base class of any sparse matrices or sparse expressions. More...
#include <ForwardDeclarations.h>
Classes | |
struct | ConstSelfAdjointViewReturnType |
struct | CwiseProductDenseReturnType |
struct | SelfAdjointViewReturnType |
Public Member Functions | |
const AdjointReturnType | adjoint () const |
RealScalar | blueNorm () const |
Index | cols () const |
Derived & | const_cast_derived () const |
template<typename OtherDerived > | |
const EIGEN_STRONG_INLINE CwiseProductDenseReturnType< OtherDerived >::Type | cwiseProduct (const MatrixBase< OtherDerived > &other) const |
template<typename OtherDerived > | |
const EIGEN_STRONG_INLINE SparseMatrixBase< Derived >::template CwiseProductDenseReturnType< OtherDerived >::Type | cwiseProduct (const MatrixBase< OtherDerived > &other) const |
Derived & | derived () |
const Derived & | derived () const |
template<typename OtherDerived > | |
internal::traits< Derived >::Scalar | dot (const MatrixBase< OtherDerived > &other) const |
template<typename OtherDerived > | |
Scalar | dot (const MatrixBase< OtherDerived > &other) const |
template<typename OtherDerived > | |
internal::traits< Derived >::Scalar | dot (const SparseMatrixBase< OtherDerived > &other) const |
template<typename OtherDerived > | |
Scalar | dot (const SparseMatrixBase< OtherDerived > &other) const |
const internal::eval< Derived >::type | eval () const |
Index | innerSize () 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 |
template<typename OtherDerived > | |
bool | isApprox (const MatrixBase< OtherDerived > &other, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const |
template<typename OtherDerived > | |
bool | isApprox (const SparseMatrixBase< OtherDerived > &other, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const |
bool | isRValue () const |
bool | isVector () const |
Derived & | markAsRValue () |
RealScalar | norm () const |
template<typename OtherDerived > | |
const Product< Derived, OtherDerived > | operator* (const DiagonalBase< OtherDerived > &other) const |
template<typename OtherDerived > | |
const Product< Derived, OtherDerived > | operator* (const MatrixBase< OtherDerived > &other) const |
template<typename OtherDerived > | |
const Product< Derived, OtherDerived, AliasFreeProduct > | operator* (const SparseMatrixBase< OtherDerived > &other) const |
template<typename Derived > | |
EIGEN_STRONG_INLINE Derived & | operator*= (const Scalar &other) |
Derived & | operator*= (const Scalar &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 EigenBase< OtherDerived > &other) |
template<typename OtherDerived > | |
Derived & | operator+= (const SparseMatrixBase< OtherDerived > &other) |
template<typename OtherDerived > | |
EIGEN_STRONG_INLINE Derived & | operator+= (const SparseMatrixBase< 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 SparseMatrixBase< OtherDerived > &other) |
template<typename OtherDerived > | |
EIGEN_STRONG_INLINE Derived & | operator-= (const SparseMatrixBase< OtherDerived > &other) |
Derived & | operator/= (const Scalar &other) |
template<typename Derived > | |
Derived & | operator= (const Derived &other) |
Derived & | operator= (const Derived &other) |
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) |
Index | outerSize () const |
const SparseView< Derived > | pruned (const Scalar &reference=Scalar(0), const RealScalar &epsilon=NumTraits< Scalar >::dummy_precision()) const |
Index | rows () const |
template<unsigned int UpLo> | |
SparseMatrixBase< Derived >::template SelfAdjointViewReturnType< UpLo >::Type | selfadjointView () |
template<unsigned int UpLo> | |
SelfAdjointViewReturnType< UpLo >::Type | selfadjointView () |
template<unsigned int UpLo> | |
SparseMatrixBase< Derived >::template ConstSelfAdjointViewReturnType< UpLo >::Type | selfadjointView () const |
template<unsigned int UpLo> | |
ConstSelfAdjointViewReturnType< UpLo >::Type | selfadjointView () const |
Index | size () const |
SparseMatrixBase () | |
RealScalar | squaredNorm () const |
Scalar | sum () const |
DenseMatrixType | toDense () const |
TransposeReturnType | transpose () |
const ConstTransposeReturnType | transpose () const |
template<int Mode> | |
const TriangularView< const Derived, Mode > | triangularView () const |
SparseSymmetricPermutationProduct< Derived, Upper|Lower > | twistedBy (const PermutationMatrix< Dynamic, Dynamic, StorageIndex > &perm) const |
Protected Member Functions | |
template<typename OtherDerived > | |
Derived & | assign (const OtherDerived &other) |
template<typename OtherDerived > | |
void | assignGeneric (const OtherDerived &other) |
Static Protected Member Functions | |
static StorageIndex | convert_index (const Index idx) |
Protected Attributes | |
bool | m_isRValue |
Private Member Functions | |
template<typename Dest > | |
void | evalTo (Dest &) const |
Friends | |
template<typename OtherDerived > | |
const friend Product< OtherDerived, Derived > | operator* (const DiagonalBase< OtherDerived > &lhs, const SparseMatrixBase &rhs) |
template<typename OtherDerived > | |
const friend Product< OtherDerived, Derived > | operator* (const MatrixBase< OtherDerived > &lhs, const SparseMatrixBase &rhs) |
std::ostream & | operator<< (std::ostream &s, const SparseMatrixBase &m) |
Base class of any sparse matrices or sparse expressions.
Derived | is the derived type, e.g. a sparse matrix type, or an expression, etc. |
This class can be extended with the help of the plugin mechanism described on the page TopicCustomizing_Plugins by defining the preprocessor symbol EIGEN_SPARSEMATRIXBASE_PLUGIN
.
Definition at line 281 of file ForwardDeclarations.h.
typedef internal::conditional<NumTraits<Scalar>::IsComplex, CwiseUnaryOp<internal::scalar_conjugate_op<Scalar>, Eigen::Transpose<const Derived> >, Transpose<const Derived> >::type Eigen::SparseMatrixBase::AdjointReturnType |
Definition at line 109 of file SparseMatrixBase.h.
typedef EigenBase<Derived> Eigen::SparseMatrixBase::Base |
Definition at line 143 of file SparseMatrixBase.h.
typedef internal::conditional<_HasDirectAccess, const Scalar&, Scalar>::type Eigen::SparseMatrixBase::CoeffReturnType |
Definition at line 127 of file SparseMatrixBase.h.
typedef CwiseNullaryOp<internal::scalar_constant_op<Scalar>,Matrix<Scalar,Dynamic,Dynamic> > Eigen::SparseMatrixBase::ConstantReturnType |
Definition at line 130 of file SparseMatrixBase.h.
typedef Block<const Derived,IsRowMajor?1:Dynamic,IsRowMajor?Dynamic:1,true> Eigen::SparseMatrixBase::ConstInnerVectorReturnType |
Definition at line 355 of file SparseMatrixBase.h.
typedef Block<const Derived,Dynamic,Dynamic,true> Eigen::SparseMatrixBase::ConstInnerVectorsReturnType |
Definition at line 361 of file SparseMatrixBase.h.
typedef internal::add_const<Transpose<const Derived> >::type Eigen::SparseMatrixBase::ConstTransposeReturnType |
Definition at line 111 of file SparseMatrixBase.h.
type of the equivalent dense matrix
Definition at line 133 of file SparseMatrixBase.h.
Definition at line 51 of file SparseMatrixBase.h.
typedef Block<Derived,IsRowMajor?1:Dynamic,IsRowMajor?Dynamic:1,true> Eigen::SparseMatrixBase::InnerVectorReturnType |
Definition at line 354 of file SparseMatrixBase.h.
typedef Block<Derived,Dynamic,Dynamic,true> Eigen::SparseMatrixBase::InnerVectorsReturnType |
Definition at line 360 of file SparseMatrixBase.h.
typedef internal::add_const_on_value_type_if_arithmetic< typename internal::packet_traits<Scalar>::type >::type Eigen::SparseMatrixBase::PacketReturnType |
Definition at line 47 of file SparseMatrixBase.h.
typedef internal::packet_traits<Scalar>::type Eigen::SparseMatrixBase::PacketScalar |
Definition at line 38 of file SparseMatrixBase.h.
typedef SparseMatrix<Scalar, Flags&RowMajorBit ? RowMajor : ColMajor, StorageIndex> Eigen::SparseMatrixBase::PlainObject |
Definition at line 114 of file SparseMatrixBase.h.
typedef NumTraits<Scalar>::Real Eigen::SparseMatrixBase::RealScalar |
This is the "real scalar" type; if the Scalar type is already real numbers (e.g. int, float or double) then RealScalar is just the same as Scalar. If Scalar is std::complex<T> then RealScalar is T.
Definition at line 123 of file SparseMatrixBase.h.
typedef internal::traits<Derived>::Scalar Eigen::SparseMatrixBase::Scalar |
Definition at line 31 of file SparseMatrixBase.h.
typedef Matrix<Scalar,Dynamic,1> Eigen::SparseMatrixBase::ScalarVector |
Definition at line 52 of file SparseMatrixBase.h.
typedef Matrix<Scalar,EIGEN_SIZE_MAX(RowsAtCompileTime,ColsAtCompileTime), EIGEN_SIZE_MAX(RowsAtCompileTime,ColsAtCompileTime)> Eigen::SparseMatrixBase::SquareMatrixType |
type of the equivalent square matrix
Definition at line 136 of file SparseMatrixBase.h.
Definition at line 49 of file SparseMatrixBase.h.
typedef internal::traits<Derived>::StorageIndex Eigen::SparseMatrixBase::StorageIndex |
The integer type used to store indices within a SparseMatrix. For a SparseMatrix<Scalar,Options,IndexType>
it an alias of the third template parameter IndexType
.
Definition at line 43 of file SparseMatrixBase.h.
typedef internal::traits<Derived>::StorageKind Eigen::SparseMatrixBase::StorageKind |
Definition at line 39 of file SparseMatrixBase.h.
typedef Transpose<Derived> Eigen::SparseMatrixBase::TransposeReturnType |
Definition at line 110 of file SparseMatrixBase.h.
The numeric type of the expression' coefficients, e.g. float, double, int or std::complex<float>, etc.
It is an alias for the Scalar type
Definition at line 36 of file SparseMatrixBase.h.
anonymous enum |
Enumerator | |
---|---|
RowsAtCompileTime | The number of rows at compile-time. This is just a copy of the value provided by the Derived type. If a value is not known at compile-time, it is set to the Dynamic constant.
|
ColsAtCompileTime | The number of columns at compile-time. This is just a copy of the value provided by the Derived type. If a value is not known at compile-time, it is set to the Dynamic constant.
|
SizeAtCompileTime | This is equal to the number of coefficients, i.e. the number of rows times the number of columns, or to Dynamic if this is not known at compile-time.
|
MaxRowsAtCompileTime | |
MaxColsAtCompileTime | |
MaxSizeAtCompileTime | |
IsVectorAtCompileTime | This is set to true if either the number of rows or the number of columns is known at compile-time to be equal to 1. Indeed, in that case, we are dealing with a column-vector (if there is only one column) or with a row-vector (if there is only one row). |
Flags | This stores expression Flags flags which may or may not be inherited by new expressions constructed from this one. See the list of flags. |
IsRowMajor | |
InnerSizeAtCompileTime | |
_HasDirectAccess |
Definition at line 57 of file SparseMatrixBase.h.
|
inline |
Definition at line 192 of file SparseMatrixBase.h.
|
inline |
Definition at line 351 of file SparseMatrixBase.h.
|
inlineprotected |
|
inlineprotected |
|
inline |
Definition at line 92 of file SparseDot.h.
|
inline |
|
inline |
Definition at line 140 of file SparseMatrixBase.h.
|
inlinestaticprotected |
Definition at line 396 of file SparseMatrixBase.h.
const EIGEN_STRONG_INLINE CwiseProductDenseReturnType<OtherDerived>::Type Eigen::SparseMatrixBase::cwiseProduct | ( | const MatrixBase< OtherDerived > & | other | ) | const |
const EIGEN_STRONG_INLINE SparseMatrixBase<Derived>::template CwiseProductDenseReturnType<OtherDerived>::Type Eigen::SparseMatrixBase::cwiseProduct | ( | const MatrixBase< OtherDerived > & | other | ) | const |
Definition at line 691 of file SparseCwiseBinaryOp.h.
|
inline |
Definition at line 139 of file SparseMatrixBase.h.
|
inline |
Definition at line 138 of file SparseMatrixBase.h.
internal::traits<Derived>::Scalar Eigen::SparseMatrixBase::dot | ( | const MatrixBase< OtherDerived > & | other | ) | const |
Definition at line 18 of file SparseDot.h.
Scalar Eigen::SparseMatrixBase::dot | ( | const MatrixBase< OtherDerived > & | other | ) | const |
internal::traits<Derived>::Scalar Eigen::SparseMatrixBase::dot | ( | const SparseMatrixBase< OtherDerived > & | other | ) | const |
Definition at line 43 of file SparseDot.h.
Scalar Eigen::SparseMatrixBase::dot | ( | const SparseMatrixBase< OtherDerived > & | other | ) | const |
|
inline |
Notice that in the case of a plain matrix or vector (not an expression) this function just returns a const reference, in order to avoid a useless copy.
Definition at line 384 of file SparseMatrixBase.h.
|
private |
|
inline |
Definition at line 187 of file SparseMatrixBase.h.
SparseMatrixBase< Derived >::InnerVectorReturnType Eigen::SparseMatrixBase::innerVector | ( | Index | outer | ) |
*this
if *this
is col-major (resp. row-major). Definition at line 333 of file SparseBlock.h.
const SparseMatrixBase< Derived >::ConstInnerVectorReturnType Eigen::SparseMatrixBase::innerVector | ( | Index | outer | ) | const |
*this
if *this
is col-major (resp. row-major). Read-only. Definition at line 340 of file SparseBlock.h.
SparseMatrixBase< Derived >::InnerVectorsReturnType Eigen::SparseMatrixBase::innerVectors | ( | Index | outerStart, |
Index | outerSize | ||
) |
*this
if *this
is col-major (resp. row-major). Definition at line 348 of file SparseBlock.h.
const SparseMatrixBase< Derived >::ConstInnerVectorsReturnType Eigen::SparseMatrixBase::innerVectors | ( | Index | outerStart, |
Index | outerSize | ||
) | const |
*this
if *this
is col-major (resp. row-major). Read-only. Definition at line 361 of file SparseBlock.h.
|
inline |
Definition at line 375 of file SparseMatrixBase.h.
bool Eigen::SparseMatrixBase::isApprox | ( | const SparseMatrixBase< OtherDerived > & | other, |
const RealScalar & | prec = NumTraits<Scalar>::dummy_precision() |
||
) | const |
Definition at line 17 of file SparseFuzzy.h.
|
inline |
Definition at line 189 of file SparseMatrixBase.h.
|
inline |
Definition at line 181 of file SparseMatrixBase.h.
|
inline |
Definition at line 190 of file SparseMatrixBase.h.
|
inline |
Definition at line 84 of file SparseDot.h.
|
inline |
Definition at line 297 of file SparseMatrixBase.h.
|
inline |
Definition at line 314 of file SparseMatrixBase.h.
|
inline |
ref
is a meaningful non zero reference value. Definition at line 29 of file SparseProduct.h.
EIGEN_STRONG_INLINE Derived& Eigen::SparseMatrixBase::operator*= | ( | const Scalar & | other | ) |
Definition at line 124 of file SparseCwiseUnaryOp.h.
Derived& Eigen::SparseMatrixBase::operator*= | ( | const Scalar & | other | ) |
Derived& Eigen::SparseMatrixBase::operator*= | ( | const SparseMatrixBase< OtherDerived > & | other | ) |
Derived & Eigen::SparseMatrixBase::operator+= | ( | const DiagonalBase< OtherDerived > & | other | ) |
Definition at line 674 of file SparseCwiseBinaryOp.h.
Derived & Eigen::SparseMatrixBase::operator+= | ( | const EigenBase< OtherDerived > & | other | ) |
Definition at line 642 of file SparseCwiseBinaryOp.h.
Derived& Eigen::SparseMatrixBase::operator+= | ( | const SparseMatrixBase< OtherDerived > & | other | ) |
EIGEN_STRONG_INLINE Derived& Eigen::SparseMatrixBase::operator+= | ( | const SparseMatrixBase< OtherDerived > & | other | ) |
Definition at line 667 of file SparseCwiseBinaryOp.h.
Derived & Eigen::SparseMatrixBase::operator-= | ( | const DiagonalBase< OtherDerived > & | other | ) |
Definition at line 682 of file SparseCwiseBinaryOp.h.
Derived & Eigen::SparseMatrixBase::operator-= | ( | const EigenBase< OtherDerived > & | other | ) |
Definition at line 650 of file SparseCwiseBinaryOp.h.
Derived& Eigen::SparseMatrixBase::operator-= | ( | const SparseMatrixBase< OtherDerived > & | other | ) |
EIGEN_STRONG_INLINE Derived& Eigen::SparseMatrixBase::operator-= | ( | const SparseMatrixBase< OtherDerived > & | other | ) |
Definition at line 659 of file SparseCwiseBinaryOp.h.
EIGEN_STRONG_INLINE Derived & Eigen::SparseMatrixBase::operator/= | ( | const Scalar & | other | ) |
Definition at line 136 of file SparseCwiseUnaryOp.h.
|
inline |
Definition at line 43 of file SparseAssign.h.
|
inline |
Derived & Eigen::SparseMatrixBase::operator= | ( | const EigenBase< OtherDerived > & | other | ) |
Definition at line 17 of file SparseAssign.h.
Derived & Eigen::SparseMatrixBase::operator= | ( | const ReturnByValue< OtherDerived > & | other | ) |
Definition at line 25 of file SparseAssign.h.
|
inline |
Definition at line 34 of file SparseAssign.h.
|
inline |
Definition at line 184 of file SparseMatrixBase.h.
|
inline |
*this
with values smaller than reference * epsilon removed.This method is typically used in conjunction with the product of two sparse matrices to automatically prune the smallest values as follows:
where ref
is a meaningful non zero reference value.
Definition at line 245 of file SparseView.h.
|
inline |
SparseMatrixBase<Derived>::template SelfAdjointViewReturnType<UpLo>::Type Eigen::SparseMatrixBase::selfadjointView | ( | ) |
Definition at line 182 of file SparseSelfAdjointView.h.
|
inline |
SparseMatrixBase<Derived>::template ConstSelfAdjointViewReturnType<UpLo>::Type Eigen::SparseMatrixBase::selfadjointView | ( | ) | const |
Definition at line 175 of file SparseSelfAdjointView.h.
|
inline |
|
inline |
Definition at line 176 of file SparseMatrixBase.h.
|
inline |
Definition at line 77 of file SparseDot.h.
internal::traits< Derived >::Scalar Eigen::SparseMatrixBase::sum | ( | ) | const |
Definition at line 17 of file SparseRedux.h.
|
inline |
Definition at line 365 of file SparseMatrixBase.h.
|
inline |
Definition at line 349 of file SparseMatrixBase.h.
|
inline |
Definition at line 350 of file SparseMatrixBase.h.
|
inline |
Definition at line 182 of file SparseTriangularView.h.
|
inline |
*this
Definition at line 324 of file SparseMatrixBase.h.
|
friend |
Definition at line 303 of file SparseMatrixBase.h.
|
friend |
Definition at line 320 of file SparseMatrixBase.h.
|
friend |
Definition at line 213 of file SparseMatrixBase.h.
|
protected |
Definition at line 394 of file SparseMatrixBase.h.