Pseudo expression providing partial reduction operations. More...
#include <VectorwiseOp.h>
Classes | |
| struct | ExtendedType |
| struct | ReduxReturnType |
| struct | ReturnType |
Public Types | |
| enum | { IsVertical = (Direction==Vertical) ? 1 : 0, IsHorizontal = (Direction==Horizontal) ? 1 : 0 } |
| enum | { HNormalized_Size, HNormalized_SizeMinusOne = HNormalized_Size==Dynamic ? Dynamic : HNormalized_Size-1 } |
| typedef ExpressionType::Scalar | Scalar |
| typedef ExpressionType::RealScalar | RealScalar |
| typedef ExpressionType::Index | Index |
| typedef internal::conditional < internal::must_nest_by_value < ExpressionType >::ret, ExpressionType, ExpressionType & > ::type | ExpressionTypeNested |
| typedef internal::remove_all < ExpressionTypeNested >::type | ExpressionTypeNestedCleaned |
| typedef Replicate < ExpressionType, Direction==Vertical?Dynamic:1, Direction==Horizontal?Dynamic:1 > | ReplicateReturnType |
| typedef ExpressionType::PlainObject | CrossReturnType |
| typedef Block< const ExpressionType, Direction==Vertical?int(HNormalized_SizeMinusOne):int(internal::traits < ExpressionType > ::RowsAtCompileTime), Direction==Horizontal?int(HNormalized_SizeMinusOne):int(internal::traits < ExpressionType > ::ColsAtCompileTime)> | HNormalized_Block |
| typedef Block< const ExpressionType, Direction==Vertical?1:int(internal::traits < ExpressionType > ::RowsAtCompileTime), Direction==Horizontal?1:int(internal::traits < ExpressionType > ::ColsAtCompileTime)> | HNormalized_Factors |
| typedef CwiseBinaryOp < internal::scalar_quotient_op < typename internal::traits < ExpressionType >::Scalar > , const HNormalized_Block, const Replicate < HNormalized_Factors, Direction==Vertical?HNormalized_SizeMinusOne:1, Direction==Horizontal?HNormalized_SizeMinusOne:1 > > | HNormalizedReturnType |
Public Member Functions | |
| VectorwiseOp (ExpressionType &matrix) | |
| const ExpressionType & | _expression () const |
| template<typename BinaryOp > | |
| const ReduxReturnType < BinaryOp >::Type | redux (const BinaryOp &func=BinaryOp()) const |
| const ReturnType < internal::member_minCoeff > ::Type | minCoeff () const |
| const ReturnType < internal::member_maxCoeff > ::Type | maxCoeff () const |
| const ReturnType < internal::member_squaredNorm, RealScalar >::Type | squaredNorm () const |
| const ReturnType < internal::member_norm, RealScalar >::Type | norm () const |
| const ReturnType < internal::member_blueNorm, RealScalar >::Type | blueNorm () const |
| const ReturnType < internal::member_stableNorm, RealScalar >::Type | stableNorm () const |
| const ReturnType < internal::member_hypotNorm, RealScalar >::Type | hypotNorm () const |
| const ReturnType < internal::member_sum >::Type | sum () const |
| const ReturnType < internal::member_mean > ::Type | mean () const |
| const ReturnType < internal::member_all >::Type | all () const |
| const ReturnType < internal::member_any >::Type | any () const |
| const PartialReduxExpr < ExpressionType, internal::member_count< Index > , Direction > | count () const |
| const ReturnType < internal::member_prod > ::Type | prod () const |
| const Reverse< ExpressionType, Direction > | reverse () const |
| const ReplicateReturnType | replicate (Index factor) const |
| template<int Factor> | |
| const Replicate < ExpressionType,(IsVertical?Factor:1),(IsHorizontal?Factor:1)> | replicate (Index factor=Factor) const |
| template<typename OtherDerived > | |
| ExpressionType & | operator= (const DenseBase< OtherDerived > &other) |
| template<typename OtherDerived > | |
| ExpressionType & | operator+= (const DenseBase< OtherDerived > &other) |
| template<typename OtherDerived > | |
| ExpressionType & | operator-= (const DenseBase< OtherDerived > &other) |
| template<typename OtherDerived > | |
| EIGEN_STRONG_INLINE CwiseBinaryOp < internal::scalar_sum_op < Scalar >, const ExpressionTypeNestedCleaned, const typename ExtendedType < OtherDerived >::Type > | operator+ (const DenseBase< OtherDerived > &other) const |
| template<typename OtherDerived > | |
| CwiseBinaryOp < internal::scalar_difference_op < Scalar >, const ExpressionTypeNestedCleaned, const typename ExtendedType < OtherDerived >::Type > | operator- (const DenseBase< OtherDerived > &other) const |
| template<typename OtherDerived > | |
| const CrossReturnType | cross (const MatrixBase< OtherDerived > &other) const |
| const HNormalizedReturnType | hnormalized () const |
Protected Types | |
| typedef internal::conditional < Direction==Vertical, typename ExpressionType::ColXpr, typename ExpressionType::RowXpr >::type | SubVector |
Protected Member Functions | |
| SubVector | subVector (Index i) |
| Index | subVectors () const |
| template<typename OtherDerived > | |
| ExtendedType< OtherDerived >::Type | extendedTo (const DenseBase< OtherDerived > &other) const |
Protected Attributes | |
| ExpressionTypeNested | m_matrix |
Pseudo expression providing partial reduction operations.
| ExpressionType | the type of the object on which to do partial reductions | |
| Direction | indicates the direction of the redux (Vertical or Horizontal) |
This class represents a pseudo expression with partial reduction features. It is the return type of DenseBase::colwise() and DenseBase::rowwise() and most of the time this is the only way it is used.
Example:
Output:
| typedef ExpressionType::PlainObject VectorwiseOp< ExpressionType, Direction >::CrossReturnType |
| typedef internal::conditional<internal::must_nest_by_value<ExpressionType>::ret, ExpressionType, ExpressionType&>::type VectorwiseOp< ExpressionType, Direction >::ExpressionTypeNested |
| typedef internal::remove_all<ExpressionTypeNested>::type VectorwiseOp< ExpressionType, Direction >::ExpressionTypeNestedCleaned |
| typedef Block<const ExpressionType, Direction==Vertical ? int(HNormalized_SizeMinusOne) : int(internal::traits<ExpressionType>::RowsAtCompileTime), Direction==Horizontal ? int(HNormalized_SizeMinusOne) : int(internal::traits<ExpressionType>::ColsAtCompileTime)> VectorwiseOp< ExpressionType, Direction >::HNormalized_Block |
| typedef Block<const ExpressionType, Direction==Vertical ? 1 : int(internal::traits<ExpressionType>::RowsAtCompileTime), Direction==Horizontal ? 1 : int(internal::traits<ExpressionType>::ColsAtCompileTime)> VectorwiseOp< ExpressionType, Direction >::HNormalized_Factors |
| typedef CwiseBinaryOp<internal::scalar_quotient_op<typename internal::traits<ExpressionType>::Scalar>, const HNormalized_Block, const Replicate<HNormalized_Factors, Direction==Vertical ? HNormalized_SizeMinusOne : 1, Direction==Horizontal ? HNormalized_SizeMinusOne : 1> > VectorwiseOp< ExpressionType, Direction >::HNormalizedReturnType |
| typedef ExpressionType::Index VectorwiseOp< ExpressionType, Direction >::Index |
| typedef ExpressionType::RealScalar VectorwiseOp< ExpressionType, Direction >::RealScalar |
| typedef Replicate<ExpressionType,Direction==Vertical?Dynamic:1,Direction==Horizontal?Dynamic:1> VectorwiseOp< ExpressionType, Direction >::ReplicateReturnType |
| typedef ExpressionType::Scalar VectorwiseOp< ExpressionType, Direction >::Scalar |
typedef internal::conditional<Direction==Vertical, typename ExpressionType::ColXpr, typename ExpressionType::RowXpr>::type VectorwiseOp< ExpressionType, Direction >::SubVector [protected] |
| anonymous enum |
| VectorwiseOp< ExpressionType, Direction >::VectorwiseOp | ( | ExpressionType & | matrix | ) | [inline] |
| const ExpressionType& VectorwiseOp< ExpressionType, Direction >::_expression | ( | ) | const [inline] |
| const ReturnType<internal::member_all>::Type VectorwiseOp< ExpressionType, Direction >::all | ( | void | ) | const [inline] |
true.| const ReturnType<internal::member_any>::Type VectorwiseOp< ExpressionType, Direction >::any | ( | void | ) | const [inline] |
true.| const ReturnType<internal::member_blueNorm,RealScalar>::Type VectorwiseOp< ExpressionType, Direction >::blueNorm | ( | ) | const [inline] |
| const PartialReduxExpr<ExpressionType, internal::member_count<Index>, Direction> VectorwiseOp< ExpressionType, Direction >::count | ( | ) | const [inline] |
true coefficients of each respective column (or row).Example:
Output:
| const VectorwiseOp< ExpressionType, Direction >::CrossReturnType VectorwiseOp< ExpressionType, Direction >::cross | ( | const MatrixBase< OtherDerived > & | other | ) | const |
The referenced matrix must have one dimension equal to 3. The result matrix has the same dimensions than the referenced one.
| ExtendedType<OtherDerived>::Type VectorwiseOp< ExpressionType, Direction >::extendedTo | ( | const DenseBase< OtherDerived > & | other | ) | const [inline, protected] |
| const VectorwiseOp< ExpressionType, Direction >::HNormalizedReturnType VectorwiseOp< ExpressionType, Direction >::hnormalized | ( | ) | const [inline] |
*this Example:
Output:
| const ReturnType<internal::member_hypotNorm,RealScalar>::Type VectorwiseOp< ExpressionType, Direction >::hypotNorm | ( | ) | const [inline] |
| const ReturnType<internal::member_maxCoeff>::Type VectorwiseOp< ExpressionType, Direction >::maxCoeff | ( | ) | const [inline] |
Example:
Output:
| const ReturnType<internal::member_mean>::Type VectorwiseOp< ExpressionType, Direction >::mean | ( | ) | const [inline] |
| const ReturnType<internal::member_minCoeff>::Type VectorwiseOp< ExpressionType, Direction >::minCoeff | ( | ) | const [inline] |
Example:
Output:
| const ReturnType<internal::member_norm,RealScalar>::Type VectorwiseOp< ExpressionType, Direction >::norm | ( | ) | const [inline] |
Example:
Output:
| EIGEN_STRONG_INLINE CwiseBinaryOp<internal::scalar_sum_op<Scalar>, const ExpressionTypeNestedCleaned, const typename ExtendedType<OtherDerived>::Type> VectorwiseOp< ExpressionType, Direction >::operator+ | ( | const DenseBase< OtherDerived > & | other | ) | const [inline] |
Returns the expression of the sum of the vector other to each subvector of *this
| ExpressionType& VectorwiseOp< ExpressionType, Direction >::operator+= | ( | const DenseBase< OtherDerived > & | other | ) | [inline] |
Adds the vector other to each subvector of *this
| CwiseBinaryOp<internal::scalar_difference_op<Scalar>, const ExpressionTypeNestedCleaned, const typename ExtendedType<OtherDerived>::Type> VectorwiseOp< ExpressionType, Direction >::operator- | ( | const DenseBase< OtherDerived > & | other | ) | const [inline] |
Returns the expression of the difference between each subvector of *this and the vector other
| ExpressionType& VectorwiseOp< ExpressionType, Direction >::operator-= | ( | const DenseBase< OtherDerived > & | other | ) | [inline] |
Substracts the vector other to each subvector of *this
| ExpressionType& VectorwiseOp< ExpressionType, Direction >::operator= | ( | const DenseBase< OtherDerived > & | other | ) | [inline] |
Copies the vector other to each subvector of *this
| const ReturnType<internal::member_prod>::Type VectorwiseOp< ExpressionType, Direction >::prod | ( | ) | const [inline] |
Example:
Output:
| const ReduxReturnType<BinaryOp>::Type VectorwiseOp< ExpressionType, Direction >::redux | ( | const BinaryOp & | func = BinaryOp() |
) | const [inline] |
*this reduxed by func The template parameter BinaryOp is the type of the functor of the custom redux operator. Note that func must be an associative operator.
| const Replicate<ExpressionType,(IsVertical?Factor:1),(IsHorizontal?Factor:1)> VectorwiseOp< ExpressionType, Direction >::replicate | ( | Index | factor = Factor |
) | const [inline] |
*this Example:
Output:
| const VectorwiseOp< ExpressionType, Direction >::ReplicateReturnType VectorwiseOp< ExpressionType, Direction >::replicate | ( | Index | factor | ) | const |
*this Example:
Output:
| const Reverse<ExpressionType, Direction> VectorwiseOp< ExpressionType, Direction >::reverse | ( | ) | const [inline] |
Example:
Output:
| const ReturnType<internal::member_squaredNorm,RealScalar>::Type VectorwiseOp< ExpressionType, Direction >::squaredNorm | ( | ) | const [inline] |
Example:
Output:
| const ReturnType<internal::member_stableNorm,RealScalar>::Type VectorwiseOp< ExpressionType, Direction >::stableNorm | ( | ) | const [inline] |
| SubVector VectorwiseOp< ExpressionType, Direction >::subVector | ( | Index | i | ) | [inline, protected] |
| Index VectorwiseOp< ExpressionType, Direction >::subVectors | ( | ) | const [inline, protected] |
| const ReturnType<internal::member_sum>::Type VectorwiseOp< ExpressionType, Direction >::sum | ( | ) | const [inline] |
Example:
Output:
ExpressionTypeNested VectorwiseOp< ExpressionType, Direction >::m_matrix [protected] |
1.7.1