VectorSpaceBase that takes a collection of individual VectorSpaceBase objects distributed over many different processes and creates a single vector space.
More...
#include <Thyra_DefaultClusteredSpmdProductVectorSpaceDecl.hpp>
Inheritance diagram for Thyra::DefaultClusteredSpmdProductVectorSpace< Scalar >:
Constructors/Intializers/Accessors | |
| DefaultClusteredSpmdProductVectorSpace () | |
| | |
| DefaultClusteredSpmdProductVectorSpace (const Teuchos::RefCountPtr< const Teuchos::Comm< Index > > &intraClusterComm, const int clusterRootRank, const Teuchos::RefCountPtr< const Teuchos::Comm< Index > > &interClusterComm, const int numBlocks, const Teuchos::RefCountPtr< const VectorSpaceBase< Scalar > > vecSpaces[]) | |
| | |
| void | initialize (const Teuchos::RefCountPtr< const Teuchos::Comm< Index > > &intraClusterComm, const int clusterRootRank, const Teuchos::RefCountPtr< const Teuchos::Comm< Index > > &interClusterComm, const int numBlocks, const Teuchos::RefCountPtr< const VectorSpaceBase< Scalar > > vecSpaces[]) |
| Initalize. | |
| Teuchos::RefCountPtr< const Teuchos::Comm< Index > > | intraClusterComm () const |
| | |
| int | clusterRootRank () const |
| | |
| Teuchos::RefCountPtr< const Teuchos::Comm< Index > > | interClusterComm () const |
| | |
| int | clusterSubDim () const |
| int | clusterOffset () const |
Overridden form Teuchos::Describable | |
| std::string | description () const |
| | |
Public overridden from VectorSpaceBase | |
| Index | dim () const |
| | |
| bool | isCompatible (const VectorSpaceBase< Scalar > &vecSpc) const |
| | |
| Teuchos::RefCountPtr< const VectorSpaceFactoryBase< Scalar > > | smallVecSpcFcty () const |
| | |
| Scalar | scalarProd (const VectorBase< Scalar > &x, const VectorBase< Scalar > &y) const |
| | |
| void | scalarProds (const MultiVectorBase< Scalar > &X, const MultiVectorBase< Scalar > &Y, Scalar scalar_prods[]) const |
| | |
| bool | isEuclidean () const |
| | |
| bool | hasInCoreView (const Range1D &rng, const EViewType viewType, const EStrideType strideType) const |
| | |
| Teuchos::RefCountPtr< const VectorSpaceBase< Scalar > > | clone () const |
| | |
Protected overridden from ProductVectorSpaceBase | |
| int | numBlocks () const |
| | |
| Teuchos::RefCountPtr< const VectorSpaceBase< Scalar > > | getBlock (const int k) const |
| | |
Protected overridden from VectorSpaceBase | |
| Teuchos::RefCountPtr< VectorBase< Scalar > > | createMember () const |
| | |
| Teuchos::RefCountPtr< MultiVectorBase< Scalar > > | createMembers (int numMembers) const |
| | |
VectorSpaceBase that takes a collection of individual VectorSpaceBase objects distributed over many different processes and creates a single vector space.
What this class does is to take different vector space objects distributed over a set of different clusters of processes and then creates a single vector space object.
Let numClusters be the number of clusters that the processes in the global communicator are partitioned into. Each cluster of processes is represented by another communicator known in this process as intraClusterComm. The communicator that links the root of each cluster is called interClusterComm. All communication is performed with just these two communicators. There is no overall global communicator that encompasses all of the processes.
Within a cluster of processes, the number of constituent vector space objects must be the same. Let v[0]..v[numBlocks-1] be the numBlocks VectorBase objects for constituent vectors in this cluster of processes. There is no assumption make whatsoever about the natrue of the VectorSpaceBase objects or the [Multi]VectorBase objects that they create.
ToDo: Finish documentation!
The default copy constructor and assign operator are allowed and they work correctly and perform shallow copies of the constituent vector spaces!
Definition at line 69 of file Thyra_DefaultClusteredSpmdProductVectorSpaceDecl.hpp.
|
|||||||||
|
Definition at line 45 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
||||||||||||||||||||||||||||
|
Definition at line 50 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
||||||||||||||||||||||||||||
|
Initalize.
Definition at line 62 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
|||||||||
|
Definition at line 221 of file Thyra_DefaultClusteredSpmdProductVectorSpaceDecl.hpp. |
|
|||||||||
|
Definition at line 227 of file Thyra_DefaultClusteredSpmdProductVectorSpaceDecl.hpp. |
|
|||||||||
|
Definition at line 234 of file Thyra_DefaultClusteredSpmdProductVectorSpaceDecl.hpp. |
|
|||||||||
|
The some of the dimensions of the block vector spaces in this cluster. Definition at line 240 of file Thyra_DefaultClusteredSpmdProductVectorSpaceDecl.hpp. |
|
|||||||||
|
The offset of the first element in the first constituent vector in this cluster in the w.r.t. the global vector. Definition at line 246 of file Thyra_DefaultClusteredSpmdProductVectorSpaceDecl.hpp. |
|
|||||||||
|
Reimplemented from Teuchos::Describable. Definition at line 112 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
|||||||||
|
Implements Thyra::VectorSpaceBase< Scalar >. Definition at line 126 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
||||||||||
|
Implements Thyra::VectorSpaceBase< Scalar >. Definition at line 132 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
|||||||||
|
Implements Thyra::VectorSpaceBase< Scalar >. Definition at line 146 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
||||||||||||||||
|
Implements Thyra::VectorSpaceBase< Scalar >. Definition at line 154 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
||||||||||||||||||||
|
Implements Thyra::VectorSpaceBase< Scalar >. Definition at line 164 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
|||||||||
|
Reimplemented from Thyra::VectorSpaceBase< Scalar >. Definition at line 185 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
||||||||||||||||||||
|
Reimplemented from Thyra::VectorSpaceBase< Scalar >. Definition at line 191 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
|||||||||
|
Reimplemented from Thyra::VectorSpaceBase< Scalar >. Definition at line 200 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
|||||||||
|
Implements Thyra::ProductVectorSpaceBase< Scalar >. Definition at line 208 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
||||||||||
|
Implements Thyra::ProductVectorSpaceBase< Scalar >. Definition at line 215 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
|||||||||
|
Implements Thyra::VectorSpaceBase< Scalar >. Definition at line 225 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
|
||||||||||
|
Reimplemented from Thyra::VectorSpaceDefaultBase< Scalar >. Definition at line 233 of file Thyra_DefaultClusteredSpmdProductVectorSpace.hpp. |
1.3.9.1