Arcane  4.1.11.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::mesh::MeshExchange

Exchange of mesh entities between subdomains. Plus de détails...

#include <arcane/mesh/MeshExchange.h>

Graphe d'héritage de Arcane::mesh::MeshExchange:
Graphe de collaboration de Arcane::mesh::MeshExchange:

Classes

class  IncrementalUnorderedMultiArray
class  DynamicMultiArray

Fonctions membres publiques

 MeshExchange (IMesh *mesh)
void computeInfos ()
 Compute the info.
ISubDomainsubDomain () const
IMeshmesh () const
ConstArrayView< std::set< Int32 > > getItemsToSend (IItemFamily *family) const
 List of entities to send by subdomain for the family family.
Fonctions membres publiques hérités de Arcane::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

Attributs publics

std::map< IItemFamily *, UniqueArray< std::set< Int32 > > * > m_items_to_send

Types privés

using ItemDestRankArray = DynamicMultiArray<Int32>
using ItemDestRankMap = std::map<IItemFamily*, ItemDestRankArray*>
using ItemDestRankMapArray = UniqueArray<ItemDestRankMap>

Fonctions membres privées

void _computeMeshConnectivityInfos2 (Int32ConstArrayView cells_new_owner)
 AMR.
void _addTreeCellToSend (ArrayView< std::set< Int32 > > items_to_send, Int32 local_id, Int32 cell_local_id, CellInfoListView cells)
void _addTreeItemToSend (Int32 cell_local_id, CellInfoListView cells)
void _addItemToSend2 (ArrayView< std::set< Int32 > > items_to_send, Int32 item_local_id, Int32 cell_local_id)
void _familyTree (Int32Array &family, Cell item, const bool reset=true) const
void _computeItemsToSend2 ()
void _computeMeshConnectivityInfos (Int32ConstArrayView cells_new_owner)
void _computeGraphConnectivityInfos ()
void _exchangeCellDataInfos (Int32ConstArrayView cells_new_owner, bool use_active_cells)
void _computeItemsToSend (bool send_dof=false)
void _addItemToSend (ArrayView< std::set< Int32 > > items_to_send, Int32 item_local_id, Int32 cell_local_id, bool use_itemfamily_network=false)
void _computeMeshConnectivityInfos3 ()
 AMR OFF.
void _exchangeCellDataInfos3 ()
void _computeItemsToSend3 ()
void _propagatesToChildConnectivities (IItemFamily *family)
void _propagatesToChildDependencies (IItemFamily *family)
void _addDestRank (const Item &item, IItemFamily *item_family, const Integer new_owner)
void _addDestRank (const Item &item, IItemFamily *item_family, const Item &followed_item, IItemFamily *followed_item_family)
void _allocData (IItemFamily *family)
void _addGraphConnectivityToNewConnectivityInfo ()
ArrayView< std::set< Int32 > > _getItemsToSend (IItemFamily *family)
 List of entities to send by subdomain for the family family.
void _setItemsToSend (IItemFamily *family)
void _printItemToSend (IItemFamily *family)
 Using ItemFamilyNetwork.
void _printItemToRemove (IItemFamily *family)
void _markRemovableItems (bool with_cell_family=true)
void _markRemovableDoFs ()
void _markRemovableParticles ()
void _markRemovableCells (Int32ConstArrayView cells_new_owner, bool use_active_cells)
void _debugPrint ()
void _checkSubItemsDestRanks ()
void _exchangeGhostItemDataInfos ()
Integer _getSubdomainIndexInCommunicatingRanks (Integer rank, Int32ConstArrayView communicating_ranks)

Attributs privés

IMeshm_mesh
 Mesh.
IParallelMngm_parallel_mng
Int32 m_nb_rank
Int32 m_rank
IItemFamilym_cell_family
IncrementalUnorderedMultiArray< Int32 > * m_neighbour_cells_owner
IncrementalUnorderedMultiArray< Int32 > * m_neighbour_cells_new_owner
DynamicMultiArray< Int32 > * m_neighbour_extra_cells_owner
DynamicMultiArray< Int32 > * m_neighbour_extra_cells_new_owner
ItemDestRankMap m_item_dest_ranks_map
ItemDestRankMapArray m_ghost_item_dest_ranks_map

Membres hérités additionnels

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

