Expression of a triangular matrix extracted from a given matrix. More...
Public Member Functions | |
const MatrixType & | _expression () const |
Scalar | coeff (int row, int col) const |
Scalar & | coeffRef (int row, int col) |
const Block< Part, RowsAtCompileTime, 1 > | col (int i) |
const Block< Part, RowsAtCompileTime, 1 > | col (int i) const |
int | cols () const |
template<typename Other > | |
void | lazyAssign (const Other &other) |
Part & | operator*= (const typename ei_traits< MatrixType >::Scalar &other) |
template<typename Other > | |
Part & | operator+= (const Other &other) |
template<typename Other > | |
Part< MatrixType, Mode > & | operator+= (const Other &other) |
template<typename Other > | |
Part & | operator-= (const Other &other) |
template<typename Other > | |
Part< MatrixType, Mode > & | operator-= (const Other &other) |
Part & | operator/= (const typename ei_traits< MatrixType >::Scalar &other) |
template<typename Other > | |
Part & | operator= (const Other &other) |
template<typename Other > | |
Part< MatrixType, Mode > & | operator= (const Other &other) |
Part (const MatrixType &matrix) | |
const Block< Part, 1, ColsAtCompileTime > | row (int i) |
const Block< Part, 1, ColsAtCompileTime > | row (int i) const |
int | rows () const |
int | stride () const |
template<typename OtherDerived > | |
void | swap (const MatrixBase< OtherDerived > &other) |
![]() | |
const AdjointReturnType | adjoint () const |
bool | all (void) const |
bool | any (void) const |
const DiagonalMatrix< Part < MatrixType, Mode > > | asDiagonal () const |
const CwiseBinaryOp < CustomBinaryOp, Part < MatrixType, Mode > , OtherDerived > | binaryExpr (const MatrixBase< OtherDerived > &other, const CustomBinaryOp &func=CustomBinaryOp()) const |
BlockReturnType< Part < MatrixType, Mode > >::Type | block (int startRow, int startCol, int blockRows, int blockCols) |
const BlockReturnType< Part < MatrixType, Mode > >::Type | block (int startRow, int startCol, int blockRows, int blockCols) const |
BlockReturnType< Part < MatrixType, Mode > , BlockRows, BlockCols >::Type | block (int startRow, int startCol) |
const BlockReturnType< Part < MatrixType, Mode > , BlockRows, BlockCols >::Type | block (int startRow, int startCol) const |
const CwiseUnaryOp < ei_scalar_cast_op< typename ei_traits< Part< MatrixType, Mode > >::Scalar, NewType > , Part< MatrixType, Mode > > | cast () const |
const Scalar | coeff (int row, int col) const |
const Scalar | coeff (int index) const |
Scalar & | coeffRef (int row, int col) |
Scalar & | coeffRef (int index) |
ColXpr | col (int i) |
const ColXpr | col (int i) const |
int | cols () const |
const PartialRedux< Part < MatrixType, Mode >, Vertical > | colwise () const |
void | computeInverse (MatrixBase< ResultType > *result) const |
ConjugateReturnType | conjugate () const |
BlockReturnType< Part < MatrixType, Mode > >::Type | corner (CornerType type, int cRows, int cCols) |
const BlockReturnType< Part < MatrixType, Mode > >::Type | corner (CornerType type, int cRows, int cCols) const |
BlockReturnType< Part < MatrixType, Mode >, CRows, CCols >::Type | corner (CornerType type) |
const BlockReturnType< Part < MatrixType, Mode >, CRows, CCols >::Type | corner (CornerType type) const |
int | count () const |
PlainMatrixType | cross (const MatrixBase< OtherDerived > &other) const |
const Cwise< Part< MatrixType, Mode > > | cwise () const |
Cwise< Part< MatrixType, Mode > > | cwise () |
Scalar | determinant () const |
DiagonalCoeffs< Part < MatrixType, Mode > > | diagonal () |
const DiagonalCoeffs< Part < MatrixType, Mode > > | diagonal () const |
Scalar | dot (const MatrixBase< OtherDerived > &other) const |
EigenvaluesReturnType | eigenvalues () const |
BlockReturnType< Part < MatrixType, Mode >, Dynamic > ::SubVectorType | end (int size) |
const BlockReturnType< Part < MatrixType, Mode >, Dynamic > ::SubVectorType | end (int size) const |
BlockReturnType< Part < MatrixType, Mode >, Size > ::SubVectorType | end () |
const BlockReturnType< Part < MatrixType, Mode >, Size > ::SubVectorType | end () const |
Matrix< Scalar, 3, 1 > | eulerAngles (int a0, int a1, int a2) const |
const ei_eval< Part < MatrixType, Mode > >::type | eval () const |
void | fill (const Scalar &value) |
const WithFormat< Part < MatrixType, Mode > > | format (const IOFormat &fmt) const |
const ImagReturnType | imag () const |
int | innerSize () const |
const PlainMatrixType | inverse () const |
bool | isApprox (const MatrixBase< OtherDerived > &other, RealScalar prec=precision< Scalar >()) const |
bool | isApproxToConstant (const Scalar &value, RealScalar prec=precision< Scalar >()) const |
bool | isConstant (const Scalar &value, RealScalar prec=precision< Scalar >()) const |
bool | isDiagonal (RealScalar prec=precision< Scalar >()) const |
bool | isIdentity (RealScalar prec=precision< Scalar >()) const |
bool | isLowerTriangular (RealScalar prec=precision< Scalar >()) const |
bool | isMuchSmallerThan (const RealScalar &other, RealScalar prec=precision< Scalar >()) const |
bool | isMuchSmallerThan (const MatrixBase< OtherDerived > &other, RealScalar prec=precision< Scalar >()) const |
bool | isOnes (RealScalar prec=precision< Scalar >()) const |
bool | isOrthogonal (const MatrixBase< OtherDerived > &other, RealScalar prec=precision< Scalar >()) const |
bool | isUnitary (RealScalar prec=precision< Scalar >()) const |
bool | isUpperTriangular (RealScalar prec=precision< Scalar >()) const |
bool | isVector () const |
bool | isZero (RealScalar prec=precision< Scalar >()) const |
const Flagged< Part < MatrixType, Mode > , 0, EvalBeforeNestingBit|EvalBeforeAssigningBit > | lazy () const |
Part< MatrixType, Mode > & | lazyAssign (const SparseProduct< Derived1, Derived2, SparseTimeDenseProduct > &product) |
Part< MatrixType, Mode > & | lazyAssign (const SparseProduct< Derived1, Derived2, DenseTimeSparseProduct > &product) |
const LDLT< PlainMatrixType > | ldlt () const |
const LLT< PlainMatrixType > | llt () const |
RealScalar | lpNorm () const |
const LU< PlainMatrixType > | lu () const |
const Flagged< Part < MatrixType, Mode >, Added, 0 > | marked () const |
ei_traits< Part< MatrixType, Mode > >::Scalar | maxCoeff () const |
ei_traits< Part< MatrixType, Mode > >::Scalar | maxCoeff (int *row, int *col) const |
ei_traits< Part< MatrixType, Mode > >::Scalar | maxCoeff (int *index) const |
ei_traits< Part< MatrixType, Mode > >::Scalar | minCoeff () const |
ei_traits< Part< MatrixType, Mode > >::Scalar | minCoeff (int *row, int *col) const |
ei_traits< Part< MatrixType, Mode > >::Scalar | minCoeff (int *index) const |
Minor< Part< MatrixType, Mode > > | minor (int row, int col) |
const Minor< Part< MatrixType, Mode > > | minor (int row, int col) const |
const NestByValue< Part < MatrixType, Mode > > | nestByValue () const |
int | nonZeros () const |
RealScalar | norm () const |
void | normalize () |
const PlainMatrixType | normalized () const |
bool | operator!= (const MatrixBase< OtherDerived > &other) const |
const Scalar | operator() (int row, int col) const |
Scalar & | operator() (int row, int col) |
const Scalar | operator() (int index) const |
Scalar & | operator() (int index) |
const ScalarMultipleReturnType | operator* (const Scalar &scalar) const |
const ProductReturnType< Part < MatrixType, Mode > , OtherDerived >::Type | operator* (const MatrixBase< OtherDerived > &other) const |
Part< MatrixType, Mode > & | operator*= (const Scalar &other) |
Part< MatrixType, Mode > & | operator*= (const MatrixBase< OtherDerived > &other) |
const CwiseBinaryOp < ei_scalar_sum_op< typename ei_traits< Part< MatrixType, Mode > >::Scalar >, Part < MatrixType, Mode > , OtherDerived > | operator+ (const MatrixBase< OtherDerived > &other) const |
Part< MatrixType, Mode > & | operator+= (const MatrixBase< OtherDerived > &other) |
Part< MatrixType, Mode > & | operator+= (const Flagged< Product< Lhs, Rhs, CacheFriendlyProduct >, 0, EvalBeforeNestingBit|EvalBeforeAssigningBit > &other) |
const CwiseUnaryOp < ei_scalar_opposite_op < typename ei_traits< Part < MatrixType, Mode > >::Scalar > , Part< MatrixType, Mode > > | operator- () const |
const CwiseBinaryOp < ei_scalar_difference_op < typename ei_traits< Part < MatrixType, Mode > >::Scalar > , Part< MatrixType, Mode > , OtherDerived > | operator- (const MatrixBase< OtherDerived > &other) const |
Part< MatrixType, Mode > & | operator-= (const MatrixBase< OtherDerived > &other) |
const CwiseUnaryOp < ei_scalar_quotient1_op < typename ei_traits< Part < MatrixType, Mode > >::Scalar > , Part< MatrixType, Mode > > | operator/ (const Scalar &scalar) const |
Part< MatrixType, Mode > & | operator/= (const Scalar &other) |
CommaInitializer< Part < MatrixType, Mode > > | operator<< (const Scalar &s) |
CommaInitializer< Part < MatrixType, Mode > > | operator<< (const MatrixBase< OtherDerived > &other) |
Part< MatrixType, Mode > & | operator= (const MatrixBase< OtherDerived > &other) |
Part< MatrixType, Mode > & | operator= (const MatrixBase &other) |
bool | operator== (const MatrixBase< OtherDerived > &other) const |
const Scalar | operator[] (int index) const |
Scalar & | operator[] (int index) |
RealScalar | operatorNorm () const |
int | outerSize () const |
PacketScalar | packet (int row, int col) const |
PacketScalar | packet (int index) const |
Part< Part< MatrixType, Mode > , Mode > | part () |
const Part< Part< MatrixType, Mode >, Mode > | part () const |
const QR< PlainMatrixType > | qr () const |
const RealReturnType | real () const |
ei_result_of< BinaryOp(typename ei_traits< Part< MatrixType, Mode > >::Scalar)>::type | redux (const BinaryOp &func) const |
RowXpr | row (int i) |
const RowXpr | row (int i) const |
int | rows () const |
const PartialRedux< Part < MatrixType, Mode > , Horizontal > | rowwise () const |
BlockReturnType< Part < MatrixType, Mode > >::SubVectorType | segment (int start, int size) |
const BlockReturnType< Part < MatrixType, Mode > >::SubVectorType | segment (int start, int size) const |
BlockReturnType< Part < MatrixType, Mode >, Size > ::SubVectorType | segment (int start) |
const BlockReturnType< Part < MatrixType, Mode >, Size > ::SubVectorType | segment (int start) const |
const Select< Part< MatrixType, Mode >, ThenDerived, ElseDerived > | select (const MatrixBase< ThenDerived > &thenMatrix, const MatrixBase< ElseDerived > &elseMatrix) const |
const Select< Part< MatrixType, Mode >, ThenDerived, NestByValue< typename ThenDerived::ConstantReturnType > > | select (const MatrixBase< ThenDerived > &thenMatrix, typename ThenDerived::Scalar elseScalar) const |
const Select< Part< MatrixType, Mode >, NestByValue< typename ElseDerived::ConstantReturnType > , ElseDerived > | select (typename ElseDerived::Scalar thenScalar, const MatrixBase< ElseDerived > &elseMatrix) const |
Part< MatrixType, Mode > & | setConstant (const Scalar &value) |
Part< MatrixType, Mode > & | setIdentity () |
Part< MatrixType, Mode > & | setOnes () |
Part< MatrixType, Mode > & | setRandom () |
Part< MatrixType, Mode > & | setZero () |
int | size () const |
ei_plain_matrix_type_column_major < OtherDerived >::type | solveTriangular (const MatrixBase< OtherDerived > &other) const |
void | solveTriangularInPlace (const MatrixBase< OtherDerived > &other) const |
RealScalar | squaredNorm () const |
BlockReturnType< Part < MatrixType, Mode >, Dynamic > ::SubVectorType | start (int size) |
const BlockReturnType< Part < MatrixType, Mode >, Dynamic > ::SubVectorType | start (int size) const |
BlockReturnType< Part < MatrixType, Mode >, Size > ::SubVectorType | start (void) |
const BlockReturnType< Part < MatrixType, Mode >, Size > ::SubVectorType | start () const |
int | stride (void) const |
Scalar | sum () const |
SVD< PlainMatrixType > | svd () const |
void | swap (const MatrixBase< OtherDerived > &other) |
Scalar | trace () const |
Eigen::Transpose< Part < MatrixType, Mode > > | transpose () |
const Eigen::Transpose< Part < MatrixType, Mode > > | transpose () const |
void | transposeInPlace () |
const CwiseUnaryOp < CustomUnaryOp, Part < MatrixType, Mode > > | unaryExpr (const CustomUnaryOp &func=CustomUnaryOp()) const |
PlainMatrixType | unitOrthogonal (void) const |
void | visit (Visitor &func) const |
const Scalar | w () const |
Scalar & | w () |
void | writePacket (int row, int col, const PacketScalar &x) |
void | writePacket (int index, const PacketScalar &x) |
const Scalar | x () const |
Scalar & | x () |
const Scalar | y () const |
Scalar & | y () |
const Scalar | z () const |
Scalar & | z () |
Protected Attributes | |
const MatrixType::Nested | m_matrix |
Additional Inherited Members | |
![]() | |
enum | |
![]() | |
static const ConstantReturnType | Constant (int rows, int cols, const Scalar &value) |
static const ConstantReturnType | Constant (int size, const Scalar &value) |
static const ConstantReturnType | Constant (const Scalar &value) |
static const IdentityReturnType | Identity () |
static const IdentityReturnType | Identity (int rows, int cols) |
static const CwiseNullaryOp < CustomNullaryOp, Part < MatrixType, Mode > > | NullaryExpr (int rows, int cols, const CustomNullaryOp &func) |
static const CwiseNullaryOp < CustomNullaryOp, Part < MatrixType, Mode > > | NullaryExpr (int size, const CustomNullaryOp &func) |
static const CwiseNullaryOp < CustomNullaryOp, Part < MatrixType, Mode > > | NullaryExpr (const CustomNullaryOp &func) |
static const ConstantReturnType | Ones (int rows, int cols) |
static const ConstantReturnType | Ones (int size) |
static const ConstantReturnType | Ones () |
static const CwiseNullaryOp < ei_scalar_random_op< Scalar > , Part< MatrixType, Mode > > | Random (int rows, int cols) |
static const CwiseNullaryOp < ei_scalar_random_op< Scalar > , Part< MatrixType, Mode > > | Random (int size) |
static const CwiseNullaryOp < ei_scalar_random_op< Scalar > , Part< MatrixType, Mode > > | Random () |
static const BasisReturnType | Unit (int size, int i) |
static const BasisReturnType | Unit (int i) |
static const BasisReturnType | UnitW () |
static const BasisReturnType | UnitX () |
static const BasisReturnType | UnitY () |
static const BasisReturnType | UnitZ () |
static const ConstantReturnType | Zero (int rows, int cols) |
static const ConstantReturnType | Zero (int size) |
static const ConstantReturnType | Zero () |
![]() | |
MatrixBase () | |
Expression of a triangular matrix extracted from a given matrix.
MatrixType | the type of the object in which we are taking the triangular part |
Mode | the kind of triangular matrix expression to construct. Can be UpperTriangular, StrictlyUpperTriangular, UnitUpperTriangular, LowerTriangular, StrictlyLowerTriangular, UnitLowerTriangular. This is in fact a bit field; it must have either UpperTriangularBit or LowerTriangularBit, and additionnaly it may have either ZeroDiagBit or UnitDiagBit. |
This class represents an expression of the upper or lower triangular part of a square matrix, possibly with a further assumption on the diagonal. It is the return type of MatrixBase::part() and most of the time this is the only way it is used.
|
inline |
discard any writes to a column
void lazyAssign | ( | const Other & | other) |
|
inline |
Part& operator+= | ( | const Other & | other) |
Part& operator-= | ( | const Other & | other) |
|
inline |
Part& operator= | ( | const Other & | other) |
|
inline |
discard any writes to a row