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:
Output:
Definition at line 166 of file VectorwiseOp.h.
typedef ExpressionType::PlainObject Eigen::VectorwiseOp< ExpressionType, Direction >::CrossReturnType |
Definition at line 558 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 174 of file VectorwiseOp.h.
typedef internal::remove_all<ExpressionTypeNested>::type Eigen::VectorwiseOp< ExpressionType, Direction >::ExpressionTypeNestedCleaned |
Definition at line 175 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 572 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 576 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 582 of file VectorwiseOp.h.
typedef ExpressionType::Index Eigen::VectorwiseOp< ExpressionType, Direction >::Index |
Definition at line 172 of file VectorwiseOp.h.
typedef ExpressionType::RealScalar Eigen::VectorwiseOp< ExpressionType, Direction >::RealScalar |
Definition at line 171 of file VectorwiseOp.h.
typedef Replicate<ExpressionType,Direction==Vertical?Dynamic:1,Direction==Horizontal?Dynamic:1> Eigen::VectorwiseOp< ExpressionType, Direction >::ReplicateReturnType |
Definition at line 412 of file VectorwiseOp.h.
typedef ExpressionType::Scalar Eigen::VectorwiseOp< ExpressionType, Direction >::Scalar |
Definition at line 170 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 205 of file VectorwiseOp.h.
anonymous enum |
Definition at line 194 of file VectorwiseOp.h.
anonymous enum |
Definition at line 562 of file VectorwiseOp.h.
Eigen::VectorwiseOp< ExpressionType, Direction >::VectorwiseOp | ( | ExpressionType & | matrix | ) | [inline] |
Definition at line 262 of file VectorwiseOp.h.
const ExpressionType& Eigen::VectorwiseOp< ExpressionType, Direction >::_expression | ( | ) | const [inline] |
Definition at line 265 of file VectorwiseOp.h.
const ReturnType<internal::member_all>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::all | ( | void | ) | const [inline] |
true
.Definition at line 371 of file VectorwiseOp.h.
const ReturnType<internal::member_any>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::any | ( | void | ) | const [inline] |
true
.Definition at line 378 of file VectorwiseOp.h.
const ReturnType<internal::member_blueNorm,RealScalar>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::blueNorm | ( | ) | const [inline] |
Definition at line 329 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:
Output:
Definition at line 388 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 226 of file VectorwiseOp.h.
OppositeExtendedType<OtherDerived>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::extendedToOpposite | ( | const DenseBase< OtherDerived > & | other | ) | const [inline, protected] |
Definition at line 248 of file VectorwiseOp.h.
const VectorwiseOp< ExpressionType, Direction >::HNormalizedReturnType Eigen::VectorwiseOp< ExpressionType, Direction >::hnormalized | ( | ) | const [inline] |
*this
Example:
Output:
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 347 of file VectorwiseOp.h.
const ReturnType<internal::member_maxCoeff>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::maxCoeff | ( | ) | const [inline] |
*this
contains NaN.Example:
Output:
Definition at line 300 of file VectorwiseOp.h.
const ReturnType<internal::member_mean>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::mean | ( | ) | const [inline] |
Definition at line 364 of file VectorwiseOp.h.
const ReturnType<internal::member_minCoeff>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::minCoeff | ( | ) | const [inline] |
*this
contains NaN.Example:
Output:
Definition at line 288 of file VectorwiseOp.h.
const ReturnType<internal::member_norm,RealScalar>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::norm | ( | ) | const [inline] |
Example:
Output:
Definition at line 320 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 548 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 542 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 513 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 463 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 488 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 445 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 500 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 454 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 527 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 474 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 435 of file VectorwiseOp.h.
const ReturnType<internal::member_prod>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::prod | ( | ) | const [inline] |
Example:
Output:
Definition at line 398 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 276 of file VectorwiseOp.h.
const VectorwiseOp< ExpressionType, Direction >::ReplicateReturnType Eigen::VectorwiseOp< ExpressionType, Direction >::replicate | ( | Index | factor | ) | const |
*this
Example:
Output:
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:
Output:
Definition at line 425 of file VectorwiseOp.h.
const Reverse<ExpressionType, Direction> Eigen::VectorwiseOp< ExpressionType, Direction >::reverse | ( | ) | const [inline] |
Example:
Output:
Definition at line 409 of file VectorwiseOp.h.
const ReturnType<internal::member_squaredNorm,RealScalar>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::squaredNorm | ( | ) | const [inline] |
Example:
Output:
Definition at line 310 of file VectorwiseOp.h.
const ReturnType<internal::member_stableNorm,RealScalar>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::stableNorm | ( | ) | const [inline] |
Definition at line 338 of file VectorwiseOp.h.
SubVector Eigen::VectorwiseOp< ExpressionType, Direction >::subVector | ( | Index | i | ) | [inline, protected] |
Definition at line 206 of file VectorwiseOp.h.
Index Eigen::VectorwiseOp< ExpressionType, Direction >::subVectors | ( | ) | const [inline, protected] |
Definition at line 213 of file VectorwiseOp.h.
const ReturnType<internal::member_sum>::Type Eigen::VectorwiseOp< ExpressionType, Direction >::sum | ( | ) | const [inline] |
Example:
Output:
Definition at line 357 of file VectorwiseOp.h.
ExpressionTypeNested Eigen::VectorwiseOp< ExpressionType, Direction >::m_matrix [protected] |
Definition at line 587 of file VectorwiseOp.h.