Collection of Concrete Vector Reduction/Transformation Operator Implementations Version of the Day
Loading...
Searching...
No Matches
RTOpPack::TOpLinearCombination< Scalar > Class Template Reference

Linear combination transformation operator: z0[i] = beta*z0[i]. More...

#include <RTOpPack_TOpLinearCombination_decl.hpp>

Inheritance diagram for RTOpPack::TOpLinearCombination< Scalar >:

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 64 of file RTOpPack_TOpLinearCombination_decl.hpp.

Constructor & Destructor Documentation

◆ TOpLinearCombination()

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

Definition at line 54 of file RTOpPack_TOpLinearCombination_def.hpp.

Member Function Documentation

◆ alpha() [1/2]

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

Definition at line 68 of file RTOpPack_TOpLinearCombination_def.hpp.

◆ alpha() [2/2]

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

Definition at line 78 of file RTOpPack_TOpLinearCombination_def.hpp.

◆ beta() [1/2]

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

Definition at line 83 of file RTOpPack_TOpLinearCombination_def.hpp.

◆ beta() [2/2]

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

Definition at line 87 of file RTOpPack_TOpLinearCombination_def.hpp.

◆ num_vecs()

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

Definition at line 91 of file RTOpPack_TOpLinearCombination_def.hpp.

◆ apply_op_impl()

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
virtual

Implements RTOpPack::RTOpT< Scalar >.

Definition at line 98 of file RTOpPack_TOpLinearCombination_def.hpp.


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