RTOpPack::TOpLinearCombination< Scalar > Class Template Reference

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...

#include <RTOpPack_TOpLinearCombination_decl.hpp>

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

List of all members.

Public Member Functions

 TOpLinearCombination (const ArrayView< const Scalar > &alpha_in=Teuchos::null, const Scalar &beta=Teuchos::ScalarTraits< Scalar >::zero())
 
void alpha (const ArrayView< const Scalar > &alpha_in)
 
const ArrayView< const Scalar > alpha () const
 
void beta (const Scalar &beta_in)
 
Scalar beta () const
 
int num_vecs () const
 

Overridden from RTOpT



void apply_op_impl (const ArrayView< const ConstSubVectorView< Scalar > > &sub_vecs, const ArrayView< const SubVectorView< Scalar > > &targ_sub_vecs, const Ptr< ReductTarget > &reduct_obj_inout) const
 

Detailed Description

template<class Scalar>
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.

This transformation operator only accepts num_targ_vec==1 but accepts any num_vecs > 0.

Warning! this class can only be used in SPMD mode and not client/server or master/slave. You know what needs to happen for this to work!

Definition at line 49 of file RTOpPack_TOpLinearCombination_decl.hpp.


Constructor & Destructor Documentation

template<class Scalar >
RTOpPack::TOpLinearCombination< Scalar >::TOpLinearCombination ( const ArrayView< const Scalar > &  alpha_in = Teuchos::null,
const Scalar &  beta = Teuchos::ScalarTraits<Scalar>::zero() 
) [inline]

Definition at line 41 of file RTOpPack_TOpLinearCombination_def.hpp.


Member Function Documentation

template<class Scalar >
void RTOpPack::TOpLinearCombination< Scalar >::alpha ( const ArrayView< const Scalar > &  alpha_in  )  [inline]

Definition at line 55 of file RTOpPack_TOpLinearCombination_def.hpp.

template<class Scalar >
const ArrayView< const Scalar > RTOpPack::TOpLinearCombination< Scalar >::alpha (  )  const [inline]

Definition at line 65 of file RTOpPack_TOpLinearCombination_def.hpp.

template<class Scalar >
void RTOpPack::TOpLinearCombination< Scalar >::beta ( const Scalar &  beta_in  )  [inline]

Definition at line 70 of file RTOpPack_TOpLinearCombination_def.hpp.

template<class Scalar >
Scalar RTOpPack::TOpLinearCombination< Scalar >::beta (  )  const [inline]

Definition at line 74 of file RTOpPack_TOpLinearCombination_def.hpp.

template<class Scalar >
int RTOpPack::TOpLinearCombination< Scalar >::num_vecs (  )  const [inline]

Definition at line 78 of file RTOpPack_TOpLinearCombination_def.hpp.

template<class Scalar >
void RTOpPack::TOpLinearCombination< Scalar >::apply_op_impl ( const ArrayView< const ConstSubVectorView< Scalar > > &  sub_vecs,
const ArrayView< const SubVectorView< Scalar > > &  targ_sub_vecs,
const Ptr< ReductTarget > &  reduct_obj_inout 
) const [inline, virtual]

Implements RTOpPack::RTOpT< Scalar >.

Definition at line 85 of file RTOpPack_TOpLinearCombination_def.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends
Generated on Wed Apr 13 09:59:04 2011 for Collection of Concrete Vector Reduction/Transformation Operator Implementations by  doxygen 1.6.3