|
Panzer
Version of the Day
|
Go to the documentation of this file.
43 #ifndef __Panzer_Filtered_UniqueGlobalIndexer_hpp__
44 #define __Panzer_Filtered_UniqueGlobalIndexer_hpp__
52 template <
typename LocalOrdinalT,
typename GlobalOrdinalT>
71 const std::vector<GlobalOrdinalT> & filteredIndices);
102 std::vector<GlobalOrdinalT>& indices)
const
119 std::vector<GlobalOrdinalT>& indices)
const
135 std::vector<GlobalOrdinalT>& indices)
const
139 for (
size_t i(0); i <
owned_.size(); ++i)
141 for (
size_t i(0); i <
ghosted_.size(); ++i)
188 virtual void ownedIndices(
const std::vector<GlobalOrdinalT> & indices,std::vector<bool> & isOwned)
const;
196 {
return base_->getComm(); }
199 {
return base_->getNumFields(); }
202 {
return base_->getFieldString(fieldNum); }
205 {
return base_->getFieldNum(str); }
208 {
base_->getFieldOrder(fieldOrder); }
211 {
base_->getElementBlockIds(elementBlockIds); }
217 {
return base_->getBlockFieldNumbers(blockId); }
220 {
return base_->getGIDFieldOffsets(blockId,fieldNum); }
222 virtual const std::pair<std::vector<int>,std::vector<int> > &
224 int subcellDim,
int subcellId)
const
225 {
return base_->getGIDFieldOffsets_closure(blockId,fieldNum,subcellDim,subcellId); }
228 {
base_->getElementOrientation(localElmtId,gidsOrientation); }
230 virtual const std::vector<LocalOrdinalT> &
getElementBlock(
const std::string & blockId)
const
231 {
return base_->getElementBlock(blockId); }
233 virtual void getElementGIDs(LocalOrdinalT localElmtId,std::vector<GlobalOrdinalT> & gids,
const std::string & blockIdHint=
"")
const
234 {
base_->getElementGIDs(localElmtId,gids,blockIdHint); }
237 {
return base_->getElementBlockGIDCount(blockId); }
240 {
return base_->getElementBlockGIDCount(blockIndex); }
243 {
return base_->getConnManagerBase(); }
std::vector< GlobalOrdinalT > owned_
The list of owned indices.
virtual const std::pair< std::vector< int >, std::vector< int > > & getGIDFieldOffsets_closure(const std::string &blockId, int fieldNum, int subcellDim, int subcellId) const
Use the field pattern so that you can find a particular field in the GIDs array. This version lets yo...
virtual void getGhostedIndices(std::vector< GlobalOrdinalT > &indices) const
Get the set of indices ghosted for this processor.
virtual const std::vector< LocalOrdinalT > & getElementBlock(const std::string &blockId) const
virtual const std::vector< int > & getBlockFieldNumbers(const std::string &blockId) const
virtual bool fieldInBlock(const std::string &field, const std::string &block) const
virtual int getNumOwnedAndGhosted() const
Get the number of owned and ghosted indices for this processor.
virtual int getNumGhosted() const
Get the number of indices ghosted for this processor.
virtual int getElementBlockGIDCount(const std::size_t &blockIndex) const
How any GIDs are associate with a particular element block.
Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > base_
virtual int getNumOwned() const
Get the number of indices owned by this processor.
virtual void getOwnedAndGhostedIndices(std::vector< GlobalOrdinalT > &indices) const
Get the set of owned and ghosted indices for this processor.
virtual const std::string & getFieldString(int fieldNum) const
Reverse lookup of the field string from a field number.
virtual ~Filtered_UniqueGlobalIndexer()
void getOwnedAndGhostedNotFilteredIndicator(std::vector< int > &indicator) const
void getFilteredOwnedAndGhostedIndices(std::vector< GlobalOrdinalT > &indices) const
virtual void ownedIndices(const std::vector< GlobalOrdinalT > &indices, std::vector< bool > &isOwned) const
virtual void getElementOrientation(LocalOrdinalT localElmtId, std::vector< double > &gidsOrientation) const
Get a vector containg the orientation of the GIDs relative to the neighbors.
virtual int getNumFields() const
void initialize(const Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > &ugi, const std::vector< GlobalOrdinalT > &filteredIndices)
std::vector< GlobalOrdinalT > ghosted_
The list of ghosted indices.
virtual int getElementBlockGIDCount(const std::string &blockId) const
How many GIDs are associate with a particular element block.
virtual int getFieldNum(const std::string &str) const
Get the number used for access to this field.
virtual void getElementBlockIds(std::vector< std::string > &elementBlockIds) const
virtual Teuchos::RCP< Teuchos::Comm< int > > getComm() const
virtual Teuchos::RCP< const ConnManagerBase< LocalOrdinalT > > getConnManagerBase() const
Returns the connection manager currently being used.
PHX::MDField< ScalarT, panzer::Cell, panzer::BASIS > field
A field to which we'll contribute, or in which we'll store, the result of computing this integral.
Filtered_UniqueGlobalIndexer()
virtual const std::vector< int > & getGIDFieldOffsets(const std::string &blockId, int fieldNum) const
Use the field pattern so that you can find a particular field in the GIDs array.
virtual void getFieldOrder(std::vector< std::string > &fieldOrder) const
virtual void getOwnedIndices(std::vector< GlobalOrdinalT > &indices) const
Get the set of indices owned by this processor.
virtual void getElementGIDs(LocalOrdinalT localElmtId, std::vector< GlobalOrdinalT > &gids, const std::string &blockIdHint="") const
Get the global IDs for a particular element. This function overwrites the gids variable.