LifeV
LifeV::GraphUtil Namespace Reference

Typedefs

typedef std::shared_ptr< Epetra_Comm > commPtr_Type
 
typedef std::vector< LifeV::Int > idList_Type
 
typedef std::shared_ptr< idList_Type > idListPtr_Type
 
typedef std::vector< idListPtr_Type > idTable_Type
 
typedef std::shared_ptr< idTable_Type > idTablePtr_Type
 
typedef std::set< Int > idSet_Type
 
typedef std::shared_ptr< idSet_Type > idSetPtr_Type
 
typedef std::vector< idSetPtr_Type > idSetGroup_Type
 
typedef std::shared_ptr< idSetGroup_Type > idSetGroupPtr_Type
 
typedef boost::bimap< LifeV::UInt, LifeV::UInt > biMap_Type
 
typedef biMap_Type::value_type biMapValue_Type
 

Functions

template<typename MeshType >
void partitionGraphParMETIS (const idListPtr_Type &vertexList, const MeshType &mesh, const Teuchos::ParameterList &params, idTablePtr_Type &vertexPartition, commPtr_Type &comm)
 Function that partitions a graph of a subset of elements in a mesh. More...
 

Typedef Documentation

◆ commPtr_Type

typedef std::shared_ptr<Epetra_Comm> commPtr_Type

Definition at line 59 of file GraphUtil.hpp.

◆ idList_Type

typedef std::vector<LifeV::Int> idList_Type

Definition at line 60 of file GraphUtil.hpp.

◆ idListPtr_Type

typedef std::shared_ptr<idList_Type> idListPtr_Type

Definition at line 61 of file GraphUtil.hpp.

◆ idTable_Type

typedef std::vector<idListPtr_Type> idTable_Type

Definition at line 62 of file GraphUtil.hpp.

◆ idTablePtr_Type

typedef std::shared_ptr<idTable_Type> idTablePtr_Type

Definition at line 63 of file GraphUtil.hpp.

◆ idSet_Type

typedef std::set<Int> idSet_Type

Definition at line 64 of file GraphUtil.hpp.

◆ idSetPtr_Type

typedef std::shared_ptr<idSet_Type> idSetPtr_Type

Definition at line 65 of file GraphUtil.hpp.

◆ idSetGroup_Type

typedef std::vector<idSetPtr_Type> idSetGroup_Type

Definition at line 66 of file GraphUtil.hpp.

◆ idSetGroupPtr_Type

typedef std::shared_ptr<idSetGroup_Type> idSetGroupPtr_Type

Definition at line 67 of file GraphUtil.hpp.

◆ biMap_Type

typedef boost::bimap<LifeV::UInt, LifeV::UInt> biMap_Type

Definition at line 68 of file GraphUtil.hpp.

◆ biMapValue_Type

typedef biMap_Type::value_type biMapValue_Type

Definition at line 69 of file GraphUtil.hpp.

Function Documentation

◆ partitionGraphParMETIS()

void partitionGraphParMETIS ( const idListPtr_Type &  vertexList,
const MeshType &  mesh,
const Teuchos::ParameterList &  params,
idTablePtr_Type &  vertexPartition,
commPtr_Type &  comm 
)

Function that partitions a graph of a subset of elements in a mesh.

Author
Radu Popescu radu..nosp@m.pope.nosp@m.scu@e.nosp@m.pfl..nosp@m.ch

This function partitions a graph (described by a list of mesh element IDs and a mesh object) into a given number of parts, using ParMETIS.

Serial or parallel operation is imposed by passing a pointer to an Epetra_Comm object.

Parameters
vertexList- list (as an idListPtr_Type) of mesh element GIDs representing the graph vertices of the graph which is partitioned
mesh- mesh object which is used for computing the connectivity of the graph
params- Teuchos::ParameterList with the configuration parameters. Currently only "num-parts" (Int) is used, but the parameter list container allows for introducing new configuration parameters
vertexPartition- table with the vertex ids in each graph part

Definition at line 98 of file GraphUtil.hpp.