RTOp Package Browser (Single Doxygen Collection) Version of the Day
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
RTOpPack::ROpGetSubVector< Scalar > Class Template Reference

Reduction operator that extracts a sub-vector in the range of global zero-based indexes [l,u]. More...

#include <RTOpPack_ROpGetSubVector_decl.hpp>

Inheritance diagram for RTOpPack::ROpGetSubVector< Scalar >:
Inheritance graph
[legend]

Public Types

typedef RTOpT< Scalar >::primitive_value_type primitive_value_type
 
- Public Types inherited from RTOpPack::RTOpT< Scalar >
typedef PrimitiveTypeTraits< Scalar, Scalar >::primitiveType primitive_value_type
 

Public Member Functions

 ROpGetSubVector (const index_type l=0, const index_type u=0)
 
void set_range (const index_type l, const index_type u)
 Set the range of global indexes to extract elements for.
 
const ConstSubVectorView< Scalar > operator() (const ReductTarget &reduct_obj) const
 Extract the subvector after all of the reductions are completed.
 
- Public Member Functions inherited from RTOpPack::RTOpT< Scalar >
void get_reduct_type_num_entries (const Ptr< int > &num_values, const Ptr< int > &num_indexes, const Ptr< int > &num_chars) const
 Get the number of entries of each basic data type in the externalized state for a reduction object for this operator.
 
Teuchos::RCP< ReductTargetreduct_obj_create () const
 Creates a new reduction target object initialized and ready to be used in a reduction.
 
void reduce_reduct_objs (const ReductTarget &in_reduct_obj, const Ptr< ReductTarget > &inout_reduct_obj) const
 Reduce intermediate reduction target objects.
 
void reduct_obj_reinit (const Ptr< ReductTarget > &reduct_obj) const
 Reinitialize an already created reduction object.
 
void extract_reduct_obj_state (const ReductTarget &reduct_obj, const ArrayView< primitive_value_type > &value_data, const ArrayView< index_type > &index_data, const ArrayView< char_type > &char_data) const
 Extract the state of an already created reduction object.
 
void load_reduct_obj_state (const ArrayView< const primitive_value_type > &value_data, const ArrayView< const index_type > &index_data, const ArrayView< const char_type > &char_data, const Ptr< ReductTarget > &reduct_obj) const
 Load the state of an already created reduction object given arrays of primitive objects.
 
std::string op_name () const
 Return the name (as a null-terminated C-style string) of the operator.
 
bool coord_invariant () const
 Returns true if this operator is coordinate invariant.
 
Range1D range () const
 Returns the continuous range of elements that this operator is defined over.
 
void apply_op (const ArrayView< const ConstSubVectorView< Scalar > > &sub_vecs, const ArrayView< const SubVectorView< Scalar > > &targ_sub_vecs, const Ptr< ReductTarget > &reduct_obj) const
 Apply the reduction/transformation operator to a set of sub-vectors.
 

Overridden from RTOpT

index_type l_
 
index_type u_
 
void get_reduct_type_num_entries_impl (const Ptr< int > &num_values, const Ptr< int > &num_indexes, const Ptr< int > &num_chars) const
 
Teuchos::RCP< ReductTargetreduct_obj_create_impl () const
 
void reduce_reduct_objs_impl (const ReductTarget &in_reduct_obj, const Ptr< ReductTarget > &inout_reduct_obj) const
 
void reduct_obj_reinit_impl (const Ptr< ReductTarget > &reduct_obj) const
 
void extract_reduct_obj_state_impl (const ReductTarget &reduct_obj, const ArrayView< primitive_value_type > &value_data, const ArrayView< index_type > &index_data, const ArrayView< char_type > &char_data) const
 
void load_reduct_obj_state_impl (const ArrayView< const primitive_value_type > &value_data, const ArrayView< const index_type > &index_data, const ArrayView< const char_type > &char_data, const Ptr< ReductTarget > &reduct_obj) const
 
bool coord_invariant_impl () const
 
void apply_op_impl (const ArrayView< const ConstSubVectorView< Scalar > > &sub_vecs, const ArrayView< const SubVectorView< Scalar > > &targ_sub_vecs, const Ptr< ReductTarget > &reduct_obj) const
 

Additional Inherited Members

- Protected Member Functions inherited from RTOpPack::RTOpT< Scalar >
 RTOpT (const std::string &op_name_base="")
 Constructor that creates an operator name appended with the type.
 
void setOpNameBase (const std::string &op_name_base)
 Just set the operator name.
 
virtual std::string op_name_impl () const
 
virtual Range1D range_impl () const
 

Detailed Description

template<class Scalar>
class RTOpPack::ROpGetSubVector< Scalar >

Reduction operator that extracts a sub-vector in the range of global zero-based indexes [l,u].

ToDo: Finish documentation!

Definition at line 59 of file RTOpPack_ROpGetSubVector_decl.hpp.

Member Typedef Documentation

◆ primitive_value_type

template<class Scalar >
typedef RTOpT<Scalar>::primitive_value_type RTOpPack::ROpGetSubVector< Scalar >::primitive_value_type

