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

Opérations pour accéder aux valeurs de variables d'un autre sous-domaine. Plus de détails...

#include <arcane/impl/GetVariablesValuesParallelOperation.h>

+ Graphe d'héritage de Arcane::GetVariablesValuesParallelOperation:
+ Graphe de collaboration de Arcane::GetVariablesValuesParallelOperation:

Classes

class  Helper
 

Fonctions membres publiques

 GetVariablesValuesParallelOperation (IParallelMng *pm)
 
virtual IParallelMngparallelMng ()
 
virtual void getVariableValues (VariableItemReal &variable, Int64ConstArrayView unique_ids, RealArrayView values)
 Récupère les valeurs d'une variable sur des entités distantes.
 
virtual void getVariableValues (VariableItemReal &variable, Int64ConstArrayView unique_ids, Int32ConstArrayView sub_domain_ids, RealArrayView values)
 Récupère les valeurs d'une variable sur des entités distantes.
 

Fonctions membres privées

void _deleteMessages (Array< ISerializeMessage * > &messages)
 
template<class Type >
void _getVariableValues (ItemVariableScalarRefT< Type > &variable, Int64ConstArrayView unique_ids, ArrayView< Type > values)
 
template<class Type >
void _getVariableValuesSequential (ItemVariableScalarRefT< Type > &variable, Int64ConstArrayView unique_ids, ArrayView< Type > values)
 

Attributs privés

IParallelMngm_parallel_mng
 

Description détaillée

Opérations pour accéder aux valeurs de variables d'un autre sous-domaine.

Définition à la ligne 32 du fichier GetVariablesValuesParallelOperation.h.

Documentation des constructeurs et destructeur

◆ GetVariablesValuesParallelOperation()

Arcane::GetVariablesValuesParallelOperation::GetVariablesValuesParallelOperation ( IParallelMng pm)

Définition à la ligne 37 du fichier GetVariablesValuesParallelOperation.cc.

◆ ~GetVariablesValuesParallelOperation()

Arcane::GetVariablesValuesParallelOperation::~GetVariablesValuesParallelOperation ( )
virtual

Définition à la ligne 46 du fichier GetVariablesValuesParallelOperation.cc.

Documentation des fonctions membres

◆ _deleteMessages()

void Arcane::GetVariablesValuesParallelOperation::_deleteMessages ( Array< ISerializeMessage * > &  messages)
private

Définition à la ligne 337 du fichier GetVariablesValuesParallelOperation.cc.

◆ _getVariableValues()

template<class Type >
void Arcane::GetVariablesValuesParallelOperation::_getVariableValues ( ItemVariableScalarRefT< Type > &  variable,
Int64ConstArrayView  unique_ids,
ArrayView< Type values 
)
private

Définition à la ligne 348 du fichier GetVariablesValuesParallelOperation.cc.

◆ _getVariableValuesSequential()

template<class Type >
void Arcane::GetVariablesValuesParallelOperation::_getVariableValuesSequential ( ItemVariableScalarRefT< Type > &  variable,
Int64ConstArrayView  unique_ids,
ArrayView< Type values 
)
private

Définition à la ligne 419 du fichier GetVariablesValuesParallelOperation.cc.

◆ getVariableValues() [1/2]

void Arcane::GetVariablesValuesParallelOperation::getVariableValues ( VariableItemReal variable,
Int64ConstArrayView  unique_ids,
Int32ConstArrayView  sub_domain_ids,
RealArrayView  values 
)
virtual

Récupère les valeurs d'une variable sur des entités distantes.

Cette opération permet de récupérer les valeurs de la variable variable sur des entités qui ne se trouvent pas dans ce sous-domaine. Le tableau unique_ids contient le numéro unique des entités dont on souhaite récupérer la valeur et sub_domain_ids le sous-domaine dans lequel se trouve les entités. Ces valeurs seront stockées dans values.

unique_ids, sub_domain_ids et values doivent avoir le même nombre d'éléments.

Cette opération est collective et bloquante.

Implémente Arcane::IGetVariablesValuesParallelOperation.

Définition à la ligne 63 du fichier GetVariablesValuesParallelOperation.cc.

Références Arcane::IParallelMng::allGatherVariable(), Arccore::ISerializer::allocateBuffer(), ARCANE_FATAL, Arcane::IParallelMng::commRank(), Arcane::DT_Int64, Arcane::DT_Real, Arccore::ITraceMng::fatal(), Arccore::ISerializer::getInt64(), Arccore::ISerializer::getSpan(), Arcane::IParallelMng::isParallel(), Arcane::IVariable::itemFamily(), Arcane::VariableRef::name(), Arcane::ItemGroup::null(), Arccore::ITraceMng::pinfo(), Arcane::IParallelMng::processMessages(), Arccore::ISerializer::putInt64(), Arccore::ISerializer::putSpan(), Arccore::ISerializer::reserve(), Arccore::ISerializer::reserveSpan(), Arccore::ISerializer::setMode(), Arccore::ArrayView< T >::size(), Arcane::IParallelMng::timeStats(), Arcane::IParallelMng::traceMng(), et Arcane::VariableRef::variable().

◆ getVariableValues() [2/2]

void Arcane::GetVariablesValuesParallelOperation::getVariableValues ( VariableItemReal variable,
Int64ConstArrayView  unique_ids,
RealArrayView  values 
)
virtual

Récupère les valeurs d'une variable sur des entités distantes.

Cette opération permet de récupérer les valeurs de la variable variable sur des entités qui ne se trouvent pas dans ce sous-domaine. Le tableau unique_ids contient le numéro unique des entités dont on souhaite récupérer la valeur. Ces valeurs seront stockées dans values.

Cette méthode nécessaite en général beaucoup de communications car il faut rechercher dans quel sous-domaine appartient les entités à partir de leur uniqueId(). Si on connait le sous-domaime, il vaut utiliser la méthode surchargé avec ce paramètre.

unique_ids et values doivent avoir le même nombre d'éléments.

Cette opération est collective et bloquante.

Implémente Arcane::IGetVariablesValuesParallelOperation.

Définition à la ligne 273 du fichier GetVariablesValuesParallelOperation.cc.

Références Arcane::IParallelMng::commSize(), Arccore::ArrayView< T >::data(), Arccore::ITraceMng::debug(), Arccore::ITraceMng::fatal(), Arccore::ITraceMng::info(), Arcane::IParallelMng::isParallel(), Arcane::VariableRef::name(), Arcane::ItemGroup::null(), Arccore::ArrayView< T >::size(), Arcane::IParallelMng::timeStats(), et Arcane::IParallelMng::traceMng().

◆ parallelMng()

IParallelMng * Arcane::GetVariablesValuesParallelOperation::parallelMng ( )
virtual

Documentation des données membres

◆ m_parallel_mng

IParallelMng* Arcane::GetVariablesValuesParallelOperation::m_parallel_mng
private

Définition à la ligne 62 du fichier GetVariablesValuesParallelOperation.h.


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