Fonctions membres publiques | |
ExternalPartitionConstraint (IMesh *mesh, ArrayView< ItemGroup > constraints) | |
virtual void | addLinkedCells (Int64Array &linked_cells, Int32Array &linked_owners) |
Ajoute un ensemble de contraintes sur les mailles. | |
Définition à la ligne 30 du fichier ExternalPartitionConstraint.h.
|
inline |
Définition à la ligne 35 du fichier ExternalPartitionConstraint.h.
|
virtual |
Ajoute un ensemble de contraintes sur les mailles.
Ajoute dans le tableau linked_cells un ensemble de couples de uniqueId() de mailles qui doivent rester dans la même partition. Par exemple, si les mailles 25 et 23 doivent rester connectées, il suffit d'appeler:
Il faut toujours ajouter des couples de uniqueId(), en répétant éventuellement les mailles. Par exemple, si on souhaite que les mailles 35, 37 et 39,il faut faire comme suit:
Le tableau linked_cells doit avoir une taille multiple de 2. Le tableau linked owners indique pour chaque couple à quel sous-domaine il doit appartenir.
TODO: Supprimer linked_owners
Implémente Arcane::IMeshPartitionConstraint.
Définition à la ligne 31 du fichier ExternalPartitionConstraint.cc.
Références Arccore::Array< T >::add(), Arcane::IMeshBase::allCells(), ENUMERATE_CELL, ENUMERATE_FACE, ENUMERATE_NODE, Arccore::Array< T >::fill(), Arcane::IK_Cell, Arcane::IK_Face, Arcane::IK_Node, Arccore::ITraceMng::info(), Arcane::Item::owner(), Arccore::Array< T >::resize(), Arcane::ItemGroup::size(), Arccore::AbstractArray< T >::size(), Arcane::IMeshBase::traceMng(), et Arcane::Item::uniqueId().