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

#include <Panzer_UniqueGlobalIndexer.hpp>

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

Public Member Functions

virtual ~UniqueGlobalIndexerBase ()=0
 Pure virtual destructor: prevents warnings with inline empty implementation. More...
 
virtual Teuchos::RCP
< Teuchos::Comm< int > > 
getComm () const =0
 
virtual int getNumFields () const =0
 
virtual int getFieldNum (const std::string &str) const =0
 Get the number used for access to this field. More...
 
virtual void getFieldOrder (std::vector< std::string > &fieldOrder) const =0
 
virtual const std::string & getFieldString (int num) const =0
 Reverse lookup of the field string from a field number. More...
 
virtual void getElementBlockIds (std::vector< std::string > &elementBlockIds) const =0
 
virtual bool fieldInBlock (const std::string &field, const std::string &block) const =0
 
virtual const std::vector< int > & getBlockFieldNumbers (const std::string &blockId) const =0
 
virtual const std::vector< int > & getGIDFieldOffsets (const std::string &blockId, int fieldNum) const =0
 Use the field pattern so that you can find a particular field in the GIDs array. More...
 
virtual const std::pair
< std::vector< int >
, std::vector< int > > & 
getGIDFieldOffsets_closure (const std::string &blockId, int fieldNum, int subcellDim, int subcellId) const =0
 Use the field pattern so that you can find a particular field in the GIDs array. This version lets you specify the sub cell you are interested in and gets the closure. Meaning all the IDs of equal or lesser sub cell dimension that are contained within the specified sub cell. For instance for an edge, this function would return offsets for the edge and the nodes on that edge. More...
 
virtual int getElementBlockGIDCount (const std::string &blockId) const =0
 How any GIDs are associate with a particular element block. More...
 
virtual int getElementBlockGIDCount (const std::size_t &blockIndex) const =0
 How any GIDs are associate with a particular element block. More...
 

Detailed Description

Definition at line 61 of file Panzer_UniqueGlobalIndexer.hpp.

Constructor & Destructor Documentation

panzer::UniqueGlobalIndexerBase::~UniqueGlobalIndexerBase ( )
inlinepure virtual

Pure virtual destructor: prevents warnings with inline empty implementation.

Definition at line 419 of file Panzer_UniqueGlobalIndexer.hpp.

Member Function Documentation

virtual Teuchos::RCP<Teuchos::Comm<int> > panzer::UniqueGlobalIndexerBase::getComm ( ) const
pure virtual
virtual int panzer::UniqueGlobalIndexerBase::getNumFields ( ) const
pure virtual
virtual int panzer::UniqueGlobalIndexerBase::getFieldNum ( const std::string &  str) const
pure virtual

Get the number used for access to this field.

Get the number used for access to this field. This is used as the input parameter to the other functions that provide access to the global unknowns.

Parameters
[in]strHuman readable name of the field
Returns
A unique integer associated with the field if the field exisits. Otherwise a -1 is returned.

Implemented in panzer::DOFManager< LO, GO >, panzer::Filtered_UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT >, panzer::UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT >, panzer::UniqueGlobalIndexer< LocalOrdinalT, std::pair< int, GlobalOrdinalT > >, and panzer::BlockedDOFManager< LocalOrdinalT, GlobalOrdinalT >.

virtual void panzer::UniqueGlobalIndexerBase::getFieldOrder ( std::vector< std::string > &  fieldOrder) const
pure virtual
virtual const std::string& panzer::UniqueGlobalIndexerBase::getFieldString ( int  num) const
pure virtual

Reverse lookup of the field string from a field number.

Parameters
[in]numField number. Assumed to be a valid field number. Computed from getFieldNum.
Returns
Field name.

Implemented in panzer::DOFManager< LO, GO >, panzer::Filtered_UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT >, and panzer::BlockedDOFManager< LocalOrdinalT, GlobalOrdinalT >.

virtual void panzer::UniqueGlobalIndexerBase::getElementBlockIds ( std::vector< std::string > &  elementBlockIds) const
pure virtual
virtual bool panzer::UniqueGlobalIndexerBase::fieldInBlock ( const std::string &  field,
const std::string &  block 
) const
pure virtual
virtual const std::vector<int>& panzer::UniqueGlobalIndexerBase::getBlockFieldNumbers ( const std::string &  blockId) const
pure virtual
virtual const std::vector<int>& panzer::UniqueGlobalIndexerBase::getGIDFieldOffsets ( const std::string &  blockId,
int  fieldNum 
) const
pure virtual
virtual const std::pair<std::vector<int>,std::vector<int> >& panzer::UniqueGlobalIndexerBase::getGIDFieldOffsets_closure ( const std::string &  blockId,
int  fieldNum,
int  subcellDim,
int  subcellId 
) const
pure virtual

Use the field pattern so that you can find a particular field in the GIDs array. This version lets you specify the sub cell you are interested in and gets the closure. Meaning all the IDs of equal or lesser sub cell dimension that are contained within the specified sub cell. For instance for an edge, this function would return offsets for the edge and the nodes on that edge.

Parameters
[in]blockId
[in]fieldNum
[in]subcellDim
[in]subcellId

Implemented in panzer::DOFManager< LO, GO >, panzer::Filtered_UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT >, panzer::UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT >, panzer::UniqueGlobalIndexer< LocalOrdinalT, std::pair< int, GlobalOrdinalT > >, and panzer::BlockedDOFManager< LocalOrdinalT, GlobalOrdinalT >.

virtual int panzer::UniqueGlobalIndexerBase::getElementBlockGIDCount ( const std::string &  blockId) const
pure virtual

How any GIDs are associate with a particular element block.

This is a per-element count. If you have a quad element with two piecewise bi-linear fields this method returns 8.

Implemented in panzer::BlockedDOFManager< LocalOrdinalT, GlobalOrdinalT >, panzer::UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT >, panzer::UniqueGlobalIndexer< LocalOrdinalT, std::pair< int, GlobalOrdinalT > >, panzer::DOFManager< LO, GO >, and panzer::Filtered_UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT >.

virtual int panzer::UniqueGlobalIndexerBase::getElementBlockGIDCount ( const std::size_t &  blockIndex) const
pure virtual

How any GIDs are associate with a particular element block.

This is a per-element count. If you have a quad element with two piecewise bi-linear fields this method returns 8.

Implemented in panzer::BlockedDOFManager< LocalOrdinalT, GlobalOrdinalT >, panzer::UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT >, panzer::UniqueGlobalIndexer< LocalOrdinalT, std::pair< int, GlobalOrdinalT > >, panzer::DOFManager< LO, GO >, and panzer::Filtered_UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT >.


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