Tpetra parallel linear algebra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Classes | Functions
Tpetra::RTI::detail Namespace Reference

Internal detail for Tpetra::RTI. Methods and class here are not guaranteed to be backwards compatible. More...

Classes

class  StdOpKernel
 Utility base class for kernels used to define Tpetra::Operator objects. More...
 
class  UnaryFunctorAdapter
 adapter class between kernels for Tpetra::RTI::unary_transform and Tpetra::RTI::detail::unary_transform More...
 
class  BinaryFunctorAdapter
 adapter class between kernels for Tpetra::RTI::binary_transform and Tpetra::RTI::detail::binary_transform More...
 
class  BinaryFunctorAdapterWithAlphaBeta
 adapter class between binary functors and BinaryOp More...
 
class  TertiaryFunctorAdapter
 adapter class between kernels for Tpetra::RTI::tertiary_transform and Tpetra::RTI::detail::tertiary_transform More...
 
class  RTIReductionAdapter1
 adapter class between kernels for Tpetra::RTI::binary_transform and Tpetra::RTI::detail::binary_transform More...
 
class  RTIReductionAdapter2
 adapter class between kernels for Tpetra::RTI::binary_transform and Tpetra::RTI::detail::binary_transform More...
 
class  RTIReductionAdapter3
 adapter class between kernels for Tpetra::RTI::binary_transform and Tpetra::RTI::detail::binary_transform for three vectors More...
 
class  RTIPreTransformReductionAdapter
 adapter class between kernels for Tpetra::RTI::binary_pre_transform_reduce and Tpetra::RTI::detail::binary_transform More...
 
class  RTIPreTransformReductionAdapter3
 adapter class between kernels for Tpetra::RTI::binary_pre_transform_reduce and Tpetra::RTI::detail::binary_transform More...
 
class  TeuchosValueTypeReductionOpAdapter
 decorator for Kokkos reduction kernels to satisfy requirements for Teuchos::ValueTypeReductionOp More...
 

Functions

template<class S , class LO , class GO , class Node , class OP >
void unary_transform (Vector< S, LO, GO, Node > &vec, OP op)
 pass vec data pointer to op, then execute via node parallel_for More...
 
template<class S1 , class S2 , class LO , class GO , class Node , class OP >
void binary_transform (Vector< S1, LO, GO, Node > &vec_inout, const Vector< S2, LO, GO, Node > &vec_in2, OP op)
 pass vec_inout and vec_in2 data pointers to op, then execute via node parallel_for More...
 
template<class S1 , class S2 , class S3 , class LO , class GO , class Node , class OP >
void tertiary_transform (Vector< S1, LO, GO, Node > &vec_inout, const Vector< S2, LO, GO, Node > &vec_in2, const Vector< S3, LO, GO, Node > &vec_in3, OP op)
 pass vec_inout, vec_in2 and vec_in3 data pointers to op, then execute via node parallel_for More...
 
template<class S , class LO , class GO , class Node , class OP >
OP::ReductionType reduce (const Vector< S, LO, GO, Node > &vec_in, OP op)
 pass vec_in data pointer to \ op, then execute via node parallel_reduce. More...
 
template<class S1 , class S2 , class LO , class GO , class Node , class OP >
OP::ReductionType reduce (const Vector< S1, LO, GO, Node > &vec_in1, const Vector< S2, LO, GO, Node > &vec_in2, OP op)
 pass vec_in1 and vec_in2 data pointers to \ op, then execute via node parallel_reduce. More...
 
template<class S1 , class S2 , class S3 , class LO , class GO , class Node , class OP >
OP::ReductionType reduce (const Vector< S1, LO, GO, Node > &vec_in1, const Vector< S2, LO, GO, Node > &vec_in2, const Vector< S3, LO, GO, Node > &vec_in3, OP op)
 pass vec_in1, vec_in2 and vec_in3 data pointers to \ op, then execute via node parallel_reduce. More...
 
template<class S1 , class S2 , class LO , class GO , class Node , class OP >
OP::ReductionType transform_reduce (Vector< S1, LO, GO, Node > &vec_inout, const Vector< S2, LO, GO, Node > &vec_in2, OP op)
 pass vec_inout and vec_in2 data pointers to \ op, then execute via node parallel_reduce. More...
 
