Go to the source code of this file.
Functions | |
void | Refine2WayNode (ctrl_t *ctrl, graph_t *orggraph, graph_t *graph) |
void | Allocate2WayNodePartitionMemory (ctrl_t *ctrl, graph_t *graph) |
void | Compute2WayNodePartitionParams (ctrl_t *ctrl, graph_t *graph) |
void | Project2WayNodePartition (ctrl_t *ctrl, graph_t *graph) |
This function is the entry point of the separator refinement. It does not perform any refinement on graph, but it starts by first projecting it to the next level finer graph and proceeds from there.
Definition at line 23 of file srefine.c.
References CheckNodePartitionParams(), Compute2WayNodePartitionParams(), ctrl_t::dbglvl, graph_t::finer, FM_2WayNodeBalance(), FM_2WayNodeRefine1Sided(), FM_2WayNodeRefine2Sided(), gk_errexit(), METIS_DBG_TIME, METIS_RTYPE_SEP1SIDED, METIS_RTYPE_SEP2SIDED, ctrl_t::niter, Project2WayNodePartition(), ctrl_t::ProjectTmr, ctrl_t::RefTmr, ctrl_t::rtype, and ctrl_t::UncoarsenTmr.
Referenced by MlevelNodeBisectionL1(), and MlevelNodeBisectionL2().
This function allocates memory for 2-way node-based refinement
Definition at line 66 of file srefine.c.
References graph_t::bndind, graph_t::bndptr, gk_malloc(), graph_t::nrinfo, graph_t::nvtxs, graph_t::pwgts, and graph_t::where.
Referenced by ConstructMinCoverSeparator(), ConstructSeparator(), METIS_NodeRefine(), and Project2WayNodePartition().
This function computes the edegrees[] to the left & right sides
Definition at line 83 of file srefine.c.
References graph_t::adjncy, adjncy, graph_t::bndind, graph_t::bndptr, CheckNodeBnd(), nrinfo_t::edegrees, graph_t::mincut, graph_t::nbnd, graph_t::nrinfo, graph_t::nvtxs, graph_t::pwgts, graph_t::vwgt, vwgt, graph_t::where, where, graph_t::xadj, and xadj.
Referenced by ConstructMinCoverSeparator(), ConstructSeparator(), GrowBisectionNode(), GrowBisectionNode2(), METIS_NodeRefine(), MlevelNodeBisectionMultiple(), Project2WayNodePartition(), and Refine2WayNode().
This function projects the node-based bisection
Definition at line 137 of file srefine.c.
References Allocate2WayNodePartitionMemory(), graph_t::cmap, graph_t::coarser, Compute2WayNodePartitionParams(), FreeGraph(), graph_t::nvtxs, graph_t::where, and where.
Referenced by Refine2WayNode().