Thyra::VectorDefaultBase< Scalar > Class Template Reference
[Development of Concrete Thyra Operator/Vector Subclass Implementations]

Convenient node subclass for concrete VectorBase subclasses that relies on a default MultiVectorBase implementation. More...

#include <Thyra_VectorDefaultBaseDecl.hpp>

Inheritance diagram for Thyra::VectorDefaultBase< Scalar >:

[legend]
List of all members.

Overridden from LinearOpBase (should never need to be overridden in subclasses)

Teuchos::RefCountPtr< const
VectorSpaceBase< Scalar > > 
range () const
 Returns this->space().
Teuchos::RefCountPtr< const
VectorSpaceBase< Scalar > > 
domain () const
 Returns a SerialVectorSpaceStd object with dimension 1.

Overridden from MultiVectorBase (should never need to be overridden in subclasses)

Teuchos::RefCountPtr< VectorBase<
Scalar > > 
col (Index j)
 Returns Teuchos::rcp(this,false).
Teuchos::RefCountPtr< MultiVectorBase<
Scalar > > 
clone_mv () const
 Returns this->clone_v().
Teuchos::RefCountPtr< const
MultiVectorBase< Scalar > > 
subView (const Range1D &col_rng) const
 Returns Teuchos::rcp(this,false).
Teuchos::RefCountPtr< MultiVectorBase<
Scalar > > 
subView (const Range1D &col_rng)
 Returns Teuchos::rcp(this,false).
Teuchos::RefCountPtr< const
MultiVectorBase< Scalar > > 
subView (const int numCols, const int cols[]) const
 Returns Teuchos::rcp(this,false).
Teuchos::RefCountPtr< MultiVectorBase<
Scalar > > 
subView (const int numCols, const int cols[])
 Returns Teuchos::rcp(this,false).
void getSubMultiVector (const Range1D &rowRng, const Range1D &colRng, RTOpPack::SubMultiVectorT< Scalar > *sub_mv) const
 Implemented in terms of this->getSubVector().
void freeSubMultiVector (RTOpPack::SubMultiVectorT< Scalar > *sub_mv) const
 Implemented in terms of this->freeSubVector().
void getSubMultiVector (const Range1D &rowRng, const Range1D &colRng, RTOpPack::MutableSubMultiVectorT< Scalar > *sub_mv)
 Implemented in terms of this->getSubVector().
void commitSubMultiVector (RTOpPack::MutableSubMultiVectorT< Scalar > *sub_mv)
 Implemented in terms of this->commitSubVector().

Overridden from SingleRhsLinearOpBase (should never need to be overridden in subclasses)

bool opSupported (ETransp M_trans) const
 For complex Scalar types returns true for NOTRANS and CONJTRANS and for real types returns true for all values of M_trans.
void apply (const ETransp M_trans, const VectorBase< Scalar > &x, VectorBase< Scalar > *y, const Scalar alpha, const Scalar beta) const
 . Applies vector or its adjoint (transpose) as a linear operator.

Detailed Description

template<class Scalar>
class Thyra::VectorDefaultBase< Scalar >

Convenient node subclass for concrete VectorBase subclasses that relies on a default MultiVectorBase implementation.

This node subclass provides as many default implementations as possible for virtual functions based on the default multi-vector implementation MultiVectorCols.

Notes for subclass developers

In order to create a concrete subclass of this interface, only two operations must be overridden: space() and applyOp(). Overriding the space() operation requires defining a concrete VectorSpaceBase class (which has only three pure virtual operations if using VectorSpaceDefaultBase).

Note that all of the inherited LinearOpBase and MultiVectorBase functions are overridden in this subclass and are given perfectly good implementations. Therefore, a concrete subclass of VectorDefaultBase should not have to re-override any of these functions.

Definition at line 63 of file Thyra_VectorDefaultBaseDecl.hpp.


Member Function Documentation

template<class Scalar>
Teuchos::RefCountPtr< const VectorSpaceBase< Scalar > > Thyra::VectorDefaultBase< Scalar >::range  )  const
 

Returns this->space().

Reimplemented in Thyra::VectorMultiVector< Scalar >.

Definition at line 50 of file Thyra_VectorDefaultBase.hpp.

template<class Scalar>
Teuchos::RefCountPtr< const VectorSpaceBase< Scalar > > Thyra::VectorDefaultBase< Scalar >::domain  )  const
 

Returns a SerialVectorSpaceStd object with dimension 1.

Reimplemented in Thyra::VectorMultiVector< Scalar >.

Definition at line 60 of file Thyra_VectorDefaultBase.hpp.

template<class Scalar>
Teuchos::RefCountPtr< VectorBase< Scalar > > Thyra::VectorDefaultBase< Scalar >::col Index  j  ) 
 

Returns Teuchos::rcp(this,false).

