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

Inheritance diagram for RTOpPack::TOpLinearCombination< Scalar >:

[legend]
List of all members.

Overridden from RTOpT

void apply_op (const int num_vecs, const ConstSubVectorView< Scalar > sub_vecs[], const int num_targ_vecs, const SubVectorView< Scalar > targ_sub_vecs[], ReductTarget *reduct_obj) const
 

Public Member Functions

 TOpLinearCombination (const int num_vecs=0, const Scalar alpha[]=NULL, const Scalar &beta=Teuchos::ScalarTraits< Scalar >::zero())
 
void beta (const Scalar &beta)
 
Scalar beta () const
 
void alpha (const int num_vecs, const Scalar alpha[])
 
int num_vecs () const
 
const Scalar * alpha () 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.hpp.


Constructor & Destructor Documentation

template<class Scalar>
RTOpPack::TOpLinearCombination< Scalar >::TOpLinearCombination ( const int  num_vecs = 0,
const Scalar  alpha[] = NULL,
const Scalar &  beta = Teuchos::ScalarTraits<Scalar>::zero() 
) [inline]

Definition at line 52 of file RTOpPack_TOpLinearCombination.hpp.


Member Function Documentation

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

Definition at line 61 of file RTOpPack_TOpLinearCombination.hpp.

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

Definition at line 63 of file RTOpPack_TOpLinearCombination.hpp.

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

Parameters:
alpha  Array length num_vecs

Definition at line 65 of file RTOpPack_TOpLinearCombination.hpp.

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

Definition at line 75 of file RTOpPack_TOpLinearCombination.hpp.

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

Definition at line 77 of file RTOpPack_TOpLinearCombination.hpp.

template<class Scalar>
void RTOpPack::TOpLinearCombination< Scalar >::apply_op ( const int  num_vecs,
const ConstSubVectorView< Scalar >  sub_vecs[],
const int  num_targ_vecs,
const SubVectorView< Scalar >  targ_sub_vecs[],
ReductTarget reduct_obj 
) const [inline, virtual]

Implements RTOpPack::RTOpT< Scalar >.

Definition at line 81 of file RTOpPack_TOpLinearCombination.hpp.


The documentation for this class was generated from the following file:
Generated on Tue Oct 20 12:46:15 2009 for Collection of Concrete Vector Reduction/Transformation Operator Implementations by doxygen 1.4.7