MOAB  4.9.3pre
Eigen::EigenBase< Derived > Class Template Reference

#include <EigenBase.h>

Inheritance diagram for Eigen::EigenBase< Derived >:

List of all members.

Public Types

typedef Eigen::Index Index
 The interface type of indices.
typedef internal::traits
< Derived >::StorageKind 
StorageKind

Public Member Functions

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

Detailed Description

template<typename Derived>
class Eigen::EigenBase< Derived >

Common base class for all classes T such that MatrixBase has an operator=(T) and a constructor MatrixBase(T).

In other words, an EigenBase object is an object that can be copied into a MatrixBase.

Besides MatrixBase-derived classes, this also includes special matrix classes such as diagonal matrices, etc.

Notice that this class is trivial, it is only used to disambiguate overloaded functions.

See also:
TopicClassHierarchy

Definition at line 28 of file EigenBase.h.


Member Typedef Documentation

template<typename Derived>
typedef Eigen::Index Eigen::EigenBase< Derived >::Index

The interface type of indices.

To change this, #define the preprocessor symbol EIGEN_DEFAULT_DENSE_INDEX_TYPE.

Deprecated:
Since Eigen 3.3, its usage is deprecated. Use Eigen::Index instead.
See also:
StorageIndex, TopicPreprocessorDirectives.

Definition at line 37 of file EigenBase.h.


Member Function Documentation

template<typename Derived>
template<typename Dest >
EIGEN_DEVICE_FUNC void Eigen::EigenBase< Derived >::addTo ( Dest &  dst) const [inline]

Don't use it, but do the equivalent:

 dst += *this; 

Definition at line 76 of file EigenBase.h.

  {
    // This is the default implementation,
    // derived class can reimplement it in a more optimized way.
    typename Dest::PlainObject res(rows(),cols());
    evalTo(res);
    dst += res;
  }
template<typename Derived>
template<typename Dest >
EIGEN_DEVICE_FUNC void Eigen::EigenBase< Derived >::applyThisOnTheLeft ( Dest &  dst) const [inline]

Don't use it, but do the equivalent:

 dst.applyOnTheLeft(*this); 

Reimplemented in Eigen::HouseholderSequence< VectorsType, CoeffsType, Side >.

Definition at line 108 of file EigenBase.h.

  {
    // This is the default implementation,
    // derived class can reimplement it in a more optimized way.
    dst = this->derived() * dst;
  }
template<typename Derived>
template<typename Dest >
EIGEN_DEVICE_FUNC void Eigen::EigenBase< Derived >::applyThisOnTheRight ( Dest &  dst) const [inline]

Don't use it, but do the equivalent:

 dst.applyOnTheRight(*this); 

Reimplemented in Eigen::HouseholderSequence< VectorsType, CoeffsType, Side >.

Definition at line 99 of file EigenBase.h.

  {
    // This is the default implementation,
    // derived class can reimplement it in a more optimized way.
    dst = dst * this->derived();
  }
template<typename Derived>
EIGEN_DEVICE_FUNC Index Eigen::EigenBase< Derived >::cols ( void  ) const [inline]
Returns:
the number of columns.
See also:
rows(), ColsAtCompileTime

Reimplemented in Eigen::SparseQRMatrixQReturnType< SparseQRType >, Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >, Eigen::FullPivLU< _MatrixType >, Eigen::internal::BandMatrixWrapper< _CoefficientsType, _Rows, _Cols, _Supers, _Subs, _Options >, Eigen::internal::sparse_matrix_block_impl< SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< const SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::internal::BandMatrix< _Scalar, Rows, Cols, Supers, Subs, Options >, Eigen::internal::BandMatrix< RealScalar, ColsAtCompileTime, ColsAtCompileTime, 1, 0, RowMajor >, Eigen::internal::BandMatrix< Scalar, Size, Size, Options &SelfAdjoint?0:1, 1, Options|RowMajor >, Eigen::HouseholderSequence< VectorsType, CoeffsType, Side >, Eigen::PartialPivLU< _MatrixType >, Eigen::SparseMatrixBase< Derived >, Eigen::PermutationBase< Derived >, Eigen::PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, StorageIndex > >, Eigen::PermutationBase< PermutationWrapper< _IndicesType > >, Eigen::PermutationBase< Map< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex >, _PacketAccess > >, Eigen::PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex > >, Eigen::SparseMapBase< Derived, ReadOnlyAccessors >, Eigen::SelfAdjointView< _MatrixType, UpLo >, Eigen::SparseSelfAdjointView< MatrixType, _Mode >, Eigen::TriangularBase< Derived >, Eigen::TriangularBase< TriangularView< _MatrixType, _Mode > >, Eigen::TriangularBase< SelfAdjointView< _MatrixType, UpLo > >, Eigen::DiagonalBase< Derived >, Eigen::DiagonalBase< DiagonalWrapper< _DiagonalVectorType > >, and Eigen::DiagonalBase< DiagonalMatrix< _Scalar, SizeAtCompileTime, MaxSizeAtCompileTime > >.

