Fonctions membres publiques | |
Parallel3EdgeUniqueIdBuilder (ITraceMng *tm, DynamicMeshIncrementalBuilder *mesh_builder, Int64 max_node_uid) | |
void | compute () |
Calcule les numéros uniques de chaque edge en parallèle. | |
![]() | |
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 |
Types privés | |
using | BoundaryInfosMap = std::unordered_map<Int32, SharedArray<Int64>> |
Fonctions membres privées | |
void | _exchangeData (IParallelExchanger *exchanger) |
void | _addEdgeBoundaryInfo (Edge edge) |
void | _computeEdgesUniqueId () |
void | _sendInfosToOtherRanks () |
Attributs privés | |
DynamicMesh * | m_mesh = nullptr |
DynamicMeshIncrementalBuilder * | m_mesh_builder = nullptr |
IParallelMng * | m_parallel_mng = nullptr |
const Int32 | m_my_rank = A_NULL_RANK |
const Int32 | m_nb_rank = A_NULL_RANK |
BoundaryInfosMap | m_boundary_infos_to_send |
NodeUidToSubDomain | m_uid_to_subdomain_converter |
std::unordered_map< Int64, SharedArray< Int64 > > | m_nodes_info |
UniqueArray< bool > | m_is_boundary_nodes |
bool | m_is_verbose = false |
Membres hérités additionnels | |
![]() | |
void | _setLocalVerboseLevel (Int32 v) |
Int32 | _localVerboseLevel () const |
Définition à la ligne 197 du fichier EdgeUniqueIdBuilder.cc.
|
private |
Définition à la ligne 200 du fichier EdgeUniqueIdBuilder.cc.
Arcane::mesh::Parallel3EdgeUniqueIdBuilder::Parallel3EdgeUniqueIdBuilder | ( | ITraceMng * | tm, |
DynamicMeshIncrementalBuilder * | mesh_builder, | ||
Int64 | max_node_uid ) |
Définition à la ligne 235 du fichier EdgeUniqueIdBuilder.cc.
|
private |
Définition à la ligne 285 du fichier EdgeUniqueIdBuilder.cc.
|
private |
Définition à la ligne 420 du fichier EdgeUniqueIdBuilder.cc.
|
private |
//COPIE DEPUIS GhostLayerBuilder. Faire une classe unique.
Définition à la ligne 254 du fichier EdgeUniqueIdBuilder.cc.
Références Arcane::IParallelExchanger::addSender(), Arcane::ISerializer::allocateBuffer(), Arcane::TraceAccessor::debug(), Arcane::MessagePassing::ISerializeMessage::destination(), Arcane::IParallelExchanger::initializeCommunicationsMessages(), Arcane::Int64, Arcane::IParallelExchanger::messageToSend(), Arcane::ISerializer::ModePut, Arcane::IParallelExchanger::nbSender(), Arcane::IParallelExchanger::processExchange(), Arcane::ISerializer::putInt64(), Arcane::ISerializer::putSpan(), Arcane::ISerializer::reserveInt64(), Arcane::ISerializer::reserveSpan(), Arcane::MessagePassing::ISerializeMessage::serializer(), Arcane::ISerializer::setMode(), Arcane::ConstArrayView< T >::size(), et Arcane::MessagePassing::MessageRank::value().
|
private |
Définition à la ligne 544 du fichier EdgeUniqueIdBuilder.cc.
void Arcane::mesh::Parallel3EdgeUniqueIdBuilder::compute | ( | ) |
Calcule les numéros uniques de chaque edge en parallèle.
NEW VERSION.
NOTE: GG Juin 2022 Il semble que cette version ne fonctionne pas toujours lorsqu'elle est appelée est que le maillage est déjà découpé. Cela est du au fait que l'algorithme si-dessus est recopié sur celui qui calcule les uniqueId() des faces (dans FaceUniqueIdBuilder). Cependant, l'algorithme de calcul des faces suppose qu'une face frontière n'existe que dans une seule partie (un seul rang) ce qui n'est pas le cas pour les arêtes. On se retrouve alors avec des sous-domaines qui n'ont pas leurs arêtes renumérotées.
Définition à la ligne 328 du fichier EdgeUniqueIdBuilder.cc.
Références Arcane::HashTableMapT< KeyType, ValueType, KeyTraitsType >::add(), Arcane::IParallelMng::barrier(), Arcane::mesh::ItemInternalMap::eachItem(), Arcane::HashTableMapT< KeyType, ValueType, KeyTraitsType >::eachValue(), Arcane::Array< DataType >::fill(), Arcane::ITraceMng::flush(), Arcane::TraceAccessor::info(), Arcane::IItemFamily::maxLocalId(), Arcane::Face::nbCell(), Arcane::ItemWithNodes::nodeIds(), Arcane::Array< DataType >::reserve(), Arcane::TraceAccessor::traceMng(), et Arcane::Item::uniqueId().
|
private |
Définition à la ligne 218 du fichier EdgeUniqueIdBuilder.cc.
|
private |
Définition à la ligne 221 du fichier EdgeUniqueIdBuilder.cc.
|
private |
Définition à la ligne 222 du fichier EdgeUniqueIdBuilder.cc.
|
private |
Définition à la ligne 213 du fichier EdgeUniqueIdBuilder.cc.
|
private |
Définition à la ligne 214 du fichier EdgeUniqueIdBuilder.cc.
|
private |
Définition à la ligne 216 du fichier EdgeUniqueIdBuilder.cc.
|
private |
Définition à la ligne 217 du fichier EdgeUniqueIdBuilder.cc.
|
private |
Définition à la ligne 220 du fichier EdgeUniqueIdBuilder.cc.
|
private |
Définition à la ligne 215 du fichier EdgeUniqueIdBuilder.cc.
|
private |
Définition à la ligne 219 du fichier EdgeUniqueIdBuilder.cc.