#include <Thyra_DefaultSpmdMultiVectorDecl.hpp>
Inheritance diagram for Thyra::DefaultSpmdMultiVector< Scalar >:
Constructors/initializers/accessors | |
| DefaultSpmdMultiVector () | |
| Construct to uninitialized. | |
| DefaultSpmdMultiVector (const Teuchos::RCP< const SpmdVectorSpaceBase< Scalar > > &spmdRangeSpace, const Teuchos::RCP< const ScalarProdVectorSpaceBase< Scalar > > &domainSpace) | |
Calls initialize(). | |
| DefaultSpmdMultiVector (const Teuchos::RCP< const SpmdVectorSpaceBase< Scalar > > &spmdRangeSpace, const Teuchos::RCP< const ScalarProdVectorSpaceBase< Scalar > > &domainSpace, const Teuchos::RCP< Scalar > &localValues, const Index leadingDim) | |
Calls initialize(). | |
| void | initialize (const Teuchos::RCP< const SpmdVectorSpaceBase< Scalar > > &spmdRangeSpace, const Teuchos::RCP< const ScalarProdVectorSpaceBase< Scalar > > &domainSpace) |
| Initialize only with vector spaces where storage is allocated internally.. | |
| void | initialize (const Teuchos::RCP< const SpmdVectorSpaceBase< Scalar > > &spmdRangeSpace, const Teuchos::RCP< const ScalarProdVectorSpaceBase< Scalar > > &domainSpace, const Teuchos::RCP< Scalar > &localValues, const Index leadingDim) |
| Initialize using externally allocated storage. | |
| void | uninitialize (Teuchos::RCP< const SpmdVectorSpaceBase< Scalar > > *spmdRangeSpace=NULL, Teuchos::RCP< const ScalarProdVectorSpaceBase< Scalar > > *domainSpace=NULL, Teuchos::RCP< Scalar > *localValues=NULL, Index *leadingDim=NULL) |
| Set to an uninitialized state. | |
Overridden from EuclideanLinearOpBase | |
| Teuchos::RCP< const ScalarProdVectorSpaceBase< Scalar > > | domainScalarProdVecSpc () const |
| | |
Overridden from MultiVectorBase | |
| Teuchos::RCP< VectorBase< Scalar > > | col (Index j) |
| | |
| Teuchos::RCP< MultiVectorBase< Scalar > > | subView (const Range1D &col_rng) |
| | |
| Teuchos::RCP< const MultiVectorBase< Scalar > > | subView (const int numCols, const int cols[]) const |
| | |
| Teuchos::RCP< MultiVectorBase< Scalar > > | subView (const int numCols, const int cols[]) |
| | |
Overridden from SpmdMultiVectorBase | |
| Teuchos::RCP< const SpmdVectorSpaceBase< Scalar > > | spmdSpace () const |
| | |
| void | getLocalData (Scalar **localValues, Index *leadingDim) |
| | |
| void | commitLocalData (Scalar *localValues) |
| | |
| void | getLocalData (const Scalar **localValues, Index *leadingDim) const |
| | |
| void | freeLocalData (const Scalar *localValues) const |
| | |
This subclass provides a very efficient and very general concrete implementation of a Thyra::MultiVectorBase object.
Objects of this type generally should not be constructed directly by a client but instead by using the concrete vector space subclass Thyra::DefaultSpmdVectorSpace and using the function Thyra::createMembers().
The storage type can be anything since a Teuchos::RCP is used to pass in the local values pointer into the constructor and initialize().
Definition at line 55 of file Thyra_DefaultSpmdMultiVectorDecl.hpp.
| Thyra::DefaultSpmdMultiVector< Scalar >::DefaultSpmdMultiVector | ( | ) |
| Thyra::DefaultSpmdMultiVector< Scalar >::DefaultSpmdMultiVector | ( | const Teuchos::RCP< const SpmdVectorSpaceBase< Scalar > > & | spmdRangeSpace, | |
| const Teuchos::RCP< const ScalarProdVectorSpaceBase< Scalar > > & | domainSpace | |||
| ) |
| Thyra::DefaultSpmdMultiVector< Scalar >::DefaultSpmdMultiVector | ( | const Teuchos::RCP< const SpmdVectorSpaceBase< Scalar > > & | spmdRangeSpace, | |
| const Teuchos::RCP< const ScalarProdVectorSpaceBase< Scalar > > & | domainSpace, | |||
| const Teuchos::RCP< Scalar > & | localValues, | |||
| const Index | leadingDim | |||
| ) |
| void Thyra::DefaultSpmdMultiVector< Scalar >::initialize | ( | const Teuchos::RCP< const SpmdVectorSpaceBase< Scalar > > & | spmdRangeSpace, | |
| const Teuchos::RCP< const ScalarProdVectorSpaceBase< Scalar > > & | domainSpace | |||
| ) |
Initialize only with vector spaces where storage is allocated internally..
| spmdRangeSpace | [in] Smart pointer to SpmdVectorSpaceBase object that defines the data distribution for spmdSpace() and range(). | |
| domainSpace | [in] Smart pointer to VectorSpaceBase object that defines domain() space. |
spmdRangeSpace.get()!=NULL domainSpace.get()!=NULL Definition at line 118 of file Thyra_DefaultSpmdMultiVector.hpp.
| void Thyra::DefaultSpmdMultiVector< Scalar >::initialize | ( | const Teuchos::RCP< const SpmdVectorSpaceBase< Scalar > > & | spmdRangeSpace, | |
| const Teuchos::RCP< const ScalarProdVectorSpaceBase< Scalar > > & | domainSpace, | |||
| const Teuchos::RCP< Scalar > & | localValues, | |||
| const Index | leadingDim | |||
| ) |
Initialize using externally allocated storage.
| spmdRangeSpace | [in] Smart pointer to SpmdVectorSpaceBase object that defines the data distribution for spmdSpace() and range(). | |
| domainSpace | [in] Smart pointer to VectorSpaceBase object that defines domain() space. | |
| localValues | [in] Smart pointer to beginning of Fortran-style column-major array that defines the local localValues in the multi-vector. This array must be at least of dimension spmdRangeSpace->localSubDim()*domainSpace->dim() and (&*localValues)[ i + j*leadingDim ] gives the local value of the zero-based entry (i,j) where i=0...spmdSpace()->localSubDim()-1 and j=0...domainSpace->dim()-1. | |
| leadingDim | [in] The leading dimension of the multi-vector. |
spmdRangeSpace.get()!=NULL domainSpace.get()!=NULL localValues.get()!=NULL leadingDim >= spmdRangeSpace->localSubDim() Definition at line 137 of file Thyra_DefaultSpmdMultiVector.hpp.
| void Thyra::DefaultSpmdMultiVector< Scalar >::uninitialize | ( | Teuchos::RCP< const SpmdVectorSpaceBase< Scalar > > * | spmdRangeSpace = NULL, |
|
| Teuchos::RCP< const ScalarProdVectorSpaceBase< Scalar > > * | domainSpace = NULL, |
|||
| Teuchos::RCP< Scalar > * | localValues = NULL, |
|||
| Index * | leadingDim = NULL | |||
| ) |
Set to an uninitialized state.
Postconditions:
this->spmdSpace().get() == NULL. Definition at line 158 of file Thyra_DefaultSpmdMultiVector.hpp.
| Teuchos::RCP< const ScalarProdVectorSpaceBase< Scalar > > Thyra::DefaultSpmdMultiVector< Scalar >::domainScalarProdVecSpc | ( | ) | const [virtual] |
Implements Thyra::EuclideanLinearOpBase< Scalar >.
Definition at line 182 of file Thyra_DefaultSpmdMultiVector.hpp.
| Teuchos::RCP< VectorBase< Scalar > > Thyra::DefaultSpmdMultiVector< Scalar >::col | ( | Index | j | ) | [virtual] |
Implements Thyra::MultiVectorBase< Scalar >.
Definition at line 194 of file Thyra_DefaultSpmdMultiVector.hpp.
| Teuchos::RCP< MultiVectorBase< Scalar > > Thyra::DefaultSpmdMultiVector< Scalar >::subView | ( | const Range1D & | col_rng | ) | [virtual] |
Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.
Definition at line 214 of file Thyra_DefaultSpmdMultiVector.hpp.
| Teuchos::RCP< const MultiVectorBase< Scalar > > Thyra::DefaultSpmdMultiVector< Scalar >::subView | ( | const int | numCols, | |
| const int | cols[] | |||
| ) | const [virtual] |
Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.
Definition at line 235 of file Thyra_DefaultSpmdMultiVector.hpp.
| Teuchos::RCP< MultiVectorBase< Scalar > > Thyra::DefaultSpmdMultiVector< Scalar >::subView | ( | const int | numCols, | |
| const int | cols[] | |||
| ) | [virtual] |
Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.
Definition at line 253 of file Thyra_DefaultSpmdMultiVector.hpp.
| Teuchos::RCP< const SpmdVectorSpaceBase< Scalar > > Thyra::DefaultSpmdMultiVector< Scalar >::spmdSpace | ( | ) | const [virtual] |
Implements Thyra::SpmdMultiVectorBase< Scalar >.
Definition at line 283 of file Thyra_DefaultSpmdMultiVector.hpp.
| void Thyra::DefaultSpmdMultiVector< Scalar >::getLocalData | ( | Scalar ** | localValues, | |
| Index * | leadingDim | |||
| ) | [virtual] |
Implements Thyra::SpmdMultiVectorBase< Scalar >.
Definition at line 292 of file Thyra_DefaultSpmdMultiVector.hpp.
| void Thyra::DefaultSpmdMultiVector< Scalar >::commitLocalData | ( | Scalar * | localValues | ) | [virtual] |
Implements Thyra::SpmdMultiVectorBase< Scalar >.
Definition at line 308 of file Thyra_DefaultSpmdMultiVector.hpp.
| void Thyra::DefaultSpmdMultiVector< Scalar >::getLocalData | ( | const Scalar ** | localValues, | |
| Index * | leadingDim | |||
| ) | const [virtual] |
Implements Thyra::SpmdMultiVectorBase< Scalar >.
Definition at line 320 of file Thyra_DefaultSpmdMultiVector.hpp.
| void Thyra::DefaultSpmdMultiVector< Scalar >::freeLocalData | ( | const Scalar * | localValues | ) | const [virtual] |
Implements Thyra::SpmdMultiVectorBase< Scalar >.
Definition at line 336 of file Thyra_DefaultSpmdMultiVector.hpp.
1.4.7