magnet._absaggmodels#

Agglomeration models module.

Contains classes for agglomeration models and their abstract base classes with the definitions of bisection algorithms.

Classes#

AgglomerationModel

Abstract base class for mesh agglomeration models.

GNN

Abstract base class for Graph Neural Networks for mesh agglomeration.

GNNHeterogeneous

Abstract base class for Graph Neural Networks for agglomerating heterogeneous meshes.

KMEANS

Kmeans clustering algorithm.

METIS

Metis graph partitioning algorithm.

SageBase2D

GNN with 4 Sage layers and 3 linear layers.

SageBase

GNN with 4 Sage layers and 4 linear layers.

SageRes

GNN that uses residual connections.

SageBaseHeterogeneous

GNN with 4 Sage layers and 4 linear layers (for heterogeneous meshes).

Notes

To define new GNN architectures, simply define a new class inheriting from GNN or GNNHeterogeneous, defining the __init__ and forward methods, and ovverriding the loss_function if necessary.

Classes

AgglomerationModel()

Abstract base class for mesh agglomeration models.