Definition at line 63 of file RTOpPack_ROpGetSubVector_decl.hpp.

Constructor & Destructor Documentation

◆ ROpGetSubVector()

template<class Scalar >
RTOpPack::ROpGetSubVector< Scalar >::ROpGetSubVector ( const index_type l = 0,
const index_type u = 0 )

Definition at line 54 of file RTOpPack_ROpGetSubVector_def.hpp.

Member Function Documentation

◆ set_range()

template<class Scalar >
void RTOpPack::ROpGetSubVector< Scalar >::set_range ( const index_type l,
const index_type u )

Set the range of global indexes to extract elements for.

Definition at line 62 of file RTOpPack_ROpGetSubVector_def.hpp.

◆ operator()()

template<class Scalar >
const ConstSubVectorView< Scalar > RTOpPack::ROpGetSubVector< Scalar >::operator() ( const ReductTarget & reduct_obj) const

Extract the subvector after all of the reductions are completed.

Definition at line 73 of file RTOpPack_ROpGetSubVector_def.hpp.

◆ get_reduct_type_num_entries_impl()

template<class Scalar >
void RTOpPack::ROpGetSubVector< Scalar >::get_reduct_type_num_entries_impl ( const Ptr< int > & num_values,
const Ptr< int > & num_indexes,
const Ptr< int > & num_chars ) const
virtual

Reimplemented from RTOpPack::RTOpT< Scalar >.

Definition at line 84 of file RTOpPack_ROpGetSubVector_def.hpp.

◆ reduct_obj_create_impl()

template<class Scalar >
Teuchos::RCP< ReductTarget > RTOpPack::ROpGetSubVector< Scalar >::reduct_obj_create_impl ( ) const
virtual

Reimplemented from RTOpPack::RTOpT< Scalar >.

Definition at line 100 of file RTOpPack_ROpGetSubVector_def.hpp.

◆ reduce_reduct_objs_impl()

template<class Scalar >
void RTOpPack::ROpGetSubVector< Scalar >::reduce_reduct_objs_impl ( const ReductTarget & in_reduct_obj,
const Ptr< ReductTarget > & inout_reduct_obj ) const
virtual

Reimplemented from RTOpPack::RTOpT< Scalar >.

Definition at line 112 of file RTOpPack_ROpGetSubVector_def.hpp.

◆ reduct_obj_reinit_impl()

template<class Scalar >
void RTOpPack::ROpGetSubVector< Scalar >::reduct_obj_reinit_impl ( const Ptr< ReductTarget > & reduct_obj) const
virtual

Reimplemented from RTOpPack::RTOpT< Scalar >.

Definition at line 153 of file RTOpPack_ROpGetSubVector_def.hpp.

◆ extract_reduct_obj_state_impl()

template<class Scalar >
void RTOpPack::ROpGetSubVector< Scalar >::extract_reduct_obj_state_impl ( const ReductTarget & reduct_obj,
const ArrayView< primitive_value_type > & value_data,
const ArrayView< index_type > & index_data,
const ArrayView< char_type > & char_data ) const
virtual

Reimplemented from RTOpPack::RTOpT< Scalar >.

Definition at line 166 of file RTOpPack_ROpGetSubVector_def.hpp.

◆ load_reduct_obj_state_impl()

template<class Scalar >
void RTOpPack::ROpGetSubVector< Scalar >::load_reduct_obj_state_impl ( const ArrayView< const primitive_value_type > & value_data,
const ArrayView< const index_type > & index_data,
const ArrayView< const char_type > & char_data,
const Ptr< ReductTarget > & reduct_obj ) const
virtual

Reimplemented from RTOpPack::RTOpT< Scalar >.

Definition at line 194 of file RTOpPack_ROpGetSubVector_def.hpp.

◆ coord_invariant_impl()

template<class Scalar >
bool RTOpPack::ROpGetSubVector< Scalar >::coord_invariant_impl ( ) const
virtual

Reimplemented from RTOpPack::RTOpT< Scalar >.

Definition at line 227 of file RTOpPack_ROpGetSubVector_def.hpp.

◆ apply_op_impl()

template<class Scalar >
void RTOpPack::ROpGetSubVector< Scalar >::apply_op_impl ( const ArrayView< const ConstSubVectorView< Scalar > > & sub_vecs,
const ArrayView< const SubVectorView< Scalar > > & targ_sub_vecs,
const Ptr< ReductTarget > & reduct_obj ) const
virtual

Implements RTOpPack::RTOpT< Scalar >.

Definition at line 234 of file RTOpPack_ROpGetSubVector_def.hpp.

Member Data Documentation

◆ l_

template<class Scalar >
index_type RTOpPack::ROpGetSubVector< Scalar >::l_
private

Definition at line 120 of file RTOpPack_ROpGetSubVector_decl.hpp.

◆ u_

template<class Scalar >
index_type RTOpPack::ROpGetSubVector< Scalar >::u_
private

Definition at line 121 of file RTOpPack_ROpGetSubVector_decl.hpp.


The documentation for this class was generated from the following files: