Tpetra Matrix/Vector Services Version of the Day
Tpetra::RTI::ReductionGlob< GOP, ROP, IOP > Class Template Reference

A type glob containing the types needed for calling Tpetra::RTI::reduce() with individual functors. More...

#include <Tpetra_RTI.hpp>

List of all members.


Detailed Description

template<class GOP, class ROP, class IOP>
class Tpetra::RTI::ReductionGlob< GOP, ROP, IOP >

A type glob containing the types needed for calling Tpetra::RTI::reduce() with individual functors.

Template Parameters:
GOPType of the operator genop, that generates successive new inputs of the reduction.
ROPType of the operator that performs the pairwise reduction operations.
IOPType of the operator that provides (via a zero-argument static function) the initial value of the reduction.

For reducing a pair of vectors v1, v2, successive reduction elements are generated in a way equivalent to genop(v1[i], v2[i]) for all indices i of the vector.

For reducing a triple of vectors v1, v2, v3, successive reduction elements are generated in a way equivalent to genop(v1[i], v2[i], v3[i]) for all indices i of the vector.

Regardless, each genop invocation generates a single value, and the sequence of these values is reduced using the binary operator redop. The initial value of this sequence comes from the static identity() method of IOP.

Definition at line 111 of file Tpetra_RTI.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines