|
Thyra Package Browser (Single Doxygen Collection) Version of the Day
|
Concrete implementation of a product multi-vector. More...
#include <Thyra_DefaultProductMultiVector_decl.hpp>

Private Types | |
| typedef Teuchos::ConstNonconstObjectContainer < MultiVectorBase< Scalar > > | CNMVC |
Private Member Functions | |
| template<class MultiVectorType > | |
| void | initializeImpl (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< MultiVectorType > > &multiVecs) |
| void | assertInitialized () const |
| void | validateColIndex (const int j) const |
Private Attributes | |
| RCP< const DefaultProductVectorSpace < Scalar > > | productSpace_ |
| Teuchos::Array< CNMVC > | multiVecs_ |
| int | numBlocks_ |
Related Functions | |
(Note that these are not member functions.) | |
| template<class Scalar > | |
| RCP< DefaultProductMultiVector < Scalar > > | defaultProductMultiVector () |
| Nonmember constructor. | |
| template<class Scalar > | |
| RCP< DefaultProductMultiVector < Scalar > > | defaultProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const int numMembers) |
| Nonmember constructor. | |
| template<class Scalar > | |
| RCP< DefaultProductMultiVector < Scalar > > | defaultProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< MultiVectorBase< Scalar > > > &multiVecs) |
| Nonmember constructor. | |
| template<class Scalar > | |
| RCP< DefaultProductMultiVector < Scalar > > | defaultProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< const MultiVectorBase< Scalar > > > &multiVecs) |
| Nonmember constructor. | |
| template<class Scalar > | |
| RCP< const ProductMultiVectorBase< Scalar > > | castOrCreateSingleBlockProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const RCP< const MultiVectorBase< Scalar > > &mv) |
| Dynamic cast to a const product multi-vector or create a new product multi-vector with one component if the input multi-vector is not a product vector. | |
| template<class Scalar > | |
| RCP< ProductMultiVectorBase < Scalar > > | nonconstCastOrCreateSingleBlockProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const RCP< MultiVectorBase< Scalar > > &mv) |
| Dynamic cast to a const product multi-vector or create a new product multi-vector with one component if the input multi-vector is not a product vector. | |
Constructors/initializers/accessors | |
| DefaultProductMultiVector () | |
| Construct to uninitialized. | |
| void | initialize (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const int numMembers) |
| | |
| void | initialize (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< MultiVectorBase< Scalar > > > &multiVecs) |
| | |
| void | initialize (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< const MultiVectorBase< Scalar > > > &multiVecs) |
| | |
| void | uninitialize () |
| Uninitialize. | |
Overridden public functions from Teuchos::Describable | |
| std::string | description () const |
| | |
| void | describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const |
| | |
Overridden public functions 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 |
| | |
Overriden public functions from MultiVectorBase | |
| RCP< MultiVectorBase< Scalar > > | clone_mv () const |
| | |
Overriden from LinearOpBase | |
| RCP< const VectorSpaceBase < Scalar > > | range () const |
| | |
| RCP< const VectorSpaceBase < Scalar > > | domain () const |
| | |
Overriden protected functions from MultiVectorBase | |
| RCP< const VectorBase< Scalar > > | colImpl (Ordinal j) const |
| | |
| RCP< VectorBase< Scalar > > | nonconstColImpl (Ordinal j) |
| | |
| RCP< const MultiVectorBase < Scalar > > | contigSubViewImpl (const Range1D &colRng) const |
| | |
| RCP< MultiVectorBase< Scalar > > | nonconstContigSubViewImpl (const Range1D &colRng) |
| | |
| RCP< const MultiVectorBase < Scalar > > | nonContigSubViewImpl (const ArrayView< const int > &cols) const |
| | |
| RCP< MultiVectorBase< Scalar > > | nonconstNonContigSubViewImpl (const ArrayView< const int > &cols) |
| | |
| void | mvMultiReductApplyOpImpl (const RTOpPack::RTOpT< Scalar > &primary_op, const ArrayView< const Ptr< const MultiVectorBase< Scalar > > > &multi_vecs, const ArrayView< const Ptr< MultiVectorBase< Scalar > > > &targ_multi_vecs, const ArrayView< const Ptr< RTOpPack::ReductTarget > > &reduct_objs, const Ordinal primary_global_offset) 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) |
| | |
Overridden 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 |
| | |
Deprecated. | |
| DefaultProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace_in, const int numMembers) | |
| Deprecated. | |
| DefaultProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace_in, const ArrayView< const RCP< MultiVectorBase< Scalar > > > &multiVecs) | |
| Deprecated. | |
| DefaultProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace_in, const ArrayView< const RCP< const MultiVectorBase< Scalar > > > &multiVecs) | |
| Deprecated. | |
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 58 of file Thyra_DefaultProductMultiVector_decl.hpp.
typedef Teuchos::ConstNonconstObjectContainer<MultiVectorBase<Scalar> > Thyra::DefaultProductMultiVector< Scalar >::CNMVC [private] |
Definition at line 251 of file Thyra_DefaultProductMultiVector_decl.hpp.
| Thyra::DefaultProductMultiVector< Scalar >::DefaultProductMultiVector | ( | ) |
Construct to uninitialized.
Definition at line 45 of file Thyra_DefaultProductMultiVector_def.hpp.
| Thyra::DefaultProductMultiVector< Scalar >::DefaultProductMultiVector | ( | const RCP< const DefaultProductVectorSpace< Scalar > > & | productSpace_in, |
| const int | numMembers | ||
| ) | [inline] |
Deprecated.
Definition at line 221 of file Thyra_DefaultProductMultiVector_decl.hpp.
References Thyra::DefaultProductMultiVector< Scalar >::initialize().
| Thyra::DefaultProductMultiVector< Scalar >::DefaultProductMultiVector | ( | const RCP< const DefaultProductVectorSpace< Scalar > > & | productSpace_in, |
| const ArrayView< const RCP< MultiVectorBase< Scalar > > > & | multiVecs | ||
| ) | [inline] |
Deprecated.
Definition at line 229 of file Thyra_DefaultProductMultiVector_decl.hpp.
References Thyra::DefaultProductMultiVector< Scalar >::initialize().
| Thyra::DefaultProductMultiVector< Scalar >::DefaultProductMultiVector | ( | const RCP< const DefaultProductVectorSpace< Scalar > > & | productSpace_in, |
| const ArrayView< const RCP< const MultiVectorBase< Scalar > > > & | multiVecs | ||
| ) | [inline] |
Deprecated.
Definition at line 237 of file Thyra_DefaultProductMultiVector_decl.hpp.
References Thyra::DefaultProductMultiVector< Scalar >::initialize().
| void Thyra::DefaultProductMultiVector< Scalar >::initialize | ( | const RCP< const DefaultProductVectorSpace< Scalar > > & | productSpace, |
| const int | numMembers | ||
| ) |
Definition at line 51 of file Thyra_DefaultProductMultiVector_def.hpp.
Referenced by Thyra::DefaultProductMultiVector< Scalar >::DefaultProductMultiVector().
| void Thyra::DefaultProductMultiVector< Scalar >::initialize | ( | const RCP< const DefaultProductVectorSpace< Scalar > > & | productSpace, |
| const ArrayView< const RCP< MultiVectorBase< Scalar > > > & | multiVecs | ||
| ) |
Definition at line 69 of file Thyra_DefaultProductMultiVector_def.hpp.
| void Thyra::DefaultProductMultiVector< Scalar >::initialize | ( | const RCP< const DefaultProductVectorSpace< Scalar > > & | productSpace, |
| const ArrayView< const RCP< const MultiVectorBase< Scalar > > > & | multiVecs | ||
| ) |
Definition at line 79 of file Thyra_DefaultProductMultiVector_def.hpp.
| void Thyra::DefaultProductMultiVector< Scalar >::uninitialize | ( | ) |
Uninitialize.
ToDo: Finish documentation.
Definition at line 89 of file Thyra_DefaultProductMultiVector_def.hpp.
| std::string Thyra::DefaultProductMultiVector< Scalar >::description | ( | ) | const |
Reimplemented from Thyra::LinearOpDefaultBase< Scalar >.
Definition at line 101 of file Thyra_DefaultProductMultiVector_def.hpp.
| void Thyra::DefaultProductMultiVector< Scalar >::describe | ( | Teuchos::FancyOStream & | out, |
| const Teuchos::EVerbosityLevel | verbLevel | ||
| ) | const |
Reimplemented from Thyra::LinearOpDefaultBase< Scalar >.
| RCP< const ProductVectorSpaceBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::productSpace | ( | ) | const [virtual] |
Implements Thyra::ProductMultiVectorBase< Scalar >.
Definition at line 166 of file Thyra_DefaultProductMultiVector_def.hpp.
| bool Thyra::DefaultProductMultiVector< Scalar >::blockIsConst | ( | const int | k | ) | const [virtual] |
Implements Thyra::ProductMultiVectorBase< Scalar >.
Definition at line 173 of file Thyra_DefaultProductMultiVector_def.hpp.
| RCP< MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::getNonconstMultiVectorBlock | ( | const int | k | ) | [virtual] |
Implements Thyra::ProductMultiVectorBase< Scalar >.
Definition at line 181 of file Thyra_DefaultProductMultiVector_def.hpp.
| RCP< const MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::getMultiVectorBlock | ( | const int | k | ) | const [virtual] |
Implements Thyra::ProductMultiVectorBase< Scalar >.
Definition at line 189 of file Thyra_DefaultProductMultiVector_def.hpp.
| RCP< MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::clone_mv | ( | ) | const [virtual] |
Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.
Definition at line 200 of file Thyra_DefaultProductMultiVector_def.hpp.
| RCP< const VectorSpaceBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::range | ( | ) | const [virtual] |
Implements Thyra::LinearOpBase< Scalar >.
Definition at line 215 of file Thyra_DefaultProductMultiVector_def.hpp.
| RCP< const VectorSpaceBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::domain | ( | ) | const [virtual] |
Implements Thyra::LinearOpBase< Scalar >.
Definition at line 223 of file Thyra_DefaultProductMultiVector_def.hpp.
| RCP< const VectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::colImpl | ( | Ordinal | j | ) | const [protected, virtual] |
Reimplemented from Thyra::MultiVectorBase< Scalar >.
Definition at line 239 of file Thyra_DefaultProductMultiVector_def.hpp.
| RCP< VectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::nonconstColImpl | ( | Ordinal | j | ) | [protected, virtual] |
Implements Thyra::MultiVectorBase< Scalar >.
Definition at line 251 of file Thyra_DefaultProductMultiVector_def.hpp.
| RCP< const MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::contigSubViewImpl | ( | const Range1D & | colRng | ) | const [protected, virtual] |
Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.
Definition at line 263 of file Thyra_DefaultProductMultiVector_def.hpp.
| RCP< MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::nonconstContigSubViewImpl | ( | const Range1D & | colRng | ) | [protected, virtual] |
Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.
Definition at line 275 of file Thyra_DefaultProductMultiVector_def.hpp.
| RCP< const MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::nonContigSubViewImpl | ( | const ArrayView< const int > & | cols | ) | const [protected, virtual] |
Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.
Definition at line 287 of file Thyra_DefaultProductMultiVector_def.hpp.
| RCP< MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::nonconstNonContigSubViewImpl | ( | const ArrayView< const int > & | cols | ) | [protected, virtual] |
Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.
Definition at line 301 of file Thyra_DefaultProductMultiVector_def.hpp.
| void Thyra::DefaultProductMultiVector< Scalar >::mvMultiReductApplyOpImpl | ( | const RTOpPack::RTOpT< Scalar > & | primary_op, |
| const ArrayView< const Ptr< const MultiVectorBase< Scalar > > > & | multi_vecs, | ||
| const ArrayView< const Ptr< MultiVectorBase< Scalar > > > & | targ_multi_vecs, | ||
| const ArrayView< const Ptr< RTOpPack::ReductTarget > > & | reduct_objs, | ||
| const Ordinal | primary_global_offset | ||
| ) | const [protected, virtual] |
Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.
Definition at line 314 of file Thyra_DefaultProductMultiVector_def.hpp.
References Thyra::ProductMultiVectorBase< Scalar >::getMultiVectorBlock(), Thyra::MultiVectorDefaultBase< Scalar >::mvMultiReductApplyOpImpl(), and THYRA_ASSERT_VEC_SPACES.
| void Thyra::DefaultProductMultiVector< Scalar >::acquireDetachedMultiVectorViewImpl | ( | const Range1D & | rowRng, |
| const Range1D & | colRng, | ||
| RTOpPack::ConstSubMultiVectorView< Scalar > * | sub_mv | ||
| ) | const [protected, virtual] |
Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.
Definition at line 466 of file Thyra_DefaultProductMultiVector_def.hpp.
References Thyra::MultiVectorDefaultBase< Scalar >::acquireDetachedMultiVectorViewImpl().
| void Thyra::DefaultProductMultiVector< Scalar >::releaseDetachedMultiVectorViewImpl | ( | RTOpPack::ConstSubMultiVectorView< Scalar > * | sub_mv | ) | const [protected, virtual] |
Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.
Definition at line 479 of file Thyra_DefaultProductMultiVector_def.hpp.
References Thyra::MultiVectorDefaultBase< Scalar >::releaseDetachedMultiVectorViewImpl().
| void Thyra::DefaultProductMultiVector< Scalar >::acquireNonconstDetachedMultiVectorViewImpl | ( | const Range1D & | rowRng, |
| const Range1D & | colRng, | ||
| RTOpPack::SubMultiVectorView< Scalar > * | sub_mv | ||
| ) | [protected, virtual] |
Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.
Definition at line 490 of file Thyra_DefaultProductMultiVector_def.hpp.
References Thyra::MultiVectorDefaultBase< Scalar >::acquireNonconstDetachedMultiVectorViewImpl().
| void Thyra::DefaultProductMultiVector< Scalar >::commitNonconstDetachedMultiVectorViewImpl | ( | RTOpPack::SubMultiVectorView< Scalar > * | sub_mv | ) | [protected, virtual] |
Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.
Definition at line 503 of file Thyra_DefaultProductMultiVector_def.hpp.
References Thyra::MultiVectorDefaultBase< Scalar >::commitNonconstDetachedMultiVectorViewImpl().
| bool Thyra::DefaultProductMultiVector< Scalar >::opSupportedImpl | ( | EOpTransp | M_trans | ) | const [protected, virtual] |
Implements Thyra::LinearOpBase< Scalar >.
Definition at line 516 of file Thyra_DefaultProductMultiVector_def.hpp.
| void Thyra::DefaultProductMultiVector< Scalar >::applyImpl | ( | const EOpTransp | M_trans, |
| const MultiVectorBase< Scalar > & | X, | ||
| const Ptr< MultiVectorBase< Scalar > > & | Y, | ||
| const Scalar | alpha, | ||
| const Scalar | beta | ||
| ) | const [protected, virtual] |
Implements Thyra::LinearOpBase< Scalar >.
Definition at line 523 of file Thyra_DefaultProductMultiVector_def.hpp.
References Thyra::apply(), Thyra::ProductMultiVectorBase< Scalar >::getMultiVectorBlock(), Thyra::ProductMultiVectorBase< Scalar >::getNonconstMultiVectorBlock(), Thyra::NOTRANS, Thyra::real_trans(), and THYRA_ASSERT_LINEAR_OP_MULTIVEC_APPLY_SPACES.
| void Thyra::DefaultProductMultiVector< Scalar >::initializeImpl | ( | const RCP< const DefaultProductVectorSpace< Scalar > > & | productSpace, |
| const ArrayView< const RCP< MultiVectorType > > & | multiVecs | ||
| ) | [private] |
Definition at line 589 of file Thyra_DefaultProductMultiVector_def.hpp.
References THYRA_ASSERT_VEC_SPACES.
| void Thyra::DefaultProductMultiVector< Scalar >::assertInitialized | ( | ) | const [inline, private] |
Definition at line 359 of file Thyra_DefaultProductMultiVector_decl.hpp.
| void Thyra::DefaultProductMultiVector< Scalar >::validateColIndex | ( | const int | j | ) | const [inline, private] |
Definition at line 365 of file Thyra_DefaultProductMultiVector_decl.hpp.
| RCP< DefaultProductMultiVector< Scalar > > defaultProductMultiVector | ( | ) | [related] |
Nonmember constructor.
| RCP< DefaultProductMultiVector< Scalar > > defaultProductMultiVector | ( | const RCP< const DefaultProductVectorSpace< Scalar > > & | productSpace, |
| const int | numMembers | ||
| ) | [related] |
Nonmember constructor.
| RCP< DefaultProductMultiVector< Scalar > > defaultProductMultiVector | ( | const RCP< const DefaultProductVectorSpace< Scalar > > & | productSpace, |
| const ArrayView< const RCP< MultiVectorBase< Scalar > > > & | multiVecs | ||
| ) | [related] |
Nonmember constructor.
| RCP< DefaultProductMultiVector< Scalar > > defaultProductMultiVector | ( | const RCP< const DefaultProductVectorSpace< Scalar > > & | productSpace, |
| const ArrayView< const RCP< const MultiVectorBase< Scalar > > > & | multiVecs | ||
| ) | [related] |
Nonmember constructor.
| RCP< const ProductMultiVectorBase< Scalar > > castOrCreateSingleBlockProductMultiVector | ( | const RCP< const DefaultProductVectorSpace< Scalar > > & | productSpace, |
| const RCP< const MultiVectorBase< Scalar > > & | mv | ||
| ) | [related] |
Dynamic cast to a const product multi-vector or create a new product multi-vector with one component if the input multi-vector is not a product vector.
| RCP< ProductMultiVectorBase< Scalar > > nonconstCastOrCreateSingleBlockProductMultiVector | ( | const RCP< const DefaultProductVectorSpace< Scalar > > & | productSpace, |
| const RCP< MultiVectorBase< Scalar > > & | mv | ||
| ) | [related] |
Dynamic cast to a const product multi-vector or create a new product multi-vector with one component if the input multi-vector is not a product vector.
RCP<const DefaultProductVectorSpace<Scalar> > Thyra::DefaultProductMultiVector< Scalar >::productSpace_ [private] |
Definition at line 256 of file Thyra_DefaultProductMultiVector_decl.hpp.
Teuchos::Array<CNMVC> Thyra::DefaultProductMultiVector< Scalar >::multiVecs_ [private] |
Definition at line 257 of file Thyra_DefaultProductMultiVector_decl.hpp.
int Thyra::DefaultProductMultiVector< Scalar >::numBlocks_ [private] |
Definition at line 259 of file Thyra_DefaultProductMultiVector_decl.hpp.
1.7.4