Panzer  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
panzer::BlockedVector_ReadOnly_GlobalEvaluationData Class Reference

This class encapsulates the needs of a gather operation to do a halo exchange for blocked vectors. More...

#include <Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp>

Inheritance diagram for panzer::BlockedVector_ReadOnly_GlobalEvaluationData:
Inheritance graph
[legend]

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...
 

Detailed Description

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.

Constructor & Destructor Documentation

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.

Parameters
[in]srcThe 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.

Parameters
[in]ghostedSpaceA DefaultProductVectorSpace corresponding to the ghosted vector.
[in]ownedSpaceA DefaultProductVectorSpace corresponding to the owned vector. It's currently ignored, but it's included for future changes.
[in]gedBlocksGlobalEvaluationData objects that handle each block of the vector.

Definition at line 91 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.cpp.

virtual panzer::BlockedVector_ReadOnly_GlobalEvaluationData::~BlockedVector_ReadOnly_GlobalEvaluationData ( )
inlinevirtual

Destructor.

Definition at line 111 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.

Member Function Documentation

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.

Parameters
[in]ghostedSpaceA DefaultProductVectorSpace corresponding to the ghosted vector.
[in]ownedSpaceA DefaultProductVectorSpace corresponding to the owned vector. It's currently ignored, but it's included for future changes.
[in]gedBlocksGlobalEvaluationData objects that handle each block of the vector.

Definition at line 109 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.cpp.

virtual bool panzer::BlockedVector_ReadOnly_GlobalEvaluationData::isInitialized ( ) const
inlinevirtual

Is this object initialized?

Returns
Whether or not the object is initialized.

Implements panzer::ReadOnlyVector_GlobalEvaluationData.

Definition at line 143 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.

void panzer::BlockedVector_ReadOnly_GlobalEvaluationData::globalToGhost ( int  mem)
virtual

Communicate the owned data to the ghosted vector.

For this class, this method does the halo exchange for the vector.

Parameters
[in]memNot 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.

void panzer::BlockedVector_ReadOnly_GlobalEvaluationData::initializeData ( )
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.

void panzer::BlockedVector_ReadOnly_GlobalEvaluationData::setOwnedVector ( const Teuchos::RCP< const Thyra::VectorBase< double >> &  ownedVector)
virtual

Set the owned vector.

Parameters
[in]ownedVectorA Thyra::VectorBase<double> that you would like to set as the owned vector.

Definition at line 178 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.cpp.

Teuchos::RCP< const Thyra::VectorBase< double > > panzer::BlockedVector_ReadOnly_GlobalEvaluationData::getOwnedVector ( ) const
virtual

Get the owned vector.

Returns
The owned vector as a Thyra::VectorBase<double>.

Implements panzer::ReadOnlyVector_GlobalEvaluationData.

Definition at line 205 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.cpp.

Teuchos::RCP< Thyra::VectorBase< double > > panzer::BlockedVector_ReadOnly_GlobalEvaluationData::getGhostedVector ( ) const
virtual

Get the ghosted vector.

Returns
The ghosted vector as a Thyra::VectorBase<double>.

Implements panzer::ReadOnlyVector_GlobalEvaluationData.

Definition at line 217 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.cpp.

size_t panzer::BlockedVector_ReadOnly_GlobalEvaluationData::getBlockCount ( ) const
inline

How many blocks do we have?

Returns
The number of blocks in this GlobalEvaluationData object.

Definition at line 200 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.

Teuchos::RCP<ReadOnlyVector_GlobalEvaluationData> panzer::BlockedVector_ReadOnly_GlobalEvaluationData::getGEDBlock ( int  i)
inline

Get the i-th block (non const version).

Returns
This object's i-th GlobalEvaluationData block.

Definition at line 211 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.

Teuchos::RCP<const ReadOnlyVector_GlobalEvaluationData> panzer::BlockedVector_ReadOnly_GlobalEvaluationData::getGEDBlock ( int  i) const
inline

Get the i-th block (const version).

Returns
This object's i-th GlobalEvaluationData block.

Definition at line 223 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.

bool panzer::BlockedVector_ReadOnly_GlobalEvaluationData::requiresDirichletAdjustment ( ) const
inlinevirtual

Determine if a Dirichlet adjustment is necessary.

For this class, there's nothing to do because it's read-only.

Returns
False.

Implements panzer::GlobalEvaluationData.

Definition at line 237 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.

Member Data Documentation

bool panzer::BlockedVector_ReadOnly_GlobalEvaluationData::isInitialized_
private

A flag indicating whether or not the object has been initialized.

Definition at line 248 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.

std::vector<Teuchos::RCP<ReadOnlyVector_GlobalEvaluationData> > panzer::BlockedVector_ReadOnly_GlobalEvaluationData::gedBlocks_
private

A vector of the GlobalEvaluationData blocks.

Definition at line 254 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.

Teuchos::RCP<const Thyra::VectorBase<double> > panzer::BlockedVector_ReadOnly_GlobalEvaluationData::ownedVector_
private

The owned vector.

Definition at line 259 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.

Teuchos::RCP<const Thyra::DefaultProductVectorSpace<double> > panzer::BlockedVector_ReadOnly_GlobalEvaluationData::ghostedSpace_
private

The vector space corresponding to the ghosted vector.

Definition at line 265 of file Panzer_BlockedVector_ReadOnly_GlobalEvaluationData.hpp.


The documentation for this class was generated from the following files: