Logo Search packages:      
Sourcecode: feel++ version File versions  Download package

Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Friends | Related Functions

MatrixBase< Derived > Class Template Reference

Base class for all dense matrices, vectors, and expressions. More...

#include <MatrixBase.h>

Inheritance diagram for MatrixBase< Derived >:
Inheritance graph
[legend]
Collaboration diagram for MatrixBase< Derived >:
Collaboration graph
[legend]

List of all members.

Public Types

enum  { SizeMinusOne = SizeAtCompileTime==Dynamic ? Dynamic : SizeAtCompileTime-1 }
enum  {
  RowsAtCompileTime = ei_traits<Derived>::RowsAtCompileTime, ColsAtCompileTime = ei_traits<Derived>::ColsAtCompileTime, SizeAtCompileTime, MaxRowsAtCompileTime = ei_traits<Derived>::MaxRowsAtCompileTime,
  MaxColsAtCompileTime = ei_traits<Derived>::MaxColsAtCompileTime, MaxSizeAtCompileTime, IsVectorAtCompileTime, Flags = ei_traits<Derived>::Flags,
  IsRowMajor = int(Flags) & RowMajorBit, InnerSizeAtCompileTime, CoeffReadCost = ei_traits<Derived>::CoeffReadCost, InnerStrideAtCompileTime = ei_inner_stride_at_compile_time<Derived>::ret,
  OuterStrideAtCompileTime = ei_outer_stride_at_compile_time<Derived>::ret
}
typedef ei_meta_if< NumTraits
< Scalar >::IsComplex,
CwiseUnaryOp
< ei_scalar_conjugate_op
< Scalar >, Eigen::Transpose
< Derived > >, Transpose
< Derived > >::ret 
AdjointReturnType
typedef DenseBase< Derived > Base
typedef Block< CwiseNullaryOp
< ei_scalar_identity_op
< Scalar >, SquareMatrixType >
, ei_traits< Derived >
::RowsAtCompileTime, ei_traits
< Derived >::ColsAtCompileTime > 
BasisReturnType
typedef Base::CoeffReturnType CoeffReturnType
typedef Block< Derived,
ei_traits< Derived >
::RowsAtCompileTime, Dynamic,!IsRowMajor > 
ColsBlockXpr
typedef Base::ColXpr ColXpr
typedef ei_meta_if< NumTraits
< Scalar >::IsComplex, const
CwiseUnaryOp
< ei_scalar_conjugate_op
< Scalar >, Derived >, const
Derived & >::ret 
ConjugateReturnType
typedef CwiseNullaryOp
< ei_scalar_constant_op
< Scalar >, Derived > 
ConstantReturnType
typedef Matrix< std::complex
< RealScalar >, ei_traits
< Derived >::ColsAtCompileTime,
1, ColMajor > 
EigenvaluesReturnType
typedef CwiseUnaryOp
< ei_scalar_quotient1_op
< typename ei_traits< Derived >
::Scalar >, StartMinusOne
HNormalizedReturnType
typedef Homogeneous< Derived,
MatrixBase< Derived >
::ColsAtCompileTime==1?Vertical:Horizontal > 
HomogeneousReturnType
typedef CwiseNullaryOp
< ei_scalar_identity_op
< Scalar >, Derived > 
IdentityReturnType
typedef CwiseUnaryOp
< ei_scalar_imag_op< Scalar >
, Derived > 
ImagReturnType
typedef ei_traits< Derived >::Index Index
typedef CwiseUnaryView
< ei_scalar_imag_ref_op
< Scalar >, Derived > 
NonConstImagReturnType
typedef ei_meta_if< NumTraits
< Scalar >::IsComplex,
CwiseUnaryView
< ei_scalar_real_ref_op
< Scalar >, Derived >, Derived & >
::ret 
NonConstRealReturnType
typedef ei_packet_traits
< Scalar >::type 
PacketScalar
typedef Matrix< typename
ei_traits< Derived >::Scalar,
ei_traits< Derived >
::RowsAtCompileTime, ei_traits
< Derived >::ColsAtCompileTime,
AutoAlign|(ei_traits< Derived >
::Flags &RowMajorBit?RowMajor:ColMajor),
ei_traits< Derived >
::MaxRowsAtCompileTime,
ei_traits< Derived >
::MaxColsAtCompileTime > 
PlainObject
 The plain matrix type corresponding to this expression.
