Base class for all dense matrices, vectors, and arrays. More...
#include <DenseBase.h>
Classes | |
struct | ConstFixedSegmentReturnType |
struct | ConstNColsBlockXpr |
struct | ConstNRowsBlockXpr |
struct | FixedSegmentReturnType |
class | InnerIterator |
struct | NColsBlockXpr |
struct | NRowsBlockXpr |
Public Types | |
enum | { RowsAtCompileTime = internal::traits<Derived>::RowsAtCompileTime, ColsAtCompileTime = internal::traits<Derived>::ColsAtCompileTime, SizeAtCompileTime, MaxRowsAtCompileTime = internal::traits<Derived>::MaxRowsAtCompileTime, MaxColsAtCompileTime = internal::traits<Derived>::MaxColsAtCompileTime, MaxSizeAtCompileTime, IsVectorAtCompileTime, Flags = internal::traits<Derived>::Flags, IsRowMajor = int(Flags) & RowMajorBit, InnerSizeAtCompileTime, CoeffReadCost = internal::traits<Derived>::CoeffReadCost, InnerStrideAtCompileTime = internal::inner_stride_at_compile_time<Derived>::ret, OuterStrideAtCompileTime = internal::outer_stride_at_compile_time<Derived>::ret } |
enum | { ThisConstantIsPrivateInPlainObjectBase } |
typedef DenseCoeffsBase< Derived > | Base |
typedef Base::CoeffReturnType | CoeffReturnType |
typedef Block< Derived, internal::traits< Derived > ::RowsAtCompileTime, Dynamic,!IsRowMajor > | ColsBlockXpr |
typedef VectorwiseOp< Derived, Vertical > | ColwiseReturnType |
typedef Block< Derived, internal::traits< Derived > ::RowsAtCompileTime, 1,!IsRowMajor > | ColXpr |
typedef CwiseNullaryOp < internal::scalar_constant_op < Scalar >, Derived > | ConstantReturnType |
typedef const Block< const Derived, internal::traits < Derived >::RowsAtCompileTime, Dynamic,!IsRowMajor > | ConstColsBlockXpr |
typedef const VectorwiseOp < const Derived, Vertical > | ConstColwiseReturnType |
typedef const Block< const Derived, internal::traits < Derived >::RowsAtCompileTime, 1,!IsRowMajor > | ConstColXpr |
typedef const Reverse< const Derived, BothDirections > | ConstReverseReturnType |
typedef const Block< const Derived, Dynamic, internal::traits< Derived > ::ColsAtCompileTime, IsRowMajor > | ConstRowsBlockXpr |
typedef const VectorwiseOp < const Derived, Horizontal > | ConstRowwiseReturnType |
typedef const Block< const Derived, 1, internal::traits < Derived >::ColsAtCompileTime, IsRowMajor > | ConstRowXpr |
typedef const VectorBlock < const Derived > | ConstSegmentReturnType |
typedef const Transpose< const Derived > | ConstTransposeReturnType |
typedef Matrix< typename NumTraits< typename internal::traits< Derived > ::Scalar >::Real, internal::traits< Derived > ::ColsAtCompileTime, 1 > | EigenvaluesReturnType |
typedef internal::traits < Derived >::Index | Index |
The type of indices. | |
typedef internal::packet_traits < Scalar >::type | PacketScalar |
typedef CwiseNullaryOp < internal::linspaced_op < Scalar, true >, Derived > | RandomAccessLinSpacedReturnType |
typedef NumTraits< Scalar >::Real | RealScalar |
typedef Reverse< Derived, BothDirections > | ReverseReturnType |
typedef Block< Derived, Dynamic, internal::traits < Derived >::ColsAtCompileTime, IsRowMajor > | RowsBlockXpr |
typedef VectorwiseOp< Derived, Horizontal > | RowwiseReturnType |
typedef Block< Derived, 1, internal::traits< Derived > ::ColsAtCompileTime, IsRowMajor > | RowXpr |
typedef internal::traits < Derived >::Scalar | Scalar |
typedef VectorBlock< Derived > | SegmentReturnType |
typedef CwiseNullaryOp < internal::linspaced_op < Scalar, false >, Derived > | SequentialLinSpacedReturnType |
typedef internal::traits < Derived >::StorageKind | StorageKind |
Public Member Functions | |
bool | all (void) const |
bool | any (void) const |
Block< Derived > | block (Index startRow, Index startCol, Index blockRows, Index blockCols) |
const Block< const Derived > | block (Index startRow, Index startCol, Index blockRows, Index blockCols) const |
template<int BlockRows, int BlockCols> | |
Block< Derived, BlockRows, BlockCols > | block (Index startRow, Index startCol) |
template<int BlockRows, int BlockCols> | |
const Block< const Derived, BlockRows, BlockCols > | block (Index startRow, Index startCol) const |
Block< Derived > | bottomLeftCorner (Index cRows, Index cCols) |
const Block< const Derived > | bottomLeftCorner (Index cRows, Index cCols) const |
template<int CRows, int CCols> | |
Block< Derived, CRows, CCols > | bottomLeftCorner () |
template<int CRows, int CCols> | |
const Block< const Derived, CRows, CCols > | bottomLeftCorner () const |
Block< Derived > | bottomRightCorner (Index cRows, Index cCols) |
const Block< const Derived > | bottomRightCorner (Index cRows, Index cCols) const |
template<int CRows, int CCols> | |
Block< Derived, CRows, CCols > | bottomRightCorner () |
template<int CRows, int CCols> | |
const Block< const Derived, CRows, CCols > | bottomRightCorner () const |
RowsBlockXpr | bottomRows (Index n) |
ConstRowsBlockXpr | bottomRows (Index n) const |
template<int N> | |
NRowsBlockXpr< N >::Type | bottomRows () |
template<int N> | |
ConstNRowsBlockXpr< N >::Type | bottomRows () const |
ColXpr | col (Index i) |
ConstColXpr | col (Index i) const |
ConstColwiseReturnType | colwise () const |
ColwiseReturnType | colwise () |
Index | count () const |
EIGEN_STRONG_INLINE const internal::eval< Derived > ::type | eval () const |
template<typename Dest > | |
void | evalTo (Dest &) const |
void | fill (const Scalar &value) |
template<unsigned int Added, unsigned int Removed> | |
const Flagged< Derived, Added, Removed > | flagged () const |
const ForceAlignedAccess< Derived > | forceAlignedAccess () const |
ForceAlignedAccess< Derived > | forceAlignedAccess () |
template<bool Enable> | |
const internal::conditional < Enable, ForceAlignedAccess < Derived >, Derived & >::type | forceAlignedAccessIf () const |
template<bool Enable> | |
internal::conditional< Enable, ForceAlignedAccess< Derived > , Derived & >::type | forceAlignedAccessIf () |
const WithFormat< Derived > | format (const IOFormat &fmt) const |
SegmentReturnType | head (Index size) |
DenseBase::ConstSegmentReturnType | head (Index size) const |
template<int Size> | |
FixedSegmentReturnType< Size > ::Type | head () |
template<int Size> | |
ConstFixedSegmentReturnType < Size >::Type | head () const |
Index | innerSize () const |
template<typename OtherDerived > | |
bool | isApprox (const DenseBase< OtherDerived > &other, RealScalar prec=NumTraits< Scalar >::dummy_precision()) const |
bool | isApproxToConstant (const Scalar &value, RealScalar prec=NumTraits< Scalar >::dummy_precision()) const |
bool | isConstant (const Scalar &value, RealScalar prec=NumTraits< Scalar >::dummy_precision()) const |
template<typename Derived > | |
bool | isMuchSmallerThan (const typename NumTraits< Scalar >::Real &other, RealScalar prec) const |
bool | isMuchSmallerThan (const RealScalar &other, RealScalar prec=NumTraits< Scalar >::dummy_precision()) const |
template<typename OtherDerived > | |
bool | isMuchSmallerThan (const DenseBase< OtherDerived > &other, RealScalar prec=NumTraits< Scalar >::dummy_precision()) const |
bool | isOnes (RealScalar prec=NumTraits< Scalar >::dummy_precision()) const |
bool | isZero (RealScalar prec=NumTraits< Scalar >::dummy_precision()) const |
template<typename OtherDerived > | |
Derived & | lazyAssign (const DenseBase< OtherDerived > &other) |
ColsBlockXpr | leftCols (Index n) |
ConstColsBlockXpr | leftCols (Index n) const |
template<int N> | |
NColsBlockXpr< N >::Type | leftCols () |
template<int N> | |
ConstNColsBlockXpr< N >::Type | leftCols () const |
template<int p> | |
RealScalar | lpNorm () const |
internal::traits< Derived >::Scalar | maxCoeff () const |
template<typename IndexType > | |
internal::traits< Derived >::Scalar | maxCoeff (IndexType *row, IndexType *col) const |
template<typename IndexType > | |
internal::traits< Derived >::Scalar | maxCoeff (IndexType *index) const |
Scalar | mean () const |
ColsBlockXpr | middleCols (Index startCol, Index numCols) |
ConstColsBlockXpr | middleCols (Index startCol, Index numCols) const |
template<int N> | |
NColsBlockXpr< N >::Type | middleCols (Index startCol) |
template<int N> | |
ConstNColsBlockXpr< N >::Type | middleCols (Index startCol) const |
RowsBlockXpr | middleRows (Index startRow, Index numRows) |
ConstRowsBlockXpr | middleRows (Index startRow, Index numRows) const |
template<int N> | |
NRowsBlockXpr< N >::Type | middleRows (Index startRow) |
template<int N> | |
ConstNRowsBlockXpr< N >::Type | middleRows (Index startRow) const |
internal::traits< Derived >::Scalar | minCoeff () const |
template<typename IndexType > | |
internal::traits< Derived >::Scalar | minCoeff (IndexType *row, IndexType *col) const |
template<typename IndexType > | |
internal::traits< Derived >::Scalar | minCoeff (IndexType *index) const |
const NestByValue< Derived > | nestByValue () const |
Index | nonZeros () const |
Derived & | operator*= (const Scalar &other) |
template<typename OtherDerived > | |
Derived & | operator+= (const EigenBase< OtherDerived > &other) |
template<typename OtherDerived > | |
Derived & | operator-= (const EigenBase< OtherDerived > &other) |
Derived & | operator/= (const Scalar &other) |
CommaInitializer< Derived > | operator<< (const Scalar &s) |
template<typename OtherDerived > | |
CommaInitializer< Derived > | operator<< (const DenseBase< OtherDerived > &other) |
template<typename OtherDerived > | |
Derived & | operator= (const DenseBase< OtherDerived > &other) |
Derived & | operator= (const DenseBase &other) |
template<typename OtherDerived > | |
Derived & | operator= (const EigenBase< OtherDerived > &other) |
Copies the generic expression other into *this. | |
template<typename OtherDerived > | |
Derived & | operator= (const ReturnByValue< OtherDerived > &func) |
Index | outerSize () const |
Scalar | prod () const |
template<int RowFactor, int ColFactor> | |
const Replicate< Derived, RowFactor, ColFactor > | replicate () const |
const Replicate< Derived, Dynamic, Dynamic > | replicate (Index rowFacor, Index colFactor) const |
void | resize (Index size) |
void | resize (Index rows, Index cols) |
ReverseReturnType | reverse () |
ConstReverseReturnType | reverse () const |
void | reverseInPlace () |
ColsBlockXpr | rightCols (Index n) |
ConstColsBlockXpr | rightCols (Index n) const |
template<int N> | |
NColsBlockXpr< N >::Type | rightCols () |
template<int N> | |
ConstNColsBlockXpr< N >::Type | rightCols () const |
RowXpr | row (Index i) |
ConstRowXpr | row (Index i) const |
ConstRowwiseReturnType | rowwise () const |
RowwiseReturnType | rowwise () |
SegmentReturnType | segment (Index start, Index size) |
DenseBase::ConstSegmentReturnType | segment (Index start, Index size) const |
template<int Size> | |
FixedSegmentReturnType< Size > ::Type | segment (Index start) |
template<int Size> | |
ConstFixedSegmentReturnType < Size >::Type | segment (Index start) const |
template<typename ThenDerived , typename ElseDerived > | |
const Select< Derived, ThenDerived, ElseDerived > | select (const DenseBase< ThenDerived > &thenMatrix, const DenseBase< ElseDerived > &elseMatrix) const |
template<typename ThenDerived > | |
const Select< Derived, ThenDerived, typename ThenDerived::ConstantReturnType > | select (const DenseBase< ThenDerived > &thenMatrix, typename ThenDerived::Scalar elseScalar) const |
template<typename ElseDerived > | |
const Select< Derived, typename ElseDerived::ConstantReturnType, ElseDerived > | select (typename ElseDerived::Scalar thenScalar, const DenseBase< ElseDerived > &elseMatrix) const |
Derived & | setConstant (const Scalar &value) |
Derived & | setLinSpaced (Index size, const Scalar &low, const Scalar &high) |
Sets a linearly space vector. | |
Derived & | setLinSpaced (const Scalar &low, const Scalar &high) |
Derived & | setOnes () |
Derived & | setRandom () |
Derived & | setZero () |
Scalar | sum () const |
template<typename OtherDerived > | |
void | swap (const DenseBase< OtherDerived > &other, int=OtherDerived::ThisConstantIsPrivateInPlainObjectBase) |
template<typename OtherDerived > | |
void | swap (PlainObjectBase< OtherDerived > &other) |
SegmentReturnType | tail (Index size) |
DenseBase::ConstSegmentReturnType | tail (Index size) const |
template<int Size> | |
FixedSegmentReturnType< Size > ::Type | tail () |
template<int Size> | |
ConstFixedSegmentReturnType < Size >::Type | tail () const |
Block< Derived > | topLeftCorner (Index cRows, Index cCols) |
const Block< const Derived > | topLeftCorner (Index cRows, Index cCols) const |
template<int CRows, int CCols> | |
Block< Derived, CRows, CCols > | topLeftCorner () |
template<int CRows, int CCols> | |
const Block< const Derived, CRows, CCols > | topLeftCorner () const |
Block< Derived > | topRightCorner (Index cRows, Index cCols) |
const Block< const Derived > | topRightCorner (Index cRows, Index cCols) const |
template<int CRows, int CCols> | |
Block< Derived, CRows, CCols > | topRightCorner () |
template<int CRows, int CCols> | |
const Block< const Derived, CRows, CCols > | topRightCorner () const |
RowsBlockXpr | topRows (Index n) |
ConstRowsBlockXpr | topRows (Index n) const |
template<int N> | |
NRowsBlockXpr< N >::Type | topRows () |
template<int N> | |
ConstNRowsBlockXpr< N >::Type | topRows () const |
Scalar | trace () const |
Eigen::Transpose< Derived > | transpose () |
ConstTransposeReturnType | transpose () const |
void | transposeInPlace () |
CoeffReturnType | value () const |
template<typename Visitor > | |
void | visit (Visitor &func) const |
Static Public Member Functions | |
static const ConstantReturnType | Constant (Index rows, Index cols, const Scalar &value) |
static const ConstantReturnType | Constant (Index size, const Scalar &value) |
static const ConstantReturnType | Constant (const Scalar &value) |
static const SequentialLinSpacedReturnType | LinSpaced (Sequential_t, Index size, const Scalar &low, const Scalar &high) |
Sets a linearly space vector. | |
static const RandomAccessLinSpacedReturnType | LinSpaced (Index size, const Scalar &low, const Scalar &high) |
Sets a linearly space vector. | |
static const SequentialLinSpacedReturnType | LinSpaced (Sequential_t, const Scalar &low, const Scalar &high) |
static const RandomAccessLinSpacedReturnType | LinSpaced (const Scalar &low, const Scalar &high) |
template<typename CustomNullaryOp > | |
static const CwiseNullaryOp < CustomNullaryOp, Derived > | NullaryExpr (Index rows, Index cols, const CustomNullaryOp &func) |
template<typename CustomNullaryOp > | |
static const CwiseNullaryOp < CustomNullaryOp, Derived > | NullaryExpr (Index size, const CustomNullaryOp &func) |
template<typename CustomNullaryOp > | |
static const CwiseNullaryOp < CustomNullaryOp, Derived > | NullaryExpr (const CustomNullaryOp &func) |
static const ConstantReturnType | Ones (Index rows, Index cols) |
static const ConstantReturnType | Ones (Index size) |
static const ConstantReturnType | Ones () |
static const CwiseNullaryOp < internal::scalar_random_op < Scalar >, Derived > | Random (Index rows, Index cols) |
static const CwiseNullaryOp < internal::scalar_random_op < Scalar >, Derived > | Random (Index size) |
static const CwiseNullaryOp < internal::scalar_random_op < Scalar >, Derived > | Random () |
static const ConstantReturnType | Zero (Index rows, Index cols) |
static const ConstantReturnType | Zero (Index size) |
static const ConstantReturnType | Zero () |
Protected Member Functions | |
template<typename OtherDerived > | |
void | checkTransposeAliasing (const OtherDerived &other) const |
DenseBase () | |
Private Member Functions | |
DenseBase (int) | |
DenseBase (int, int) | |
template<typename OtherDerived > | |
DenseBase (const DenseBase< OtherDerived > &) | |
Related Functions | |
(Note that these are not member functions.) | |
template<typename Derived > | |
std::ostream & | operator<< (std::ostream &s, const DenseBase< Derived > &m) |
Base class for all dense matrices, vectors, and arrays.
This class is the base that is inherited by all dense objects (matrix, vector, arrays, and related expression types). The common Eigen API for dense objects is contained in this class.
Derived | is the derived type, e.g., a matrix type or an expression. |
This class can be extended with the help of the plugin mechanism described on the page Customizing/Extending Eigen by defining the preprocessor symbol EIGEN_DENSEBASE_PLUGIN
.
Definition at line 44 of file DenseBase.h.
typedef DenseCoeffsBase<Derived> DenseBase< Derived >::Base |
Reimplemented in ScaledProduct< NestedProduct >, MatrixWrapper< ExpressionType >, CoeffBasedProduct< LhsNested, RhsNested, NestingFlags >, Homogeneous< MatrixType, _Direction >, ProductBase< Derived, Lhs, Rhs >, ProductBase< GeneralProduct< Lhs, Rhs, GemmProduct >, Lhs, Rhs >, ProductBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true >, Lhs, Rhs >, ProductBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true >, Lhs, Rhs >, ProductBase< ScaledProduct< NestedProduct >, NestedProduct::_LhsNested, NestedProduct::_RhsNested >, ProductBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false >, Lhs, Rhs >, ProductBase< GeneralProduct< Lhs, Rhs, OuterProduct >, Lhs, Rhs >, ProductBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo >, Lhs, Rhs >, ProductBase< GeneralProduct< Lhs, Rhs, GemvProduct >, Lhs, Rhs >, ProductBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false >, Lhs, Rhs >, ProductBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false >, Lhs, Rhs >, ProductBase< DenseTimeSparseProduct< Lhs, Rhs >, Lhs, Rhs >, ProductBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo >, Lhs, Rhs >, ProductBase< SparseTimeDenseProduct< Lhs, Rhs >, Lhs, Rhs >, ProductBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false >, Lhs, Rhs >, MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >, ArrayBase< Derived >, Minor< MatrixType >, ArrayBase< ArrayWrapper< ExpressionType > >, DiagonalProduct< MatrixType, DiagonalType, ProductOrder >, Flagged< ExpressionType, Added, Removed >, and ArrayWrapper< ExpressionType >.
Definition at line 70 of file DenseBase.h.
typedef Base::CoeffReturnType DenseBase< Derived >::CoeffReturnType |
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >, ArrayBase< Derived >, and ArrayBase< ArrayWrapper< ExpressionType > >.
Definition at line 101 of file DenseBase.h.
typedef Block<Derived, internal::traits<Derived>::RowsAtCompileTime, Dynamic, !IsRowMajor> DenseBase< Derived >::ColsBlockXpr |
Definition at line 39 of file DenseBase.h.
typedef VectorwiseOp<Derived, Vertical> DenseBase< Derived >::ColwiseReturnType |
Definition at line 461 of file DenseBase.h.
typedef Block<Derived, internal::traits<Derived>::RowsAtCompileTime, 1, !IsRowMajor> DenseBase< Derived >::ColXpr |
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, and MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >.
Definition at line 33 of file DenseBase.h.
typedef CwiseNullaryOp<internal::scalar_constant_op<Scalar>,Derived> DenseBase< Derived >::ConstantReturnType |
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >, ArrayBase< Derived >, and ArrayBase< ArrayWrapper< ExpressionType > >.
Definition at line 241 of file DenseBase.h.
typedef const Block<const Derived, internal::traits<Derived>::RowsAtCompileTime, Dynamic, !IsRowMajor> DenseBase< Derived >::ConstColsBlockXpr |
Definition at line 40 of file DenseBase.h.
typedef const VectorwiseOp<const Derived, Vertical> DenseBase< Derived >::ConstColwiseReturnType |
Definition at line 462 of file DenseBase.h.
typedef const Block<const Derived, internal::traits<Derived>::RowsAtCompileTime, 1, !IsRowMajor> DenseBase< Derived >::ConstColXpr |
Definition at line 34 of file DenseBase.h.
typedef const Reverse<const Derived, BothDirections> DenseBase< Derived >::ConstReverseReturnType |
Definition at line 493 of file DenseBase.h.
typedef const Block<const Derived, Dynamic, internal::traits<Derived>::ColsAtCompileTime, IsRowMajor> DenseBase< Derived >::ConstRowsBlockXpr |
Definition at line 43 of file DenseBase.h.
typedef const VectorwiseOp<const Derived, Horizontal> DenseBase< Derived >::ConstRowwiseReturnType |
Definition at line 460 of file DenseBase.h.
typedef const Block<const Derived, 1, internal::traits<Derived>::ColsAtCompileTime, IsRowMajor> DenseBase< Derived >::ConstRowXpr |
Definition at line 37 of file DenseBase.h.
typedef const VectorBlock<const Derived> DenseBase< Derived >::ConstSegmentReturnType |
Definition at line 298 of file DenseBase.h.
typedef const Transpose<const Derived> DenseBase< Derived >::ConstTransposeReturnType |
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, and MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >.
Definition at line 287 of file DenseBase.h.
typedef Matrix<typename NumTraits<typename internal::traits<Derived>::Scalar>::Real, internal::traits<Derived>::ColsAtCompileTime, 1> DenseBase< Derived >::EigenvaluesReturnType |
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, and MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >.
Definition at line 247 of file DenseBase.h.
The type of indices.
To change this, #define
the preprocessor symbol EIGEN_DEFAULT_DENSE_INDEX_TYPE
.
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >, ArrayBase< Derived >, and ArrayBase< ArrayWrapper< ExpressionType > >.
Definition at line 64 of file DenseBase.h.
typedef internal::packet_traits<Scalar>::type DenseBase< Derived >::PacketScalar |
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >, ArrayBase< Derived >, and ArrayBase< ArrayWrapper< ExpressionType > >.
Definition at line 67 of file DenseBase.h.
typedef CwiseNullaryOp<internal::linspaced_op<Scalar,true>,Derived> DenseBase< Derived >::RandomAccessLinSpacedReturnType |
Definition at line 245 of file DenseBase.h.
typedef NumTraits<Scalar>::Real DenseBase< Derived >::RealScalar |
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >, ArrayBase< Derived >, and ArrayBase< ArrayWrapper< ExpressionType > >.
Definition at line 68 of file DenseBase.h.
typedef Reverse<Derived, BothDirections> DenseBase< Derived >::ReverseReturnType |
Definition at line 492 of file DenseBase.h.
typedef Block<Derived, Dynamic, internal::traits<Derived>::ColsAtCompileTime, IsRowMajor> DenseBase< Derived >::RowsBlockXpr |
Definition at line 42 of file DenseBase.h.
typedef VectorwiseOp<Derived, Horizontal> DenseBase< Derived >::RowwiseReturnType |
Definition at line 459 of file DenseBase.h.
typedef Block<Derived, 1, internal::traits<Derived>::ColsAtCompileTime, IsRowMajor> DenseBase< Derived >::RowXpr |
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, and MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >.
Definition at line 36 of file DenseBase.h.
Reimplemented in ScaledProduct< NestedProduct >, MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >, ArrayBase< Derived >, and ArrayBase< ArrayWrapper< ExpressionType > >.
Definition at line 66 of file DenseBase.h.
typedef VectorBlock<Derived> DenseBase< Derived >::SegmentReturnType |
Definition at line 297 of file DenseBase.h.
typedef CwiseNullaryOp<internal::linspaced_op<Scalar,false>,Derived> DenseBase< Derived >::SequentialLinSpacedReturnType |
Definition at line 243 of file DenseBase.h.
typedef internal::traits<Derived>::StorageKind DenseBase< Derived >::StorageKind |
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >, ArrayBase< Derived >, and ArrayBase< ArrayWrapper< ExpressionType > >.
Definition at line 56 of file DenseBase.h.
anonymous enum |
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 |
This value is equal to the maximum possible number of rows that this expression might have. If this expression might have an arbitrarily high number of rows, this value is set to Dynamic. This value is useful to know when evaluating an expression, in order to determine whether it is possible to avoid doing a dynamic memory allocation. |
MaxColsAtCompileTime |
This value is equal to the maximum possible number of columns that this expression might have. If this expression might have an arbitrarily high number of columns, this value is set to Dynamic. This value is useful to know when evaluating an expression, in order to determine whether it is possible to avoid doing a dynamic memory allocation. |
MaxSizeAtCompileTime |
This value is equal to the maximum possible number of coefficients that this expression might have. If this expression might have an arbitrarily high number of coefficients, this value is set to Dynamic. This value is useful to know when evaluating an expression, in order to determine whether it is possible to avoid doing a dynamic memory allocation. |
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 |
True if this expression has row-major storage order. |
InnerSizeAtCompileTime | |
CoeffReadCost |
This is a rough measure of how expensive it is to read one coefficient from this expression. |
InnerStrideAtCompileTime | |
OuterStrideAtCompileTime |
Definition at line 103 of file DenseBase.h.
anonymous enum |
Definition at line 184 of file DenseBase.h.
Default constructor. Do nothing.
Definition at line 525 of file DenseBase.h.
DenseBase< Derived >::DenseBase | ( | const DenseBase< OtherDerived > & | ) | [explicit, private] |
Example:
Vector3f boxMin(Vector3f::Zero()), boxMax(Vector3f::Ones()); Vector3f p0 = Vector3f::Random(), p1 = Vector3f::Random().cwiseAbs(); // let's check if p0 and p1 are inside the axis aligned box defined by the corners boxMin,boxMax: cout << "Is (" << p0.transpose() << ") inside the box: " << ((boxMin.array()<p0.array()).all() && (boxMax.array()>p0.array()).all()) << endl; cout << "Is (" << p1.transpose() << ") inside the box: " << ((boxMin.array()<p1.array()).all() && (boxMax.array()>p1.array()).all()) << endl;
Output:
Definition at line 92 of file BooleanRedux.h.
Definition at line 118 of file BooleanRedux.h.
Block<Derived> DenseBase< Derived >::block | ( | Index | startRow, |
Index | startCol, | ||
Index | blockRows, | ||
Index | blockCols | ||
) | [inline] |
startRow | the first row in the block |
startCol | the first column in the block |
blockRows | the number of rows in the block |
blockCols | the number of columns in the block |
Example:
Matrix4i m = Matrix4i::Random(); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is m.block(1, 1, 2, 2):" << endl << m.block(1, 1, 2, 2) << endl; m.block(1, 1, 2, 2).setZero(); cout << "Now the matrix m is:" << endl << m << endl;
Output:
Definition at line 70 of file DenseBase.h.
const Block<const Derived> DenseBase< Derived >::block | ( | Index | startRow, |
Index | startCol, | ||
Index | blockRows, | ||
Index | blockCols | ||
) | const [inline] |
This is the const version of block(Index,Index,Index,Index).
Definition at line 76 of file DenseBase.h.
Block<Derived, BlockRows, BlockCols> DenseBase< Derived >::block | ( | Index | startRow, |
Index | startCol | ||
) | [inline] |
The template parameters BlockRows and BlockCols are the number of rows and columns in the block.
startRow | the first row in the block |
startCol | the first column in the block |
Example:
Matrix4i m = Matrix4i::Random(); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is m.block<2,2>(1,1):" << endl << m.block<2,2>(1,1) << endl; m.block<2,2>(1,1).setZero(); cout << "Now the matrix m is:" << endl << m << endl;
Output:
m.template block<3,3>(1,1);
Definition at line 550 of file DenseBase.h.
const Block<const Derived, BlockRows, BlockCols> DenseBase< Derived >::block | ( | Index | startRow, |
Index | startCol | ||
) | const [inline] |
This is the const version of block<>(Index, Index).
Definition at line 557 of file DenseBase.h.
Block<Derived> DenseBase< Derived >::bottomLeftCorner | ( | Index | cRows, |
Index | cCols | ||
) | [inline] |
cRows | the number of rows in the corner |
cCols | the number of columns in the corner |
Example:
Matrix4i m = Matrix4i::Random(); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is m.bottomLeftCorner(2, 2):" << endl; cout << m.bottomLeftCorner(2, 2) << endl; m.bottomLeftCorner(2, 2).setZero(); cout << "Now the matrix m is:" << endl << m << endl;
Output:
Definition at line 230 of file DenseBase.h.
const Block<const Derived> DenseBase< Derived >::bottomLeftCorner | ( | Index | cRows, |
Index | cCols | ||
) | const [inline] |
This is the const version of bottomLeftCorner(Index, Index).
Definition at line 236 of file DenseBase.h.
Block<Derived, CRows, CCols> DenseBase< Derived >::bottomLeftCorner | ( | ) | [inline] |
The template parameters CRows and CCols are the number of rows and columns in the corner.
Example:
Matrix4i m = Matrix4i::Random(); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is m.bottomLeftCorner<2,2>():" << endl; cout << m.bottomLeftCorner<2,2>() << endl; m.bottomLeftCorner<2,2>().setZero(); cout << "Now the matrix m is:" << endl << m << endl;
Output:
Definition at line 251 of file DenseBase.h.
const Block<const Derived, CRows, CCols> DenseBase< Derived >::bottomLeftCorner | ( | ) | const [inline] |
This is the const version of bottomLeftCorner<int, int>().
Definition at line 258 of file DenseBase.h.
Block<Derived> DenseBase< Derived >::bottomRightCorner | ( | Index | cRows, |
Index | cCols | ||
) | [inline] |
cRows | the number of rows in the corner |
cCols | the number of columns in the corner |
Example:
Matrix4i m = Matrix4i::Random(); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is m.bottomRightCorner(2, 2):" << endl; cout << m.bottomRightCorner(2, 2) << endl; m.bottomRightCorner(2, 2).setZero(); cout << "Now the matrix m is:" << endl << m << endl;
Output:
Definition at line 185 of file DenseBase.h.
const Block<const Derived> DenseBase< Derived >::bottomRightCorner | ( | Index | cRows, |
Index | cCols | ||
) | const [inline] |
This is the const version of bottomRightCorner(Index, Index).
Definition at line 191 of file DenseBase.h.
Block<Derived, CRows, CCols> DenseBase< Derived >::bottomRightCorner | ( | ) | [inline] |
The template parameters CRows and CCols are the number of rows and columns in the corner.
Example:
Matrix4i m = Matrix4i::Random(); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is m.bottomRightCorner<2,2>():" << endl; cout << m.bottomRightCorner<2,2>() << endl; m.bottomRightCorner<2,2>().setZero(); cout << "Now the matrix m is:" << endl << m << endl;
Output:
Definition at line 206 of file DenseBase.h.
const Block<const Derived, CRows, CCols> DenseBase< Derived >::bottomRightCorner | ( | ) | const [inline] |
This is the const version of bottomRightCorner<int, int>().
Definition at line 213 of file DenseBase.h.
RowsBlockXpr DenseBase< Derived >::bottomRows | ( | Index | n | ) | [inline] |
n | the number of rows in the block |
Example:
Array44i a = Array44i::Random(); cout << "Here is the array a:" << endl << a << endl; cout << "Here is a.bottomRows(2):" << endl; cout << a.bottomRows(2) << endl; a.bottomRows(2).setZero(); cout << "Now the array a is:" << endl << a << endl;
Output:
Definition at line 318 of file DenseBase.h.
ConstRowsBlockXpr DenseBase< Derived >::bottomRows | ( | Index | n | ) | const [inline] |
This is the const version of bottomRows(Index).
Definition at line 324 of file DenseBase.h.
NRowsBlockXpr<N>::Type DenseBase< Derived >::bottomRows | ( | ) | [inline] |
N | the number of rows in the block |
Example:
Array44i a = Array44i::Random(); cout << "Here is the array a:" << endl << a << endl; cout << "Here is a.bottomRows<2>():" << endl; cout << a.bottomRows<2>() << endl; a.bottomRows<2>().setZero(); cout << "Now the array a is:" << endl << a << endl;
Output:
Definition at line 339 of file DenseBase.h.
ConstNRowsBlockXpr<N>::Type DenseBase< Derived >::bottomRows | ( | ) | const [inline] |
This is the const version of bottomRows<int>().
Definition at line 346 of file DenseBase.h.
void DenseBase< Derived >::checkTransposeAliasing | ( | const OtherDerived & | other | ) | const [protected] |
Definition at line 419 of file Transpose.h.
Example:
Matrix3d m = Matrix3d::Identity(); m.col(1) = Vector3d(4,5,6); cout << m << endl;
Output:
Definition at line 568 of file DenseBase.h.
ConstColXpr DenseBase< Derived >::col | ( | Index | i | ) | const [inline] |
This is the const version of col().
Definition at line 574 of file DenseBase.h.
const DenseBase< Derived >::ConstColwiseReturnType DenseBase< Derived >::colwise | ( | ) | const [inline] |
Example:
Matrix3d m = Matrix3d::Random(); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is the sum of each column:" << endl << m.colwise().sum() << endl; cout << "Here is the maximum absolute value of each column:" << endl << m.cwiseAbs().colwise().maxCoeff() << endl;
Output:
Definition at line 516 of file VectorwiseOp.h.
DenseBase< Derived >::ColwiseReturnType DenseBase< Derived >::colwise | ( | ) | [inline] |
Definition at line 527 of file VectorwiseOp.h.
EIGEN_STRONG_INLINE const DenseBase< Derived >::ConstantReturnType DenseBase< Derived >::Constant | ( | Index | rows, |
Index | cols, | ||
const Scalar & | value | ||
) | [static] |
The parameters rows and cols are the number of rows and of columns of the returned matrix. Must be compatible with this DenseBase type.
This variant is meant to be used for dynamic-size matrix types. For fixed-size types, it is redundant to pass rows and cols as arguments, so Zero() should be used instead.
The template parameter CustomNullaryOp is the type of the functor.
Definition at line 189 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE const DenseBase< Derived >::ConstantReturnType DenseBase< Derived >::Constant | ( | Index | size, |
const Scalar & | value | ||
) | [static] |
The parameter size is the size of the returned vector. Must be compatible with this DenseBase type.
This variant is meant to be used for dynamic-size vector types. For fixed-size types, it is redundant to pass size as argument, so Zero() should be used instead.
The template parameter CustomNullaryOp is the type of the functor.
Definition at line 211 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE const DenseBase< Derived >::ConstantReturnType DenseBase< Derived >::Constant | ( | const Scalar & | value | ) | [static] |
This variant is only for fixed-size DenseBase types. For dynamic-size types, you need to use the variants taking size arguments.
The template parameter CustomNullaryOp is the type of the functor.
Definition at line 227 of file CwiseNullaryOp.h.
DenseBase< Derived >::Index DenseBase< Derived >::count | ( | ) | const [inline] |
Definition at line 144 of file BooleanRedux.h.
EIGEN_STRONG_INLINE const internal::eval<Derived>::type DenseBase< Derived >::eval | ( | ) | 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 DenseBase.h.
void DenseBase< Derived >::evalTo | ( | Dest & | ) | const [inline] |
Reimplemented in ScaledProduct< NestedProduct >, ArrayWrapper< ExpressionType >, ProductBase< Derived, Lhs, Rhs >, ProductBase< GeneralProduct< Lhs, Rhs, GemmProduct >, Lhs, Rhs >, ProductBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true >, Lhs, Rhs >, ProductBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true >, Lhs, Rhs >, ProductBase< ScaledProduct< NestedProduct >, NestedProduct::_LhsNested, NestedProduct::_RhsNested >, ProductBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false >, Lhs, Rhs >, ProductBase< GeneralProduct< Lhs, Rhs, OuterProduct >, Lhs, Rhs >, ProductBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo >, Lhs, Rhs >, ProductBase< GeneralProduct< Lhs, Rhs, GemvProduct >, Lhs, Rhs >, ProductBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false >, Lhs, Rhs >, ProductBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false >, Lhs, Rhs >, ProductBase< DenseTimeSparseProduct< Lhs, Rhs >, Lhs, Rhs >, ProductBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo >, Lhs, Rhs >, ProductBase< SparseTimeDenseProduct< Lhs, Rhs >, Lhs, Rhs >, and ProductBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false >, Lhs, Rhs >.
Definition at line 518 of file DenseBase.h.
EIGEN_STRONG_INLINE void DenseBase< Derived >::fill | ( | const Scalar & | value | ) |
Alias for setConstant(): sets all coefficients in this expression to value.
Definition at line 329 of file CwiseNullaryOp.h.
const ForceAlignedAccess<Derived> DenseBase< Derived >::forceAlignedAccess | ( | ) | const [inline] |
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, and MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >.
ForceAlignedAccess<Derived> DenseBase< Derived >::forceAlignedAccess | ( | ) | [inline] |
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, and MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >.
const internal::conditional<Enable,ForceAlignedAccess<Derived>,Derived&>::type DenseBase< Derived >::forceAlignedAccessIf | ( | ) | const [inline] |
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, and MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >.
internal::conditional<Enable,ForceAlignedAccess<Derived>,Derived&>::type DenseBase< Derived >::forceAlignedAccessIf | ( | ) | [inline] |
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, and MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >.
const WithFormat< Derived > DenseBase< Derived >::format | ( | const IOFormat & | fmt | ) | const [inline] |
See class IOFormat for some examples.
DenseBase< Derived >::SegmentReturnType DenseBase< Derived >::head | ( | Index | size | ) | [inline] |
size | the number of coefficients in the block |
Example:
RowVector4i v = RowVector4i::Random(); cout << "Here is the vector v:" << endl << v << endl; cout << "Here is v.head(2):" << endl << v.head(2) << endl; v.head(2).setZero(); cout << "Now the vector v is:" << endl << v << endl;
Output:
Definition at line 156 of file Core/VectorBlock.h.
DenseBase< Derived >::ConstSegmentReturnType DenseBase< Derived >::head | ( | Index | size | ) | const [inline] |
This is the const version of head(Index).
Definition at line 165 of file Core/VectorBlock.h.
DenseBase< Derived >::template FixedSegmentReturnType< Size >::Type DenseBase< Derived >::head | ( | ) | [inline] |
The template parameter Size is the number of coefficients in the block
Example:
RowVector4i v = RowVector4i::Random(); cout << "Here is the vector v:" << endl << v << endl; cout << "Here is v.head(2):" << endl << v.head<2>() << endl; v.head<2>().setZero(); cout << "Now the vector v is:" << endl << v << endl;
Output:
Definition at line 249 of file Core/VectorBlock.h.
DenseBase< Derived >::template ConstFixedSegmentReturnType< Size >::Type DenseBase< Derived >::head | ( | ) | const [inline] |
This is the const version of head<int>().
Definition at line 259 of file Core/VectorBlock.h.
Definition at line 210 of file DenseBase.h.
bool DenseBase< Derived >::isApprox | ( | const DenseBase< OtherDerived > & | other, |
RealScalar | prec = NumTraits<Scalar>::dummy_precision() |
||
) | const |
true
if *this
is approximately equal to other, within the precision determined by prec.For matrices, the comparison is done using the Hilbert-Schmidt norm (aka Frobenius norm L2 norm).
*this
is approximately equal to the zero matrix or vector. Indeed, isApprox(zero)
returns false unless *this
itself is exactly the zero matrix or vector. If you want to test whether *this
is zero, use internal::isMuchSmallerThan(const RealScalar&, RealScalar) instead.bool DenseBase< Derived >::isApproxToConstant | ( | const Scalar & | value, |
RealScalar | prec = NumTraits<Scalar>::dummy_precision() |
||
) | const |
Definition at line 305 of file CwiseNullaryOp.h.
bool DenseBase< Derived >::isConstant | ( | const Scalar & | value, |
RealScalar | prec = NumTraits<Scalar>::dummy_precision() |
||
) | const |
This is just an alias for isApproxToConstant().
Definition at line 319 of file CwiseNullaryOp.h.
bool DenseBase< Derived >::isMuchSmallerThan | ( | const typename NumTraits< Scalar >::Real & | other, |
RealScalar | prec | ||
) | const |
true
if the norm of *this
is much smaller than other, within the precision determined by prec.
For matrices, the comparison is done using the Hilbert-Schmidt norm. For this reason, the value of the reference scalar other should come from the Hilbert-Schmidt norm of a reference matrix of same dimensions.
bool DenseBase< Derived >::isMuchSmallerThan | ( | const RealScalar & | other, |
RealScalar | prec = NumTraits< Scalar >::dummy_precision() |
||
) | const |
bool DenseBase< Derived >::isMuchSmallerThan | ( | const DenseBase< OtherDerived > & | other, |
RealScalar | prec = NumTraits<Scalar>::dummy_precision() |
||
) | const |
true
if the norm of *this
is much smaller than the norm of other, within the precision determined by prec.For matrices, the comparison is done using the Hilbert-Schmidt norm.
bool DenseBase< Derived >::isOnes | ( | RealScalar | prec = NumTraits<Scalar>::dummy_precision() | ) | const |
Example:
Matrix3d m = Matrix3d::Ones(); m(0,2) += 1e-4; cout << "Here's the matrix m:" << endl << m << endl; cout << "m.isOnes() returns: " << m.isOnes() << endl; cout << "m.isOnes(1e-3) returns: " << m.isOnes(1e-3) << endl;
Output:
Definition at line 601 of file CwiseNullaryOp.h.
bool DenseBase< Derived >::isZero | ( | RealScalar | prec = NumTraits<Scalar>::dummy_precision() | ) | const |
Example:
Matrix3d m = Matrix3d::Zero(); m(0,2) = 1e-4; cout << "Here's the matrix m:" << endl << m << endl; cout << "m.isZero() returns: " << m.isZero() << endl; cout << "m.isZero(1e-3) returns: " << m.isZero(1e-3) << endl;
Output:
Definition at line 471 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE Derived & DenseBase< Derived >::lazyAssign | ( | const DenseBase< OtherDerived > & | other | ) |
ColsBlockXpr DenseBase< Derived >::leftCols | ( | Index | n | ) | [inline] |
n | the number of columns in the block |
Example:
Array44i a = Array44i::Random(); cout << "Here is the array a:" << endl << a << endl; cout << "Here is a.leftCols(2):" << endl; cout << a.leftCols(2) << endl; a.leftCols(2).setZero(); cout << "Now the array a is:" << endl << a << endl;
Output:
Definition at line 408 of file DenseBase.h.
ConstColsBlockXpr DenseBase< Derived >::leftCols | ( | Index | n | ) | const [inline] |
This is the const version of leftCols(Index).
Definition at line 414 of file DenseBase.h.
NColsBlockXpr<N>::Type DenseBase< Derived >::leftCols | ( | ) | [inline] |
N | the number of columns in the block |
Example:
Array44i a = Array44i::Random(); cout << "Here is the array a:" << endl << a << endl; cout << "Here is a.leftCols<2>():" << endl; cout << a.leftCols<2>() << endl; a.leftCols<2>().setZero(); cout << "Now the array a is:" << endl << a << endl;
Output:
Definition at line 429 of file DenseBase.h.
ConstNColsBlockXpr<N>::Type DenseBase< Derived >::leftCols | ( | ) | const [inline] |
This is the const version of leftCols<int>().
Definition at line 436 of file DenseBase.h.
EIGEN_STRONG_INLINE const DenseBase< Derived >::SequentialLinSpacedReturnType DenseBase< Derived >::LinSpaced | ( | Sequential_t | , |
Index | size, | ||
const Scalar & | low, | ||
const Scalar & | high | ||
) | [static] |
Sets a linearly space vector.
The function generates 'size' equally spaced values in the closed interval [low,high]. This particular version of LinSpaced() uses sequential access, i.e. vector access is assumed to be a(0), a(1), ..., a(size). This assumption allows for better vectorization and yields faster code than the random access version.
Example:
cout << VectorXi::LinSpaced(Sequential,4,7,10).transpose() << endl; cout << VectorXd::LinSpaced(Sequential,5,0.0,1.0).transpose() << endl;
Output:
Definition at line 250 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE const DenseBase< Derived >::RandomAccessLinSpacedReturnType DenseBase< Derived >::LinSpaced | ( | Index | size, |
const Scalar & | low, | ||
const Scalar & | high | ||
) | [static] |
Sets a linearly space vector.
The function generates 'size' equally spaced values in the closed interval [low,high].
Example:
cout << VectorXi::LinSpaced(4,7,10).transpose() << endl; cout << VectorXd::LinSpaced(5,0.0,1.0).transpose() << endl;
Output:
Definition at line 283 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE const DenseBase< Derived >::SequentialLinSpacedReturnType DenseBase< Derived >::LinSpaced | ( | Sequential_t | , |
const Scalar & | low, | ||
const Scalar & | high | ||
) | [static] |
Sets a linearly space vector.
The function generates 'size' equally spaced values in the closed interval [low,high]. This particular version of LinSpaced() uses sequential access, i.e. vector access is assumed to be a(0), a(1), ..., a(size). This assumption allows for better vectorization and yields faster code than the random access version.
Example:
cout << VectorXi::LinSpaced(Sequential,4,7,10).transpose() << endl; cout << VectorXd::LinSpaced(Sequential,5,0.0,1.0).transpose() << endl;
Output:
Definition at line 262 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE const DenseBase< Derived >::RandomAccessLinSpacedReturnType DenseBase< Derived >::LinSpaced | ( | const Scalar & | low, |
const Scalar & | high | ||
) | [static] |
Sets a linearly space vector.
The function generates 'size' equally spaced values in the closed interval [low,high].
Example:
cout << VectorXi::LinSpaced(4,7,10).transpose() << endl; cout << VectorXd::LinSpaced(5,0.0,1.0).transpose() << endl;
Output:
Definition at line 295 of file CwiseNullaryOp.h.
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, and MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >.
EIGEN_STRONG_INLINE internal::traits< Derived >::Scalar DenseBase< Derived >::maxCoeff | ( | ) | const |
internal::traits< Derived >::Scalar DenseBase< Derived >::maxCoeff | ( | IndexType * | row, |
IndexType * | col | ||
) | const |
internal::traits< Derived >::Scalar DenseBase< Derived >::maxCoeff | ( | IndexType * | index | ) | const |
EIGEN_STRONG_INLINE internal::traits< Derived >::Scalar DenseBase< Derived >::mean | ( | ) | const |
ColsBlockXpr DenseBase< Derived >::middleCols | ( | Index | startCol, |
Index | numCols | ||
) | [inline] |
startCol | the index of the first column in the block |
numCols | the number of columns in the block |
Example:
#include <Eigen/Core> #include <iostream> using namespace Eigen; using namespace std; int main(void) { int const N = 5; MatrixXi A(N,N); A.setRandom(); cout << "A =\n" << A << '\n' << endl; cout << "A(1..3,:) =\n" << A.middleCols(1,3) << endl; return 0; }
Output:
Definition at line 497 of file DenseBase.h.
ConstColsBlockXpr DenseBase< Derived >::middleCols | ( | Index | startCol, |
Index | numCols | ||
) | const [inline] |
This is the const version of middleCols(Index,Index).
Definition at line 503 of file DenseBase.h.
NColsBlockXpr<N>::Type DenseBase< Derived >::middleCols | ( | Index | startCol | ) | [inline] |
N | the number of columns in the block |
startCol | the index of the first column in the block |
Example:
#include <Eigen/Core> #include <iostream> using namespace Eigen; using namespace std; int main(void) { int const N = 5; MatrixXi A(N,N); A.setRandom(); cout << "A =\n" << A << '\n' << endl; cout << "A(:,1..3) =\n" << A.middleCols<3>(1) << endl; return 0; }
Output:
Definition at line 519 of file DenseBase.h.
ConstNColsBlockXpr<N>::Type DenseBase< Derived >::middleCols | ( | Index | startCol | ) | const [inline] |
This is the const version of middleCols<int>().
Definition at line 526 of file DenseBase.h.
RowsBlockXpr DenseBase< Derived >::middleRows | ( | Index | startRow, |
Index | numRows | ||
) | [inline] |
startRow | the index of the first row in the block |
numRows | the number of rows in the block |
Example:
#include <Eigen/Core> #include <iostream> using namespace Eigen; using namespace std; int main(void) { int const N = 5; MatrixXi A(N,N); A.setRandom(); cout << "A =\n" << A << '\n' << endl; cout << "A(2..3,:) =\n" << A.middleRows(2,2) << endl; return 0; }
Output:
Definition at line 363 of file DenseBase.h.
ConstRowsBlockXpr DenseBase< Derived >::middleRows | ( | Index | startRow, |
Index | numRows | ||
) | const [inline] |
This is the const version of middleRows(Index,Index).
Definition at line 369 of file DenseBase.h.
NRowsBlockXpr<N>::Type DenseBase< Derived >::middleRows | ( | Index | startRow | ) | [inline] |
N | the number of rows in the block |
startRow | the index of the first row in the block |
Example:
#include <Eigen/Core> #include <iostream> using namespace Eigen; using namespace std; int main(void) { int const N = 5; MatrixXi A(N,N); A.setRandom(); cout << "A =\n" << A << '\n' << endl; cout << "A(1..3,:) =\n" << A.middleRows<3>(1) << endl; return 0; }
Output:
Definition at line 385 of file DenseBase.h.
ConstNRowsBlockXpr<N>::Type DenseBase< Derived >::middleRows | ( | Index | startRow | ) | const [inline] |
This is the const version of middleRows<int>().
Definition at line 392 of file DenseBase.h.
EIGEN_STRONG_INLINE internal::traits< Derived >::Scalar DenseBase< Derived >::minCoeff | ( | ) | const |
internal::traits< Derived >::Scalar DenseBase< Derived >::minCoeff | ( | IndexType * | row, |
IndexType * | col | ||
) | const |
internal::traits< Derived >::Scalar DenseBase< Derived >::minCoeff | ( | IndexType * | index | ) | const |
const NestByValue< Derived > DenseBase< Derived >::nestByValue | ( | ) | const [inline] |
Definition at line 117 of file NestByValue.h.
Definition at line 188 of file DenseBase.h.
EIGEN_STRONG_INLINE const CwiseNullaryOp< CustomNullaryOp, Derived > DenseBase< Derived >::NullaryExpr | ( | Index | rows, |
Index | cols, | ||
const CustomNullaryOp & | func | ||
) | [static] |
The parameters rows and cols are the number of rows and of columns of the returned matrix. Must be compatible with this MatrixBase type.
This variant is meant to be used for dynamic-size matrix types. For fixed-size types, it is redundant to pass rows and cols as arguments, so Zero() should be used instead.
The template parameter CustomNullaryOp is the type of the functor.
Definition at line 127 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE const CwiseNullaryOp< CustomNullaryOp, Derived > DenseBase< Derived >::NullaryExpr | ( | Index | size, |
const CustomNullaryOp & | func | ||
) | [static] |
The parameter size is the size of the returned vector. Must be compatible with this MatrixBase type.
This variant is meant to be used for dynamic-size vector types. For fixed-size types, it is redundant to pass size as argument, so Zero() should be used instead.
The template parameter CustomNullaryOp is the type of the functor.
Definition at line 150 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE const CwiseNullaryOp< CustomNullaryOp, Derived > DenseBase< Derived >::NullaryExpr | ( | const CustomNullaryOp & | func | ) | [static] |
This variant is only for fixed-size DenseBase types. For dynamic-size types, you need to use the variants taking size arguments.
The template parameter CustomNullaryOp is the type of the functor.
Definition at line 169 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE const DenseBase< Derived >::ConstantReturnType DenseBase< Derived >::Ones | ( | Index | rows, |
Index | cols | ||
) | [static] |
The parameters rows and cols are the number of rows and of columns of the returned matrix. Must be compatible with this MatrixBase type.
This variant is meant to be used for dynamic-size matrix types. For fixed-size types, it is redundant to pass rows and cols as arguments, so Ones() should be used instead.
Example:
cout << MatrixXi::Ones(2,3) << endl;
Output:
Definition at line 546 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE const DenseBase< Derived >::ConstantReturnType DenseBase< Derived >::Ones | ( | Index | size | ) | [static] |
The parameter size is the size of the returned vector. Must be compatible with this MatrixBase type.
This variant is meant to be used for dynamic-size vector types. For fixed-size types, it is redundant to pass size as argument, so Ones() should be used instead.
Example:
cout << 6 * RowVectorXi::Ones(4) << endl; cout << VectorXf::Ones(2) << endl;
Output:
Definition at line 569 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE const DenseBase< Derived >::ConstantReturnType DenseBase< Derived >::Ones | ( | ) | [static] |
This variant is only for fixed-size MatrixBase types. For dynamic-size types, you need to use the variants taking size arguments.
Example:
cout << Matrix2d::Ones() << endl; cout << 6 * RowVector4i::Ones() << endl;
Output:
Definition at line 586 of file CwiseNullaryOp.h.
Derived & DenseBase< Derived >::operator*= | ( | const Scalar & | other | ) | [inline] |
Definition at line 175 of file SelfCwiseBinaryOp.h.
Derived & DenseBase< Derived >::operator+= | ( | const EigenBase< OtherDerived > & | other | ) |
Definition at line 129 of file EigenBase.h.
Derived & DenseBase< Derived >::operator-= | ( | const EigenBase< OtherDerived > & | other | ) |
Definition at line 137 of file EigenBase.h.
Derived & DenseBase< Derived >::operator/= | ( | const Scalar & | other | ) | [inline] |
Definition at line 184 of file SelfCwiseBinaryOp.h.
CommaInitializer< Derived > DenseBase< Derived >::operator<< | ( | const Scalar & | s | ) | [inline] |
Convenient operator to set the coefficients of a matrix.
The coefficients must be provided in a row major order and exactly match the size of the matrix. Otherwise an assertion is raised.
Example:
Matrix3i m1; m1 << 1, 2, 3, 4, 5, 6, 7, 8, 9; cout << m1 << endl << endl; Matrix3i m2 = Matrix3i::Identity(); m2.block(0,0, 2,2) << 10, 11, 12, 13; cout << m2 << endl << endl; Vector2i v1; v1 << 14, 15; m2 << v1.transpose(), 16, v1, m1.block(1,1,2,2); cout << m2 << endl;
Output:
Definition at line 136 of file CommaInitializer.h.
CommaInitializer< Derived > DenseBase< Derived >::operator<< | ( | const DenseBase< OtherDerived > & | other | ) | [inline] |
Definition at line 145 of file CommaInitializer.h.
EIGEN_STRONG_INLINE Derived & DenseBase< Derived >::operator= | ( | const DenseBase< OtherDerived > & | other | ) |
Copies other into *this.
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, and MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >.
EIGEN_STRONG_INLINE Derived & DenseBase< Derived >::operator= | ( | const DenseBase< Derived > & | other | ) |
Derived & DenseBase< Derived >::operator= | ( | const EigenBase< OtherDerived > & | other | ) |
Copies the generic expression other into *this.
The expression must provide a (templated) evalTo(Derived& dst) const function which does the actual job. In practice, this allows any user to write its own special matrix without having to modify MatrixBase
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, and MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >.
Definition at line 121 of file EigenBase.h.
Derived & DenseBase< Derived >::operator= | ( | const ReturnByValue< OtherDerived > & | func | ) |
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, and MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >.
Definition at line 93 of file ReturnByValue.h.
Definition at line 199 of file DenseBase.h.
EIGEN_STRONG_INLINE internal::traits< Derived >::Scalar DenseBase< Derived >::prod | ( | ) | const |
Example:
Matrix3d m = Matrix3d::Random(); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is the product of all the coefficients:" << endl << m.prod() << endl;
Output:
const CwiseNullaryOp< internal::scalar_random_op< typename internal::traits< Derived >::Scalar >, Derived > DenseBase< Derived >::Random | ( | Index | rows, |
Index | cols | ||
) | [inline, static] |
The parameters rows and cols are the number of rows and of columns of the returned matrix. Must be compatible with this MatrixBase type.
This variant is meant to be used for dynamic-size matrix types. For fixed-size types, it is redundant to pass rows and cols as arguments, so Random() should be used instead.
Example:
cout << MatrixXi::Random(2,3) << endl;
Output:
This expression has the "evaluate before nesting" flag so that it will be evaluated into a temporary matrix whenever it is nested in a larger expression. This prevents unexpected behavior with expressions involving random matrices.
const CwiseNullaryOp< internal::scalar_random_op< typename internal::traits< Derived >::Scalar >, Derived > DenseBase< Derived >::Random | ( | Index | size | ) | [inline, static] |
The parameter size is the size of the returned vector. Must be compatible with this MatrixBase type.
This variant is meant to be used for dynamic-size vector types. For fixed-size types, it is redundant to pass size as argument, so Random() should be used instead.
Example:
cout << VectorXi::Random(2) << endl;
Output:
This expression has the "evaluate before nesting" flag so that it will be evaluated into a temporary vector whenever it is nested in a larger expression. This prevents unexpected behavior with expressions involving random matrices.
const CwiseNullaryOp< internal::scalar_random_op< typename internal::traits< Derived >::Scalar >, Derived > DenseBase< Derived >::Random | ( | ) | [inline, static] |
This variant is only for fixed-size MatrixBase types. For dynamic-size types, you need to use the variants taking size arguments.
Example:
cout << 100 * Matrix2i::Random() << endl;
Output:
This expression has the "evaluate before nesting" flag so that it will be evaluated into a temporary matrix whenever it is nested in a larger expression. This prevents unexpected behavior with expressions involving random matrices.
const Replicate< Derived, RowFactor, ColFactor > DenseBase< Derived >::replicate | ( | ) | const [inline] |
*this
Example:
MatrixXi m = MatrixXi::Random(2,3); cout << "Here is the matrix m:" << endl << m << endl; cout << "m.replicate<3,2>() = ..." << endl; cout << m.replicate<3,2>() << endl;
Output:
Definition at line 143 of file Replicate.h.
const Replicate< Derived, Dynamic, Dynamic > DenseBase< Derived >::replicate | ( | Index | rowFactor, |
Index | colFactor | ||
) | const [inline] |
*this
Example:
Vector3i v = Vector3i::Random(); cout << "Here is the vector v:" << endl << v << endl; cout << "v.replicate(2,5) = ..." << endl; cout << v.replicate(2,5) << endl;
Output:
Definition at line 158 of file Replicate.h.
Only plain matrices/arrays, not expressions, may be resized; therefore the only useful resize methods are Matrix::resize() and Array::resize(). The present method only asserts that the new size equals the old size, and does nothing else.
Definition at line 220 of file DenseBase.h.
Only plain matrices/arrays, not expressions, may be resized; therefore the only useful resize methods are Matrix::resize() and Array::resize(). The present method only asserts that the new size equals the old size, and does nothing else.
Definition at line 230 of file DenseBase.h.
DenseBase< Derived >::ReverseReturnType DenseBase< Derived >::reverse | ( | ) | [inline] |
Example:
MatrixXi m = MatrixXi::Random(3,4); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is the reverse of m:" << endl << m.reverse() << endl; cout << "Here is the coefficient (1,0) in the reverse of m:" << endl << m.reverse()(1,0) << endl; cout << "Let us overwrite this coefficient with the value 4." << endl; m.reverse()(1,0) = 4; cout << "Now the matrix m is:" << endl << m << endl;
Output:
const DenseBase< Derived >::ConstReverseReturnType DenseBase< Derived >::reverse | ( | ) | const [inline] |
void DenseBase< Derived >::reverseInPlace | ( | ) | [inline] |
This is the "in place" version of reverse: it reverses *this
.
In most cases it is probably better to simply use the reversed expression of a matrix. However, when reversing the matrix data itself is really needed, then this "in-place" version is probably the right choice because it provides the following additional features:
m = m.reverse().eval();
ColsBlockXpr DenseBase< Derived >::rightCols | ( | Index | n | ) | [inline] |
n | the number of columns in the block |
Example:
Array44i a = Array44i::Random(); cout << "Here is the array a:" << endl << a << endl; cout << "Here is a.rightCols(2):" << endl; cout << a.rightCols(2) << endl; a.rightCols(2).setZero(); cout << "Now the array a is:" << endl << a << endl;
Output:
Definition at line 452 of file DenseBase.h.
ConstColsBlockXpr DenseBase< Derived >::rightCols | ( | Index | n | ) | const [inline] |
This is the const version of rightCols(Index).
Definition at line 458 of file DenseBase.h.
NColsBlockXpr<N>::Type DenseBase< Derived >::rightCols | ( | ) | [inline] |
N | the number of columns in the block |
Example:
Array44i a = Array44i::Random(); cout << "Here is the array a:" << endl << a << endl; cout << "Here is a.rightCols<2>():" << endl; cout << a.rightCols<2>() << endl; a.rightCols<2>().setZero(); cout << "Now the array a is:" << endl << a << endl;
Output:
Definition at line 473 of file DenseBase.h.
ConstNColsBlockXpr<N>::Type DenseBase< Derived >::rightCols | ( | ) | const [inline] |
This is the const version of rightCols<int>().
Definition at line 480 of file DenseBase.h.
Example:
Matrix3d m = Matrix3d::Identity(); m.row(1) = Vector3d(4,5,6); cout << m << endl;
Output:
Definition at line 585 of file DenseBase.h.
ConstRowXpr DenseBase< Derived >::row | ( | Index | i | ) | const [inline] |
This is the const version of row().
Definition at line 591 of file DenseBase.h.
const DenseBase< Derived >::ConstRowwiseReturnType DenseBase< Derived >::rowwise | ( | ) | const [inline] |
Example:
Matrix3d m = Matrix3d::Random(); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is the sum of each row:" << endl << m.rowwise().sum() << endl; cout << "Here is the maximum absolute value of each row:" << endl << m.cwiseAbs().rowwise().maxCoeff() << endl;
Output:
Definition at line 541 of file VectorwiseOp.h.
DenseBase< Derived >::RowwiseReturnType DenseBase< Derived >::rowwise | ( | ) | [inline] |
Definition at line 552 of file VectorwiseOp.h.
DenseBase< Derived >::SegmentReturnType DenseBase< Derived >::segment | ( | Index | start, |
Index | size | ||
) | [inline] |
start | the first coefficient in the segment |
size | the number of coefficients in the segment |
Example:
RowVector4i v = RowVector4i::Random(); cout << "Here is the vector v:" << endl << v << endl; cout << "Here is v.segment(1, 2):" << endl << v.segment(1, 2) << endl; v.segment(1, 2).setZero(); cout << "Now the vector v is:" << endl << v << endl;
Output:
Definition at line 124 of file Core/VectorBlock.h.
DenseBase< Derived >::ConstSegmentReturnType DenseBase< Derived >::segment | ( | Index | start, |
Index | size | ||
) | const [inline] |
This is the const version of segment(Index,Index).
Definition at line 133 of file Core/VectorBlock.h.
DenseBase< Derived >::template FixedSegmentReturnType< Size >::Type DenseBase< Derived >::segment | ( | Index | start | ) | [inline] |
*this
The template parameter Size is the number of coefficients in the block
start | the index of the first element of the sub-vector |
Example:
RowVector4i v = RowVector4i::Random(); cout << "Here is the vector v:" << endl << v << endl; cout << "Here is v.segment<2>(1):" << endl << v.segment<2>(1) << endl; v.segment<2>(2).setZero(); cout << "Now the vector v is:" << endl << v << endl;
Output:
Definition at line 219 of file Core/VectorBlock.h.
DenseBase< Derived >::template ConstFixedSegmentReturnType< Size >::Type DenseBase< Derived >::segment | ( | Index | start | ) | const [inline] |
This is the const version of segment<int>(Index).
Definition at line 229 of file Core/VectorBlock.h.
const Select< Derived, ThenDerived, ElseDerived > DenseBase< Derived >::select | ( | const DenseBase< ThenDerived > & | thenMatrix, |
const DenseBase< ElseDerived > & | elseMatrix | ||
) | const [inline] |
const Select< Derived, ThenDerived, typename ThenDerived::ConstantReturnType > DenseBase< Derived >::select | ( | const DenseBase< ThenDerived > & | thenMatrix, |
typename ThenDerived::Scalar | elseScalar | ||
) | const [inline] |
Version of DenseBase::select(const DenseBase&, const DenseBase&) with the else expression being a scalar value.
const Select< Derived, typename ElseDerived::ConstantReturnType, ElseDerived > DenseBase< Derived >::select | ( | typename ElseDerived::Scalar | thenScalar, |
const DenseBase< ElseDerived > & | elseMatrix | ||
) | const [inline] |
Version of DenseBase::select(const DenseBase&, const DenseBase&) with the then expression being a scalar value.
EIGEN_STRONG_INLINE Derived & DenseBase< Derived >::setConstant | ( | const Scalar & | value | ) |
Sets all coefficients in this expression to value.
Definition at line 339 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE Derived & DenseBase< Derived >::setLinSpaced | ( | Index | size, |
const Scalar & | low, | ||
const Scalar & | high | ||
) |
Sets a linearly space vector.
The function generates 'size' equally spaced values in the closed interval [low,high].
Example:
VectorXf v; v.setLinSpaced(5,0.5f,1.5f).transpose(); cout << v << endl;
Output:
Definition at line 393 of file CwiseNullaryOp.h.
Derived& DenseBase< Derived >::setLinSpaced | ( | const Scalar & | low, |
const Scalar & | high | ||
) |
EIGEN_STRONG_INLINE Derived & DenseBase< Derived >::setOnes | ( | ) |
Sets all coefficients in this expression to one.
Example:
Matrix4i m = Matrix4i::Random(); m.row(1).setOnes(); cout << m << endl;
Output:
Definition at line 614 of file CwiseNullaryOp.h.
Sets all coefficients in this expression to random values.
Example:
Matrix4i m = Matrix4i::Zero(); m.col(1).setRandom(); cout << m << endl;
Output:
EIGEN_STRONG_INLINE Derived & DenseBase< Derived >::setZero | ( | ) |
Sets all coefficients in this expression to zero.
Example:
Matrix4i m = Matrix4i::Random(); m.row(1).setZero(); cout << m << endl;
Output:
Definition at line 488 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE internal::traits< Derived >::Scalar DenseBase< Derived >::sum | ( | ) | const |
void DenseBase< Derived >::swap | ( | const DenseBase< OtherDerived > & | other, |
int | = OtherDerived::ThisConstantIsPrivateInPlainObjectBase |
||
) | [inline] |
swaps *this with the expression other.
Definition at line 396 of file DenseBase.h.
void DenseBase< Derived >::swap | ( | PlainObjectBase< OtherDerived > & | other | ) | [inline] |
swaps *this with the matrix or array other.
Definition at line 406 of file DenseBase.h.
DenseBase< Derived >::SegmentReturnType DenseBase< Derived >::tail | ( | Index | size | ) | [inline] |
size | the number of coefficients in the block |
Example:
RowVector4i v = RowVector4i::Random(); cout << "Here is the vector v:" << endl << v << endl; cout << "Here is v.tail(2):" << endl << v.tail(2) << endl; v.tail(2).setZero(); cout << "Now the vector v is:" << endl << v << endl;
Output:
Definition at line 188 of file Core/VectorBlock.h.
DenseBase< Derived >::ConstSegmentReturnType DenseBase< Derived >::tail | ( | Index | size | ) | const [inline] |
This is the const version of tail(Index).
Definition at line 197 of file Core/VectorBlock.h.
DenseBase< Derived >::template FixedSegmentReturnType< Size >::Type DenseBase< Derived >::tail | ( | ) | [inline] |
The template parameter Size is the number of coefficients in the block
Example:
RowVector4i v = RowVector4i::Random(); cout << "Here is the vector v:" << endl << v << endl; cout << "Here is v.tail(2):" << endl << v.tail<2>() << endl; v.tail<2>().setZero(); cout << "Now the vector v is:" << endl << v << endl;
Output:
Definition at line 279 of file Core/VectorBlock.h.
DenseBase< Derived >::template ConstFixedSegmentReturnType< Size >::Type DenseBase< Derived >::tail | ( | ) | const [inline] |
This is the const version of tail<int>.
Definition at line 289 of file Core/VectorBlock.h.
Block<Derived> DenseBase< Derived >::topLeftCorner | ( | Index | cRows, |
Index | cCols | ||
) | [inline] |
cRows | the number of rows in the corner |
cCols | the number of columns in the corner |
Example:
Matrix4i m = Matrix4i::Random(); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is m.topLeftCorner(2, 2):" << endl; cout << m.topLeftCorner(2, 2) << endl; m.topLeftCorner(2, 2).setZero(); cout << "Now the matrix m is:" << endl << m << endl;
Output:
Definition at line 140 of file DenseBase.h.
const Block<const Derived> DenseBase< Derived >::topLeftCorner | ( | Index | cRows, |
Index | cCols | ||
) | const [inline] |
This is the const version of topLeftCorner(Index, Index).
Definition at line 146 of file DenseBase.h.
Block<Derived, CRows, CCols> DenseBase< Derived >::topLeftCorner | ( | ) | [inline] |
The template parameters CRows and CCols are the number of rows and columns in the corner.
Example:
Matrix4i m = Matrix4i::Random(); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is m.topLeftCorner<2,2>():" << endl; cout << m.topLeftCorner<2,2>() << endl; m.topLeftCorner<2,2>().setZero(); cout << "Now the matrix m is:" << endl << m << endl;
Output:
Definition at line 161 of file DenseBase.h.
const Block<const Derived, CRows, CCols> DenseBase< Derived >::topLeftCorner | ( | ) | const [inline] |
This is the const version of topLeftCorner<int, int>().
Definition at line 168 of file DenseBase.h.
Block<Derived> DenseBase< Derived >::topRightCorner | ( | Index | cRows, |
Index | cCols | ||
) | [inline] |
cRows | the number of rows in the corner |
cCols | the number of columns in the corner |
Example:
Matrix4i m = Matrix4i::Random(); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is m.topRightCorner(2, 2):" << endl; cout << m.topRightCorner(2, 2) << endl; m.topRightCorner(2, 2).setZero(); cout << "Now the matrix m is:" << endl << m << endl;
Output:
Definition at line 94 of file DenseBase.h.
const Block<const Derived> DenseBase< Derived >::topRightCorner | ( | Index | cRows, |
Index | cCols | ||
) | const [inline] |
This is the const version of topRightCorner(Index, Index).
Definition at line 100 of file DenseBase.h.
Block<Derived, CRows, CCols> DenseBase< Derived >::topRightCorner | ( | ) | [inline] |
The template parameters CRows and CCols are the number of rows and columns in the corner.
Example:
Matrix4i m = Matrix4i::Random(); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is m.topRightCorner<2,2>():" << endl; cout << m.topRightCorner<2,2>() << endl; m.topRightCorner<2,2>().setZero(); cout << "Now the matrix m is:" << endl << m << endl;
Output:
Definition at line 115 of file DenseBase.h.
const Block<const Derived, CRows, CCols> DenseBase< Derived >::topRightCorner | ( | ) | const [inline] |
This is the const version of topRightCorner<int, int>().
Definition at line 122 of file DenseBase.h.
RowsBlockXpr DenseBase< Derived >::topRows | ( | Index | n | ) | [inline] |
n | the number of rows in the block |
Example:
Array44i a = Array44i::Random(); cout << "Here is the array a:" << endl << a << endl; cout << "Here is a.topRows(2):" << endl; cout << a.topRows(2) << endl; a.topRows(2).setZero(); cout << "Now the array a is:" << endl << a << endl;
Output:
Definition at line 274 of file DenseBase.h.
ConstRowsBlockXpr DenseBase< Derived >::topRows | ( | Index | n | ) | const [inline] |
This is the const version of topRows(Index).
Definition at line 280 of file DenseBase.h.
NRowsBlockXpr<N>::Type DenseBase< Derived >::topRows | ( | ) | [inline] |
N | the number of rows in the block |
Example:
Array44i a = Array44i::Random(); cout << "Here is the array a:" << endl << a << endl; cout << "Here is a.topRows<2>():" << endl; cout << a.topRows<2>() << endl; a.topRows<2>().setZero(); cout << "Now the array a is:" << endl << a << endl;
Output:
Definition at line 295 of file DenseBase.h.
ConstNRowsBlockXpr<N>::Type DenseBase< Derived >::topRows | ( | ) | const [inline] |
This is the const version of topRows<int>().
Definition at line 302 of file DenseBase.h.
Reimplemented in MatrixBase< Derived >, MatrixBase< TriangularProduct< Mode, false, Lhs, true, Rhs, false > >, MatrixBase< DenseTimeSparseSelfAdjointProduct< Lhs, Rhs, UpLo > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, 0, true > >, MatrixBase< ScaledProduct< NestedProduct > >, MatrixBase< MatrixWrapper< ExpressionType > >, MatrixBase< Flagged< ExpressionType, Added, Removed > >, MatrixBase< SelfadjointProductMatrix< Lhs, LhsMode, false, Rhs, RhsMode, false > >, MatrixBase< GeneralProduct< Lhs, Rhs, OuterProduct > >, MatrixBase< SparseSelfAdjointTimeDenseProduct< Lhs, Rhs, UpLo > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemmProduct > >, MatrixBase< TriangularProduct< Mode, LhsIsTriangular, Lhs, false, Rhs, false > >, MatrixBase< SelfadjointProductMatrix< Lhs, 0, true, Rhs, RhsMode, false > >, MatrixBase< Homogeneous< MatrixType, _Direction > >, MatrixBase< SparseTimeDenseProduct< Lhs, Rhs > >, MatrixBase< DenseTimeSparseProduct< Lhs, Rhs > >, MatrixBase< CoeffBasedProduct< LhsNested, RhsNested, NestingFlags > >, MatrixBase< Minor< MatrixType > >, MatrixBase< GeneralProduct< Lhs, Rhs, GemvProduct > >, MatrixBase< DiagonalProduct< MatrixType, DiagonalType, ProductOrder > >, and MatrixBase< TriangularProduct< Mode, true, Lhs, false, Rhs, true > >.
Example:
Matrix2i m = Matrix2i::Random(); cout << "Here is the matrix m:" << endl << m << endl; cout << "Here is the transpose of m:" << endl << m.transpose() << endl; cout << "Here is the coefficient (1,0) in the transpose of m:" << endl << m.transpose()(1,0) << endl; cout << "Let us overwrite this coefficient with the value 0." << endl; m.transpose()(1,0) = 0; cout << "Now the matrix m is:" << endl << m << endl;
Output:
m = m.transpose(); // bug!!! caused by aliasing effect
m.transposeInPlace();
m = m.transpose().eval();
Definition at line 211 of file Transpose.h.
const DenseBase< Derived >::ConstTransposeReturnType DenseBase< Derived >::transpose | ( | ) | const [inline] |
This is the const version of transpose().
Make sure you read the warning for transpose() !
Definition at line 223 of file Transpose.h.
void DenseBase< Derived >::transposeInPlace | ( | ) | [inline] |
This is the "in place" version of transpose(): it replaces *this
by its own transpose. Thus, doing
m.transposeInPlace();
has the same effect on m as doing
m = m.transpose().eval();
and is faster and also safer because in the latter line of code, forgetting the eval() results in a bug caused by aliasing.
Notice however that this method is only useful if you want to replace a matrix by its own transpose. If you just need the transpose of a matrix, use transpose().
*this
must be a resizable matrix.Definition at line 303 of file Transpose.h.
CoeffReturnType DenseBase< Derived >::value | ( | ) | const [inline] |
Definition at line 446 of file DenseBase.h.
void DenseBase< Derived >::visit | ( | Visitor & | visitor | ) | const |
Applies the visitor visitor to the whole coefficients of the matrix or vector.
The template parameter Visitor is the type of the visitor and provides the following interface:
struct MyVisitor { // called for the first coefficient void init(const Scalar& value, Index i, Index j); // called for all other coefficients void operator() (const Scalar& value, Index i, Index j); };
EIGEN_STRONG_INLINE const DenseBase< Derived >::ConstantReturnType DenseBase< Derived >::Zero | ( | Index | rows, |
Index | cols | ||
) | [static] |
The parameters rows and cols are the number of rows and of columns of the returned matrix. Must be compatible with this MatrixBase type.
This variant is meant to be used for dynamic-size matrix types. For fixed-size types, it is redundant to pass rows and cols as arguments, so Zero() should be used instead.
Example:
cout << MatrixXi::Zero(2,3) << endl;
Output:
Definition at line 417 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE const DenseBase< Derived >::ConstantReturnType DenseBase< Derived >::Zero | ( | Index | size | ) | [static] |
The parameter size is the size of the returned vector. Must be compatible with this MatrixBase type.
This variant is meant to be used for dynamic-size vector types. For fixed-size types, it is redundant to pass size as argument, so Zero() should be used instead.
Example:
cout << RowVectorXi::Zero(4) << endl; cout << VectorXf::Zero(2) << endl;
Output:
Definition at line 440 of file CwiseNullaryOp.h.
EIGEN_STRONG_INLINE const DenseBase< Derived >::ConstantReturnType DenseBase< Derived >::Zero | ( | ) | [static] |
This variant is only for fixed-size MatrixBase types. For dynamic-size types, you need to use the variants taking size arguments.
Example:
cout << Matrix2d::Zero() << endl; cout << RowVector4i::Zero() << endl;
Output:
Definition at line 457 of file CwiseNullaryOp.h.
std::ostream & operator<< | ( | std::ostream & | s, |
const DenseBase< Derived > & | m | ||
) | [related] |
Outputs the matrix, to the given stream.
If you wish to print the matrix with a format different than the default, use DenseBase::format().
It is also possible to change the default format by defining EIGEN_DEFAULT_IO_FORMAT before including Eigen headers. If not defined, this will automatically be defined to Eigen::IOFormat(), that is the Eigen::IOFormat with default parameters.