Thyra Version of the Day
Thyra::MultiVectorAdapterBase< Scalar > Class Template Reference

Node subclass for MultiVectorBase subclasses that allows the insertion of an application defined scalar product. More...

#include <Thyra_MultiVectorAdapterBase_decl.hpp>

Inheritance diagram for Thyra::MultiVectorAdapterBase< Scalar >:
Inheritance graph
[legend]

List of all members.

Pure virtual functions to override in subclasses

virtual RCP< const
ScalarProdVectorSpaceBase
< Scalar > > 
rangeScalarProdVecSpc () const =0
 
virtual RCP< const
ScalarProdVectorSpaceBase
< Scalar > > 
domainScalarProdVecSpc () const =0
 
virtual void euclideanApply (const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, const Ptr< MultiVectorBase< Scalar > > &Y, const Scalar alpha, const Scalar beta) const =0
 Apply the linear operator to a multi-vector with respect to a Euclidean vector space where the scalar product is the dot product.

Overridden functions from LinearOp

RCP< const VectorSpaceBase
< Scalar > > 
range () const
 Returns this->rangeScalarProdVecSpc()
RCP< const VectorSpaceBase
< Scalar > > 
domain () const
 Returns this->domainScalarProdVecSpc()

Overridden protected functions from LinearOpBase

bool opSupportedImpl (EOpTransp M_trans) const
 
void applyImpl (const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, const Ptr< MultiVectorBase< Scalar > > &Y, const Scalar alpha, const Scalar beta) const
 

Detailed Description

template<class Scalar>
class Thyra::MultiVectorAdapterBase< Scalar >

Node subclass for MultiVectorBase subclasses that allows the insertion of an application defined scalar product.

Most concrete MultiVector adapter subclasses should derive from this base subclass in order to allow for the incorporate of application-defined scalar products.

ToDo: Finish Documentation!

Definition at line 67 of file Thyra_MultiVectorAdapterBase_decl.hpp.


Member Function Documentation

template<class Scalar >
virtual RCP<const ScalarProdVectorSpaceBase<Scalar> > Thyra::MultiVectorAdapterBase< Scalar >::rangeScalarProdVecSpc ( ) const [pure virtual]
template<class Scalar >
virtual RCP<const ScalarProdVectorSpaceBase<Scalar> > Thyra::MultiVectorAdapterBase< Scalar >::domainScalarProdVecSpc ( ) const [pure virtual]
template<class Scalar >
virtual void Thyra::MultiVectorAdapterBase< Scalar >::euclideanApply ( const EOpTransp  M_trans,
const MultiVectorBase< Scalar > &  X,
const Ptr< MultiVectorBase< Scalar > > &  Y,
const Scalar  alpha,
const Scalar  beta 
) const [pure virtual]

Apply the linear operator to a multi-vector with respect to a Euclidean vector space where the scalar product is the dot product.

Preconditions:

  • this->applySupports(conj)==true

Implemented in Thyra::SpmdMultiVectorBase< Scalar >.

template<class Scalar >
RCP< const VectorSpaceBase< Scalar > > Thyra::MultiVectorAdapterBase< Scalar >::range ( ) const [virtual]
template<class Scalar >
RCP< const VectorSpaceBase< Scalar > > Thyra::MultiVectorAdapterBase< Scalar >::domain ( ) const [virtual]
template<class Scalar >
bool Thyra::MultiVectorAdapterBase< Scalar >::opSupportedImpl ( EOpTransp  M_trans) const [protected, virtual]
template<class Scalar >
void Thyra::MultiVectorAdapterBase< Scalar >::applyImpl ( const EOpTransp  M_trans,
const MultiVectorBase< Scalar > &  X,
const Ptr< MultiVectorBase< Scalar > > &  Y,
const Scalar  alpha,
const Scalar  beta 
) const [protected, virtual]

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines