Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::mesh::FaceUniqueIdBuilder

Construction des couches fantômes. Plus de détails...

#include <arcane/mesh/FaceUniqueIdBuilder.h>

+ Graphe d'héritage de Arcane::mesh::FaceUniqueIdBuilder:
+ Graphe de collaboration de Arcane::mesh::FaceUniqueIdBuilder:

Types publics

using BoundaryInfosMap = HashTableMapT< Int32, SharedArray< Int64 > >
 
using BoundaryInfosMapEnumerator = HashTableMapEnumeratorT< Int32, SharedArray< Int64 > >
 

Fonctions membres publiques

 FaceUniqueIdBuilder (DynamicMeshIncrementalBuilder *mesh_builder)
 Construit une instance pour le maillage mesh.
 
void computeFacesUniqueIds ()
 
- 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.
 
TraceAccessoroperator= (const TraceAccessor &rhs)
 Opérateur de recopie.
 
virtual ~TraceAccessor ()
 Libère les ressources.
 
ITraceMngtraceMng () 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 privées

void _computeFacesUniqueIdsSequential ()
 Calcul les numéros uniques de chaque face en séquentiel.
 
void _computeFacesUniqueIdsParallelV1 ()
 Calcul les numéros uniques de chaque face en parallèle.
 
void _computeFacesUniqueIdsParallelV2 ()
 Calcul les numéros uniques de chaque face en parallèle V2.
 
void _exchangeData (IParallelExchanger *exchanger, BoundaryInfosMap &boundary_infos_to_send)
 
void _checkNoDuplicate ()
 Vérifie qu'on n'a pas deux fois le même uniqueId().
 

Attributs privés

DynamicMeshm_mesh = nullptr
 
DynamicMeshIncrementalBuilderm_mesh_builder = nullptr
 

Membres hérités additionnels

- Fonctions membres protégées hérités de Arccore::TraceAccessor
void _setLocalVerboseLevel (Int32 v)
 
Int32 _localVerboseLevel () const
 

Description détaillée

Construction des couches fantômes.

Définition à la ligne 37 du fichier FaceUniqueIdBuilder.h.

Documentation des définitions de type membres

◆ BoundaryInfosMap

◆ BoundaryInfosMapEnumerator

Documentation des constructeurs et destructeur

◆ FaceUniqueIdBuilder()

Arcane::mesh::FaceUniqueIdBuilder::FaceUniqueIdBuilder ( DynamicMeshIncrementalBuilder mesh_builder)
explicit

Construit une instance pour le maillage mesh.

Définition à la ligne 54 du fichier FaceUniqueIdBuilder.cc.

Documentation des fonctions membres

◆ _checkNoDuplicate()

void Arcane::mesh::FaceUniqueIdBuilder::_checkNoDuplicate ( )
private

Vérifie qu'on n'a pas deux fois le même uniqueId().

Définition à la ligne 132 du fichier FaceUniqueIdBuilder.cc.

Références Arccore::TraceAccessor::info(), et Arcane::Item::uniqueId().

◆ _computeFacesUniqueIdsParallelV1()

void Arcane::mesh::FaceUniqueIdBuilder::_computeFacesUniqueIdsParallelV1 ( )
private

Calcul les numéros uniques de chaque face en parallèle.

En plus de la numérotation, détermine le sous-domaine propriétaire de chaque face, en considérant qu'une face appartient au même sous-domaine que sa maille qui est derrière (ou au sous-domaine courant pour une maille frontière).

A faire:
optimiser l'algorithme pour ne pas avoir à créer un tableau dimensionné au nombre total de mailles du maillage (en procédent en plusieurs étapes)
A faire:
trouver un algorithme plus optimum la recherche du propriétaire de chaque face et ce pour équilibrer les coms.

Définition à la ligne 204 du fichier FaceUniqueIdBuilder.cc.

Références Arcane::MutableItemBase::addFlags(), Arcane::IParallelMng::allGatherVariable(), ARCANE_FATAL, Arcane::Face::cell(), Arcane::IParallelMng::commRank(), Arcane::IParallelMng::commSize(), Arccore::TraceAccessor::debug(), Arccore::TraceAccessor::error(), Arcane::mesh::DynamicMesh::faceFamily(), Arcane::Cell::faces(), Arccore::TraceAccessor::fatal(), Arcane::mesh::ItemTools::findFaceInNode2(), Arcane::ItemBase::flags(), Arcane::ItemFlags::II_HasBackCell, Arcane::ItemFlags::II_Shared, Arcane::ItemFlags::II_SubDomainBoundary, Arccore::TraceAccessor::info(), Arcane::Face::isSubDomainBoundary(), Arcane::Item::itemBase(), Arcane::mesh::DynamicMesh::itemTypeMng(), Arcane::Item::localId(), Arcane::Item::mutableItemBase(), Arcane::ItemWithNodes::nodes(), Arcane::Item::null(), Arcane::Item::owner(), Arcane::mesh::DynamicMesh::parallelMng(), Arcane::IParallelMng::reduce(), Arcane::CheckedConvert::toInteger(), Arcane::Item::type(), et Arcane::Item::uniqueId().

◆ _computeFacesUniqueIdsParallelV2()

◆ _computeFacesUniqueIdsSequential()

void Arcane::mesh::FaceUniqueIdBuilder::_computeFacesUniqueIdsSequential ( )
private

Calcul les numéros uniques de chaque face en séquentiel.

Voir également
computeFacesUniqueIds()

Définition à la ligne 905 du fichier FaceUniqueIdBuilder.cc.

Références Arcane::Cell::faces(), Arccore::TraceAccessor::info(), et Arcane::Item::uniqueId().

◆ _exchangeData()

◆ computeFacesUniqueIds()

void Arcane::mesh::FaceUniqueIdBuilder::computeFacesUniqueIds ( )

Définition à la ligne 65 du fichier FaceUniqueIdBuilder.cc.

Documentation des données membres

◆ m_mesh

DynamicMesh* Arcane::mesh::FaceUniqueIdBuilder::m_mesh = nullptr
private

Définition à la ligne 56 du fichier FaceUniqueIdBuilder.h.

◆ m_mesh_builder

DynamicMeshIncrementalBuilder* Arcane::mesh::FaceUniqueIdBuilder::m_mesh_builder = nullptr
private

Définition à la ligne 57 du fichier FaceUniqueIdBuilder.h.


La documentation de cette classe a été générée à partir des fichiers suivants :