Description détaillée

Exchange of mesh entities between subdomains.

Définition à la ligne 47 du fichier MeshExchange.h.

Documentation des définitions de type membres

◆ ItemDestRankArray

using Arcane::mesh::MeshExchange::ItemDestRankArray = DynamicMultiArray<Int32>
private

Définition à la ligne 141 du fichier MeshExchange.h.

◆ ItemDestRankMap

using Arcane::mesh::MeshExchange::ItemDestRankMap = std::map<IItemFamily*, ItemDestRankArray*>
private

Définition à la ligne 142 du fichier MeshExchange.h.

◆ ItemDestRankMapArray

using Arcane::mesh::MeshExchange::ItemDestRankMapArray = UniqueArray<ItemDestRankMap>
private

Définition à la ligne 143 du fichier MeshExchange.h.

Documentation des constructeurs et destructeur

◆ MeshExchange()

Arcane::mesh::MeshExchange::MeshExchange ( IMesh * mesh)

Définition à la ligne 181 du fichier MeshExchange.cc.

◆ ~MeshExchange()

Arcane::mesh::MeshExchange::~MeshExchange ( )

Définition à la ligne 199 du fichier MeshExchange.cc.

Documentation des fonctions membres

◆ _addDestRank() [1/2]

void Arcane::mesh::MeshExchange::_addDestRank ( const Item & item,
IItemFamily * item_family,
const Integer new_owner )
private

Définition à la ligne 1005 du fichier MeshExchange.cc.

◆ _addDestRank() [2/2]

void Arcane::mesh::MeshExchange::_addDestRank ( const Item & item,
IItemFamily * item_family,
const Item & followed_item,
IItemFamily * followed_item_family )
private

Définition à la ligne 1024 du fichier MeshExchange.cc.

◆ _addGraphConnectivityToNewConnectivityInfo()

void Arcane::mesh::MeshExchange::_addGraphConnectivityToNewConnectivityInfo ( )
private

Définition à la ligne 329 du fichier MeshExchange.cc.

◆ _addItemToSend()

void Arcane::mesh::MeshExchange::_addItemToSend ( ArrayView< std::set< Int32 > > items_to_send,
Int32 item_local_id,
Int32 cell_local_id,
bool use_itemfamily_network = false )
private

Définition à la ligne 537 du fichier MeshExchange.cc.

◆ _addTreeCellToSend()

void Arcane::mesh::MeshExchange::_addTreeCellToSend ( ArrayView< std::set< Int32 > > items_to_send,
Int32 local_id,
Int32 cell_local_id,
CellInfoListView cells )
private

Définition à la ligne 696 du fichier MeshExchange.cc.

◆ _addTreeItemToSend()

void Arcane::mesh::MeshExchange::_addTreeItemToSend ( Int32 cell_local_id,
CellInfoListView cells )
private

Définition à la ligne 726 du fichier MeshExchange.cc.

◆ _allocData()

void Arcane::mesh::MeshExchange::_allocData ( IItemFamily * family)
private

Définition à la ligne 1055 du fichier MeshExchange.cc.

◆ _checkSubItemsDestRanks()

void Arcane::mesh::MeshExchange::_checkSubItemsDestRanks ( )
private

Définition à la ligne 1434 du fichier MeshExchange.cc.

◆ _computeGraphConnectivityInfos()

void Arcane::mesh::MeshExchange::_computeGraphConnectivityInfos ( )
private

Définition à la ligne 301 du fichier MeshExchange.cc.

◆ _computeItemsToSend()

void Arcane::mesh::MeshExchange::_computeItemsToSend ( bool send_dof = false)
private

Définition à la ligne 561 du fichier MeshExchange.cc.

◆ _computeItemsToSend2()

void Arcane::mesh::MeshExchange::_computeItemsToSend2 ( )
private

Définition à la ligne 787 du fichier MeshExchange.cc.

◆ _computeItemsToSend3()

void Arcane::mesh::MeshExchange::_computeItemsToSend3 ( )
private

Définition à la ligne 1206 du fichier MeshExchange.cc.

◆ _computeMeshConnectivityInfos()

void Arcane::mesh::MeshExchange::_computeMeshConnectivityInfos ( Int32ConstArrayView cells_new_owner)
private

