Operations to access variable values from another subdomain. More...
#include <arcane/impl/GetVariablesValuesParallelOperation.h>
Classes | |
| class | Helper |
Public Member Functions | |
| GetVariablesValuesParallelOperation (IParallelMng *pm) | |
| IParallelMng * | parallelMng () override |
| void | getVariableValues (VariableItemReal &variable, Int64ConstArrayView unique_ids, RealArrayView values) override |
| Retrieves the values of a variable on remote entities. | |
| void | getVariableValues (VariableItemReal &variable, Int64ConstArrayView unique_ids, Int32ConstArrayView sub_domain_ids, RealArrayView values) override |
| Retrieves the values of a variable on remote entities. | |
Private Member Functions | |
| 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) |
Private Attributes | |
| IParallelMng * | m_parallel_mng = nullptr |
Operations to access variable values from another subdomain.
Definition at line 33 of file GetVariablesValuesParallelOperation.h.
|
explicit |
Definition at line 39 of file GetVariablesValuesParallelOperation.cc.
|
private |
Definition at line 316 of file GetVariablesValuesParallelOperation.cc.
|
private |
Definition at line 386 of file GetVariablesValuesParallelOperation.cc.
|
overridevirtual |
Retrieves the values of a variable on remote entities.
This operation allows retrieving the values of the variable variable on entities that are not located in this subdomain. The array unique_ids contains the unique number of the entities whose value we wish to retrieve, and sub_domain_ids the subdomain in which the entities are located. These values will be stored in values.
unique_ids, sub_domain_ids, and values must have the same number of elements.
This operation is collective and blocking.
Implements Arcane::IGetVariablesValuesParallelOperation.
|
overridevirtual |
Retrieves the values of a variable on remote entities.
This operation allows retrieving the values of the variable variable on entities that are not located in this subdomain. The array unique_ids contains the unique number of the entities whose value we wish to retrieve. These values will be stored in values.
This method generally requires a lot of communication because it is necessary to search which subdomain the entities belong to based on their uniqueId(). If the subdomain is known, it is better to use the overloaded method with this parameter.
unique_ids and values must have the same number of elements.
This operation is collective and blocking.
Implements Arcane::IGetVariablesValuesParallelOperation.
Definition at line 255 of file GetVariablesValuesParallelOperation.cc.
References 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(), and Arcane::IParallelMng::traceMng().
|
overridevirtual |
Implements Arcane::IGetVariablesValuesParallelOperation.
Definition at line 48 of file GetVariablesValuesParallelOperation.cc.
|
private |
Definition at line 67 of file GetVariablesValuesParallelOperation.h.