14 #ifndef __parmetis_h__
15 #define __parmetis_h__
48 #define PARMETIS_MAJOR_VERSION 3
49 #define PARMETIS_MINOR_VERSION 1
50 #define PARMETIS_SUBMINOR_VERSION 1
63 void __cdecl ParMETIS_V3_AdaptiveRepart(
65 idxtype *vsize,
idxtype *adjwgt,
int *wgtflag,
int *numflag,
int *ncon,
66 int *nparts,
float *tpwgts,
float *ubvec,
float *ipc2redist,
67 int *options,
int *edgecut,
idxtype *part, MPI_Comm *comm);
69 void __cdecl ParMETIS_V3_PartGeomKway(
71 idxtype *adjwgt,
int *wgtflag,
int *numflag,
int *ndims,
float *xyz,
72 int *ncon,
int *nparts,
float *tpwgts,
float *ubvec,
int *options,
73 int *edgecut,
idxtype *part, MPI_Comm *comm);
75 void __cdecl ParMETIS_V3_PartGeom(
76 idxtype *vtxdist,
int *ndims,
float *xyz,
idxtype *part, MPI_Comm *comm);
78 void __cdecl ParMETIS_V3_PartKway(
80 idxtype *adjwgt,
int *wgtflag,
int *numflag,
int *ncon,
int *nparts,
81 float *tpwgts,
float *ubvec,
int *options,
int *edgecut,
idxtype *part,
84 void __cdecl ParMETIS_V3_Mesh2Dual(
86 int *ncommonnodes,
idxtype **xadj,
idxtype **adjncy, MPI_Comm *comm);
88 void __cdecl ParMETIS_V3_PartMeshKway(
90 int *wgtflag,
int *numflag,
int *ncon,
int *ncommonnodes,
int *nparts,
91 float *tpwgts,
float *ubvec,
int *options,
int *edgecut,
idxtype *part,
94 void __cdecl ParMETIS_V3_NodeND(
98 void __cdecl ParMETIS_V3_RefineKway(
100 idxtype *adjwgt,
int *wgtflag,
int *numflag,
int *ncon,
int *nparts,
101 float *tpwgts,
float *ubvec,
int *options,
int *edgecut,
102 idxtype *part, MPI_Comm *comm);
108 void __cdecl ParMETIS_PartKway(
110 idxtype *adjwgt,
int *wgtflag,
int *numflag,
int *nparts,
int *options,
111 int *edgecut,
idxtype *part, MPI_Comm *comm);
113 void __cdecl ParMETIS_PartGeomKway(
115 int *wgtflag,
int *numflag,
int *ndims,
float *xyz,
int *nparts,
int *options,
116 int *edgecut,
idxtype *part, MPI_Comm *comm);
118 void __cdecl ParMETIS_PartGeom(
119 idxtype *vtxdist,
int *ndims,
float *xyz,
idxtype *part, MPI_Comm *comm);
121 void __cdecl ParMETIS_PartGeomRefine(
123 idxtype *adjwgt,
int *wgtflag,
int *numflag,
int *ndims,
float *xyz,
124 int *options,
int *edgecut,
idxtype *part, MPI_Comm *comm);
126 void __cdecl ParMETIS_RefineKway(
128 idxtype *adjwgt,
int *wgtflag,
int *numflag,
int *options,
int *edgecut,
129 idxtype *part, MPI_Comm *comm);
131 void __cdecl ParMETIS_RepartLDiffusion(
133 idxtype *adjwgt,
int *wgtflag,
int *numflag,
int *options,
int *edgecut,
134 idxtype *part, MPI_Comm *comm);
136 void __cdecl ParMETIS_RepartGDiffusion(
138 idxtype *adjwgt,
int *wgtflag,
int *numflag,
int *options,
int *edgecut,
139 idxtype *part, MPI_Comm *comm);
141 void __cdecl ParMETIS_RepartRemap(
143 int *wgtflag,
int *numflag,
int *options,
int *edgecut,
idxtype *part,
146 void __cdecl ParMETIS_RepartMLRemap(
148 int *wgtflag,
int *numflag,
int *options,
int *edgecut,
idxtype *part,
155 void __cdecl ParMETIS_SerialNodeND(
167 idxtype *part,
int *options, MPI_Comm comm);
171 int ndims,
float *xyz,
idxtype *part,
int *options, MPI_Comm comm);
175 int ndims,
float *xyz,
idxtype *part,
int *options, MPI_Comm comm);
179 idxtype *part,
int *options, MPI_Comm comm);
191 idxtype *part,
int *options, MPI_Comm comm);
202 #define PARMETIS_MTYPE_LOCAL 1
203 #define PARMETIS_MTYPE_GLOBAL 2
206 #define PARMETIS_RTYPE_RANDOM 1
207 #define PARMETIS_RTYPE_GREEDY 2
208 #define PARMETIS_RTYPE_2PHASE 3
std::vector< Array2i > sizes
Definition: dense_solvers.cpp:12
int idxtype
Definition: oomph_metis_from_parmetis_3.1.1/struct.h:20
int idxtype
Definition: parmetis.h:35
#define __cdecl
Definition: parmetis.h:23