Pseudo expression providing partial reduction operations. More...
#include <VectorwiseOp.h>
Classes | |
struct | ExtendedType |
struct | OppositeExtendedType |
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::PlainObject | CrossReturnType |
typedef internal::conditional < internal::must_nest_by_value < ExpressionType >::ret, ExpressionType, ExpressionType & > ::type | ExpressionTypeNested |
typedef internal::remove_all < ExpressionTypeNested >::type | 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)> | 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 |
typedef ExpressionType::Index | Index |
typedef ExpressionType::RealScalar | RealScalar |
typedef Replicate < ExpressionType, Direction==Vertical?Dynamic:1, Direction==Horizontal?Dynamic:1 > | ReplicateReturnType |
typedef ExpressionType::Scalar | Scalar |
Public Member Functions | |
const ExpressionType & | _expression () const |
const ReturnType < internal::member_all >::Type | all () const |
const ReturnType < internal::member_any >::Type | any () const |
const ReturnType < internal::member_blueNorm, RealScalar >::Type | blueNorm () const |
const PartialReduxExpr < ExpressionType, internal::member_count< Index > , Direction > | count () const |
template<typename OtherDerived > | |
const CrossReturnType | cross (const MatrixBase< OtherDerived > &other) const |
const HNormalizedReturnType | hnormalized () const |
const ReturnType < internal::member_hypotNorm, RealScalar >::Type | hypotNorm () const |
const ReturnType < internal::member_maxCoeff > ::Type | maxCoeff () const |
const ReturnType < internal::member_mean > ::Type | mean () const |
const ReturnType < internal::member_minCoeff > ::Type | minCoeff () const |
const ReturnType < internal::member_norm, RealScalar >::Type | norm () const |
void | normalize () |
CwiseBinaryOp < internal::scalar_quotient_op < Scalar >, const ExpressionTypeNestedCleaned, const typename OppositeExtendedType< typename ReturnType < internal::member_norm, RealScalar >::Type >::Type > | normalized () const |
template<typename OtherDerived > | |
EIGEN_STRONG_INLINE CwiseBinaryOp < internal::scalar_product_op < Scalar >, const ExpressionTypeNestedCleaned, const typename ExtendedType < OtherDerived >::Type > | operator* (const DenseBase< OtherDerived > &other) const |
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 > | |
ExpressionType & | operator+= (const DenseBase< OtherDerived > &other) |
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 > | |
ExpressionType & | operator-= (const DenseBase< OtherDerived > &other) |
template<typename OtherDerived > | |
CwiseBinaryOp < internal::scalar_quotient_op < Scalar >, const ExpressionTypeNestedCleaned, const typename ExtendedType < OtherDerived >::Type > | operator/ (const DenseBase< OtherDerived > &other) const |
template<typename OtherDerived > | |
ExpressionType & | operator/= (const DenseBase< OtherDerived > &other) |
template<typename OtherDerived > | |
ExpressionType & | operator= (const DenseBase< OtherDerived > &other) |
const ReturnType < internal::member_prod > ::Type | prod () const |
template<typename BinaryOp > | |
const ReduxReturnType < BinaryOp >::Type | redux (const BinaryOp &func=BinaryOp()) const |
const ReplicateReturnType | replicate (Index factor) const |
template<int Factor> | |
const Replicate < ExpressionType,(IsVertical?Factor:1),(IsHorizontal?Factor:1)> | replicate (Index factor=Factor) const |
const Reverse< ExpressionType, Direction > | reverse () const |
const ReturnType < internal::member_squaredNorm, RealScalar >::Type | squaredNorm () const |
const ReturnType < internal::member_stableNorm, RealScalar >::Type | stableNorm () const |
const ReturnType < internal::member_sum >::Type | sum () const |
VectorwiseOp (ExpressionType &matrix) | |
Protected Types | |
typedef internal::conditional < Direction==Vertical, typename ExpressionType::ColXpr, typename ExpressionType::RowXpr >::type | SubVector |
Protected Member Functions | |
template<typename OtherDerived > | |
ExtendedType< OtherDerived >::Type | extendedTo (const DenseBase< OtherDerived > &other) const |
template<typename OtherDerived > | |
OppositeExtendedType < OtherDerived >::Type | extendedToOpposite (const DenseBase< OtherDerived > &other) const |
SubVector | subVector (Index i) |
Index | subVectors () 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:
Definition at line 165 of file VectorwiseOp.h.
typedef ExpressionType::PlainObject Eigen::VectorwiseOp< ExpressionType, Direction >::CrossReturnType |
Definition at line 557 of file VectorwiseOp.h.
typedef internal::conditional<internal::must_nest_by_value<ExpressionType>::ret, ExpressionType, ExpressionType&>::type Eigen::VectorwiseOp< ExpressionType, Direction >::ExpressionTypeNested |
Definition at line 173 of file VectorwiseOp.h.
typedef internal::remove_all<ExpressionTypeNested>::type Eigen::VectorwiseOp< ExpressionType, Direction >::ExpressionTypeNestedCleaned |
Definition at line 174 of file VectorwiseOp.h.
typedef Block<const ExpressionType, Direction==Vertical ? int(HNormalized_SizeMinusOne) : int(internal::traits<ExpressionType>::RowsAtCompileTime), Direction==Horizontal ? int(HNormalized_SizeMinusOne) : int(internal::traits<ExpressionType>::ColsAtCompileTime)> Eigen::VectorwiseOp< ExpressionType, Direction >::HNormalized_Block |
Definition at line 571 of file VectorwiseOp.h.
typedef Block<const ExpressionType, Direction==Vertical ? 1 : int(internal::traits<ExpressionType>::RowsAtCompileTime), Direction==Horizontal ? 1 : int(internal::traits<ExpressionType>::ColsAtCompileTime)> Eigen::VectorwiseOp< ExpressionType, Direction >::HNormalized_Factors |
Definition at line 575 of file VectorwiseOp.h.
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> > Eigen::VectorwiseOp< ExpressionType, Direction >::HNormalizedReturnType |
Definition at line 581 of file VectorwiseOp.h.
typedef ExpressionType::Index Eigen::VectorwiseOp< ExpressionType, Direction >::Index |
Definition at line 171 of file VectorwiseOp.h.
typedef ExpressionType::RealScalar Eigen::VectorwiseOp< ExpressionType, Direction >::RealScalar |
Definition at line 170 of file VectorwiseOp.h.
typedef Replicate<ExpressionType,Direction==Vertical?Dynamic:1,Direction==Horizontal?Dynamic:1> Eigen::VectorwiseOp< ExpressionType, Direction >::ReplicateReturnType |
Definition at line 411 of file VectorwiseOp.h.
typedef ExpressionType::Scalar Eigen::VectorwiseOp< ExpressionType, Direction >::Scalar |
Definition at line 169 of file VectorwiseOp.h.
typedef internal::conditional<Direction==Vertical, typename ExpressionType::ColXpr, typename ExpressionType::RowXpr>::type Eigen::VectorwiseOp< ExpressionType, Direction >::SubVector [protected] |
Definition at line 204 of file VectorwiseOp.h.
anonymous enum |
Definition at line 193 of file VectorwiseOp.h.
anonymous enum |
Definition at line 561 of file VectorwiseOp.h.
Eigen::VectorwiseOp< ExpressionType, Direction >::VectorwiseOp | ( | ExpressionType & | matrix | ) | [inline] |
Definition at line 261 of file VectorwiseOp.h.
const ExpressionType& Eigen::VectorwiseOp< ExpressionType, Direction >::_expression | ( | ) | const [inline] |
Definition at line 264 of file VectorwiseOp.h.
const ReturnType<internal::member_all>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::all | ( | void | ) | const [inline] |
true
.Definition at line 370 of file VectorwiseOp.h.
const ReturnType<internal::member_any>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::any | ( | void | ) | const [inline] |
true
.Definition at line 377 of file VectorwiseOp.h.
const ReturnType<internal::member_blueNorm,RealScalar>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::blueNorm | ( | ) | const [inline] |
Definition at line 328 of file VectorwiseOp.h.
const PartialReduxExpr<ExpressionType, internal::member_count<Index>, Direction> Eigen::VectorwiseOp< ExpressionType, Direction >::count | ( | ) | const [inline] |
true
coefficients of each respective column (or row).Example:
Definition at line 387 of file VectorwiseOp.h.
const VectorwiseOp< ExpressionType, Direction >::CrossReturnType Eigen::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.
Definition at line 101 of file OrthoMethods.h.
ExtendedType<OtherDerived>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::extendedTo | ( | const DenseBase< OtherDerived > & | other | ) | const [inline, protected] |
Definition at line 225 of file VectorwiseOp.h.
OppositeExtendedType<OtherDerived>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::extendedToOpposite | ( | const DenseBase< OtherDerived > & | other | ) | const [inline, protected] |
Definition at line 247 of file VectorwiseOp.h.
const VectorwiseOp< ExpressionType, Direction >::HNormalizedReturnType Eigen::VectorwiseOp< ExpressionType, Direction >::hnormalized | ( | ) | const [inline] |
*this
Example:
Definition at line 176 of file Homogeneous.h.
const ReturnType<internal::member_hypotNorm,RealScalar>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::hypotNorm | ( | ) | const [inline] |
Definition at line 346 of file VectorwiseOp.h.
const ReturnType<internal::member_maxCoeff>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::maxCoeff | ( | ) | const [inline] |
*this
contains NaN.Example:
Definition at line 299 of file VectorwiseOp.h.
const ReturnType<internal::member_mean>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::mean | ( | ) | const [inline] |
Definition at line 363 of file VectorwiseOp.h.
const ReturnType<internal::member_minCoeff>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::minCoeff | ( | ) | const [inline] |
*this
contains NaN.Example:
Definition at line 287 of file VectorwiseOp.h.
const ReturnType<internal::member_norm,RealScalar>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::norm | ( | ) | const [inline] |
Example:
Definition at line 319 of file VectorwiseOp.h.
void Eigen::VectorwiseOp< ExpressionType, Direction >::normalize | ( | ) | [inline] |
Normalize in-place each row or columns of the referenced matrix.
Definition at line 547 of file VectorwiseOp.h.
CwiseBinaryOp<internal::scalar_quotient_op<Scalar>, const ExpressionTypeNestedCleaned, const typename OppositeExtendedType<typename ReturnType<internal::member_norm,RealScalar>::Type>::Type> Eigen::VectorwiseOp< ExpressionType, Direction >::normalized | ( | ) | const [inline] |
Definition at line 541 of file VectorwiseOp.h.
EIGEN_STRONG_INLINE CwiseBinaryOp<internal::scalar_product_op<Scalar>, const ExpressionTypeNestedCleaned, const typename ExtendedType<OtherDerived>::Type> Eigen::VectorwiseOp< ExpressionType, Direction >::operator* | ( | const DenseBase< OtherDerived > & | other | ) | const [inline] |
Returns the expression where each subvector is the product of the vector other by the corresponding subvector of *this
Definition at line 512 of file VectorwiseOp.h.
ExpressionType& Eigen::VectorwiseOp< ExpressionType, Direction >::operator*= | ( | const DenseBase< OtherDerived > & | other | ) | [inline] |
Multiples each subvector of *this
by the vector other
Definition at line 462 of file VectorwiseOp.h.
EIGEN_STRONG_INLINE CwiseBinaryOp<internal::scalar_sum_op<Scalar>, const ExpressionTypeNestedCleaned, const typename ExtendedType<OtherDerived>::Type> Eigen::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
Definition at line 487 of file VectorwiseOp.h.
ExpressionType& Eigen::VectorwiseOp< ExpressionType, Direction >::operator+= | ( | const DenseBase< OtherDerived > & | other | ) | [inline] |
Adds the vector other to each subvector of *this
Definition at line 444 of file VectorwiseOp.h.
CwiseBinaryOp<internal::scalar_difference_op<Scalar>, const ExpressionTypeNestedCleaned, const typename ExtendedType<OtherDerived>::Type> Eigen::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
Definition at line 499 of file VectorwiseOp.h.
ExpressionType& Eigen::VectorwiseOp< ExpressionType, Direction >::operator-= | ( | const DenseBase< OtherDerived > & | other | ) | [inline] |
Substracts the vector other to each subvector of *this
Definition at line 453 of file VectorwiseOp.h.
CwiseBinaryOp<internal::scalar_quotient_op<Scalar>, const ExpressionTypeNestedCleaned, const typename ExtendedType<OtherDerived>::Type> Eigen::VectorwiseOp< ExpressionType, Direction >::operator/ | ( | const DenseBase< OtherDerived > & | other | ) | const [inline] |
Returns the expression where each subvector is the quotient of the corresponding subvector of *this
by the vector other
Definition at line 526 of file VectorwiseOp.h.
ExpressionType& Eigen::VectorwiseOp< ExpressionType, Direction >::operator/= | ( | const DenseBase< OtherDerived > & | other | ) | [inline] |
Divides each subvector of *this
by the vector other
Definition at line 473 of file VectorwiseOp.h.
ExpressionType& Eigen::VectorwiseOp< ExpressionType, Direction >::operator= | ( | const DenseBase< OtherDerived > & | other | ) | [inline] |
Copies the vector other to each subvector of *this
Definition at line 434 of file VectorwiseOp.h.
const ReturnType<internal::member_prod>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::prod | ( | ) | const [inline] |
Example:
Definition at line 397 of file VectorwiseOp.h.
const ReduxReturnType<BinaryOp>::Type Eigen::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.
Definition at line 275 of file VectorwiseOp.h.
const VectorwiseOp< ExpressionType, Direction >::ReplicateReturnType Eigen::VectorwiseOp< ExpressionType, Direction >::replicate | ( | Index | factor | ) | const |
*this
Example:
Definition at line 169 of file Replicate.h.
const Replicate<ExpressionType,(IsVertical?Factor:1),(IsHorizontal?Factor:1)> Eigen::VectorwiseOp< ExpressionType, Direction >::replicate | ( | Index | factor = Factor | ) | const [inline] |
*this
Example:
Definition at line 424 of file VectorwiseOp.h.
const Reverse<ExpressionType, Direction> Eigen::VectorwiseOp< ExpressionType, Direction >::reverse | ( | ) | const [inline] |
Example:
Definition at line 408 of file VectorwiseOp.h.
const ReturnType<internal::member_squaredNorm,RealScalar>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::squaredNorm | ( | ) | const [inline] |
Example:
Definition at line 309 of file VectorwiseOp.h.
const ReturnType<internal::member_stableNorm,RealScalar>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::stableNorm | ( | ) | const [inline] |
Definition at line 337 of file VectorwiseOp.h.
SubVector Eigen::VectorwiseOp< ExpressionType, Direction >::subVector | ( | Index | i | ) | [inline, protected] |
Definition at line 205 of file VectorwiseOp.h.
Index Eigen::VectorwiseOp< ExpressionType, Direction >::subVectors | ( | ) | const [inline, protected] |
Definition at line 212 of file VectorwiseOp.h.
const ReturnType<internal::member_sum>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::sum | ( | ) | const [inline] |
Example:
Definition at line 356 of file VectorwiseOp.h.
ExpressionTypeNested Eigen::VectorwiseOp< ExpressionType, Direction >::m_matrix [protected] |
Definition at line 586 of file VectorwiseOp.h.