template<class S1 , class S2 , class S3 , class LO , class GO , class Node , class OP >
OP::ReductionType transform_reduce (Vector< S1, LO, GO, Node > &vec_inout, const Vector< S2, LO, GO, Node > &vec_in2, const Vector< S3, LO, GO, Node > &vec_in3, OP op)
 pass vec_inout and vec_in2 data pointers to \ op, then execute via node parallel_reduce. More...
 

Detailed Description

Internal detail for Tpetra::RTI. Methods and class here are not guaranteed to be backwards compatible.

Function Documentation

template<class S , class LO , class GO , class Node , class OP >
void Tpetra::RTI::detail::unary_transform ( Vector< S, LO, GO, Node > &  vec,
OP  op 
)

pass vec data pointer to op, then execute via node parallel_for

Definition at line 328 of file Tpetra_RTI_detail.hpp.

template<class S1 , class S2 , class LO , class GO , class Node , class OP >
void Tpetra::RTI::detail::binary_transform ( Vector< S1, LO, GO, Node > &  vec_inout,
const Vector< S2, LO, GO, Node > &  vec_in2,
OP  op 
)

pass vec_inout and vec_in2 data pointers to op, then execute via node parallel_for

Definition at line 344 of file Tpetra_RTI_detail.hpp.

template<class S1 , class S2 , class S3 , class LO , class GO , class Node , class OP >
void Tpetra::RTI::detail::tertiary_transform ( Vector< S1, LO, GO, Node > &  vec_inout,
const Vector< S2, LO, GO, Node > &  vec_in2,
const Vector< S3, LO, GO, Node > &  vec_in3,
OP  op 
)

pass vec_inout, vec_in2 and vec_in3 data pointers to op, then execute via node parallel_for

Definition at line 366 of file Tpetra_RTI_detail.hpp.

template<class S , class LO , class GO , class Node , class OP >
OP::ReductionType Tpetra::RTI::detail::reduce ( const Vector< S, LO, GO, Node > &  vec_in,
OP  op 
)

pass vec_in data pointer to \ op, then execute via node parallel_reduce.

Definition at line 391 of file Tpetra_RTI_detail.hpp.

template<class S1 , class S2 , class LO , class GO , class Node , class OP >
OP::ReductionType Tpetra::RTI::detail::reduce ( const Vector< S1, LO, GO, Node > &  vec_in1,
const Vector< S2, LO, GO, Node > &  vec_in2,
OP  op 
)

pass vec_in1 and vec_in2 data pointers to \ op, then execute via node parallel_reduce.

Definition at line 415 of file Tpetra_RTI_detail.hpp.

template<class S1 , class S2 , class S3 , class LO , class GO , class Node , class OP >
OP::ReductionType Tpetra::RTI::detail::reduce ( const Vector< S1, LO, GO, Node > &  vec_in1,
const Vector< S2, LO, GO, Node > &  vec_in2,
const Vector< S3, LO, GO, Node > &  vec_in3,
OP  op 
)

pass vec_in1, vec_in2 and vec_in3 data pointers to \ op, then execute via node parallel_reduce.

Definition at line 445 of file Tpetra_RTI_detail.hpp.

template<class S1 , class S2 , class LO , class GO , class Node , class OP >
OP::ReductionType Tpetra::RTI::detail::transform_reduce ( Vector< S1, LO, GO, Node > &  vec_inout,
const Vector< S2, LO, GO, Node > &  vec_in2,
OP  op 
)

pass vec_inout and vec_in2 data pointers to \ op, then execute via node parallel_reduce.

Definition at line 477 of file Tpetra_RTI_detail.hpp.

template<class S1 , class S2 , class S3 , class LO , class GO , class Node , class OP >
OP::ReductionType Tpetra::RTI::detail::transform_reduce ( Vector< S1, LO, GO, Node > &  vec_inout,
const Vector< S2, LO, GO, Node > &  vec_in2,
const Vector< S3, LO, GO, Node > &  vec_in3,
OP  op 
)

pass vec_inout and vec_in2 data pointers to \ op, then execute via node parallel_reduce.

Definition at line 507 of file Tpetra_RTI_detail.hpp.