Interface of a mesh partitioning constraint manager. More...
#include <arcane/core/IMeshPartitionConstraintMng.h>
Public Member Functions | |
| virtual | ~IMeshPartitionConstraintMng ()=default |
| Releases resources. | |
| virtual void | addConstraint (IMeshPartitionConstraint *constraint)=0 |
| Adds a constraint. | |
| virtual void | removeConstraint (IMeshPartitionConstraint *constraint)=0 |
| Removes a constraint. | |
| virtual void | computeAndApplyConstraints ()=0 |
| Computes and applies constraints. | |
| virtual void | computeConstraintList (Int64MultiArray2 &tied_uids)=0 |
| Computes constraints and returns a list of linked entities. | |
| virtual void | addWeakConstraint (IMeshPartitionConstraint *constraint)=0 |
| Adds a weak constraint. | |
| virtual void | removeWeakConstraint (IMeshPartitionConstraint *constraint)=0 |
| Removes a constraint. | |
| virtual void | computeAndApplyWeakConstraints ()=0 |
| Computes and applies constraints. | |
| virtual void | computeWeakConstraintList (Int64MultiArray2 &tied_uids)=0 |
| Computes constraints and returns a list of linked entities. | |
Interface of a mesh partitioning constraint manager.
Definition at line 31 of file IMeshPartitionConstraintMng.h.
|
pure virtual |
Adds a constraint.
Implemented in Arcane::mesh::MeshPartitionConstraintMng.
|
pure virtual |
Adds a weak constraint.
Implemented in Arcane::mesh::MeshPartitionConstraintMng.
|
pure virtual |
Computes and applies constraints.
It computes constraints on the mesh by applying the IMeshPartitionConstraint::addLinkedCell() method for each constraint and applies them by modifying the IItemFamily::itemsNewOwner() variable of the cells. All cells that must be linked in it are then placed in the same partition.
This operation does not guarantee that the resulting partitions are balanced in terms of load. For this, a re-partitioning service (IMeshPartitioner) must be used that takes these constraints into account.
This operation is collective.
Implemented in Arcane::mesh::MeshPartitionConstraintMng.
|
pure virtual |
Computes and applies constraints.
It computes constraints on the mesh by applying the IMeshPartitionConstraint::addLinkedCell() method for each constraint and applies them by modifying the IItemFamily::itemsNewOwner() variable of the cells. All cells that must be linked in it are then placed in the same partition.
This operation does not guarantee that the resulting partitions are balanced in terms of load. For this, a re-partitioning service (IMeshPartitioner) must be used that takes these constraints into account.
This operation is collective.
Implemented in Arcane::mesh::MeshPartitionConstraintMng.
|
pure virtual |
Computes constraints and returns a list of linked entities.
It computes constraints like computeAndApplyConstraints() but does not modify the owner. Instead, it returns a list containing lists of the uniqueId() of the entities that must be linked.
This operation is collective.
Implemented in Arcane::mesh::MeshPartitionConstraintMng.
|
pure virtual |
Computes constraints and returns a list of linked entities.
It computes constraints like computeAndApplyConstraints() but does not modify the owner. Instead, it returns a list containing lists of the uniqueId() of the entities that must be linked.
This operation is collective.
Implemented in Arcane::mesh::MeshPartitionConstraintMng.
|
pure virtual |
Removes a constraint.
The caller becomes the owner of constraint and must manage its destruction.
Implemented in Arcane::mesh::MeshPartitionConstraintMng.
|
pure virtual |
Removes a constraint.
The caller becomes the owner of constraint and must manage its destruction.
Implemented in Arcane::mesh::MeshPartitionConstraintMng.