23 idxtype *adjwgt,
int *wgtflag,
int *numflag,
int *nparts,
24 int *options,
int *edgecut,
idxtype *part)
29 tpwgts =
fmalloc(*nparts,
"KMETIS: tpwgts");
30 for (i=0; i<*nparts; i++)
31 tpwgts[i] = 1.0/(1.0*(*nparts));
34 tpwgts, options, edgecut, part);
44 idxtype *adjwgt,
int *wgtflag,
int *numflag,
int *nparts,
45 float *tpwgts,
int *options,
int *edgecut,
idxtype *part)
56 if (options[0] == 0) {
96 int i, j, nvtxs, tvwgt, tpwgts2[2];
98 int wgtflag=3, numflag=0, options[10], edgecut;
112 cgraph->
adjwgt, &wgtflag, &numflag, &nparts, tpwgts, options,
113 &edgecut, cgraph->
where);
116 IFSET(ctrl->
dbglvl,
DBG_IPART, printf(
"Initial %d-way partitioning cut: %d\n", nparts, edgecut));
120 RefineKWay(ctrl, graph, cgraph, nparts, tpwgts, ubfactor);
void METIS_WPartGraphKway(int *nvtxs, idxtype *xadj, idxtype *adjncy, idxtype *vwgt, idxtype *adjwgt, int *wgtflag, int *numflag, int *nparts, float *tpwgts, int *options, int *edgecut, idxtype *part)
#define AllocateKWayPartitionMemory
#define ComputePartitionInfo
#define AllocateWorkSpace
#define IFSET(a, flag, cmd)
void METIS_WPartGraphRecursive(int *nvtxs, idxtype *xadj, idxtype *adjncy, idxtype *vwgt, idxtype *adjwgt, int *wgtflag, int *numflag, int *nparts, float *tpwgts, int *options, int *edgecut, idxtype *part)
#define Change2CNumbering
void METIS_PartGraphKway(int *nvtxs, idxtype *xadj, idxtype *adjncy, idxtype *vwgt, idxtype *adjwgt, int *wgtflag, int *numflag, int *nparts, int *options, int *edgecut, idxtype *part)
void GKfree(void **ptr1,...)
#define MlevelKWayPartitioning
#define Change2FNumbering