Coarsener Class Reference
#include <Coarsening.h>
List of all members.
Classes |
struct | parallelAddingEdges |
struct | parallelMatchNodes |
Public Member Functions |
| Coarsener (bool userSerial, int coarsenTo, int maxVertexWeight) |
int | getCoarsenTo () |
void | createNodes (MetisGraph *coarseMetisGraph) |
MetisGraph * | coarsen (MetisGraph *metisGraph) |
Static Public Attributes |
static const double | COARSEN_FRACTION = 0.90 |
Private Member Functions |
bool | serialMatch (bool notFirstTime, GGraph *coarser) |
bool | parallelMatch (bool notFirstTime, GGraph *coarser, int level) |
bool | isDone (MetisGraph *metisGraph) |
| determine if the graph is coarse enough
|
void | addNeighbors (int nodeId, GNode node, GGraph *graph, MetisGraph *coarseMetisGraph, IntVec &lmap) |
void | addNeighbors (int nodeId, GNode node, GGraph *graph, MetisGraph *coarseMetisGraph) |
void | addNeighbors (int nodeId, GNode node, GGraph *graph, MetisGraph *coarseMetisGraph, IntIntMap &lmap) |
void | addEdges (int nodeId, GNode node, bool *visited, MetisGraph *coarseMetisGraph) |
void | serialCreateCoarserGraph (MetisGraph *coarseMetisGraph, bool *visited) |
void | parallelCreateCoarserGraph (MetisGraph *coarseMetisGraph, bool *visited, int level) |
Private Attributes |
int | coarsenTo |
int | maxVertexWeight |
bool | useSerial |
GGraph * | graph |
MetisGraph * | metisGraph |
Constructor & Destructor Documentation
Coarsener::Coarsener |
( |
bool |
userSerial, |
|
|
int |
coarsenTo, |
|
|
int |
maxVertexWeight | |
|
) |
| | [inline] |
Member Function Documentation
void Coarsener::addEdges |
( |
int |
nodeId, |
|
|
GNode |
node, |
|
|
bool * |
visited, |
|
|
MetisGraph * |
coarseMetisGraph | |
|
) |
| | [inline, private] |
void Coarsener::addNeighbors |
( |
int |
nodeId, |
|
|
GNode |
node, |
|
|
GGraph * |
graph, |
|
|
MetisGraph * |
coarseMetisGraph | |
|
) |
| | [inline, private] |
void Coarsener::addNeighbors |
( |
int |
nodeId, |
|
|
GNode |
node, |
|
|
GGraph * |
graph, |
|
|
MetisGraph * |
coarseMetisGraph, |
|
|
IntVec & |
lmap | |
|
) |
| | [inline, private] |
void Coarsener::createNodes |
( |
MetisGraph * |
coarseMetisGraph |
) |
[inline] |
int Coarsener::getCoarsenTo |
( |
|
) |
[inline] |
bool Coarsener::isDone |
( |
MetisGraph * |
metisGraph |
) |
[inline, private] |
determine if the graph is coarse enough
void Coarsener::parallelCreateCoarserGraph |
( |
MetisGraph * |
coarseMetisGraph, |
|
|
bool * |
visited, |
|
|
int |
level | |
|
) |
| | [inline, private] |
bool Coarsener::parallelMatch |
( |
bool |
notFirstTime, |
|
|
GGraph * |
coarser, |
|
|
int |
level | |
|
) |
| | [inline, private] |
void Coarsener::serialCreateCoarserGraph |
( |
MetisGraph * |
coarseMetisGraph, |
|
|
bool * |
visited | |
|
) |
| | [inline, private] |
bool Coarsener::serialMatch |
( |
bool |
notFirstTime, |
|
|
GGraph * |
coarser | |
|
) |
| | [inline, private] |
Member Data Documentation
The documentation for this class was generated from the following file: