Thyra::DefaultProductMultiVector< Scalar > Class Template Reference
[Development of linear Abstract Numerical Algorithms (ANAs)]

Concrete implementation of a product multi-vector. More...

#include <Thyra_DefaultProductMultiVectorDecl.hpp>

Inheritance diagram for Thyra::DefaultProductMultiVector< Scalar >:

[legend]
List of all members.

Constructors/initializers/accessors

 DefaultProductMultiVector (const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const int numMembers)
 . Constructs to initialized (calls initialize()).
 DefaultProductMultiVector (const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const Teuchos::RCP< MultiVectorBase< Scalar > > multiVecs[])
 . Constructs to initialized (calls initialize()).
 DefaultProductMultiVector (const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const Teuchos::RCP< const MultiVectorBase< Scalar > > multiVecs[])
 . Constructs to initialized (calls initialize()).
void initialize (const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const int numMembers)
 Initialize.
void initialize (const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const Teuchos::RCP< MultiVectorBase< Scalar > > multiVecs[])
 Initialize.
void initialize (const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const Teuchos::RCP< const MultiVectorBase< Scalar > > multiVecs[])
 Initialize.
void uninitialize ()
 Uninitialize.

Overridden from Teuchos::Describable

std::string description () const
 
void describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const
 

Overridden from ProductMultiVectorBase

Teuchos::RCP< const ProductVectorSpaceBase<
Scalar > > 
productSpace () const
 
bool blockIsConst (const int k) const
 
Teuchos::RCP< MultiVectorBase<
Scalar > > 
getNonconstMultiVectorBlock (const int k)
 
Teuchos::RCP< const MultiVectorBase<
Scalar > > 
getMultiVectorBlock (const int k) const
 

Overriden from MultiVectorBase

Teuchos::RCP< const VectorBase<
Scalar > > 
col (Index j) const
 
Teuchos::RCP< VectorBase<
Scalar > > 
col (Index j)
 
Teuchos::RCP< const MultiVectorBase<
Scalar > > 
subView (const Range1D &colRng) const
 
Teuchos::RCP< MultiVectorBase<
Scalar > > 
subView (const Range1D &colRng)
 
Teuchos::RCP< const MultiVectorBase<
Scalar > > 
subView (const int numCols, const int cols[]) const
 
Teuchos::RCP< MultiVectorBase<
Scalar > > 
subView (const int numCols, const int cols[])
 
void mvMultiReductApplyOpImpl (const RTOpPack::RTOpT< Scalar > &primary_op, const int num_multi_vecs, const MultiVectorBase< Scalar > *const multi_vecs[], const int num_targ_multi_vecs, MultiVectorBase< Scalar > *const targ_multi_vecs[], RTOpPack::ReductTarget *const reduct_objs[], const Index primary_first_ele_offset, const Index primary_sub_dim, const Index primary_global_offset, const Index secondary_first_ele_offset, const Index secondary_sub_dim) const
 
void acquireDetachedMultiVectorViewImpl (const Range1D &rowRng, const Range1D &colRng, RTOpPack::ConstSubMultiVectorView< Scalar > *sub_mv) const
 
void releaseDetachedMultiVectorViewImpl (RTOpPack::ConstSubMultiVectorView< Scalar > *sub_mv) const
 
void acquireNonconstDetachedMultiVectorViewImpl (const Range1D &rowRng, const Range1D &colRng, RTOpPack::SubMultiVectorView< Scalar > *sub_mv)
 
void commitNonconstDetachedMultiVectorViewImpl (RTOpPack::SubMultiVectorView< Scalar > *sub_mv)
 
Teuchos::RCP< MultiVectorBase<
Scalar > > 
clone_mv () const
 

Overriden from LinearOpBase

Teuchos::RCP< const VectorSpaceBase<
Scalar > > 
range () const
 
Teuchos::RCP< const VectorSpaceBase<
Scalar > > 
domain () const
 

Overridden from SingleScalarLinearOpBase

bool opSupported (ETransp M_trans) const
 
void apply (const ETransp M_trans, const MultiVectorBase< Scalar > &X, MultiVectorBase< Scalar > *Y, const Scalar alpha, const Scalar beta) const
 

Related Functions

(Note that these are not member functions.)

Teuchos::RCP< DefaultProductMultiVector<
Scalar > > 
defaultProductMultiVector (const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const int numMembers)
 Nonmember constructor.
Teuchos::RCP< DefaultProductMultiVector<
Scalar > > 
defaultProductMultiVector (const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const Teuchos::RCP< MultiVectorBase< Scalar > > multiVecs[])
 Nonmember constructor.

Detailed Description

template<class Scalar>
class Thyra::DefaultProductMultiVector< Scalar >

Concrete implementation of a product multi-vector.

Note that clients should almost never be creating objects of this type explicitly and should instead use DefaultProductVectorSpace as a factory.

ToDo: Finish documentation!

The default constructor is made private to avoid accidental default construction.

Definition at line 59 of file Thyra_DefaultProductMultiVectorDecl.hpp.


Constructor & Destructor Documentation

template<class Scalar>
Thyra::DefaultProductMultiVector< Scalar >::DefaultProductMultiVector ( const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const int  numMembers 
)

. Constructs to initialized (calls initialize()).

Definition at line 45 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
Thyra::DefaultProductMultiVector< Scalar >::DefaultProductMultiVector ( const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const Teuchos::RCP< MultiVectorBase< Scalar > >  multiVecs[] 
)

. Constructs to initialized (calls initialize()).

Definition at line 56 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
Thyra::DefaultProductMultiVector< Scalar >::DefaultProductMultiVector ( const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const Teuchos::RCP< const MultiVectorBase< Scalar > >  multiVecs[] 
)

. Constructs to initialized (calls initialize()).


Member Function Documentation

template<class Scalar>
void Thyra::DefaultProductMultiVector< Scalar >::initialize ( const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const int  numMembers 
)

Initialize.

ToDo: Finish documentation.

Definition at line 78 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
void Thyra::DefaultProductMultiVector< Scalar >::initialize ( const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const Teuchos::RCP< MultiVectorBase< Scalar > >  multiVecs[] 
)

Initialize.

ToDo: Finish documentation.

Definition at line 97 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
void Thyra::DefaultProductMultiVector< Scalar >::initialize ( const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const Teuchos::RCP< const MultiVectorBase< Scalar > >  multiVecs[] 
)

Initialize.

ToDo: Finish documentation.

template<class Scalar>
void Thyra::DefaultProductMultiVector< Scalar >::uninitialize (  ) 

Uninitialize.

ToDo: Finish documentation.

Definition at line 117 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
std::string Thyra::DefaultProductMultiVector< Scalar >::description (  )  const [virtual]

Reimplemented from Thyra::LinearOpDefaultBase< Scalar >.

Definition at line 129 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
void Thyra::DefaultProductMultiVector< Scalar >::describe ( Teuchos::FancyOStream out,
const Teuchos::EVerbosityLevel  verbLevel 
) const [virtual]

Reimplemented from Thyra::LinearOpDefaultBase< Scalar >.

Definition at line 144 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
Teuchos::RCP< const ProductVectorSpaceBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::productSpace (  )  const [virtual]

Implements Thyra::ProductMultiVectorBase< Scalar >.

Definition at line 194 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
bool Thyra::DefaultProductMultiVector< Scalar >::blockIsConst ( const int  k  )  const [virtual]

Implements Thyra::ProductMultiVectorBase< Scalar >.

Definition at line 201 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
Teuchos::RCP< MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::getNonconstMultiVectorBlock ( const int  k  )  [virtual]

Implements Thyra::ProductMultiVectorBase< Scalar >.

Definition at line 209 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
Teuchos::RCP< const MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::getMultiVectorBlock ( const int  k  )  const [virtual]

Implements Thyra::ProductMultiVectorBase< Scalar >.

Definition at line 217 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
Teuchos::RCP< const VectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::col ( Index  j  )  const [virtual]

Reimplemented from Thyra::MultiVectorBase< Scalar >.

