Generic expression of a coefficient-wise operator between two matrices or vectors. More...
Public Types | |
typedef ei_traits < CwiseBinaryOp >::LhsNested | LhsNested |
typedef ei_traits < CwiseBinaryOp >::RhsNested | RhsNested |
![]() | |
enum |
Public Member Functions | |
const Scalar | coeff (int row, int col) const |
const Scalar | coeff (int index) const |
int | cols () const |
CwiseBinaryOp (const Lhs &lhs, const Rhs &rhs, const BinaryOp &func=BinaryOp()) | |
template<int LoadMode> | |
PacketScalar | packet (int row, int col) const |
template<int LoadMode> | |
PacketScalar | packet (int index) const |
int | rows () const |
![]() | |
const AdjointReturnType | adjoint () const |
bool | all (void) const |
bool | any (void) const |
const DiagonalMatrix < CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | asDiagonal () const |
const CwiseBinaryOp < CustomBinaryOp, CwiseBinaryOp< BinaryOp, Lhs, Rhs >, OtherDerived > | binaryExpr (const MatrixBase< OtherDerived > &other, const CustomBinaryOp &func=CustomBinaryOp()) const |
BlockReturnType< CwiseBinaryOp < BinaryOp, Lhs, Rhs > >::Type | block (int startRow, int startCol, int blockRows, int blockCols) |
const BlockReturnType < CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::Type | block (int startRow, int startCol, int blockRows, int blockCols) const |
BlockReturnType< CwiseBinaryOp < BinaryOp, Lhs, Rhs > , BlockRows, BlockCols >::Type | block (int startRow, int startCol) |
const BlockReturnType < CwiseBinaryOp< BinaryOp, Lhs, Rhs >, BlockRows, BlockCols > ::Type | block (int startRow, int startCol) const |
const CwiseUnaryOp < ei_scalar_cast_op< typename ei_traits< CwiseBinaryOp < BinaryOp, Lhs, Rhs > >::Scalar, NewType > , CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | 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 < CwiseBinaryOp< BinaryOp, Lhs, Rhs >, Vertical > | colwise () const |
void | computeInverse (MatrixBase< ResultType > *result) const |
ConjugateReturnType | conjugate () const |
BlockReturnType< CwiseBinaryOp < BinaryOp, Lhs, Rhs > >::Type | corner (CornerType type, int cRows, int cCols) |
const BlockReturnType < CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::Type | corner (CornerType type, int cRows, int cCols) const |
BlockReturnType< CwiseBinaryOp < BinaryOp, Lhs, Rhs >, CRows, CCols >::Type | corner (CornerType type) |
const BlockReturnType < CwiseBinaryOp< BinaryOp, Lhs, Rhs >, CRows, CCols >::Type | corner (CornerType type) const |
int | count () const |
PlainMatrixType | cross (const MatrixBase< OtherDerived > &other) const |
const Cwise< CwiseBinaryOp < BinaryOp, Lhs, Rhs > > | cwise () const |
Cwise< CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | cwise () |
Scalar | determinant () const |
DiagonalCoeffs< CwiseBinaryOp < BinaryOp, Lhs, Rhs > > | diagonal () |
const DiagonalCoeffs < CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | diagonal () const |
Scalar | dot (const MatrixBase< OtherDerived > &other) const |
EigenvaluesReturnType | eigenvalues () const |
BlockReturnType< CwiseBinaryOp < BinaryOp, Lhs, Rhs > , Dynamic >::SubVectorType | end (int size) |
const BlockReturnType < CwiseBinaryOp< BinaryOp, Lhs, Rhs >, Dynamic > ::SubVectorType | end (int size) const |
BlockReturnType< CwiseBinaryOp < BinaryOp, Lhs, Rhs >, Size > ::SubVectorType | end () |
const BlockReturnType < CwiseBinaryOp< BinaryOp, Lhs, Rhs >, Size >::SubVectorType | end () const |
Matrix< Scalar, 3, 1 > | eulerAngles (int a0, int a1, int a2) const |
const ei_eval< CwiseBinaryOp < BinaryOp, Lhs, Rhs > >::type | eval () const |
void | fill (const Scalar &value) |
const WithFormat < CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | 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< CwiseBinaryOp < BinaryOp, Lhs, Rhs > , 0, EvalBeforeNestingBit|EvalBeforeAssigningBit > | lazy () const |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | lazyAssign (const SparseProduct< Derived1, Derived2, SparseTimeDenseProduct > &product) |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | 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< CwiseBinaryOp < BinaryOp, Lhs, Rhs >, Added, 0 > | marked () const |
ei_traits< CwiseBinaryOp < BinaryOp, Lhs, Rhs > >::Scalar | maxCoeff () const |
ei_traits< CwiseBinaryOp < BinaryOp, Lhs, Rhs > >::Scalar | maxCoeff (int *row, int *col) const |
ei_traits< CwiseBinaryOp < BinaryOp, Lhs, Rhs > >::Scalar | maxCoeff (int *index) const |
ei_traits< CwiseBinaryOp < BinaryOp, Lhs, Rhs > >::Scalar | minCoeff () const |
ei_traits< CwiseBinaryOp < BinaryOp, Lhs, Rhs > >::Scalar | minCoeff (int *row, int *col) const |
ei_traits< CwiseBinaryOp < BinaryOp, Lhs, Rhs > >::Scalar | minCoeff (int *index) const |
Minor< CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | minor (int row, int col) |
const Minor< CwiseBinaryOp < BinaryOp, Lhs, Rhs > > | minor (int row, int col) const |
const NestByValue < CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | 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 < CwiseBinaryOp< BinaryOp, Lhs, Rhs >, OtherDerived >::Type | operator* (const MatrixBase< OtherDerived > &other) const |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | operator*= (const Scalar &other) |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | operator*= (const MatrixBase< OtherDerived > &other) |
const CwiseBinaryOp < ei_scalar_sum_op< typename ei_traits< CwiseBinaryOp < BinaryOp, Lhs, Rhs > >::Scalar >, CwiseBinaryOp < BinaryOp, Lhs, Rhs > , OtherDerived > | operator+ (const MatrixBase< OtherDerived > &other) const |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | operator+= (const MatrixBase< OtherDerived > &other) |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | operator+= (const Flagged< Product< Lhs, Rhs, CacheFriendlyProduct >, 0, EvalBeforeNestingBit|EvalBeforeAssigningBit > &other) |
const CwiseUnaryOp < ei_scalar_opposite_op < typename ei_traits < CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::Scalar > , CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | operator- () const |
const CwiseBinaryOp < ei_scalar_difference_op < typename ei_traits < CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::Scalar > , CwiseBinaryOp< BinaryOp, Lhs, Rhs >, OtherDerived > | operator- (const MatrixBase< OtherDerived > &other) const |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | operator-= (const MatrixBase< OtherDerived > &other) |
const CwiseUnaryOp < ei_scalar_quotient1_op < typename ei_traits < CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::Scalar > , CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | operator/ (const Scalar &scalar) const |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | operator/= (const Scalar &other) |
CommaInitializer < CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | operator<< (const Scalar &s) |
CommaInitializer < CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | operator<< (const MatrixBase< OtherDerived > &other) |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | operator= (const MatrixBase< OtherDerived > &other) |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | 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< CwiseBinaryOp< BinaryOp, Lhs, Rhs >, Mode > | part () |
const Part< CwiseBinaryOp < BinaryOp, Lhs, Rhs >, Mode > | part () const |
const QR< PlainMatrixType > | qr () const |
const RealReturnType | real () const |
ei_result_of< BinaryOp(typename ei_traits< CwiseBinaryOp < BinaryOp, Lhs, Rhs > >::Scalar)>::type | redux (const BinaryOp &func) const |
RowXpr | row (int i) |
const RowXpr | row (int i) const |
int | rows () const |
const PartialRedux < CwiseBinaryOp< BinaryOp, Lhs, Rhs >, Horizontal > | rowwise () const |
BlockReturnType< CwiseBinaryOp < BinaryOp, Lhs, Rhs > >::SubVectorType | segment (int start, int size) |
const BlockReturnType < CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::SubVectorType | segment (int start, int size) const |
BlockReturnType< CwiseBinaryOp < BinaryOp, Lhs, Rhs >, Size > ::SubVectorType | segment (int start) |
const BlockReturnType < CwiseBinaryOp< BinaryOp, Lhs, Rhs >, Size >::SubVectorType | segment (int start) const |
const Select< CwiseBinaryOp < BinaryOp, Lhs, Rhs > , ThenDerived, ElseDerived > | select (const MatrixBase< ThenDerived > &thenMatrix, const MatrixBase< ElseDerived > &elseMatrix) const |
const Select< CwiseBinaryOp < BinaryOp, Lhs, Rhs > , ThenDerived, NestByValue < typename ThenDerived::ConstantReturnType > > | select (const MatrixBase< ThenDerived > &thenMatrix, typename ThenDerived::Scalar elseScalar) const |
const Select< CwiseBinaryOp < BinaryOp, Lhs, Rhs > , NestByValue< typename ElseDerived::ConstantReturnType > , ElseDerived > | select (typename ElseDerived::Scalar thenScalar, const MatrixBase< ElseDerived > &elseMatrix) const |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | setConstant (const Scalar &value) |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | setIdentity () |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | setOnes () |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | setRandom () |
CwiseBinaryOp< BinaryOp, Lhs, Rhs > & | 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< CwiseBinaryOp < BinaryOp, Lhs, Rhs > , Dynamic >::SubVectorType | start (int size) |
const BlockReturnType < CwiseBinaryOp< BinaryOp, Lhs, Rhs >, Dynamic > ::SubVectorType | start (int size) const |
BlockReturnType< CwiseBinaryOp < BinaryOp, Lhs, Rhs >, Size > ::SubVectorType | start (void) |
const BlockReturnType < CwiseBinaryOp< BinaryOp, Lhs, Rhs >, 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 < CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | transpose () |
const Eigen::Transpose < CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | transpose () const |
void | transposeInPlace () |
const CwiseUnaryOp < CustomUnaryOp, CwiseBinaryOp < BinaryOp, Lhs, Rhs > > | 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 BinaryOp | m_functor |
const LhsNested | m_lhs |
const RhsNested | m_rhs |
Additional Inherited Members | |
![]() | |
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, CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | NullaryExpr (int rows, int cols, const CustomNullaryOp &func) |
static const CwiseNullaryOp < CustomNullaryOp, CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | NullaryExpr (int size, const CustomNullaryOp &func) |
static const CwiseNullaryOp < CustomNullaryOp, CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | 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 > , CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | Random (int rows, int cols) |
static const CwiseNullaryOp < ei_scalar_random_op< Scalar > , CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | Random (int size) |
static const CwiseNullaryOp < ei_scalar_random_op< Scalar > , CwiseBinaryOp< BinaryOp, Lhs, Rhs > > | 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 () |
Generic expression of a coefficient-wise operator between two matrices or vectors.
BinaryOp | template functor implementing the operator |
Lhs | the type of the left-hand side |
Rhs | the type of the right-hand side |
This class represents an expression of a generic binary operator of two matrices or vectors. It is the return type of the operator+, operator-, and the Cwise methods, and most of the time this is the only way it is used.
However, if you want to write a function returning such an expression, you will need to use this class.