Reimplemented in Thyra::VectorMultiVector< Scalar >.

Definition at line 148 of file Thyra_VectorDefaultBase.hpp.

template<class Scalar>
Teuchos::RefCountPtr< MultiVectorBase< Scalar > > Thyra::VectorDefaultBase< Scalar >::clone_mv  )  const
 

Returns this->clone_v().

Reimplemented in Thyra::VectorMultiVector< Scalar >.

Definition at line 161 of file Thyra_VectorDefaultBase.hpp.

template<class Scalar>
Teuchos::RefCountPtr< const MultiVectorBase< Scalar > > Thyra::VectorDefaultBase< Scalar >::subView const Range1D col_rng  )  const
 

Returns Teuchos::rcp(this,false).

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Reimplemented in Thyra::VectorMultiVector< Scalar >.

Definition at line 171 of file Thyra_VectorDefaultBase.hpp.

template<class Scalar>
Teuchos::RefCountPtr< MultiVectorBase< Scalar > > Thyra::VectorDefaultBase< Scalar >::subView const Range1D col_rng  ) 
 

Returns Teuchos::rcp(this,false).

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Reimplemented in Thyra::VectorMultiVector< Scalar >.

Definition at line 182 of file Thyra_VectorDefaultBase.hpp.

template<class Scalar>
Teuchos::RefCountPtr< const MultiVectorBase< Scalar > > Thyra::VectorDefaultBase< Scalar >::subView const int  numCols,
const int  cols[]
const
 

Returns Teuchos::rcp(this,false).

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Reimplemented in Thyra::VectorMultiVector< Scalar >.

Definition at line 193 of file Thyra_VectorDefaultBase.hpp.

template<class Scalar>
Teuchos::RefCountPtr< MultiVectorBase< Scalar > > Thyra::VectorDefaultBase< Scalar >::subView const int  numCols,
const int  cols[]
 

Returns Teuchos::rcp(this,false).

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Reimplemented in Thyra::VectorMultiVector< Scalar >.

Definition at line 204 of file Thyra_VectorDefaultBase.hpp.

template<class Scalar>
void Thyra::VectorDefaultBase< Scalar >::getSubMultiVector const Range1D rowRng,
const Range1D colRng,
RTOpPack::SubMultiVectorT< Scalar > *  sub_mv
const
 

Implemented in terms of this->getSubVector().

Reimplemented in Thyra::VectorMultiVector< Scalar >.

Definition at line 214 of file Thyra_VectorDefaultBase.hpp.

template<class Scalar>
void Thyra::VectorDefaultBase< Scalar >::freeSubMultiVector RTOpPack::SubMultiVectorT< Scalar > *  sub_mv  )  const
 

Implemented in terms of this->freeSubVector().

Reimplemented in Thyra::VectorMultiVector< Scalar >.

Definition at line 236 of file Thyra_VectorDefaultBase.hpp.

template<class Scalar>
void Thyra::VectorDefaultBase< Scalar >::getSubMultiVector const Range1D rowRng,
const Range1D colRng,
RTOpPack::MutableSubMultiVectorT< Scalar > *  sub_mv
 

Implemented in terms of this->getSubVector().

Reimplemented in Thyra::VectorMultiVector< Scalar >.

Definition at line 250 of file Thyra_VectorDefaultBase.hpp.

template<class Scalar>
void Thyra::VectorDefaultBase< Scalar >::commitSubMultiVector RTOpPack::MutableSubMultiVectorT< Scalar > *  sub_mv  ) 
 

Implemented in terms of this->commitSubVector().

Reimplemented in Thyra::VectorMultiVector< Scalar >.

Definition at line 272 of file Thyra_VectorDefaultBase.hpp.

template<class Scalar>
bool Thyra::VectorDefaultBase< Scalar >::opSupported ETransp  M_trans  )  const [protected, virtual]
 

For complex Scalar types returns true for NOTRANS and CONJTRANS and for real types returns true for all values of M_trans.

Implements Thyra::SingleScalarLinearOpBase< Scalar >.

Reimplemented in Thyra::VectorMultiVector< Scalar >.

Definition at line 73 of file Thyra_VectorDefaultBase.hpp.

template<class Scalar>
void Thyra::VectorDefaultBase< Scalar >::apply const ETransp  M_trans,
const VectorBase< Scalar > &  x,
VectorBase< Scalar > *  y,
const Scalar  alpha,
const Scalar  beta
const [protected, virtual]
 

. Applies vector or its adjoint (transpose) as a linear operator.

Implements Thyra::SingleRhsLinearOpBase< Scalar >.

Definition at line 80 of file Thyra_VectorDefaultBase.hpp.


The documentation for this class was generated from the following files:
Generated on Thu Sep 18 12:39:54 2008 for Thyra ANA Operator/VectorBase Interfaces and Related Software by doxygen 1.3.9.1