Go to the documentation of this file.
28 if (
graph == orggraph) {
44 switch (ctrl->
rtype) {
56 }
while (
graph != orggraph);
72 graph->pwgts =
imalloc(3,
"Allocate2WayNodePartitionMemory: pwgts");
73 graph->where =
imalloc(nvtxs,
"Allocate2WayNodePartitionMemory: where");
74 graph->bndptr =
imalloc(nvtxs,
"Allocate2WayNodePartitionMemory: bndptr");
75 graph->bndind =
imalloc(nvtxs,
"Allocate2WayNodePartitionMemory: bndind");
87 idx_t *
where, *pwgts, *bndind, *bndptr, *edegrees;
97 rinfo =
graph->nrinfo;
99 bndind =
graph->bndind;
107 for (
i=0;
i<nvtxs;
i++) {
109 pwgts[me] +=
vwgt[
i];
111 ASSERT(me >=0 && me <= 2);
117 edegrees[0] = edegrees[1] = 0;
129 graph->mincut = pwgts[2];
143 cgraph =
graph->coarser;
144 cwhere = cgraph->
where;
146 nvtxs =
graph->nvtxs;
153 for (
i=0;
i<nvtxs;
i++) {
#define FM_2WayNodeRefine2Sided
idx_t idx_t idx_t * adjncy
#define IFSET(a, flag, cmd)
#define CheckNodePartitionParams
#define BNDInsert(nbnd, bndind, bndptr, vtx)
void Allocate2WayNodePartitionMemory(ctrl_t *ctrl, graph_t *graph)
void Compute2WayNodePartitionParams(ctrl_t *ctrl, graph_t *graph)
#define gk_startcputimer(tmr)
idx_t idx_t idx_t idx_t * vwgt
#define ASSERTP(expr, msg)
#define ASSERT(expression)
void Project2WayNodePartition(ctrl_t *ctrl, graph_t *graph)
void Refine2WayNode(ctrl_t *ctrl, graph_t *orggraph, graph_t *graph)
#define FM_2WayNodeBalance
#define FM_2WayNodeRefine1Sided
idx_t idx_t idx_t idx_t * where
NonlinearFactorGraph graph
void * gk_malloc(size_t nbytes, char *msg)
#define gk_stopcputimer(tmr)
void gk_errexit(int signum, char *f_str,...)
gtsam
Author(s):
autogenerated on Sat Nov 16 2024 04:04:59