Famille de mailles. Plus de détails...
#include <arcane/mesh/CellFamily.h>
Classes | |
class | TopologyModifier |
Fonctions membres publiques | |
CellFamily (IMesh *mesh, const String &name) | |
virtual void | build () override |
virtual void | preAllocate (Integer nb_item) |
Item | allocOne (Int64 uid, ItemTypeId type_id, MeshInfos &mesh_info) override |
Alloue un élément dans la famille et met à jour le mesh_info correspondant. | |
Item | findOrAllocOne (Int64 uid, ItemTypeId type_id, MeshInfos &mesh_info, bool &is_alloc) override |
IItemFamily * | family () override |
Cell | allocOne (Int64 uid, ItemTypeId type) |
Cell | findOrAllocOne (Int64 uid, ItemTypeId type_id, bool &is_alloc) |
void | removeCell (Cell cell) |
void | removeCells (ConstArrayView< Int32 > cells_local_id) |
Supprime les mailles dont les numéros locaux sont cells_local_id. | |
void | detachCell (Cell cell) |
void | detachCells2 (Int32ConstArrayView cell_local_ids) |
void | removeDetachedCell (Cell cell) |
virtual void | internalRemoveItems (Int32ConstArrayView local_ids, bool keep_ghost=false) override |
void | setConnectivity (const Integer c) |
Définit la connectivité active pour le maillage associé | |
void | replaceNode (ItemLocalId cell, Integer index, ItemLocalId node) |
Remplace le noeud d'index index de la maille cell avec celui de localId() node. | |
void | replaceEdge (ItemLocalId cell, Integer index, ItemLocalId edge) |
Remplace l'arête d'index index de la maille cell avec celle de localId() edge. | |
void | replaceFace (ItemLocalId cell, Integer index, ItemLocalId face) |
Remplace la face d'index index de la maille cell avec celle de localId() face. | |
void | replaceHChild (ItemLocalId cell, Integer index, ItemLocalId child_cell) |
void | replaceHParent (ItemLocalId cell, Integer index, ItemLocalId parent_cell) |
void | _addParentCellToCell (Cell cell, Cell parent_cell) |
AMR. | |
void | _addChildCellToCell (Cell parent_cell, Integer rank, Cell child_cell) |
void | _addChildCellToCell2 (Cell parent_cell, Cell child_cell) |
void | _addChildrenCellsToCell (Cell parent_cell, Int32ConstArrayView children_cells_lid) |
void | _removeParentCellToCell (Cell cell) |
void | _removeChildCellToCell (Cell parent_cell, Cell cell) |
void | _removeChildrenCellsToCell (Cell parent_cell) |
virtual void | computeSynchronizeInfos () override |
Construit les structures nécessaires à la synchronisation. | |
ItemInternal * | allocOne (Int64 uid, ItemTypeInfo *type) |
ItemInternal * | findOrAllocOne (Int64 uid, ItemTypeInfo *type, bool &is_alloc) |
Fonctions membres publiques hérités de Arcane::mesh::ItemFamily | |
ItemFamily (IMesh *mesh, eItemKind ik, const String &name) | |
void | build () override |
String | name () const override |
Nom de la famille. | |
String | fullName () const override |
Nom complet de la famille (avec celui du maillage) | |
eItemKind | itemKind () const override |
Genre des entités. | |
Integer | nbItem () const override |
Nombre d'entités. | |
Int32 | maxLocalId () const override |
ItemInternalList | itemsInternal () override |
Tableau interne des entités. | |
ItemInfoListView | itemInfoListView () override |
Vue sur la liste d'informations sur les entités. | |
VariableItemInt32 & | itemsNewOwner () override |
Variable contenant le numéro du nouveau sous-domaine propriétaire de l'entité. | |
IItemFamily * | parentFamily () const override |
IItemFamily parent. | |
void | setParentFamily (IItemFamily *parent) override |
Positionne l'IItemFamily parent. | |
Integer | parentFamilyDepth () const override |
Donne la profondeur d'imbrication du maillage courant. | |
void | addChildFamily (IItemFamily *family) override |
Ajoute d'une famile en dépendance. | |
IItemFamilyCollection | childFamilies () override |
Familles enfantes de cette famille. | |
void | checkValid () override |
Vérification de la validité des structures internes (interne) | |
void | checkValidConnectivity () override |
Vérification de la validité des structures internes concernant la connectivité. | |
void | checkUniqueIds (Int64ConstArrayView unique_ids) override |
Vérifie que les identifiants unique_ids sont bien uniques pour tous les sous-domaines. | |
ItemInternalMap & | itemsMap () |
void | endUpdate () override |
Notifie la fin de modification de la liste des entités. | |
void | partialEndUpdate () override |
Mise à jour partielle. | |
void | partialEndUpdateGroup (const ItemGroup &group) override |
Met à jour un groupe. | |
void | partialEndUpdateVariable (IVariable *variable) override |
Met à jour une variable. | |
void | itemsUniqueIdToLocalId (ArrayView< Int64 > ids, bool do_fatal=true) const |
void | itemsUniqueIdToLocalId (Int32ArrayView local_ids, Int64ConstArrayView unique_ids, bool do_fatal) const override |
Converti un tableau de numéros uniques en numéros locaux. | |
void | itemsUniqueIdToLocalId (Int32ArrayView local_ids, ConstArrayView< ItemUniqueId > unique_ids, bool do_fatal) const override |
Converti un tableau de numéros uniques en numéros locaux. | |
ISubDomain * | subDomain () const override |
Sous-domaine associé | |
ITraceMng * | traceMng () const override |
Gestionnaire de trace associé | |
IMesh * | mesh () const override |
Maillage associé | |
IParallelMng * | parallelMng () const override |
Gestionnaire de parallélisme associé | |
IItemConnectivityInfo * | localConnectivityInfos () const override |
Informations sur la connectivité locale au sous-domaine pour à cette famille. | |
IItemConnectivityInfo * | globalConnectivityInfos () const override |
Informations sur la connectivité globales à tous les sous-domaines. | |
void | internalRemoveItems (Int32ConstArrayView local_ids, bool keep_ghost=false) override |
Supprime les entités donnés par local_ids. | |
void | removeItems2 (ItemDataList &item_data_list) override |
void | removeNeedRemoveMarkedItems () override |
Supprime des entités et met a jour les connectivites. | |
ItemVectorView | view (Int32ConstArrayView local_ids) override |
Vue sur les entités. | |
ItemVectorView | view () override |
Vue sur toutes les entités de la famille. | |
ItemInternal * | findOneItem (Int64 uid) override |
Entité de numéro unique unique_id. | |
ItemGroup | allItems () const override |
Groupe de toutes les entités. | |
void | notifyItemsOwnerChanged () override |
Notifie que les entités propres au sous-domaine de la famille ont été modifiées. | |
ItemGroup | findGroup (const String &name) const override |
Recherche un groupe. | |
ItemGroup | findGroup (const String &name, bool create_if_needed) override |
Recherche un groupe. | |
ItemGroup | createGroup (const String &name, Int32ConstArrayView elements, bool do_override=false) override |
Créé un groupe d'entités de nom name contenant les entités local_ids. | |
ItemGroup | createGroup (const String &name) override |
Créé un groupe d'entités de nom name. | |
ItemGroup | createGroup (const String &name, const ItemGroup &parent, bool do_override=false) override |
ItemGroupCollection | groups () const override |
Liste des groupes de cette famille. | |
void | notifyItemsUniqueIdChanged () override |
Notifie que les numéros uniques des entités ont été modifiées. | |
void | destroyGroups () override |
Supprime tous les groupes de cette famille. | |
IVariable * | findVariable (const String &name, bool throw_exception) override |
Recherche la variable de nom name associée à cette famille. | |
void | usedVariables (VariableCollection collection) override |
Ajoute à la collection collection la liste des variables utilisés de cette famille. | |
void | prepareForDump () override |
Prépare les données pour une protection. | |
void | readFromDump () override |
Relit les données à partir d'une protection. | |
void | copyItemsValues (Int32ConstArrayView source, Int32ConstArrayView destination) override |
void | copyItemsMeanValues (Int32ConstArrayView first_source, Int32ConstArrayView second_source, Int32ConstArrayView destination) override |
void | compactItems (bool do_sort) override |
Compacte les entités. | |
void | clearItems () override |
Supprime toutes les entités de la famille. | |
Int64ArrayView * | uniqueIds () |
ItemSharedInfo * | commonItemSharedInfo () |
const DynamicMeshKindInfos & | infos () const |
void | setHasUniqueIdMap (bool v) override |
Indique si la famille possède une table de conversion uniqueId vers localId. | |
bool | hasUniqueIdMap () const override |
Indique si la famille possède une table de conversion uniqueId vers localId. | |
void | computeSynchronizeInfos () override |
Construit les structures nécessaires à la synchronisation. | |
void | getCommunicatingSubDomains (Int32Array &sub_domains) const override |
Liste des sous-domaines communiquants pour les entités. | |
void | synchronize (VariableCollection variables) override |
Synchronise les variables variables. | |
void | synchronize (VariableCollection variables, Int32ConstArrayView local_ids) override |
Synchronise les variables variables sur une liste d'entités. | |
IVariableSynchronizer * | allItemsSynchronizer () override |
Synchroniseur sur toutes les entités de la famille. | |
void | reduceFromGhostItems (IVariable *v, IDataOperation *operation) override |
Applique une opération de réduction depuis les entités fantômes. | |
void | reduceFromGhostItems (IVariable *v, Parallel::eReduceType operation) override |
Applique une opération de réduction depuis les entités fantômes. | |
ItemPairGroup | findAdjencyItems (const ItemGroup &group, const ItemGroup &sub_group, eItemKind link_kind, Integer layer) override |
Cherche une liste d'adjacence. | |
IParticleFamily * | toParticleFamily () override |
Retourne l'interface de la famille de particule de cette famille. | |
void | setItemSortFunction (IItemInternalSortFunction *sort_function) override |
Positionne la fonction de tri des entités. | |
IItemInternalSortFunction * | itemSortFunction () const override |
Fonction de tri des entités. | |
void | addSourceConnectivity (IItemConnectivity *connectivity) override |
void | addTargetConnectivity (IItemConnectivity *connectivity) override |
void | removeSourceConnectivity (IItemConnectivity *connectivity) override |
void | removeTargetConnectivity (IItemConnectivity *connectivity) override |
void | setConnectivityMng (IItemConnectivityMng *connectivity_mng) override |
void | addGhostItems (Int64ConstArrayView unique_ids, Int32ArrayView items, Int32ConstArrayView owners) override |
Alloue des entités fantômes. | |
IItemFamilyPolicyMng * | policyMng () override |
Interface des comportements/politiques associées à cette famille. | |
Properties * | properties () override |
Propriétés associées à cette famille. | |
IItemFamilyInternal * | _internalApi () override |
API interne à Arcane. | |
void | setPolicyMng (IItemFamilyPolicyMng *policy_mng) |
void | beginCompactItems (ItemFamilyCompactInfos &compact_infos) |
void | compactVariablesAndGroups (const ItemFamilyCompactInfos &compact_infos) |
Compacte les variables et les groupes. | |
void | finishCompactItems (ItemFamilyCompactInfos &compact_infos) |
void | removeItem (Item item) |
ItemInternalConnectivityList * | itemInternalConnectivityList () |
Accesseur pour les connectivités via Item et ItemInternal. | |
IItemFamilyTopologyModifier * | _topologyModifier () override |
Interface du modificateur de topologie. | |
void | resizeVariables (bool force_resize) override |
Redimensionne les variables de cette famille. | |
Fonctions membres publiques hérités de Arccore::TraceAccessor | |
TraceAccessor (ITraceMng *m) | |
Construit un accesseur via le gestionnaire de trace m. | |
TraceAccessor (const TraceAccessor &rhs) | |
Constructeur par recopie. | |
TraceAccessor & | operator= (const TraceAccessor &rhs) |
Opérateur de recopie. | |
virtual | ~TraceAccessor () |
Libère les ressources. | |
ITraceMng * | traceMng () const |
Gestionnaire de trace. | |
TraceMessage | info () const |
Flot pour un message d'information. | |
TraceMessage | pinfo () const |
Flot pour un message d'information en parallèle. | |
TraceMessage | info (char category) const |
Flot pour un message d'information d'une catégorie donnée. | |
TraceMessage | pinfo (char category) const |
Flot pour un message d'information parallèle d'une catégorie donnée. | |
TraceMessage | info (bool v) const |
Flot pour un message d'information. | |
TraceMessage | warning () const |
Flot pour un message d'avertissement. | |
TraceMessage | pwarning () const |
TraceMessage | error () const |
Flot pour un message d'erreur. | |
TraceMessage | perror () const |
TraceMessage | log () const |
Flot pour un message de log. | |
TraceMessage | plog () const |
Flot pour un message de log. | |
TraceMessage | logdate () const |
Flot pour un message de log précédé de la date. | |
TraceMessage | fatal () const |
Flot pour un message d'erreur fatale. | |
TraceMessage | pfatal () const |
Flot pour un message d'erreur fatale en parallèle. | |
TraceMessageDbg | debug (Trace::eDebugLevel=Trace::Medium) const |
Flot pour un message de debug. | |
Trace::eDebugLevel | configDbgLevel () const |
Niveau debug du fichier de configuration. | |
TraceMessage | info (Int32 verbose_level) const |
Flot pour un message d'information d'un niveau donné | |
TraceMessage | linfo () const |
Flot pour un message d'information avec le niveau d'information local à cette instance. | |
TraceMessage | linfo (Int32 relative_level) const |
Flot pour un message d'information avec le niveau d'information local à cette instance. | |
void | fatalMessage (const StandaloneTraceMessage &o) const |
Fonctions membres publiques hérités de Arcane::IItemFamily | |
virtual void | removeItems2 (mesh::ItemDataList &item_data_list)=0 |
Supprime des entités. | |
virtual IDoFFamily * | toDoFFamily () |
Retourne l'interface de la famille de particule de cette famille. | |
Fonctions membres publiques hérités de Arcane::IItemFamilyModifier | |
virtual | ~IItemFamilyModifier () |
ItemInternal * | allocOne (Int64 uid, ItemTypeInfo *type, mesh::MeshInfos &mesh_info) |
ItemInternal * | findOrAllocOne (Int64 uid, ItemTypeInfo *type, mesh::MeshInfos &mesh_info, bool &is_alloc) |
Fonctions membres privées | |
void | _removeSubItems (Cell cell) |
void | _removeNotConnectedSubItems (Cell cell) |
Supprime les sous-entités de la maille qui ne sont connectées à aucune maille. | |
void | _createOne (ItemInternal *item, Int64 uid, ItemTypeInfo *type) |
void | _createOne (ItemInternal *item, Int64 uid, ItemTypeId type_id) |
Attributs privés | |
Integer | m_node_prealloc |
Integer | m_edge_prealloc |
Integer | m_face_prealloc |
Integer | m_mesh_connectivity |
NodeFamily * | m_node_family |
EdgeFamily * | m_edge_family |
FaceFamily * | m_face_family |
NodeConnectivity * | m_node_connectivity |
EdgeConnectivity * | m_edge_connectivity |
FaceConnectivity * | m_face_connectivity |
HParentConnectivity * | m_hparent_connectivity |
HChildConnectivity * | m_hchild_connectivity |
Famille de mailles.
Définition à la ligne 43 du fichier CellFamily.h.
|
private |
Définition à la ligne 49 du fichier CellFamily.h.
|
private |
Définition à la ligne 50 du fichier CellFamily.h.
|
private |
Définition à la ligne 52 du fichier CellFamily.h.
|
private |
Définition à la ligne 51 du fichier CellFamily.h.
|
private |
Définition à la ligne 48 du fichier CellFamily.h.
Définition à la ligne 77 du fichier CellFamily.cc.
|
virtual |
Définition à la ligne 98 du fichier CellFamily.cc.
void Arcane::mesh::CellFamily::_addChildCellToCell | ( | Cell | parent_cell, |
Integer | rank, | ||
Cell | child_cell | ||
) |
Définition à la ligne 493 du fichier CellFamily.cc.
Définition à la ligne 484 du fichier CellFamily.cc.
void Arcane::mesh::CellFamily::_addChildrenCellsToCell | ( | Cell | parent_cell, |
Int32ConstArrayView | children_cells_lid | ||
) |
Définition à la ligne 509 du fichier CellFamily.cc.
AMR.
Définition à la ligne 475 du fichier CellFamily.cc.
Référencé par Arcane::mesh::OneMeshItemAdder::_AMR_Patch().
|
inlineprivate |
Définition à la ligne 166 du fichier CellFamily.cc.
|
inlineprivate |
Définition à la ligne 147 du fichier CellFamily.cc.
Définition à la ligne 539 du fichier CellFamily.cc.
Définition à la ligne 549 du fichier CellFamily.cc.
Supprime les sous-entités de la maille qui ne sont connectées à aucune maille.
Définition à la ligne 351 du fichier CellFamily.cc.
Références Arcane::Cell::edges(), Arcane::Cell::faces(), Arcane::ItemWithNodes::nodes(), Arcane::mesh::EdgeFamily::removeEdgeIfNotConnected(), Arcane::mesh::FaceFamily::removeFaceIfNotConnected(), et Arcane::mesh::NodeFamily::removeNodeIfNotConnected().
Référencé par removeCell(), et removeDetachedCell().
Définition à la ligne 530 du fichier CellFamily.cc.
Assimilable à _removeOne dans les autres familles
Définition à la ligne 260 du fichier CellFamily.cc.
Références Arcane::Cell::edges(), Arcane::Cell::faces(), Arcane::Item::localId(), Arcane::ItemWithNodes::nodes(), Arcane::mesh::EdgeFamily::removeCellFromEdge(), et Arcane::mesh::FaceFamily::removeCellFromFace().
Référencé par detachCell(), et removeCell().
Cell Arcane::mesh::CellFamily::allocOne | ( | Int64 | uid, |
ItemTypeId | type | ||
) |
Définition à la ligne 197 du fichier CellFamily.cc.
|
overridevirtual |
Alloue un élément dans la famille et met à jour le mesh_info correspondant.
Implémente Arcane::IItemFamilyModifier.
Définition à la ligne 175 du fichier CellFamily.cc.
Références allocOne().
Référencé par allocOne().
ItemInternal * Arcane::mesh::CellFamily::allocOne | ( | Int64 | uid, |
ItemTypeInfo * | type | ||
) |
Définition à la ligne 217 du fichier CellFamily.cc.
|
overridevirtual |
Implémente Arcane::IItemFamily.
Définition à la ligne 106 du fichier CellFamily.cc.
|
overridevirtual |
Construit les structures nécessaires à la synchronisation.
Cette opération doit être effectuée à chaque fois que les entités du maillage changent de propriétaire (par exemple lors d'un équilibrage de charge).
Cette opération est collective.
Implémente Arcane::IItemFamily.
Définition à la ligne 250 du fichier CellFamily.cc.
Références Arcane::mesh::ItemFamily::computeSynchronizeInfos(), et Arccore::TraceAccessor::debug().
Detache la maille cell du maillage sans la supprimer
cell | la maille à détacher |
AMR
Définition à la ligne 315 du fichier CellFamily.cc.
Références _removeSubItems(), et ARCANE_FATAL.
void Arcane::mesh::CellFamily::detachCells2 | ( | Int32ConstArrayView | cell_local_ids | ) |
Detache les mailles d'identifiants locaux cell_local_ids du maillage sans les supprimer. Basé sur le graphe de dépendances des familles ItemFamilyNetwork.
cells_local_id | identifiants locaux des mailles à détacher |
Définition à la ligne 337 du fichier CellFamily.cc.
|
inlineoverridevirtual |
Implémente Arcane::IItemFamilyModifier.
Définition à la ligne 68 du fichier CellFamily.h.
Cell Arcane::mesh::CellFamily::findOrAllocOne | ( | Int64 | uid, |
ItemTypeId | type_id, | ||
bool & | is_alloc | ||
) |
Définition à la ligne 208 du fichier CellFamily.cc.
|
overridevirtual |
Implémente Arcane::IItemFamilyModifier.
Définition à la ligne 185 du fichier CellFamily.cc.
ItemInternal * Arcane::mesh::CellFamily::findOrAllocOne | ( | Int64 | uid, |
ItemTypeInfo * | type, | ||
bool & | is_alloc | ||
) |
Définition à la ligne 228 du fichier CellFamily.cc.
|
overridevirtual |
Supprime le groupe d'entités local_ids
local_ids | le groupe de mailles à supprimer |
Implémente Arcane::IItemFamily.
Définition à la ligne 385 du fichier CellFamily.cc.
Références removeCell().
|
virtual |
Définition à la ligne 241 du fichier CellFamily.cc.
Supprime la maille cell
cell | la maille à supprimer |
AMR
Définition à la ligne 281 du fichier CellFamily.cc.
Références _removeNotConnectedSubItems(), _removeSubItems(), et ARCANE_FATAL.
Référencé par internalRemoveItems(), et removeCells().
void Arcane::mesh::CellFamily::removeCells | ( | ConstArrayView< Int32 > | cells_local_id | ) |
Supprime les mailles dont les numéros locaux sont cells_local_id.
Définition à la ligne 304 du fichier CellFamily.cc.
Références removeCell().
Detruit la maille cell ayant deja ete detachée du maillage
cell | la maille détachée à detruire |
Définition à la ligne 373 du fichier CellFamily.cc.
Références _removeNotConnectedSubItems().
void Arcane::mesh::CellFamily::replaceEdge | ( | ItemLocalId | cell, |
Integer | index, | ||
ItemLocalId | edge | ||
) |
Remplace l'arête d'index index de la maille cell avec celle de localId() edge.
Définition à la ligne 412 du fichier CellFamily.cc.
Référencé par Arcane::mesh::OneMeshItemAdder::_addOneCell(), Arcane::mesh::OneMeshItemAdder::addOneParentItem(), et Arcane::mesh::CellFamily::TopologyModifier::replaceEdge().
void Arcane::mesh::CellFamily::replaceFace | ( | ItemLocalId | cell, |
Integer | index, | ||
ItemLocalId | face | ||
) |
Remplace la face d'index index de la maille cell avec celle de localId() face.
Définition à la ligne 424 du fichier CellFamily.cc.
Référencé par Arcane::mesh::OneMeshItemAdder::_addOneCell(), Arcane::mesh::OneMeshItemAdder::addOneParentItem(), et Arcane::mesh::CellFamily::TopologyModifier::replaceFace().
void Arcane::mesh::CellFamily::replaceHChild | ( | ItemLocalId | cell, |
Integer | index, | ||
ItemLocalId | child_cell | ||
) |
Définition à la ligne 433 du fichier CellFamily.cc.
void Arcane::mesh::CellFamily::replaceHParent | ( | ItemLocalId | cell, |
Integer | index, | ||
ItemLocalId | parent_cell | ||
) |
Définition à la ligne 442 du fichier CellFamily.cc.
void Arcane::mesh::CellFamily::replaceNode | ( | ItemLocalId | cell, |
Integer | index, | ||
ItemLocalId | node | ||
) |
Remplace le noeud d'index index de la maille cell avec celui de localId() node.
Définition à la ligne 400 du fichier CellFamily.cc.
Référencé par Arcane::mesh::OneMeshItemAdder::_addNodesToCell(), Arcane::mesh::OneMeshItemAdder::addOneParentItem(), et Arcane::mesh::CellFamily::TopologyModifier::replaceNode().
void Arcane::mesh::CellFamily::setConnectivity | ( | const Integer | c | ) |
Définit la connectivité active pour le maillage associé
Ceci conditionne les connectivités à la charge de cette famille
Définition à la ligne 451 du fichier CellFamily.cc.
Références Arccore::TraceAccessor::debug(), Arcane::IK_Cell, Arcane::IK_Edge, Arcane::IK_Face, Arcane::IK_Node, Arcane::mesh::ItemFamily::mesh(), et Arcane::mesh::ItemFamily::name().
|
private |
Définition à la ligne 162 du fichier CellFamily.h.
|
private |
Définition à la ligne 158 du fichier CellFamily.h.
|
private |
Définition à la ligne 153 du fichier CellFamily.h.
|
private |
Définition à la ligne 163 du fichier CellFamily.h.
|
private |
Définition à la ligne 159 du fichier CellFamily.h.
|
private |
Définition à la ligne 154 du fichier CellFamily.h.
|
private |
Définition à la ligne 165 du fichier CellFamily.h.
|
private |
Définition à la ligne 164 du fichier CellFamily.h.
|
private |
Définition à la ligne 155 du fichier CellFamily.h.
|
private |
Définition à la ligne 161 du fichier CellFamily.h.
|
private |
Définition à la ligne 157 du fichier CellFamily.h.
|
private |
Définition à la ligne 152 du fichier CellFamily.h.