Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=idx_t), | intent(in) | :: | ne | The number of elements in the mesh. |
||
integer(kind=idx_t), | intent(in) | :: | nn | The number of nodes in the mesh. |
||
integer(kind=idx_t), | intent(in), | dimension(*) | :: | eptr | The pair of arrays storing the mesh as described in Section 5.6 of the manual. |
|
integer(kind=idx_t), | intent(in), | dimension(*) | :: | eind | The pair of arrays storing the mesh as described in Section 5.6 of the manual. |
|
integer(kind=idx_t), | intent(in), | optional | :: | vwgt(nn) | An array of size |
|
integer(kind=idx_t), | intent(in), | optional | :: | vsize(nn) | An array of size |
|
integer(kind=idx_t), | intent(in) | :: | nparts | The number of parts to partition the mesh. |
||
integer(kind=idx_t), | intent(in), | optional | :: | tpwgts(nparts) | An array of size |
|
integer(kind=idx_t), | intent(in), | optional | :: | options(METIS_NOPTIONS) | An array of options as described in Section 5.4 of the manual. See description for valid options. |
|
integer(kind=idx_t), | intent(out) | :: | objval | Upon successful completion, this variable stores either the edgecut or the total communication volume of the nodal graph's partitioning. |
||
integer(kind=idx_t), | intent(out) | :: | epart(ne) | A vector of size |
||
integer(kind=idx_t), | intent(out) | :: | npart(nn) | A vector of size |
METIS_OK
- Indicates that the function returned normally.
METIS_ERROR_INPUT
- Indicates an input error.
METIS_ERROR_MEMORY
- Indicates that it could not allocate the required memory.
METIS_ERROR
- Indicates some other type of error.
This function us used to partition a mesh into nparts
parts based on a
partitioning of the mesh's nodal graph.
The following options are valid:
METIS_OPTION_PTYPE
, METIS_OPTION_OBJTYPE
, METIS_OPTION_CTYPE
,
METIS_OPTION_IPTYPE
, METIS_OPTION_RTYPE
, METIS_OPTION_NCUTS
,
METIS_OPTION_NITER
, METIS_OPTION_SEED
, METIS_OPTION_UFACTOR
,
METIS_OPTION_NUMBERING
, METIS_OPTION_DBGLVL