PPL Logo

libs/ck-libs/metis/libmetis/graph.c File Reference

Functions that deal with setting up the graphs for METIS. More...

Go to the source code of this file.

Functions

graph_tSetupGraph (ctrl_t *ctrl, idx_t nvtxs, idx_t ncon, idx_t *xadj, idx_t *adjncy, idx_t *vwgt, idx_t *vsize, idx_t *adjwgt)
void SetupGraph_tvwgt (graph_t *graph)
void SetupGraph_label (graph_t *graph)
graph_tSetupSplitGraph (graph_t *graph, idx_t snvtxs, idx_t snedges)
graph_tCreateGraph (void)
void InitGraph (graph_t *graph)
void FreeRData (graph_t *graph)
void FreeGraph (graph_t **r_graph)


Detailed Description

Functions that deal with setting up the graphs for METIS.

Date:
Started 7/25/1997
Author:
George

Copyright 1997-2009, Regents of the University of Minnesota

Version:
$Id: graph.c 10513 2011-07-07 22:06:03Z karypis $ 

Definition in file graph.c.


Function Documentation

graph_t* SetupGraph ( ctrl_t ctrl,
idx_t  nvtxs,
idx_t  ncon,
idx_t xadj,
idx_t adjncy,
idx_t vwgt,
idx_t vsize,
idx_t adjwgt 
)

void SetupGraph_tvwgt ( graph_t graph  ) 

Set's up the tvwgt/invtvwgt info

Definition at line 99 of file graph.c.

References graph_t::invtvwgt, graph_t::ncon, graph_t::nvtxs, graph_t::tvwgt, and graph_t::vwgt.

Referenced by CompressGraph(), PruneGraph(), SetupGraph(), SplitGraphOrder(), SplitGraphOrderCC(), and SplitGraphPart().

Here is the caller graph for this function:

void SetupGraph_label ( graph_t graph  ) 

Set's up the label info

Definition at line 118 of file graph.c.

References graph_t::label, and graph_t::nvtxs.

Referenced by CompressGraph(), PruneGraph(), and SetupGraph().

Here is the caller graph for this function:

graph_t* SetupSplitGraph ( graph_t graph,
idx_t  snvtxs,
idx_t  snedges 
)

Setup the various arrays for the splitted graph

Definition at line 133 of file graph.c.

References graph_t::adjncy, graph_t::adjwgt, CreateGraph(), graph_t::invtvwgt, graph_t::label, graph_t::ncon, graph_t::nedges, graph_t::nvtxs, graph_t::tvwgt, graph_t::vsize, graph_t::vwgt, and graph_t::xadj.

Referenced by SplitGraphOrder(), SplitGraphOrderCC(), and SplitGraphPart().

Here is the call graph for this function:

Here is the caller graph for this function:

graph_t* CreateGraph ( void   ) 

This function creates and initializes a graph_t data structure

Definition at line 162 of file graph.c.

References gk_malloc(), and InitGraph().

Referenced by CompressGraph(), FixGraph(), main(), PruneGraph(), ReadGraph(), SetupCoarseGraph(), SetupGraph(), and SetupSplitGraph().

Here is the call graph for this function:

Here is the caller graph for this function:

void InitGraph ( graph_t graph  ) 

This function initializes a graph_t data structure

Definition at line 177 of file graph.c.

Referenced by CreateGraph().

Here is the caller graph for this function:

void FreeRData ( graph_t graph  ) 

This function frees the refinement/partition memory stored in a graph

Definition at line 228 of file graph.c.

References graph_t::bndind, graph_t::bndptr, graph_t::ckrinfo, graph_t::ed, gk_free(), graph_t::id, graph_t::nrinfo, graph_t::pwgts, graph_t::vkrinfo, and graph_t::where.

Referenced by ConstructMinCoverSeparator(), ConstructSeparator(), FreeGraph(), MlevelKWayPartitioning(), MlevelNodeBisectionL2(), MlevelNodeBisectionMultiple(), and MultilevelBisect().

Here is the call graph for this function:

Here is the caller graph for this function:

void FreeGraph ( graph_t **  r_graph  ) 


Generated on Mon Sep 21 08:08:56 2020 for Charm++ by  doxygen 1.5.5