Definition at line 228 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
Teuchos::RCP< VectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::col ( Index  j  )  [virtual]

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 240 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
Teuchos::RCP< const MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::subView ( const Range1D colRng  )  const [virtual]

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 252 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
Teuchos::RCP< MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::subView ( const Range1D colRng  )  [virtual]

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 264 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
Teuchos::RCP< const MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::subView ( const int  numCols,
const int  cols[] 
) const [virtual]

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 276 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
Teuchos::RCP< MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::subView ( const int  numCols,
const int  cols[] 
) [virtual]

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 290 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
void Thyra::DefaultProductMultiVector< Scalar >::mvMultiReductApplyOpImpl ( const RTOpPack::RTOpT< Scalar > &  primary_op,
const int  num_multi_vecs,
const MultiVectorBase< Scalar > *const   multi_vecs[],
const int  num_targ_multi_vecs,
MultiVectorBase< Scalar > *const   targ_multi_vecs[],
RTOpPack::ReductTarget *const   reduct_objs[],
const Index  primary_first_ele_offset,
const Index  primary_sub_dim,
const Index  primary_global_offset,
const Index  secondary_first_ele_offset,
const Index  secondary_sub_dim 
) const [virtual]

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 303 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
void Thyra::DefaultProductMultiVector< Scalar >::acquireDetachedMultiVectorViewImpl ( const Range1D rowRng,
const Range1D colRng,
RTOpPack::ConstSubMultiVectorView< Scalar > *  sub_mv 
) const [virtual]

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 529 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
void Thyra::DefaultProductMultiVector< Scalar >::releaseDetachedMultiVectorViewImpl ( RTOpPack::ConstSubMultiVectorView< Scalar > *  sub_mv  )  const [virtual]

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 542 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
void Thyra::DefaultProductMultiVector< Scalar >::acquireNonconstDetachedMultiVectorViewImpl ( const Range1D rowRng,
const Range1D colRng,
RTOpPack::SubMultiVectorView< Scalar > *  sub_mv 
) [virtual]

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 553 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
void Thyra::DefaultProductMultiVector< Scalar >::commitNonconstDetachedMultiVectorViewImpl ( RTOpPack::SubMultiVectorView< Scalar > *  sub_mv  )  [virtual]

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 566 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
Teuchos::RCP< MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::clone_mv (  )  const [virtual]

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 577 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
Teuchos::RCP< const VectorSpaceBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::range (  )  const [virtual]

Implements Thyra::LinearOpBase< RangeScalar, DomainScalar >.

Definition at line 597 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
Teuchos::RCP< const VectorSpaceBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::domain (  )  const [virtual]

Implements Thyra::LinearOpBase< RangeScalar, DomainScalar >.

Definition at line 605 of file Thyra_DefaultProductMultiVector.hpp.

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

Implements Thyra::SingleScalarLinearOpBase< Scalar >.

Definition at line 617 of file Thyra_DefaultProductMultiVector.hpp.

template<class Scalar>
void Thyra::DefaultProductMultiVector< Scalar >::apply ( const ETransp  M_trans,
const MultiVectorBase< Scalar > &  X,
MultiVectorBase< Scalar > *  Y,
const Scalar  alpha,
const Scalar  beta 
) const [protected, virtual]

Implements Thyra::SingleScalarLinearOpBase< Scalar >.

Definition at line 624 of file Thyra_DefaultProductMultiVector.hpp.


Friends And Related Function Documentation

template<class Scalar>
Teuchos::RCP< DefaultProductMultiVector< Scalar > > defaultProductMultiVector ( const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const int  numMembers 
) [related]

Nonmember constructor.

Definition at line 282 of file Thyra_DefaultProductMultiVectorDecl.hpp.

template<class Scalar>
Teuchos::RCP< DefaultProductMultiVector< Scalar > > defaultProductMultiVector ( const Teuchos::RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const Teuchos::RCP< MultiVectorBase< Scalar > >  multiVecs[] 
) [related]

Nonmember constructor.

Definition at line 299 of file Thyra_DefaultProductMultiVectorDecl.hpp.


The documentation for this class was generated from the following files:
Generated on Tue Oct 20 12:47:00 2009 for Thyra Operator/Vector Support by doxygen 1.4.7