Définition à la ligne 350 du fichier MeshExchange.cc.

◆ _computeMeshConnectivityInfos2()

void Arcane::mesh::MeshExchange::_computeMeshConnectivityInfos2 ( Int32ConstArrayView cells_new_owner)
private

AMR.

Définition à la ligne 648 du fichier MeshExchange.cc.

Références Arcane::Array< DataType >::clear(), ENUMERATE_CELL, Arcane::Array< DataType >::fill(), Arcane::Item::localId(), et Arcane::ItemWithNodes::nodes().

Référencé par computeInfos().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ _computeMeshConnectivityInfos3()

void Arcane::mesh::MeshExchange::_computeMeshConnectivityInfos3 ( )
private

AMR OFF.

ITEM_FAMILY_NETWORK ON

Définition à la ligne 880 du fichier MeshExchange.cc.

Références Arcane::TraceAccessor::info(), et m_mesh.

Référencé par computeInfos().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ _debugPrint()

void Arcane::mesh::MeshExchange::_debugPrint ( )
private

Définition à la ligne 1066 du fichier MeshExchange.cc.

◆ _exchangeCellDataInfos()

void Arcane::mesh::MeshExchange::_exchangeCellDataInfos ( Int32ConstArrayView cells_new_owner,
bool use_active_cells )
private

Définition à la ligne 397 du fichier MeshExchange.cc.

◆ _exchangeCellDataInfos3()

void Arcane::mesh::MeshExchange::_exchangeCellDataInfos3 ( )
private

Définition à la ligne 1085 du fichier MeshExchange.cc.

◆ _exchangeGhostItemDataInfos()

void Arcane::mesh::MeshExchange::_exchangeGhostItemDataInfos ( )
private

Définition à la ligne 1466 du fichier MeshExchange.cc.

◆ _familyTree()

void Arcane::mesh::MeshExchange::_familyTree ( Int32Array & family,
Cell item,
const bool reset = true ) const
private

Définition à la ligne 765 du fichier MeshExchange.cc.

◆ _getItemsToSend()

ArrayView< std::set< Int32 > > Arcane::mesh::MeshExchange::_getItemsToSend ( IItemFamily * family)
private

List of entities to send by subdomain for the family family.

List of entities to send by sub-domain for family family.

Définition à la ligne 232 du fichier MeshExchange.cc.

Références ARCANE_FATAL, et Arcane::IItemFamily::name().

Voici le graphe d'appel pour cette fonction :

◆ _getSubdomainIndexInCommunicatingRanks()

Integer Arcane::mesh::MeshExchange::_getSubdomainIndexInCommunicatingRanks ( Integer rank,
Int32ConstArrayView communicating_ranks )
private

Définition à la ligne 1592 du fichier MeshExchange.cc.

◆ _markRemovableCells()

void Arcane::mesh::MeshExchange::_markRemovableCells ( Int32ConstArrayView cells_new_owner,
bool use_active_cells )
private

Définition à la ligne 1355 du fichier MeshExchange.cc.

◆ _markRemovableDoFs()

void Arcane::mesh::MeshExchange::_markRemovableDoFs ( )
private

Définition à la ligne 1305 du fichier MeshExchange.cc.

◆ _markRemovableItems()

void Arcane::mesh::MeshExchange::_markRemovableItems ( bool with_cell_family = true)
private

Définition à la ligne 1330 du fichier MeshExchange.cc.

◆ _markRemovableParticles()

void Arcane::mesh::MeshExchange::_markRemovableParticles ( )
private

Définition à la ligne 1414 du fichier MeshExchange.cc.

◆ _printItemToRemove()

void Arcane::mesh::MeshExchange::_printItemToRemove ( IItemFamily * family)
private

Définition à la ligne 1292 du fichier MeshExchange.cc.

◆ _printItemToSend()

void Arcane::mesh::MeshExchange::_printItemToSend ( IItemFamily * family)
private

Using ItemFamilyNetwork.

Définition à la ligne 1271 du fichier MeshExchange.cc.

Références ARCANE_FATAL, Arcane::TraceAccessor::debug(), et Arcane::IItemFamily::name().

Voici le graphe d'appel pour cette fonction :

◆ _propagatesToChildConnectivities()

void Arcane::mesh::MeshExchange::_propagatesToChildConnectivities ( IItemFamily * family)
private

