RTOpPack::ROpMaxIndexLessThanBound< Scalar > Class Template Reference

Returns the maximum element less than some bound along with its index: result.scalar = x(k) and result.index = k such that x(k) >= x(i) for all i where x(i) < bound and k is the minimum index to break ties. More...

#include <RTOpPack_ROpMaxIndexLessThanBound.hpp>

Inheritance diagram for RTOpPack::ROpMaxIndexLessThanBound< Scalar >:

[legend]
List of all members.

Overridden from RTOpT

bool coord_invariant () const
 This RTOp is NOT coordinate invariant!
void reduce_reduct_objs (const ReductTarget &in_reduct_obj, ReductTarget *inout_reduct_obj) const
 
void apply_op (const int num_vecs, const SubVectorT< Scalar > sub_vecs[], const int num_targ_vecs, const MutableSubVectorT< Scalar > targ_sub_vecs[], ReductTarget *reduct_obj) const
 

Public Member Functions

void bound (const Scalar &bound)
 
 ROpMaxIndexLessThanBound (const Scalar &bound=Teuchos::ScalarTraits< Scalar >::zero())
 
ScalarIndex< Scalar > operator() (const ReductTarget &reduct_obj) const
 

Detailed Description

template<class Scalar>
class RTOpPack::ROpMaxIndexLessThanBound< Scalar >

Returns the maximum element less than some bound along with its index: result.scalar = x(k) and result.index = k such that x(k) >= x(i) for all i where x(i) < bound and k is the minimum index to break ties.

If no element is less than bound then results.index < 0.

Warning, this class can only be used in serial and SPMD mode as it does not yet support the externalization and internalization of object data.

Definition at line 51 of file RTOpPack_ROpMaxIndexLessThanBound.hpp.


Constructor & Destructor Documentation

template<class Scalar>
RTOpPack::ROpMaxIndexLessThanBound< Scalar >::ROpMaxIndexLessThanBound const Scalar &  bound = Teuchos::ScalarTraits<Scalar>::zero()  )  [inline]
 

Definition at line 56 of file RTOpPack_ROpMaxIndexLessThanBound.hpp.


Member Function Documentation

template<class Scalar>
void RTOpPack::ROpMaxIndexLessThanBound< Scalar >::bound const Scalar &  bound  )  [inline]
 

Definition at line 54 of file RTOpPack_ROpMaxIndexLessThanBound.hpp.

template<class Scalar>
ScalarIndex<Scalar> RTOpPack::ROpMaxIndexLessThanBound< Scalar >::operator() const ReductTarget reduct_obj  )  const [inline]
 

Definition at line 62 of file RTOpPack_ROpMaxIndexLessThanBound.hpp.

template<class Scalar>
bool RTOpPack::ROpMaxIndexLessThanBound< Scalar >::coord_invariant  )  const [inline, virtual]
 

This RTOp is NOT coordinate invariant!

Reimplemented from RTOpPack::RTOpT< Scalar >.

Definition at line 66 of file RTOpPack_ROpMaxIndexLessThanBound.hpp.

template<class Scalar>
void RTOpPack::ROpMaxIndexLessThanBound< Scalar >::reduce_reduct_objs const ReductTarget in_reduct_obj,
ReductTarget inout_reduct_obj
const [inline, virtual]
 

Reimplemented from RTOpPack::RTOpT< Scalar >.

Definition at line 68 of file RTOpPack_ROpMaxIndexLessThanBound.hpp.

template<class Scalar>
void RTOpPack::ROpMaxIndexLessThanBound< Scalar >::apply_op const int  num_vecs,
const SubVectorT< Scalar >  sub_vecs[],
const int  num_targ_vecs,
const MutableSubVectorT< Scalar >  targ_sub_vecs[],
ReductTarget reduct_obj
const [inline, virtual]
 

Implements RTOpPack::RTOpT< Scalar >.

Definition at line 78 of file RTOpPack_ROpMaxIndexLessThanBound.hpp.


The documentation for this class was generated from the following file:
Generated on Thu Sep 18 12:39:44 2008 for RTOp : Vector Reduction/Transformation Operators by doxygen 1.3.9.1