![]()  | 
  
    LifeV
    
   | 
 
Class that produces a list of dof GID from a list of element LIDs. More...
#include <DOFGatherer.hpp>
 Collaboration diagram for DOFGatherer< MeshType >:Public Types | |
| typedef FESpace< MeshType, MapEpetra > | feSpace_Type | 
| Public typedefs.  More... | |
| typedef std::shared_ptr< feSpace_Type > | feSpacePtr_Type | 
Private Attributes | |
| const idTablePtr_Type | M_elementIds | 
| const std::shared_ptr< FESpace< MeshType, MapEpetra > > | M_feSpace | 
| idSetGroupPtr_Type | M_dofGIDTable | 
| DOFGatherer (const idTablePtr_Type &elementIds, const feSpacePtr_Type &feSpace) | |
| Constructors and destructor.  More... | |
| virtual | ~DOFGatherer () | 
| Destructor.  More... | |
| const idSetGroupPtr_Type & | dofGIDTable () const | 
| Get methods.  More... | |
| void | showMe (std::ostream &s=std::cout) | 
| Public methods.  More... | |
| void | run () | 
| Private methods.  More... | |
| void | getDofGIDs (const idList_Type &elementLIDs, idSet_Type &dofGIDs) | 
| Helper method to obtain dof GIDs associated with element LIDs.  More... | |
| void | dofClassification () | 
| Private methods that computes unique and shared dofs in M_dofGIDTable.  More... | |
| void | removeValues (const idSet_Type &valuesToRemove, idSet_Type &targetSet) | 
| Helper method that removes a subset of IDs from an idSet_Type.  More... | |
| const bool | setsCouldIntersect (const idSet_Type &first, const idSet_Type &second) const | 
| Method that computes whether two (ordered) sets of IDs intersect.  More... | |
| const bool | singleIntersect (const idSet_Type &first, const idSet_Type &second, Int &returnValue) const | 
| Method that checks if two ordered sets of IDs have a single shared value.  More... | |
Class that produces a list of dof GID from a list of element LIDs.
Objects of this class are constructed using an table of element LIDs (as an idTablePtr_Type object) and a finite element space (standard FESpace). The element LIDs are stored in a vector or vectors (see idTablePtr_Type in lifev/core/mesh/GraphUtil.hpp), where each vector contains the IDs of the elements in a second stage partition (for ShyLU_MT).
The DOFGatherer performs two operations, relevant to the second stage partitioning method used by multi-threaded solvers such as ShyLU_MT:
The classified dof sets can be accessed through the dofGIDTable method.
Definition at line 79 of file DOFGatherer.hpp.
| typedef FESpace<MeshType, MapEpetra> feSpace_Type | 
Public typedefs.
Definition at line 83 of file DOFGatherer.hpp.
| typedef std::shared_ptr<feSpace_Type> feSpacePtr_Type | 
Definition at line 84 of file DOFGatherer.hpp.
| DOFGatherer | ( | const idTablePtr_Type & | elementIds, | 
| const feSpacePtr_Type & | feSpace | ||
| ) | 
Constructors and destructor.
Constructor
| elementIds | - table of element LIDs from the second stage mesh partition | 
| feSpace | - finite element space | 
Definition at line 184 of file DOFGatherer.hpp.
 Here is the caller graph for this function:
      
  | 
  virtual | 
Destructor.
Definition at line 194 of file DOFGatherer.hpp.
      
  | 
  inline | 
Get methods.
Return a pointer to the classified dof table
Definition at line 103 of file DOFGatherer.hpp.
| void showMe | ( | std::ostream & | s = std::cout | ) | 
Public methods.
Display the contents of the dof table
Definition at line 248 of file DOFGatherer.hpp.
      
  | 
  private | 
Private methods.
This method performs all the computations
Definition at line 199 of file DOFGatherer.hpp.
 Here is the caller graph for this function:
      
  | 
  private | 
Helper method to obtain dof GIDs associated with element LIDs.
| elementLIDs | - input list of element LIDs for which the dof lookup is desired | 
| dofGIDs | - output set of dof GIDs | 
Definition at line 226 of file DOFGatherer.hpp.
      
  | 
  private | 
Private methods that computes unique and shared dofs in M_dofGIDTable.
Definition at line 264 of file DOFGatherer.hpp.
 Here is the caller graph for this function:
      
  | 
  private | 
Helper method that removes a subset of IDs from an idSet_Type.
Definition at line 303 of file DOFGatherer.hpp.
 Here is the caller graph for this function:
      
  | 
  inlineprivate | 
Method that computes whether two (ordered) sets of IDs intersect.
Definition at line 137 of file DOFGatherer.hpp.
 Here is the caller graph for this function:
      
  | 
  inlineprivate | 
Method that checks if two ordered sets of IDs have a single shared value.
Definition at line 148 of file DOFGatherer.hpp.
 Here is the caller graph for this function:
      
  | 
  private | 
Definition at line 176 of file DOFGatherer.hpp.
Definition at line 177 of file DOFGatherer.hpp.
      
  | 
  private | 
Definition at line 178 of file DOFGatherer.hpp.