MultiVectorBase implementation to provide default implementations for as many other functions in MultiVectorBase interface the as is reasonable.
More...
#include <Thyra_MultiVectorDefaultBaseDecl.hpp>
Inheritance diagram for Thyra::MultiVectorDefaultBase< Scalar >:
Overridden public member functions from MultiVectorBase | |
| Teuchos::RefCountPtr< const MultiVectorBase< Scalar > > | subView (const Range1D &colRng) const |
| | |
| Teuchos::RefCountPtr< MultiVectorBase< Scalar > > | subView (const Range1D &colRng) |
| | |
| Teuchos::RefCountPtr< const MultiVectorBase< Scalar > > | subView (const int numCols, const int cols[]) const |
| | |
| Teuchos::RefCountPtr< MultiVectorBase< Scalar > > | subView (const int numCols, const int cols[]) |
| | |
| virtual void | applyOp (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 void | applyOp (const RTOpPack::RTOpT< Scalar > &primary_op, const RTOpPack::RTOpT< Scalar > &secondary_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 *reduct_obj, 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 void | acquireDetachedView (const Range1D &rowRng, const Range1D &colRng, RTOpPack::ConstSubMultiVectorView< Scalar > *sub_mv) const |
| | |
| virtual void | releaseDetachedView (RTOpPack::ConstSubMultiVectorView< Scalar > *sub_mv) const |
| | |
| virtual void | acquireDetachedView (const Range1D &rowRng, const Range1D &colRng, RTOpPack::SubMultiVectorView< Scalar > *sub_mv) |
| | |
| virtual void | commitDetachedView (RTOpPack::SubMultiVectorView< Scalar > *sub_mv) |
| | |
| virtual Teuchos::RefCountPtr< MultiVectorBase< Scalar > > | clone_mv () const |
| | |
MultiVectorBase implementation to provide default implementations for as many other functions in MultiVectorBase interface the as is reasonable.
Notes to subclass developers
Only three function overrides are required in order to create a concrete MultiVectorBase subclass: range(), domain() and the non-const version of col(). All of the other functions have default implementations. However, a good implementation will provide optimized overrides of at least the functions apply() and applyTranspose(). The non-const versions of subView() should be overridden if subviews are important. The default implementation will not achieve near-optimal performance in many cases.
Definition at line 55 of file Thyra_MultiVectorDefaultBaseDecl.hpp.
|
||||||||||
|
Reimplemented in Thyra::VectorDefaultBase< Scalar >, and Thyra::DefaultVectorMultiVector< Scalar >. Definition at line 308 of file Thyra_MultiVectorDefaultBase.hpp. |
|
||||||||||
|
Reimplemented in Thyra::VectorDefaultBase< Scalar >, Thyra::DefaultColumnwiseMultiVector< Scalar >, Thyra::DefaultSpmdMultiVector< Scalar >, and Thyra::DefaultVectorMultiVector< Scalar >. Definition at line 330 of file Thyra_MultiVectorDefaultBase.hpp. |
|
||||||||||||||||
|
Reimplemented in Thyra::VectorDefaultBase< Scalar >, Thyra::DefaultSpmdMultiVector< Scalar >, and Thyra::DefaultVectorMultiVector< Scalar >. Definition at line 352 of file Thyra_MultiVectorDefaultBase.hpp. |
|
||||||||||||||||
|
Reimplemented in Thyra::VectorDefaultBase< Scalar >, Thyra::DefaultSpmdMultiVector< Scalar >, and Thyra::DefaultVectorMultiVector< Scalar >. Definition at line 380 of file Thyra_MultiVectorDefaultBase.hpp. |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
|
This implementation calls Reimplemented in Thyra::DefaultVectorMultiVector< Scalar >, and Thyra::SpmdMultiVectorBase< Scalar >. Definition at line 63 of file Thyra_MultiVectorDefaultBase.hpp. |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
This implementation calls Reimplemented in Thyra::DefaultVectorMultiVector< Scalar >. Definition at line 132 of file Thyra_MultiVectorDefaultBase.hpp. |
|
||||||||||||||||||||
|
This implementation is based on the vector operation Reimplemented in Thyra::VectorDefaultBase< Scalar >, Thyra::DefaultVectorMultiVector< Scalar >, and Thyra::SpmdMultiVectorBase< Scalar >. Definition at line 201 of file Thyra_MultiVectorDefaultBase.hpp. |
|
||||||||||
|
This implementation is a companion to the implementation for Reimplemented in Thyra::VectorDefaultBase< Scalar >, Thyra::DefaultVectorMultiVector< Scalar >, and Thyra::SpmdMultiVectorBase< Scalar >. Definition at line 250 of file Thyra_MultiVectorDefaultBase.hpp. |
|
||||||||||||||||||||
|
This implementation is based on the vector operation Reimplemented in Thyra::VectorDefaultBase< Scalar >, Thyra::DefaultVectorMultiVector< Scalar >, and Thyra::SpmdMultiVectorBase< Scalar >. Definition at line 260 of file Thyra_MultiVectorDefaultBase.hpp. |
|
||||||||||
|
This implementation is a companion to the default implementation for Reimplemented in Thyra::VectorDefaultBase< Scalar >, Thyra::DefaultVectorMultiVector< Scalar >, and Thyra::SpmdMultiVectorBase< Scalar >. Definition at line 279 of file Thyra_MultiVectorDefaultBase.hpp. |
|
|||||||||
|
This implementation uses the vector space to create a new multi-vector object and then uses a transformation operator to assign the vector elements. A subclass should only override this function if it can do something more sophisticated (i.e. lazy evaluation) but in general, this is not needed. Reimplemented in Thyra::VectorDefaultBase< Scalar >, and Thyra::DefaultVectorMultiVector< Scalar >. Definition at line 49 of file Thyra_MultiVectorDefaultBase.hpp. |
1.3.9.1