typedef CwiseNullaryOp
< ei_linspaced_op< Scalar,
true >, Derived > 
RandomAccessLinSpacedReturnType
typedef ei_meta_if< NumTraits
< Scalar >::IsComplex, const
CwiseUnaryOp
< ei_scalar_real_op< Scalar >
, Derived >, const Derived & >
::ret 
RealReturnType
typedef NumTraits< Scalar >::Real RealScalar
typedef Block< Derived,
Dynamic, ei_traits< Derived >
::ColsAtCompileTime,
IsRowMajor > 
RowsBlockXpr
typedef Base::RowXpr RowXpr
typedef ei_traits< Derived >
::Scalar 
Scalar
typedef CwiseUnaryOp
< ei_scalar_multiple_op
< Scalar >, Derived > 
ScalarMultipleReturnType
typedef CwiseUnaryOp
< ei_scalar_quotient1_op
< Scalar >, Derived > 
ScalarQuotient1ReturnType
typedef CwiseNullaryOp
< ei_linspaced_op< Scalar,
false >, Derived > 
SequentialLinSpacedReturnType
typedef Matrix< Scalar,
EIGEN_SIZE_MAX(RowsAtCompileTime,
ColsAtCompileTime),
EIGEN_SIZE_MAX(RowsAtCompileTime,
ColsAtCompileTime)> 
SquareMatrixType
typedef Block< Derived,
ei_traits< Derived >
::ColsAtCompileTime==1?SizeMinusOne:1,
ei_traits< Derived >
::ColsAtCompileTime==1?1:SizeMinusOne > 
StartMinusOne
typedef ei_stem_function
< Scalar >::type 
StemFunction
typedef MatrixBase StorageBaseType
typedef ei_traits< Derived >
::StorageKind 
StorageKind

Public Member Functions

