magnet.aggmodels.metis.METIS#
- class magnet.aggmodels.metis.METIS#
Bases:
AgglomerationModel
Metis algorithm for graph partitioning.
Constructor
- __init__()#
Methods
direct_k_way
(mesh, k[, volume_weights])Bisect the mesh recursively a set number of times.
- direct_k_way(mesh: Mesh, k: int, volume_weights: bool = True) List[ndarray[int]] #
Bisect the mesh recursively a set number of times.
The agglomearated mesh will have (at most) 2^`Nref` agglomerated elements.
- Parameters:
Mesh (mesh) – Mesh to be bisected.
Nref (int) – Number of times to recursively bisect the mesh.
volume_weights (bool, optional) – If true, use volume as node weights, otherwise use unitary weights.
- Returns:
A list of arrays, each containing the indices of the elements corresponding to one of the agglomerated elements.
- Return type:
Classlist
Inherited Methods
__init__
()agglomerate
(mesh[, mode, nref, mult_factor])Agglomerate a mesh.
agglomerate_dataset
(dataset, **kwargs)Agglomerate all meshes in a dataset.
bisect
(mesh)Bisect the mesh once.
bisection_Nref
(mesh, Nref[, warm_start])Bisect the mesh recursively a set number of times.
bisection_mult_factor
(mesh, mult_factor[, ...])Bisect a mesh until the agglomerated elements are small enough.
bisection_segregated
(mesh, mult_factor[, subset])Bisect heterogeneous mesh until elements are small enough.
coarsen
(mesh, subset[, mode, nref, mult_factor])Coarsen a subregion of the mesh.
multilevel_bisection
(mesh[, refiner, ...])