Définition à la ligne 919 du fichier MeshExchange.cc.

◆ _propagatesToChildDependencies()

void Arcane::mesh::MeshExchange::_propagatesToChildDependencies ( IItemFamily * family)
private

Définition à la ligne 979 du fichier MeshExchange.cc.

◆ _setItemsToSend()

void Arcane::mesh::MeshExchange::_setItemsToSend ( IItemFamily * family)
private

Définition à la ligne 1252 du fichier MeshExchange.cc.

◆ computeInfos()

void Arcane::mesh::MeshExchange::computeInfos ( )

Compute the info.

AMR

AMR END

Définition à la ligne 244 du fichier MeshExchange.cc.

Références _computeMeshConnectivityInfos2(), _computeMeshConnectivityInfos3(), et m_mesh.

Référencé par Arcane::mesh::MeshExchanger::computeExchangeInfos().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ getItemsToSend()

ConstArrayView< std::set< Int32 > > Arcane::mesh::MeshExchange::getItemsToSend ( IItemFamily * family) const

List of entities to send by subdomain for the family family.

List of entities to send by sub-domain for family family.

Définition à la ligne 219 du fichier MeshExchange.cc.

Références ARCANE_FATAL, et Arcane::IItemFamily::name().

Référencé par Arcane::mesh::MeshExchanger::computeExchangeInfos().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ mesh()

IMesh * Arcane::mesh::MeshExchange::mesh ( ) const
inline

Définition à la ligne 73 du fichier MeshExchange.h.

◆ subDomain()

ISubDomain * Arcane::mesh::MeshExchange::subDomain ( ) const

Définition à la ligne 1605 du fichier MeshExchange.cc.

Documentation des données membres

◆ m_cell_family

IItemFamily* Arcane::mesh::MeshExchange::m_cell_family
private

Définition à la ligne 84 du fichier MeshExchange.h.

◆ m_ghost_item_dest_ranks_map

ItemDestRankMapArray Arcane::mesh::MeshExchange::m_ghost_item_dest_ranks_map
private

Définition à la ligne 145 du fichier MeshExchange.h.

◆ m_item_dest_ranks_map

ItemDestRankMap Arcane::mesh::MeshExchange::m_item_dest_ranks_map
private

Définition à la ligne 144 du fichier MeshExchange.h.

◆ m_items_to_send

std::map<IItemFamily*, UniqueArray<std::set<Int32> >*> Arcane::mesh::MeshExchange::m_items_to_send

Définition à la ligne 120 du fichier MeshExchange.h.

◆ m_mesh

IMesh* Arcane::mesh::MeshExchange::m_mesh
private

Mesh.

Définition à la ligne 80 du fichier MeshExchange.h.

Référencé par _computeMeshConnectivityInfos3(), et computeInfos().

◆ m_nb_rank

Int32 Arcane::mesh::MeshExchange::m_nb_rank
private

Définition à la ligne 82 du fichier MeshExchange.h.

◆ m_neighbour_cells_new_owner

IncrementalUnorderedMultiArray<Int32>* Arcane::mesh::MeshExchange::m_neighbour_cells_new_owner
private

Définition à la ligne 125 du fichier MeshExchange.h.

◆ m_neighbour_cells_owner

IncrementalUnorderedMultiArray<Int32>* Arcane::mesh::MeshExchange::m_neighbour_cells_owner
private

Définition à la ligne 124 du fichier MeshExchange.h.

◆ m_neighbour_extra_cells_new_owner

DynamicMultiArray<Int32>* Arcane::mesh::MeshExchange::m_neighbour_extra_cells_new_owner
private

Définition à la ligne 127 du fichier MeshExchange.h.

◆ m_neighbour_extra_cells_owner

DynamicMultiArray<Int32>* Arcane::mesh::MeshExchange::m_neighbour_extra_cells_owner
private

Définition à la ligne 126 du fichier MeshExchange.h.

◆ m_parallel_mng

IParallelMng* Arcane::mesh::MeshExchange::m_parallel_mng
private

Définition à la ligne 81 du fichier MeshExchange.h.

◆ m_rank

Int32 Arcane::mesh::MeshExchange::m_rank
private

Définition à la ligne 83 du fichier MeshExchange.h.


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