Panzer
Version of the Day
|
This class encapsulates the needs of a gather operation to do a halo exchange for blocked vectors. More...
#include <Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp>
Public Member Functions | |
BlockedVector_ReadOnly_GlobalEvaluationData () | |
Default Constructor. More... | |
BlockedVector_ReadOnly_GlobalEvaluationData (const BlockedVector_ReadOnly_GlobalEvaluationData &src) | |
Copy Constructor. More... | |
BlockedVector_ReadOnly_GlobalEvaluationData (const Teuchos::RCP< const Thyra::VectorSpaceBase< double >> ghostedSpace, const Teuchos::RCP< const Thyra::VectorSpaceBase< double >> ownedSpace, const std::vector< Teuchos::RCP< ReadOnlyVector_GlobalEvaluationData >> &gedBlocks) | |
Initializing Constructor. More... | |
virtual | ~BlockedVector_ReadOnly_GlobalEvaluationData () |
Destructor. More... | |
void | initialize (const Teuchos::RCP< const Thyra::VectorSpaceBase< double >> &ghostedSpace, const Teuchos::RCP< const Thyra::VectorSpaceBase< double >> &ownedSpace, const std::vector< Teuchos::RCP< ReadOnlyVector_GlobalEvaluationData >> &gedBlocks) |
Initialize this object using the sub-GlobalEvaluationData objects. More... | |
virtual bool | isInitialized () const |
Is this object initialized? More... | |
virtual void | globalToGhost (int mem) |
Communicate the owned data to the ghosted vector. More... | |
virtual void | initializeData () |
Initialize internal data for communication. More... | |
virtual void | setOwnedVector (const Teuchos::RCP< const Thyra::VectorBase< double >> &ownedVector) |
Set the owned vector. More... | |
virtual Teuchos::RCP< const Thyra::VectorBase< double > > | getOwnedVector () const |
Get the owned vector. More... | |
virtual Teuchos::RCP < Thyra::VectorBase< double > > | getGhostedVector () const |
Get the ghosted vector. More... | |
size_t | getBlockCount () const |
How many blocks do we have? More... | |
Teuchos::RCP < ReadOnlyVector_GlobalEvaluationData > | getGEDBlock (int i) |
Get the i -th block (non const version). More... | |
Teuchos::RCP< const ReadOnlyVector_GlobalEvaluationData > | getGEDBlock (int i) const |
Get the i -th block (const version). More... | |
bool | requiresDirichletAdjustment () const |
Determine if a Dirichlet adjustment is necessary. More... | |
Public Member Functions inherited from panzer::ReadOnlyVector_GlobalEvaluationData | |
virtual | ~ReadOnlyVector_GlobalEvaluationData () |
Virtual d. More... | |
virtual void | ghostToGlobal (int) |
virtual void | setOwnedVector (const Teuchos::RCP< const Thyra::VectorBase< double > > &ownedVector)=0 |
Set the owned vector. More... | |
const double & | operator[] (const int &lid) const |
Element access. More... | |
Public Member Functions inherited from panzer::GlobalEvaluationData | |
virtual | ~GlobalEvaluationData ()=0 |
virtual void | print (std::ostream &os) const |
Diagnostic function for determinning what's in this object. More... | |
Private Attributes | |
bool | isInitialized_ |
A flag indicating whether or not the object has been initialized. More... | |
std::vector< Teuchos::RCP < ReadOnlyVector_GlobalEvaluationData > > | gedBlocks_ |
A vector of the GlobalEvaluationData blocks. More... | |
Teuchos::RCP< const Thyra::VectorBase< double > > | ownedVector_ |
The owned vector. More... | |
Teuchos::RCP< const Thyra::DefaultProductVectorSpace < double > > | ghostedSpace_ |
The vector space corresponding to the ghosted vector. More... | |
Additional Inherited Members | |
Protected Attributes inherited from panzer::ReadOnlyVector_GlobalEvaluationData | |
panzer::kokkos_utils::VectorToViewTraits < const Epetra_Vector >::View | ownedView_ |
The Kokkos::View of the owned vector. More... | |
panzer::kokkos_utils::VectorToViewTraits < Epetra_Vector >::View | ghostedView_ |
The Kokkos::View of the ghosted vector. More... | |
This class encapsulates the needs of a gather operation to do a halo exchange for blocked vectors.
Definition at line 72 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.
panzer::BlockedVector_ReadOnly_GlobalEvaluationData::BlockedVector_ReadOnly_GlobalEvaluationData | ( | ) |
Default Constructor.
Definition at line 66 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.cpp.
panzer::BlockedVector_ReadOnly_GlobalEvaluationData::BlockedVector_ReadOnly_GlobalEvaluationData | ( | const BlockedVector_ReadOnly_GlobalEvaluationData & | src | ) |
Copy Constructor.
[in] | src | The object to be copied. |
Definition at line 77 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.cpp.
panzer::BlockedVector_ReadOnly_GlobalEvaluationData::BlockedVector_ReadOnly_GlobalEvaluationData | ( | const Teuchos::RCP< const Thyra::VectorSpaceBase< double >> | ghostedSpace, |
const Teuchos::RCP< const Thyra::VectorSpaceBase< double >> | ownedSpace, | ||
const std::vector< Teuchos::RCP< ReadOnlyVector_GlobalEvaluationData >> & | gedBlocks | ||
) |
Initializing Constructor.
[in] | ghostedSpace | A DefaultProductVectorSpace corresponding to the ghosted vector. |
[in] | ownedSpace | A DefaultProductVectorSpace corresponding to the owned vector. It's currently ignored, but it's included for future changes. |
[in] | gedBlocks | GlobalEvaluationData objects that handle each block of the vector. |
Definition at line 91 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.cpp.
|
inlinevirtual |
Destructor.
Definition at line 111 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.
void panzer::BlockedVector_ReadOnly_GlobalEvaluationData::initialize | ( | const Teuchos::RCP< const Thyra::VectorSpaceBase< double >> & | ghostedSpace, |
const Teuchos::RCP< const Thyra::VectorSpaceBase< double >> & | ownedSpace, | ||
const std::vector< Teuchos::RCP< ReadOnlyVector_GlobalEvaluationData >> & | gedBlocks | ||
) |
Initialize this object using the sub-GlobalEvaluationData
objects.
You must specify the owned and ghosted spaces. At completion, isInitialized_
will be set to true
.
[in] | ghostedSpace | A DefaultProductVectorSpace corresponding to the ghosted vector. |
[in] | ownedSpace | A DefaultProductVectorSpace corresponding to the owned vector. It's currently ignored, but it's included for future changes. |
[in] | gedBlocks | GlobalEvaluationData objects that handle each block of the vector. |
Definition at line 109 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.cpp.
|
inlinevirtual |
Is this object initialized?
Implements panzer::ReadOnlyVector_GlobalEvaluationData.
Definition at line 143 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.
|
virtual |
Communicate the owned data to the ghosted vector.
For this class, this method does the halo exchange for the vector.
[in] | mem | Not needed for this class, but part of the GlobalEvaluationData interface. |
Implements panzer::ReadOnlyVector_GlobalEvaluationData.
Definition at line 141 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.cpp.
|
virtual |
Initialize internal data for communication.
This clears out the ghosted vector.
Implements panzer::GlobalEvaluationData.
Definition at line 160 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.cpp.
|
virtual |
Set the owned vector.
[in] | ownedVector | A Thyra::VectorBase<double> that you would like to set as the owned vector. |
Definition at line 178 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.cpp.
|
virtual |
Get the owned vector.
Thyra::VectorBase<double>
. Implements panzer::ReadOnlyVector_GlobalEvaluationData.
Definition at line 205 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.cpp.
|
virtual |
Get the ghosted vector.
Thyra::VectorBase<double>
. Implements panzer::ReadOnlyVector_GlobalEvaluationData.
Definition at line 217 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.cpp.
|
inline |
How many blocks do we have?
GlobalEvaluationData
object. Definition at line 200 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.
|
inline |
Get the i
-th block (non const version).
i
-th GlobalEvaluationData
block. Definition at line 211 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.
|
inline |
Get the i
-th block (const version).
i
-th GlobalEvaluationData
block. Definition at line 223 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.
|
inlinevirtual |
Determine if a Dirichlet adjustment is necessary.
For this class, there's nothing to do because it's read-only.
Implements panzer::GlobalEvaluationData.
Definition at line 237 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.
|
private |
A flag indicating whether or not the object has been initialized.
Definition at line 248 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.
|
private |
A vector
of the GlobalEvaluationData
blocks.
Definition at line 254 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.
|
private |
The owned vector.
Definition at line 259 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.
|
private |
The vector space corresponding to the ghosted vector.
Definition at line 265 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.