Classes | |
| class | RTOpPack::ReductTarget |
| Abstract base class for all reduction objects. More... | |
| class | RTOpPack::RTOpT< Scalar > |
| Templated interface to vector reduction/transformation operators {abstract}. More... | |
| class | RTOpPack::UnknownError |
| More... | |
| class | RTOpPack::InvalidUsage |
| More... | |
| class | RTOpPack::InvalidNumVecs |
| More... | |
| class | RTOpPack::InvalidNumTargVecs |
| More... | |
| class | RTOpPack::IncompatibleVecs |
| More... | |
| class | RTOpPack::ConstSubVectorView< Scalar > |
| Class for a non-mutable sub-vector. More... | |
| class | RTOpPack::SubVectorView< Scalar > |
| Class for a mutable sub-vector. More... | |
| class | RTOpPack::SparseSubVectorT< Scalar > |
| Class for a (sparse or dense) sub-vector. More... | |
| class | RTOpPack::ConstSubMultiVectorView< Scalar > |
| Class for a non-mutable sub-multi-vector (submatrix). More... | |
| class | RTOpPack::SubMultiVectorView< Scalar > |
| Class for a mutable sub-vector. More... | |
| class | RTOpPack::ROpCountNanInf< Scalar > |
| Reduction operator that counts the number of entries that are NaN or Inf. More... | |
| class | RTOpPack::ROpDotProd< Scalar > |
Dot product reduction operator: result = sum( conj(v0[i])*v1[i], i=0...n-1 ). More... | |
| class | RTOpPack::ROpGetSubVector< Scalar > |
| Reduction operator that extracts a sub-vector in the range of global zero-based indexes [l,u]. More... | |
| class | RTOpPack::ReductTargetSubVectorT< Scalar > |
| More... | |
| class | RTOpPack::ROpMax< Scalar > |
Returns the maximum element: result = max{ v0[i], i=0...n-1 }. More... | |
| class | RTOpPack::ROpMaxIndex< Scalar > |
Returns the maximum element and its index: result.scalar = x(k) and result.index = k such that x(k) >= x(i) for i=0...n-1 and k is the minimum index to break ties. More... | |
| 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. More... | |
| class | RTOpPack::ROpMin< Scalar > |
Returns the minimum element: result = min{ v0[i], i=0...n-1 }. More... | |
| class | RTOpPack::ROpMinIndex< Scalar > |
Returns the minimum element and its index: result.scalar = x(k) and result.index = k such that x(k) <= x(i) for i=0...n-1 and k is the minimum index to break ties. More... | |
| class | RTOpPack::ROpMinIndexGreaterThanBound< Scalar > |
Returns the minimum element greater 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... | |
| class | RTOpPack::ROpNorm1< Scalar > |
One norm reduction operator: result = max( |v0[i]|, i=0...n-1 ). More... | |
| class | RTOpPack::ROpNorm2< Scalar > |
Two (Euclidean) norm reduction operator: result = sqrt( sum( conj(v0[i])*v0[i], i=0...n-1 ) ). More... | |
| class | RTOpPack::ROpNormInf< Scalar > |
Infinity norm reduction operator: result = sum( |v0[i]|, i=0...n-1 ). More... | |
| class | RTOpPack::ROpSum< Scalar > |
Summation reduction operator: result = sum( v0[i], i=0...n-1 ). More... | |
| class | RTOpPack::ROpWeightedNorm2< Scalar > |
Weighted Two (Euclidean) norm reduction operator: result = sqrt( sum( v0[i]*conj(v1[i])*v1[i], i=0...n-1 ) ). More... | |
| class | RTOpPack::SUNDIALS_VProd< Scalar > |
| class | RTOpPack::SUNDIALS_VDiv< Scalar > |
| class | RTOpPack::SUNDIALS_VScale< Scalar > |
| class | RTOpPack::SUNDIALS_VAddConst< Scalar > |
| class | RTOpPack::SUNDIALS_VWL2Norm< Scalar > |
| class | RTOpPack::SUNDIALS_VWrmsMaskNorm< Scalar > |
| class | RTOpPack::SUNDIALS_VConstrMask< Scalar > |
| class | RTOpPack::SUNDIALS_VMinQuotient< Scalar > |
| class | RTOpPack::SUNDIALS_VInvTest< Scalar > |
| class | RTOpPack::SUNDIALS_VCompare< Scalar > |
| class | RTOpPack::TOpAbs< Scalar > |
Transformation operator that takes absolute values of elements: z0[i] = abs(v0[i]), i=0...n-1. More... | |
| class | RTOpPack::TOpAddScalar< Scalar > |
Add a scalar to a vector transformation operator: z0[i] += alpha, i=0...n-1. More... | |
| class | RTOpPack::TOpAssignScalar< Scalar > |
Assign a scalar to a vector transformation operator: z0[i] = alpha, i=0...n-1. More... | |
| class | RTOpPack::TOpAssignVectors< Scalar > |
VectorBase assignment transformation operator: z0[i] = v0[i], i=0...n-1. More... | |
| class | RTOpPack::TOpAXPY< Scalar > |
AXPY transformation operator: z0[i] += alpha*v0[i], i=0...n-1. More... | |
| class | RTOpPack::TOpEleWiseDivide< Scalar > |
Element-wise division transformation operator: z0[i] += alpha*v0[i]/v1[i], i=0...n-1. More... | |
| class | RTOpPack::TOpEleWiseProd< Scalar > |
Element-wise product transformation operator: z0[i] += alpha*v0[i]*v1[i], i=0...n-1. More... | |
| class | RTOpPack::TOpEleWiseProdUpdate< Scalar > |
Element-wise product update transformation operator: z0[i] *= alpha*v0[i], i=0...n-1. More... | |
| class | RTOpPack::TOpLinearCombination< Scalar > |
Linear combination transformation operator: z0[i] = beta*z0[i] + sum( alpha[k]*v[k][i], k=0...num_vecs-1 ), i=0...n-1. More... | |
| class | RTOpPack::TOpRandomize< Scalar > |
Generate a random vector in the range [l,u]: z0[i] = 0.5*((u-l)*Teuchos::ScalarTraits<Scalar>::random()+(u+l)), i=0...n-1. More... | |
| class | RTOpPack::TOpReciprocal< Scalar > |
VectorBase assignment transformation operator: z0[i] = v0[i], i=0...n-1. More... | |
| class | RTOpPack::TOpScaleVector< Scalar > |
Simple transformation operator that scales every vector element by a scalar alpha. More... | |
| class | RTOpPack::TOpSetSubVector< Scalar > |
| Advanced transformation operator that assigns elements from a sparse explicit vector. More... | |
| class | RTOpPack::RTOpServer< Scalar > |
Server for creating RTOpT objects given just the operators name. More... | |
| struct | RTOpPack::ScalarIndex< Scalar > |
| Simple struct for a Scalar and an Index object. More... | |
| class | RTOpPack::ReductTargetScalar< Scalar > |
Simple ReductTarget subclass for simple scalar objects. More... | |
| class | RTOpPack::ReductTargetScalarIndex< Scalar > |
Simple ReductTarget subclass for Scalar,Index objects. More... | |
| class | RTOpPack::ROpScalarReductionBase< Scalar, ReductScalar > |
| Simple base class for all reduction operators that return a simple scalar reduction object. More... | |
| class | RTOpPack::ROpScalarReductionBaseRawValSetter< true, false, Scalar, ReductScalar > |
| class | RTOpPack::ROpScalarReductionBaseRawValSetter< true, true, Scalar, ReductScalar > |
| class | RTOpPack::ROpScalarReductionBaseRawValSetter< false, isScalarReductScalar, Scalar, ReductScalar > |
| class | RTOpPack::ROpScalarIndexReductionBase< Scalar > |
Base class for all reduction operators that return a ScalarIndex reduction object. More... | |
| class | RTOpPack::ROpIndexReductionBase< Scalar > |
| Simple base class for all reduction operators that return a simple index reduction object. More... | |
| class | RTOpPack::ROpScalarTransformationBase< Scalar > |
| Simple base class for all transformation operators that use a single piece of Scalar data. More... | |
| class | RTOpPack::ROpScalarScalarTransformationBase< Scalar > |
| Simple base class for all transformation operators that use a pair of Scalar data members. More... | |
| class | RTOpPack::RTOpBoolReduceAndTransform< Scalar > |
| Do a transformation and reduce to a bool. Needed for the NVector adapters for the SUNDIALS interface. More... | |
| class | RTOpPack::ReductTargetSerializer< Scalar > |
Serializer subclass for ReductTarget objects. More... | |
| class | RTOpPack::ReductTargetReductionOp< Scalar > |
ReductionOp subclass for ReductTarget objects. More... | |
| class | RTOpPack::TOpUnaryFuncPtr< Scalar > |
RTOpT subclass for unary transformation functions using a function pointer. More... | |
Typedefs | |
| typedef Teuchos_Index | index_type |
| Depreciated . | |
| typedef char | char_type |
| Depreciated . | |
| typedef index_type | Index |
| | |
Functions | |
| template<class Scalar> | |
| void | assign_entries (const SubVectorView< Scalar > *msv, const ConstSubVectorView< Scalar > &sv) |
| template<class Scalar> | |
| void | assign_entries (const SubMultiVectorView< Scalar > *msmv, const ConstSubMultiVectorView< Scalar > &smv) |
| std::string | version () |
| Print the version of RTOp. | |
| template<class Scalar> | |
| void | print (const ConstSubVectorView< Scalar > &v, Teuchos::FancyOStream &out_arg) |
| template<class primitive_value_type> | |
| void | MPI_type_signature (const int num_values, const int num_indexes, const int num_chars, int *num_entries, int block_lengths[], MPI_Aint displacements[], MPI_Datatype datatypes[]) |
| Initialize MPI compatible type signature arrays for reduction/transformation operator object instance data and reduction target object data. | |
| template<class primitive_value_type> | |
| int | reduct_obj_ext_size (int num_values, int num_indexes, int num_chars) |
Return the size in bytes of an external representation of reduct_obj. | |
| template<class Scalar> | |
| void | extract_reduct_obj_ext_state (const RTOpT< Scalar > &op, const ReductTarget &reduct_obj, int num_values, int num_indexes, int num_chars, void *reduct_obj_ext) |
| | |
| template<class Scalar> | |
| void | load_reduct_obj_ext_state (const RTOpT< Scalar > &op, const void *reduct_obj_ext, ReductTarget *reduct_obj) |
| | |
| template<class Scalar> | |
| void | MPI_apply_op (MPI_Comm comm, const RTOpT< Scalar > &op, const int root_rank, const int num_vecs, const ConstSubVectorView< Scalar > sub_vecs[], const int num_targ_vecs, const SubVectorView< Scalar > targ_sub_vecs[], ReductTarget *reduct_obj) |
| Apply an RTOp in SMPD mode with MPI to a set of vectors with contiguous storage per processor. | |
| template<class Scalar> | |
| void | MPI_apply_op (MPI_Comm comm, const RTOpT< Scalar > &op, const int root_rank, const int num_cols, const int num_multi_vecs, const ConstSubMultiVectorView< Scalar > sub_multi_vecs[], const int num_targ_multi_vecs, const SubMultiVectorView< Scalar > targ_sub_multi_vecs[], ReductTarget *const reduct_objs[]) |
| Apply an RTOp in SMPD mode with MPI to a set of columns to a set of multi-vectors with contiguous storage per processor. | |
| template<class Scalar> | |
| void | MPI_all_reduce (MPI_Comm comm, const RTOpT< Scalar > &op, const int root_rank, const int num_cols, const ReductTarget *const i_reduct_objs[], ReductTarget *const reduct_objs[]) |
| Perform global reduction of reduction target objects. | |
| template<class Scalar> | |
| void | MPI_apply_op (MPI_Comm comm, const RTOpT< Scalar > &op, const int root_rank, const int num_cols, const int num_vecs, const ConstSubVectorView< Scalar > sub_vecs[], const int num_targ_vecs, const SubVectorView< Scalar > sub_targ_vecs[], ReductTarget *const reduct_objs[]) |
| Apply an RTOp in SMPD mode with MPI to a set of columns to a set of multi-vectors with contiguous storage per processor. | |
| template<class PrimitiveScalar> | |
| int | serializedSize (int num_values, int num_indexes, int num_chars) |
Return the size in bytes of an external representation of a ReductTarget object. | |
| template<class Scalar> | |
| void | serialize (const RTOpT< Scalar > &op, int num_values, int num_indexes, int num_chars, const ReductTarget &reduct_obj, char reduct_obj_ext[]) |
Serialize a ReductTarget object. | |
| template<class Scalar> | |
| void | deserialize (const RTOpT< Scalar > &op, int num_values, int num_indexes, int num_chars, const char reduct_obj_ext[], ReductTarget *reduct_obj) |
Deserialize a ReductTarget object. | |
| template<class Scalar> | |
| void | SPMD_all_reduce (const Teuchos::Comm< index_type > *comm, const RTOpT< Scalar > &op, const int num_cols, const ReductTarget *const i_reduct_objs[], ReductTarget *const reduct_objs[]) |
| Reduce a set of reduction objects. | |
| template<class Scalar> | |
| void | SPMD_apply_op (const Teuchos::Comm< index_type > *comm, const RTOpT< Scalar > &op, const int num_vecs, const ConstSubVectorView< Scalar > sub_vecs[], const int num_targ_vecs, const SubVectorView< Scalar > targ_sub_vecs[], ReductTarget *reduct_obj) |
| Apply an RTOp in SMPD mode to a set of vectors with contiguous storage per process. | |
| template<class Scalar> | |
| void | SPMD_apply_op (const Teuchos::Comm< index_type > *comm, const RTOpT< Scalar > &op, const int num_cols, const int num_multi_vecs, const ConstSubMultiVectorView< Scalar > sub_multi_vecs[], const int num_targ_multi_vecs, const SubMultiVectorView< Scalar > targ_sub_multi_vecs[], ReductTarget *const reduct_objs[]) |
| Apply an RTOp in SMPD mode to a set of columns to a set of multi-vectors with contiguous storage per process. | |
| template<class Scalar> | |
| void | SPMD_apply_op (const Teuchos::Comm< index_type > *comm, const RTOpT< Scalar > &op, const int num_cols, const int num_vecs, const ConstSubVectorView< Scalar > sub_vecs[], const int num_targ_vecs, const SubVectorView< Scalar > sub_targ_vecs[], ReductTarget *const reduct_objs[]) |
| Apply an RTOp in SMPD mode to a set of columns to a set of multi-vectors with contiguous storage per process. | |
Variables | |
| bool | show_mpi_apply_op_dump = false |
|
|
Depreciated .
Definition at line 44 of file RTOpPack_Types.hpp. |
|
|
Depreciated .
Definition at line 46 of file RTOpPack_Types.hpp. |
|
|
Definition at line 48 of file RTOpPack_Types.hpp. |
|
||||||||||||||||
|
Definition at line 355 of file RTOpPack_Types.hpp. |
|
||||||||||||||||
|
Definition at line 532 of file RTOpPack_Types.hpp. |
|
|
Print the version of RTOp.
Definition at line 34 of file RTOpPack_version.cpp. |
|
||||||||||||||||
|
Definition at line 49 of file RTOpPack_MPI_apply_op.hpp. |
|
||||||||||||||||||||||||||||||||||||
|
Initialize MPI compatible type signature arrays for reduction/transformation operator object instance data and reduction target object data.
MPI_Type_struct(...) for a description of these arrays.
Definition at line 161 of file RTOpPack_MPI_apply_op.hpp. |
|
||||||||||||||||||||
|
Return the size in bytes of an external representation of
Definition at line 76 of file RTOpPack_MPI_apply_op_decl.hpp. |
|
||||||||||||||||||||||||||||||||
|
Definition at line 208 of file RTOpPack_MPI_apply_op.hpp. |
|
||||||||||||||||||||
|
Definition at line 238 of file RTOpPack_MPI_apply_op.hpp. |
|
||||||||||||||||||||||||||||||||||||||||
|
Apply an RTOp in SMPD mode with MPI to a set of vectors with contiguous storage per processor. ToDo: Finish documentation! Definition at line 265 of file RTOpPack_MPI_apply_op.hpp. |
|
||||||||||||||||||||||||||||||||||||||||||||
|
Apply an RTOp in SMPD mode with MPI to a set of columns to a set of multi-vectors with contiguous storage per processor. ToDo: Finish documentation! Definition at line 285 of file RTOpPack_MPI_apply_op.hpp. |
|
||||||||||||||||||||||||||||||||
|
Perform global reduction of reduction target objects.
Definition at line 327 of file RTOpPack_MPI_apply_op.hpp. |
|
||||||||||||||||||||||||||||||||||||||||||||
|
Apply an RTOp in SMPD mode with MPI to a set of columns to a set of multi-vectors with contiguous storage per processor. ToDo: Finish documentation! Definition at line 462 of file RTOpPack_MPI_apply_op.hpp. |
|
||||||||||||||||||||
|
Return the size in bytes of an external representation of a
Definition at line 73 of file RTOpPack_SPMD_apply_op.hpp. |
|
||||||||||||||||||||||||||||||||
|
Serialize a
Definition at line 86 of file RTOpPack_SPMD_apply_op.hpp. |
|
||||||||||||||||||||||||||||||||
|
Deserialize a
Definition at line 123 of file RTOpPack_SPMD_apply_op.hpp. |
|
||||||||||||||||||||||||||||
|
Reduce a set of reduction objects. ToDo: Finish documentation! Definition at line 273 of file RTOpPack_SPMD_apply_op.hpp. |
|
||||||||||||||||||||||||||||||||||||
|
Apply an RTOp in SMPD mode to a set of vectors with contiguous storage per process. ToDo: Finish documentation! Definition at line 305 of file RTOpPack_SPMD_apply_op.hpp. |
|
||||||||||||||||||||||||||||||||||||||||
|
Apply an RTOp in SMPD mode to a set of columns to a set of multi-vectors with contiguous storage per process. ToDo: Finish documentation! Definition at line 324 of file RTOpPack_SPMD_apply_op.hpp. |
|
||||||||||||||||||||||||||||||||||||||||
|
Apply an RTOp in SMPD mode to a set of columns to a set of multi-vectors with contiguous storage per process. ToDo: Finish documentation! Definition at line 365 of file RTOpPack_SPMD_apply_op.hpp. |
|
|
Definition at line 33 of file RTOpPack_MPI_apply_op.cpp. |
1.3.9.1