const AdjointReturnType adjoint () const
void adjointInPlace ()
bool all (void) const
bool any (void) const
template<typename EssentialPart >
void applyHouseholderOnTheLeft (const EssentialPart &essential, const Scalar &tau, Scalar *workspace)
template<typename EssentialPart >
void applyHouseholderOnTheRight (const EssentialPart &essential, const Scalar &tau, Scalar *workspace)
template<typename OtherDerived >
void applyOnTheLeft (const EigenBase< OtherDerived > &other)
template<typename OtherScalar >
void applyOnTheLeft (Index p, Index q, const PlanarRotation< OtherScalar > &j)
template<typename OtherDerived >
void applyOnTheRight (const EigenBase< OtherDerived > &other)
template<typename OtherScalar >
void applyOnTheRight (Index p, Index q, const PlanarRotation< OtherScalar > &j)
const ArrayWrapper< Derived > array () const
ArrayWrapper< Derived > array ()
const DiagonalWrapper< Derived > asDiagonal () const
template<typename CustomBinaryOp , typename OtherDerived >
EIGEN_STRONG_INLINE const
CwiseBinaryOp< CustomBinaryOp,
Derived, OtherDerived > 
binaryExpr (const EIGEN_CURRENT_STORAGE_BASE_CLASS< OtherDerived > &other, const CustomBinaryOp &func=CustomBinaryOp()) const
Block< Derived > block (Index startRow, Index startCol, Index blockRows, Index blockCols)
const Block< 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< Derived,
BlockRows, BlockCols > 
block (Index startRow, Index startCol) const
RealScalar blueNorm () const
Block< Derived > bottomLeftCorner (Index cRows, Index cCols)
const Block< Derived > bottomLeftCorner (Index cRows, Index cCols) const
template<int CRows, int CCols>
Block< Derived, CRows, CCols > bottomLeftCorner ()
template<int CRows, int CCols>
const Block< Derived, CRows,
CCols > 
bottomLeftCorner () const
const Block< Derived > bottomRightCorner (Index cRows, Index cCols) const
template<int CRows, int CCols>
const Block< Derived, CRows,
CCols > 
bottomRightCorner () const
Block< Derived > bottomRightCorner (Index cRows, Index cCols)
template<int CRows, int CCols>
Block< Derived, CRows, CCols > bottomRightCorner ()
RowsBlockXpr bottomRows (Index n)
const RowsBlockXpr bottomRows (Index n) const
template<int N>
NRowsBlockXpr< N >::Type bottomRows ()
template<int N>
const NRowsBlockXpr< N >::Type bottomRows () const
template<typename NewType >
ei_cast_return_type< Derived,
const CwiseUnaryOp
< ei_scalar_cast_op< typename
ei_traits< Derived >::Scalar,
NewType >, Derived > >::type 
cast () const
ColXpr col (Index i)
const ColXpr col (Index i) const
const ColPivHouseholderQR
< PlainObject
colPivHouseholderQr () const
const VectorwiseOp< Derived,
Vertical > 
colwise () const
VectorwiseOp< Derived, Vertical > colwise ()
template<typename ResultType >
void computeInverseAndDetWithCheck (ResultType &inverse, typename ResultType::Scalar &determinant, bool &invertible, const RealScalar &absDeterminantThreshold=NumTraits< Scalar >::dummy_precision()) const
template<typename ResultType >
void computeInverseWithCheck (ResultType &inverse, bool &invertible, const RealScalar &absDeterminantThreshold=NumTraits< Scalar >::dummy_precision()) const
ConjugateReturnType conjugate () const
const
MatrixFunctionReturnValue
< Derived > 
cos () const
const
MatrixFunctionReturnValue
< Derived > 
cosh () const
Index count () const
template<typename OtherDerived >
PlainObject cross (const MatrixBase< OtherDerived > &other) const
template<typename OtherDerived >
PlainObject cross3 (const MatrixBase< OtherDerived > &other) const
EIGEN_STRONG_INLINE const
CwiseUnaryOp< ei_scalar_abs_op
< Scalar >, Derived > 
cwiseAbs () const
EIGEN_STRONG_INLINE const
CwiseUnaryOp
< ei_scalar_abs2_op< Scalar >
, Derived > 
cwiseAbs2 () const
const CwiseUnaryOp
< std::binder1st
< std::equal_to< Scalar >
>, Derived > 
cwiseEqual (const Scalar &s) const
template<typename OtherDerived >
const CwiseBinaryOp
< std::equal_to< Scalar >
, Derived, OtherDerived > 
cwiseEqual (const EIGEN_CURRENT_STORAGE_BASE_CLASS< OtherDerived > &other) const
const CwiseUnaryOp
< ei_scalar_inverse_op< Scalar >
, Derived > 
cwiseInverse () const
template<typename OtherDerived >
EIGEN_STRONG_INLINE const
CwiseBinaryOp
< ei_scalar_max_op< Scalar >
, Derived, OtherDerived > 
cwiseMax (const EIGEN_CURRENT_STORAGE_BASE_CLASS< OtherDerived > &other) const
template<typename OtherDerived >
EIGEN_STRONG_INLINE const
CwiseBinaryOp
< ei_scalar_min_op< Scalar >
, Derived, OtherDerived > 
cwiseMin (const EIGEN_CURRENT_STORAGE_BASE_CLASS< OtherDerived > &other) const
template<typename OtherDerived >
const CwiseBinaryOp
< std::not_equal_to< Scalar >
, Derived, OtherDerived > 
cwiseNotEqual (const EIGEN_CURRENT_STORAGE_BASE_CLASS< OtherDerived > &other) const
template<typename OtherDerived >
EIGEN_STRONG_INLINE const
CwiseBinaryOp
< ei_scalar_quotient_op
< Scalar >, Derived,
OtherDerived > 
cwiseQuotient (const EIGEN_CURRENT_STORAGE_BASE_CLASS< OtherDerived > &other) const
const CwiseUnaryOp
< ei_scalar_sqrt_op< Scalar >
, Derived > 
cwiseSqrt () const
Scalar determinant () const
Diagonal< Derived, 0 > diagonal ()
const Diagonal< Derived, 0 > diagonal () const
template<int Index>
Diagonal< Derived, Indexdiagonal ()
Diagonal< Derived, Dynamic > diagonal (Index index)
template<int Index>
const Diagonal< Derived, Indexdiagonal () const
const Diagonal< Derived, Dynamic > diagonal (Index index) const
Index diagonalSize () const
template<typename OtherDerived >
Scalar dot (const MatrixBase< OtherDerived > &other) const
template<typename OtherDerived >
EIGEN_STRONG_INLINE const EIGEN_CWISE_PRODUCT_RETURN_TYPE (Derived, OtherDerived) cwiseProduct(const EIGEN_CURRENT_STORAGE_BASE_CLASS< OtherDerived > &other) const
EigenvaluesReturnType eigenvalues () const
 Computes the eigenvalues of a matrix.
Matrix< Scalar, 3, 1 > eulerAngles (Index a0, Index a1, Index a2) const
EIGEN_STRONG_INLINE const
ei_eval< Derived >::type 
eval () const
template<typename Dest >
void evalTo (Dest &) const
const
MatrixExponentialReturnValue
< Derived > 
exp () 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>
ei_makeconst< typename
ei_meta_if< Enable,
ForceAlignedAccess< Derived >
, Derived & >::ret >::type 
forceAlignedAccessIf () const
template<bool Enable>
ei_meta_if< Enable,
ForceAlignedAccess< Derived >
, Derived & >::ret 
forceAlignedAccessIf ()
const WithFormat< Derived > format (const IOFormat &fmt) const
const FullPivHouseholderQR
< PlainObject
fullPivHouseholderQr () const
const FullPivLU< PlainObjectfullPivLu () const
VectorBlock< Derived > head (Index size)
const VectorBlock< Derived > head (Index size) const
template<int Size>
VectorBlock< Derived, Size > head (void)
template<int Size>
const VectorBlock< Derived, Size > head () const
const HNormalizedReturnType hnormalized () const
const HomogeneousReturnType homogeneous () const
const HouseholderQR< PlainObjecthouseholderQr () const
RealScalar hypotNorm () const
const ImagReturnType imag () const
NonConstImagReturnType imag ()
Index innerSize () const
const ei_inverse_impl< Derived > inverse () 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
bool isDiagonal (RealScalar prec=NumTraits< Scalar >::dummy_precision()) const
bool isIdentity (RealScalar prec=NumTraits< Scalar >::dummy_precision()) const
bool isLowerTriangular (RealScalar prec=NumTraits< Scalar >::dummy_precision()) 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
template<typename Derived >
bool isMuchSmallerThan (const typename NumTraits< Scalar >::Real &other, RealScalar prec) const
bool isOnes (RealScalar prec=NumTraits< Scalar >::dummy_precision()) const
template<typename OtherDerived >
bool isOrthogonal (const MatrixBase< OtherDerived > &other, RealScalar prec=NumTraits< Scalar >::dummy_precision()) const
bool isUnitary (RealScalar prec=NumTraits< Scalar >::dummy_precision()) const
bool isUpperTriangular (RealScalar prec=NumTraits< Scalar >::dummy_precision()) const
bool isZero (RealScalar prec=NumTraits< Scalar >::dummy_precision()) const
template<typename ProductDerived , typename Lhs , typename Rhs >
Derived & lazyAssign (const ProductBase< ProductDerived, Lhs, Rhs > &other)
template<typename OtherDerived >
Derived & lazyAssign (const DenseBase< OtherDerived > &other)
template<typename OtherDerived >
const LazyProductReturnType
< Derived, OtherDerived >
::Type 
lazyProduct (const MatrixBase< OtherDerived > &other) const
const LDLT< PlainObjectldlt () const
const ColsBlockXpr leftCols (Index n) const
ColsBlockXpr leftCols (Index n)
template<int N>
NColsBlockXpr< N >::Type leftCols ()
template<int N>
const NColsBlockXpr< N >::Type leftCols () const
const LLT< PlainObjectllt () const
template<int p>
RealScalar lpNorm () const
const PartialPivLU< PlainObjectlu () const
template<typename EssentialPart >
void makeHouseholder (EssentialPart &essential, Scalar &tau, RealScalar &beta) const
void makeHouseholderInPlace (Scalar &tau, RealScalar &beta)
const MatrixBase< Derived > & matrix () const
MatrixBase< Derived > & matrix ()
const
MatrixFunctionReturnValue
< Derived > 
matrixFunction (StemFunction f) const
ei_traits< Derived >::Scalar maxCoeff () const
ei_traits< Derived >::Scalar maxCoeff (Index *row, Index *col) const
ei_traits< Derived >::Scalar maxCoeff (Index *index) const
Scalar mean () const
template<int N>
NColsBlockXpr< N >::Type middleCols (Index startCol)
ColsBlockXpr middleCols (Index startCol, Index numCols)
template<int N>
const NColsBlockXpr< N >::Type middleCols (Index startCol) const
const ColsBlockXpr middleCols (Index startCol, Index numCols) const
RowsBlockXpr middleRows (Index startRow, Index numRows)
template<int N>
NRowsBlockXpr< N >::Type middleRows (Index startRow)
template<int N>
const NRowsBlockXpr< N >::Type middleRows (Index startRow) const
const RowsBlockXpr middleRows (Index startRow, Index numRows) const
ei_traits< Derived >::Scalar minCoeff (Index *index) const
ei_traits< Derived >::Scalar minCoeff () const
ei_traits< Derived >::Scalar minCoeff (Index *row, Index *col) const
const NestByValue< Derived > nestByValue () const
NoAlias< Derived,
Eigen::MatrixBase > 
noalias ()
Index nonZeros () const
RealScalar norm () const
void normalize ()
const PlainObject normalized () const
template<typename OtherDerived >
bool operator!= (const MatrixBase< OtherDerived > &other) const
template<typename OtherDerived >
const ProductReturnType
< Derived, OtherDerived >
::Type 
operator* (const MatrixBase< OtherDerived > &other) const
const CwiseUnaryOp
< ei_scalar_multiple2_op
< Scalar, std::complex< Scalar >
>, Derived > 
operator* (const std::complex< Scalar > &scalar) const
const ScalarMultipleReturnType operator* (const UniformScaling< Scalar > &s) const
void operator* () const
const ScalarMultipleReturnType operator* (const Scalar &scalar) const
template<typename DiagonalDerived >
const DiagonalProduct< Derived,
DiagonalDerived, OnTheRight > 
operator* (const DiagonalBase< DiagonalDerived > &diagonal) const
Derived & operator*= (const Scalar &other)
template<typename OtherDerived >
Derived & operator*= (const EigenBase< OtherDerived > &other)
template<typename OtherDerived >
Derived & operator+= (const EigenBase< OtherDerived > &other)
template<typename OtherDerived >
Derived & operator+= (const MatrixBase< OtherDerived > &other)
const CwiseUnaryOp
< ei_scalar_opposite_op
< typename ei_traits< Derived >
::Scalar >, Derived > 
operator- () const
template<typename OtherDerived >
Derived & operator-= (const MatrixBase< OtherDerived > &other)
template<typename OtherDerived >
Derived & operator-= (const EigenBase< OtherDerived > &other)
const CwiseUnaryOp
< ei_scalar_quotient1_op
< typename ei_traits< Derived >
::Scalar >, Derived > 
operator/ (const Scalar &scalar) const
Derived & operator/= (const Scalar &other)
template<typename OtherDerived >
CommaInitializer< Derived > operator<< (const DenseBase< OtherDerived > &other)
CommaInitializer< Derived > operator<< (const Scalar &s)
Derived & operator= (const MatrixBase &other)
template<typename OtherDerived >
Derived & operator= (const DenseBase< OtherDerived > &other)
template<typename OtherDerived >
Derived & operator= (const ReturnByValue< OtherDerived > &other)
template<typename OtherDerived >
Derived & operator= (const EigenBase< OtherDerived > &other)
 Copies the generic expression other into *this.
template<typename OtherDerived >
bool operator== (const MatrixBase< OtherDerived > &other) const
RealScalar operatorNorm () const
 Computes the L2 operator norm.
Index outerSize () const
template<unsigned int Mode>
const TriangularView< Derived,
Mode > 
part () const
template<unsigned int Mode>
TriangularView< Derived, Mode > part ()
const PartialPivLU< PlainObjectpartialPivLu () const
Scalar prod () const
RealReturnType real () const
NonConstRealReturnType real ()
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 rows, Index cols)
void resize (Index size)
const Eigen::Reverse< Derived,
BothDirections > 
reverse () const
Eigen::Reverse< Derived,
BothDirections > 
reverse ()
void reverseInPlace ()
template<int N>
const NColsBlockXpr< N >::Type rightCols () const
const ColsBlockXpr rightCols (Index n) const
ColsBlockXpr rightCols (Index n)
template<int N>
NColsBlockXpr< N >::Type rightCols ()
const RowXpr row (Index i) const
RowXpr row (Index i)
const VectorwiseOp< Derived,
Horizontal > 
rowwise () const
VectorwiseOp< Derived, Horizontal > rowwise ()
VectorBlock< Derived > segment (Index start, Index size)
template<int Size>
VectorBlock< Derived, Size > segment (Index start)
const VectorBlock< Derived > segment (Index start, Index size) const
template<int Size>
const VectorBlock< Derived, Size > segment (Index start) const
template<typename ElseDerived >
const Select< Derived,
typename
ElseDerived::ConstantReturnType,
ElseDerived > 
select (typename ElseDerived::Scalar thenScalar, 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 ThenDerived , typename ElseDerived >
const Select< Derived,
ThenDerived, ElseDerived > 
select (const DenseBase< ThenDerived > &thenMatrix, const DenseBase< ElseDerived > &elseMatrix) const
template<unsigned int UpLo>
SelfAdjointView< Derived, UpLo > selfadjointView ()
template<unsigned int UpLo>
const SelfAdjointView< Derived,
UpLo > 
selfadjointView () const
Derived & setConstant (const Scalar &value)
Derived & setIdentity (Index rows, Index cols)
 Resizes to the given size, and writes the identity expression (not necessarily square) into *this.
Derived & setIdentity ()
Derived & setLinSpaced (const Scalar &low, const Scalar &high)
Derived & setLinSpaced (Index size, const Scalar &low, const Scalar &high)
 Sets a linearly space vector.
Derived & setOnes ()
Derived & setRandom ()
Derived & setZero ()
const
MatrixFunctionReturnValue
< Derived > 
sin () const
const
MatrixFunctionReturnValue
< Derived > 
sinh () const
const SparseView< Derived > sparseView (const Scalar &m_reference=Scalar(0), typename NumTraits< Scalar >::Real m_epsilon=NumTraits< Scalar >::dummy_precision()) const
RealScalar squaredNorm () const
RealScalar stableNorm () const
Scalar sum () const
SVD< PlainObjectsvd () const
template<typename OtherDerived >
void swap (DenseBase< OtherDerived > EIGEN_REF_TO_TEMPORARY other)
const VectorBlock< Derived > tail (Index size) const
template<int Size>
VectorBlock< Derived, Size > tail ()
template<int Size>
const VectorBlock< Derived, Size > tail () const
VectorBlock< Derived > tail (Index size)
Block< Derived > topLeftCorner (Index cRows, Index cCols)
template<int CRows, int CCols>
Block< Derived, CRows, CCols > topLeftCorner ()
const Block< Derived > topLeftCorner (Index cRows, Index cCols) const
template<int CRows, int CCols>
const Block< Derived, CRows,
CCols > 
topLeftCorner () const
template<int CRows, int CCols>
Block< Derived, CRows, CCols > topRightCorner ()
const Block< Derived > topRightCorner (Index cRows, Index cCols) const
Block< Derived > topRightCorner (Index cRows, Index cCols)
template<int CRows, int CCols>
const Block< Derived, CRows,
CCols > 
topRightCorner () const
template<int N>
const NRowsBlockXpr< N >::Type topRows () const
template<int N>
NRowsBlockXpr< N >::Type topRows ()
RowsBlockXpr topRows (Index n)
const RowsBlockXpr topRows (Index n) const
Scalar trace () const
const Eigen::Transpose< Derived > transpose () const
Eigen::Transpose< Derived > transpose ()
void transposeInPlace ()
template<unsigned int Mode>
TriangularView< Derived, Mode > triangularView ()
template<unsigned int Mode>
const TriangularView< Derived,
Mode > 
triangularView () const
template<typename CustomUnaryOp >
const CwiseUnaryOp
< CustomUnaryOp, Derived > 
unaryExpr (const CustomUnaryOp &func=CustomUnaryOp()) const
template<typename CustomViewOp >
const CwiseUnaryView
< CustomViewOp, Derived > 
unaryViewExpr (const CustomViewOp &func=CustomViewOp()) const
PlainObject unitOrthogonal (void) 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 IdentityReturnType Identity (Index rows, Index cols)
static const IdentityReturnType Identity ()
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
< ei_scalar_random_op< Scalar >
, Derived > 
Random (Index rows, Index cols)
static const CwiseNullaryOp
< ei_scalar_random_op< Scalar >
, Derived > 
Random (Index size)
static const CwiseNullaryOp
< ei_scalar_random_op< Scalar >
, Derived > 
Random ()
static const BasisReturnType Unit (Index size, Index i)
static const BasisReturnType Unit (Index i)
static const BasisReturnType UnitW ()
static const BasisReturnType UnitX ()
static const BasisReturnType UnitY ()
static const BasisReturnType UnitZ ()
static const ConstantReturnType Zero ()
static const ConstantReturnType Zero (Index rows, Index cols)
static const ConstantReturnType Zero (Index size)

Protected Member Functions

template<typename OtherDerived >
void checkTransposeAliasing (const OtherDerived &other) const
template<typename OtherDerived >
Derived & operator+= (const ArrayBase< OtherDerived > &array)
template<typename OtherDerived >
Derived & operator-= (const ArrayBase< OtherDerived > &array)

Private Member Functions

 MatrixBase (int)
template<typename OtherDerived >
 MatrixBase (const MatrixBase< OtherDerived > &)
 MatrixBase (int, int)

Friends

const ScalarMultipleReturnType operator* (const Scalar &scalar, const StorageBaseType &matrix)
const CwiseUnaryOp
< ei_scalar_multiple2_op
< Scalar, std::complex< Scalar >
>, Derived > 
operator* (const std::complex< Scalar > &scalar, const StorageBaseType &matrix)

Related Functions

(Note that these are not member functions.)


template<typename Derived >
std::ostream & operator<< (std::ostream &s, const DenseBase< Derived > &m)

Detailed Description

template<typename Derived>
class MatrixBase< Derived >

Base class for all dense matrices, vectors, and expressions.

This class is the base that is inherited by all matrix, vector, and related expression types. Most of the Eigen API is contained in this class, and its base classes. Other important classes for the Eigen API are Matrix, and VectorwiseOp.

Note that some methods are defined in other modules such as the LU_Module LU module for all functions related to matrix inversions.

Parameters:
Derivedis the derived type, e.g. a matrix type, or an expression, etc.

When writing a function taking Eigen objects as argument, if you want your function to take as argument any matrix, vector, or expression, just let it take a MatrixBase argument. As an example, here is a function printFirstRow which, given a matrix, vector, or expression x, prints the first row of x.

    template<typename Derived>
    void printFirstRow(const Eigen::MatrixBase<Derived>& x)
    {
      cout << x.row(0) << endl;
    }
See also:
The class hierarchy

Definition at line 58 of file MatrixBase.h.


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

Generated by  Doxygen 1.6.0   Back to index