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

Concrete implementation of a product vector which is really composed out of the columns of a multi-vector. More...

#include <Thyra_DefaultMultiVectorProductVectorDecl.hpp>

Inheritance diagram for Thyra::DefaultMultiVectorProductVector< Scalar >:

[legend]
List of all members.

Constructors/initializers/accessors

 DefaultMultiVectorProductVector ()
 Construct to uninitialized.
void initialize (const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &productSpace, const RCP< MultiVectorBase< Scalar > > &multiVec)
 Initialize with a non-const multi-vector.
void initialize (const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &productSpace, const RCP< const MultiVectorBase< Scalar > > &multiVec)
 Initialize with a const multi-vector.
RCP< MultiVectorBase< Scalar > > getNonconstMultiVector ()
 
RCP< const MultiVectorBase<
Scalar > > 
getMultiVector () const
 
void uninitialize ()
 

Overridden from Teuchos::Describable

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

Overridden from ProductVectorBase

RCP< VectorBase< Scalar > > getNonconstVectorBlock (const int k)
 
RCP< const VectorBase< Scalar > > getVectorBlock (const int k) const
 

Overridden from ProductMultiVectorBase

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

Overridden from VectorBase

RCP< const VectorSpaceBase<
Scalar > > 
space () const
 
void applyOp (const RTOpPack::RTOpT< Scalar > &op, const int num_vecs, const VectorBase< Scalar > *const vecs[], const int num_targ_vecs, VectorBase< Scalar > *const targ_vecs[], RTOpPack::ReductTarget *reduct_obj, const Index first_ele, const Index sub_dim, const Index global_offset) const
 
void acquireDetachedVectorViewImpl (const Range1D &rng, RTOpPack::ConstSubVectorView< Scalar > *sub_vec) const
 
void releaseDetachedVectorViewImpl (RTOpPack::ConstSubVectorView< Scalar > *sub_vec) const
 
void acquireNonconstDetachedVectorViewImpl (const Range1D &rng, RTOpPack::SubVectorView< Scalar > *sub_vec)
 
void commitNonconstDetachedVectorViewImpl (RTOpPack::SubVectorView< Scalar > *sub_vec)
 
void setSubVector (const RTOpPack::SparseSubVectorT< Scalar > &sub_vec)
 

Related Functions

(Note that these are not member functions.)

RCP< DefaultMultiVectorProductVector<
Scalar > > 
multiVectorProductVector (const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &productSpace, const RCP< MultiVectorBase< Scalar > > &multiVec)
 Nonmember constructor that just wraps an existing non-const MultiVector as a non-const product vector.
RCP< const DefaultMultiVectorProductVector<
Scalar > > 
multiVectorProductVector (const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &productSpace, const RCP< const MultiVectorBase< Scalar > > &multiVec)
 Nonmember constructor that just wraps an existing const MultiVector as a const product vector.
RCP< DefaultMultiVectorProductVector<
Scalar > > 
multiVectorProductVector (const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &productSpace)
 Nonmember constructor that creates a new product vector represented underneath as a multi-vector.

Detailed Description

template<class Scalar>
class Thyra::DefaultMultiVectorProductVector< Scalar >

Concrete implementation of a product vector which is really composed out of the columns of a multi-vector.

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

ToDo: Finish documentation!

Definition at line 57 of file Thyra_DefaultMultiVectorProductVectorDecl.hpp.


Constructor & Destructor Documentation

template<class Scalar>
Thyra::DefaultMultiVectorProductVector< Scalar >::DefaultMultiVectorProductVector (  ) 

Construct to uninitialized.

Definition at line 45 of file Thyra_DefaultMultiVectorProductVector.hpp.


Member Function Documentation

template<class Scalar>
void Thyra::DefaultMultiVectorProductVector< Scalar >::initialize ( const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &  productSpace,
const RCP< MultiVectorBase< Scalar > > &  multiVec 
)

Initialize with a non-const multi-vector.

Definition at line 52 of file Thyra_DefaultMultiVectorProductVector.hpp.

template<class Scalar>
void Thyra::DefaultMultiVectorProductVector< Scalar >::initialize ( const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &  productSpace,
const RCP< const MultiVectorBase< Scalar > > &  multiVec 
)

Initialize with a const multi-vector.

Definition at line 77 of file Thyra_DefaultMultiVectorProductVector.hpp.

template<class Scalar>
Teuchos::RCP< MultiVectorBase< Scalar > > Thyra::DefaultMultiVectorProductVector< Scalar >::getNonconstMultiVector (  ) 

Definition at line 103 of file Thyra_DefaultMultiVectorProductVector.hpp.

template<class Scalar>
Teuchos::RCP< const MultiVectorBase< Scalar > > Thyra::DefaultMultiVectorProductVector< Scalar >::getMultiVector (  )  const

Definition at line 111 of file Thyra_DefaultMultiVectorProductVector.hpp.

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

Definition at line 118 of file Thyra_DefaultMultiVectorProductVector.hpp.

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

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 130 of file Thyra_DefaultMultiVectorProductVector.hpp.

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

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 143 of file Thyra_DefaultMultiVectorProductVector.hpp.

template<class Scalar>
Teuchos::RCP< VectorBase< Scalar > > Thyra::DefaultMultiVectorProductVector< Scalar >::getNonconstVectorBlock ( const int  k  )  [virtual]

Implements Thyra::ProductVectorBase< Scalar >.

Definition at line 183 of file Thyra_DefaultMultiVectorProductVector.hpp.

template<class Scalar>
Teuchos::RCP< const VectorBase< Scalar > > Thyra::DefaultMultiVectorProductVector< Scalar >::getVectorBlock ( const int  k  )  const [virtual]

Implements Thyra::ProductVectorBase< Scalar >.

Definition at line 194 of file Thyra_DefaultMultiVectorProductVector.hpp.

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

Implements Thyra::ProductMultiVectorBase< Scalar >.

Definition at line 208 of file Thyra_DefaultMultiVectorProductVector.hpp.

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

Implements Thyra::ProductMultiVectorBase< Scalar >.

Definition at line 215 of file Thyra_DefaultMultiVectorProductVector.hpp.

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

Implements Thyra::ProductMultiVectorBase< Scalar >.

Definition at line 226 of file Thyra_DefaultMultiVectorProductVector.hpp.

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

Implements Thyra::ProductMultiVectorBase< Scalar >.

Definition at line 234 of file Thyra_DefaultMultiVectorProductVector.hpp.

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

Implements Thyra::VectorBase< Scalar >.

Definition at line 245 of file Thyra_DefaultMultiVectorProductVector.hpp.

template<class Scalar>
void Thyra::DefaultMultiVectorProductVector< Scalar >::applyOp ( const RTOpPack::RTOpT< Scalar > &  op,
const int  num_vecs,
const VectorBase< Scalar > *const   vecs[],
const int  num_targ_vecs,
VectorBase< Scalar > *const   targ_vecs[],
RTOpPack::ReductTarget reduct_obj,
const Index  first_ele,
const Index  sub_dim,
const Index  global_offset 
) const [virtual]

Implements Thyra::VectorBase< Scalar >.

Definition at line 252 of file Thyra_DefaultMultiVectorProductVector.hpp.

template<class Scalar>
void Thyra::DefaultMultiVectorProductVector< Scalar >::acquireDetachedVectorViewImpl ( const Range1D rng,
RTOpPack::ConstSubVectorView< Scalar > *  sub_vec 
) const [virtual]

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 273 of file Thyra_DefaultMultiVectorProductVector.hpp.

template<class Scalar>
void Thyra::DefaultMultiVectorProductVector< Scalar >::releaseDetachedVectorViewImpl ( RTOpPack::ConstSubVectorView< Scalar > *  sub_vec  )  const [virtual]

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 282 of file Thyra_DefaultMultiVectorProductVector.hpp.

template<class Scalar>
void Thyra::DefaultMultiVectorProductVector< Scalar >::acquireNonconstDetachedVectorViewImpl ( const Range1D rng,
RTOpPack::SubVectorView< Scalar > *  sub_vec 
) [virtual]

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 291 of file Thyra_DefaultMultiVectorProductVector.hpp.

template<class Scalar>
void Thyra::DefaultMultiVectorProductVector< Scalar >::commitNonconstDetachedVectorViewImpl ( RTOpPack::SubVectorView< Scalar > *  sub_vec  )  [virtual]

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 300 of file Thyra_DefaultMultiVectorProductVector.hpp.

template<class Scalar>
void Thyra::DefaultMultiVectorProductVector< Scalar >::setSubVector ( const RTOpPack::SparseSubVectorT< Scalar > &  sub_vec  )  [virtual]

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 309 of file Thyra_DefaultMultiVectorProductVector.hpp.


Friends And Related Function Documentation

template<class Scalar>
RCP< DefaultMultiVectorProductVector< Scalar > > multiVectorProductVector ( const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &  productSpace,
const RCP< MultiVectorBase< Scalar > > &  multiVec 
) [related]

Nonmember constructor that just wraps an existing non-const MultiVector as a non-const product vector.

Definition at line 210 of file Thyra_DefaultMultiVectorProductVectorDecl.hpp.

template<class Scalar>
RCP< const DefaultMultiVectorProductVector< Scalar > > multiVectorProductVector ( const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &  productSpace,
const RCP< const MultiVectorBase< Scalar > > &  multiVec 
) [related]

Nonmember constructor that just wraps an existing const MultiVector as a const product vector.

Definition at line 230 of file Thyra_DefaultMultiVectorProductVectorDecl.hpp.

template<class Scalar>
RCP< DefaultMultiVectorProductVector< Scalar > > multiVectorProductVector ( const RCP< const DefaultMultiVectorProductVectorSpace< Scalar > > &  productSpace  )  [related]

Nonmember constructor that creates a new product vector represented underneath as a multi-vector.

Definition at line 254 of file Thyra_DefaultMultiVectorProductVectorDecl.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