Arcane  v3.16.0.0
Documentation développeur
Tout Classes Espaces de nommage Fichiers Fonctions Variables Définitions de type Énumérations Valeurs énumérées Amis Macros Groupes Pages Concepts
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)
 
IParallelMngparallelMng () override
 
void getVariableValues (VariableItemReal &variable, Int64ConstArrayView unique_ids, RealArrayView values) override
 Récupère les valeurs d'une variable sur des entités distantes.
 
void getVariableValues (VariableItemReal &variable, Int64ConstArrayView unique_ids, Int32ConstArrayView sub_domain_ids, RealArrayView values) override
 Récupère les valeurs d'une variable sur des entités distantes.
 

Fonctions membres privées

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 = nullptr
 

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)
explicit

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

Documentation des fonctions membres

◆ _getVariableValues()

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

Définition à la ligne 316 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 386 du fichier GetVariablesValuesParallelOperation.cc.

◆ getVariableValues() [1/2]

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

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.

◆ getVariableValues() [2/2]

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

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 255 du fichier GetVariablesValuesParallelOperation.cc.

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

+ Voici le graphe d'appel pour cette fonction :

◆ parallelMng()

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

Documentation des données membres

◆ m_parallel_mng

IParallelMng* Arcane::GetVariablesValuesParallelOperation::m_parallel_mng = nullptr
private

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


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