Documentation Index
Fetch the complete documentation index at: https://mintlify.com/KarypisLab/ParMETIS/llms.txt
Use this file to discover all available pages before exploring further.
ParMETIS_V3_PartGeomKway extends the standard multilevel k-way partitioner by incorporating vertex coordinate information. The coordinates are used to compute an initial geometric partition that seeds the multilevel refinement, which can significantly improve partition quality for graphs derived from spatial discretizations such as finite element or finite difference meshes. When the communicator contains more than 4096 processes, the function automatically falls back to ParMETIS_V3_PartKway.
Parameters
Distribution of vertices across processes.
vtxdist[i] is the global index of the first vertex on process i. Size npes + 1; must be identical on all processes.Local adjacency row pointers in CSR format.
xadj[i] is the index into adjncy where the adjacency list of local vertex i begins. Size local_nvtxs + 1.Local adjacency column indices in CSR format. Contains the global indices of all neighbors of each local vertex. Size
xadj[local_nvtxs].Vertex weights.
ncon values per vertex in interleaved order. May be NULL when bit 1 of wgtflag is 0.Edge weights, one value per entry in
adjncy. May be NULL when bit 0 of wgtflag is 0.Bitmask controlling which weights are used.
0 = no weights, 1 = edge weights only, 2 = vertex weights only, 3 = both.Indexing convention.
0 for C-style 0-based indexing; 1 for Fortran-style 1-based indexing.Number of coordinate dimensions. Must be
2 (2D) or 3 (3D).Vertex coordinates for all local vertices, stored interleaved by vertex:
[x0, y0, z0, x1, y1, z1, ...]. Size local_nvtxs * ndims.Number of balancing constraints per vertex.
Desired number of partitions.
Target partition weights. Array of
nparts * ncon values. Values for each constraint must sum to 1.0. Pass NULL for equal-weight partitions.Per-constraint imbalance tolerance. Array of
ncon values greater than 1.0. For example, 1.05 allows 5% imbalance.Algorithm options. If
options[0] = 0, all defaults are used. If options[0] = 1, options[1] sets the debug level and options[2] sets the random seed.Output. Total weight of edges crossing partition boundaries.
Output. Partition assignment for each local vertex. Caller must allocate at least
local_nvtxs elements.Pointer to the MPI communicator covering all participating processes.
Return value
ReturnsMETIS_OK (1) on success. Any other value indicates an error.
When the communicator contains more than 4096 processes, this function automatically falls back to
ParMETIS_V3_PartKway and ignores the coordinate data.