Definition at line 61 of file EigenBase.h.

{ return derived().cols(); }
template<typename Derived>
EIGEN_DEVICE_FUNC Derived& Eigen::EigenBase< Derived >::const_cast_derived ( ) const [inline]

Reimplemented in Eigen::SparseMatrixBase< Derived >.

Definition at line 50 of file EigenBase.h.

  { return *static_cast<Derived*>(const_cast<EigenBase*>(this)); }
template<typename Derived>
EIGEN_DEVICE_FUNC const Derived& Eigen::EigenBase< Derived >::const_derived ( ) const [inline]

Definition at line 53 of file EigenBase.h.

  { return *static_cast<const Derived*>(this); }
template<typename Derived>
EIGEN_DEVICE_FUNC Index Eigen::EigenBase< Derived >::rows ( void  ) const [inline]
Returns:
the number of rows.
See also:
cols(), RowsAtCompileTime

Reimplemented in Eigen::SparseQRMatrixQReturnType< SparseQRType >, Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >, Eigen::FullPivLU< _MatrixType >, Eigen::internal::BandMatrixWrapper< _CoefficientsType, _Rows, _Cols, _Supers, _Subs, _Options >, Eigen::internal::sparse_matrix_block_impl< SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< const SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::internal::BandMatrix< _Scalar, Rows, Cols, Supers, Subs, Options >, Eigen::internal::BandMatrix< RealScalar, ColsAtCompileTime, ColsAtCompileTime, 1, 0, RowMajor >, Eigen::internal::BandMatrix< Scalar, Size, Size, Options &SelfAdjoint?0:1, 1, Options|RowMajor >, Eigen::PartialPivLU< _MatrixType >, Eigen::HouseholderSequence< VectorsType, CoeffsType, Side >, Eigen::SparseMatrixBase< Derived >, Eigen::PermutationBase< Derived >, Eigen::PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, StorageIndex > >, Eigen::PermutationBase< PermutationWrapper< _IndicesType > >, Eigen::PermutationBase< Map< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex >, _PacketAccess > >, Eigen::PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex > >, Eigen::SparseMapBase< Derived, ReadOnlyAccessors >, Eigen::SelfAdjointView< _MatrixType, UpLo >, Eigen::SparseSelfAdjointView< MatrixType, _Mode >, Eigen::TriangularBase< Derived >, Eigen::TriangularBase< TriangularView< _MatrixType, _Mode > >, Eigen::TriangularBase< SelfAdjointView< _MatrixType, UpLo > >, Eigen::DiagonalBase< Derived >, Eigen::DiagonalBase< DiagonalWrapper< _DiagonalVectorType > >, and Eigen::DiagonalBase< DiagonalMatrix< _Scalar, SizeAtCompileTime, MaxSizeAtCompileTime > >.

Definition at line 58 of file EigenBase.h.

{ return derived().rows(); }
template<typename Derived>
template<typename Dest >
EIGEN_DEVICE_FUNC void Eigen::EigenBase< Derived >::subTo ( Dest &  dst) const [inline]

Don't use it, but do the equivalent:

 dst -= *this; 

Definition at line 88 of file EigenBase.h.

  {
    // This is the default implementation,
    // derived class can reimplement it in a more optimized way.
    typename Dest::PlainObject res(rows(),cols());
    evalTo(res);
    dst -= res;
  }

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines