Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence du modèle de la classe Arcane::Materials::ItemMaterialVariableScalar< DataType >

Variable scalaire sur un matériau du maillage. Plus de détails...

#include <arcane/materials/MeshMaterialVariable.h>

+ Graphe d'héritage de Arcane::Materials::ItemMaterialVariableScalar< DataType >:
+ Graphe de collaboration de Arcane::Materials::ItemMaterialVariableScalar< DataType >:

Types publics

using BaseClass = ItemMaterialVariableBase< MaterialVariableScalarTraits< DataType > >
 
using Traits = MaterialVariableScalarTraits< DataType >
 
using ThatClass = ItemMaterialVariableScalar< DataType >
 
using ContainerViewType = typename Traits::ContainerViewType
 
using PrivatePartType = typename Traits::PrivatePartType
 
using ValueDataType = typename Traits::ValueDataType
 
using ContainerType = typename Traits::ContainerType
 
using VariableRefType = typename Traits::VariableRefType
 
- Types publics hérités de Arcane::Materials::ItemMaterialVariableBase< MaterialVariableScalarTraits< DataType > >
using TraitsType = MaterialVariableScalarTraits< DataType >
 
using ValueType = typename Traits::ValueType
 
using DataType = typename Traits::ValueType
 
using ThatClass = ItemMaterialVariableBase< MaterialVariableScalarTraits< DataType > >
 
using SubViewType = typename Traits::SubViewType
 
using SubConstViewType = typename Traits::SubConstViewType
 
using SubInputViewType = typename Traits::SubInputViewType
 
using ContainerSpanType = typename Traits::ContainerSpanType
 
using ContainerViewType = typename Traits::ContainerViewType
 
using ContainerConstViewType = typename Traits::ContainerConstViewType
 
using PrivatePartType = typename Traits::PrivatePartType
 
using ValueDataType = typename Traits::ValueDataType
 
using ContainerType = typename Traits::ContainerType
 
using UniqueContainerType = typename Traits::UniqueContainerType
 
using VariableRefType = typename Traits::VariableRefType
 

Fonctions membres publiques

ArrayView< DataType > * views ()
 
DataType operator[] (MatVarIndex mvi) const
 
void synchronize () override
 Synchronise la variable.
 
void synchronize (MeshMaterialVariableSynchronizerList &sync_list) override
 
void dumpValues (std::ostream &ostr) override
 Affiche les valeurs de la variable sur le flot ostr.
 
void dumpValues (std::ostream &ostr, AllEnvCellVectorView view) override
 Affiche les valeurs de la variable pour la vue view sur le flot ostr.
 
void serialize (ISerializer *sbuffer, Int32ConstArrayView ids) override
 Sérialise la variable pour les entités de numéro local ids.
 
void fillFromArray (IMeshMaterial *mat, ConstArrayView< DataType > values)
 Remplit les valeurs de la variable pour un matériau à partir d'un tableau.
 
void fillFromArray (IMeshMaterial *mat, ConstArrayView< DataType > values, Int32ConstArrayView indexes)
 Remplit les valeurs de la variable pour un matériau à partir d'un tableau.
 
void fillToArray (IMeshMaterial *mat, ArrayView< DataType > values)
 Remplit un tableau à partir des valeurs de la variable pour un matériau.
 
void fillToArray (IMeshMaterial *mat, ArrayView< DataType > values, Int32ConstArrayView indexes)
 Remplit un tableau à partir des valeurs de la variable pour un matériau.
 
void fillPartialValues (const DataType &value)
 Remplit les valeurs partielles avec la valeur value.
 
- Fonctions membres publiques hérités de Arcane::Materials::ItemMaterialVariableBase< MaterialVariableScalarTraits< DataType > >
 ItemMaterialVariableBase (const MaterialVariableBuildInfo &v, PrivatePartType *global_var, VariableRef *global_var_ref, MatVarSpace mvs)
 
void syncReferences () override
 Synchronise les références.
 
IVariableglobalVariable () const override
 Variable globale sur le maillage associée.
 
void buildFromManager (bool is_continue) override
 Construit les infos de la variable. A usage interne à Arcane.
 
Ref< IData_internalCreateSaveDataRef (Integer nb_value) override
 
void _saveData (IMeshComponent *env, IData *data) override
 
void _restoreData (IMeshComponent *component, IData *data, Integer data_index, Int32ConstArrayView ids, bool allow_null_id) override
 
void _copyBetweenPartialAndGlobal (const CopyBetweenPartialAndGlobalArgs &args) override
 
void _initializeNewItemsWithZero (InitializeWithZeroArgs &args) override
 
void fillPartialValuesWithGlobalValues () override
 Remplit les valeurs partielles avec la valeur de la maille globale associée.
 
void fillPartialValuesWithSuperValues (Int32 level) override
 Remplit les valeurs partielles avec la valeur de la maille du dessus. Si level vaut LEVEL_MATERIAL, copie les valeurs matériaux avec celle du milieu. Si level vaut LEVEL_ENVIRONNEMENT, copie les valeurs des milieux avec celui de la maille globale. Si level vaut LEVEL_ALLENVIRONMENT, remplit toutes les valeurs partielles avec celle de la maille globale (cela rend cette méthode équivalente à fillGlobalValuesWithGlobalValues().
 
void setValue (MatVarIndex mvi, SubInputViewType v)
 
void setFillValue (MatVarIndex mvi, const DataType &v)
 
SubConstViewType value (MatVarIndex mvi) const
 
- Fonctions membres publiques hérités de Arcane::Materials::MeshMaterialVariable
 MeshMaterialVariable (const MaterialVariableBuildInfo &v, MatVarSpace mvs)
 
String name () const override
 Nom de la variable.
 
void addVariableRef (MeshMaterialVariableRef *var_ref) override
 Ajoute une référence à cette variable.
 
void removeVariableRef (MeshMaterialVariableRef *var_ref) override
 Supprime une référence à cette variable.
 
MeshMaterialVariableReffirstReference () const override
 
IVariablematerialVariable (IMeshMaterial *mat) override
 Variable contenant les valeurs spécifiques du matériau mat.
 
void setKeepOnChange (bool v) override
 Indique si on souhaite conserver la valeur de la variable apres un changement de la liste des matériaux.
 
bool keepOnChange () const override
 Indique si on souhaite conserver la valeur de la variable apres un changement de la liste des matériaux.
 
MatVarSpace space () const override
 Espace de définition de la variable (matériau+milieu ou milieu uniquement)
 
void update (IMeshMaterial *mat) override
 Recalcule la variable pour le matériau mat si nécessaire.
 
void setUpToDate (IMeshMaterial *mat) override
 Indique que la variable vient d'être mise à jour.
 
Int64 modifiedTime (IMeshMaterial *mat) override
 Temps auquel la variable a été mise à jour.
 
void addDepend (IMeshMaterialVariable *var) override
 Ajoute var à la liste des dépendances.
 
void addDepend (IMeshMaterialVariable *var, const TraceInfo &tinfo) override
 Ajoute var à la liste des dépendances avec les infos de trace tinfo.
 
void addDepend (IVariable *var) override
 Ajoute var à la liste des dépendances.
 
void addDepend (IVariable *var, const TraceInfo &tinfo) override
 Ajoute var à la liste des dépendances avec les infos de trace tinfo.
 
void removeDepend (IMeshMaterialVariable *var) override
 Supprime var de la liste des dépendances.
 
void removeDepend (IVariable *var) override
 Supprime var de la liste des dépendances.
 
void setComputeFunction (IMeshMaterialVariableComputeFunction *v) override
 Positionne la fonction de recalcule de la variable.
 
IMeshMaterialVariableComputeFunctioncomputeFunction () override
 Fonction utilisée pour mettre à jour la variable.
 
void dependInfos (Array< VariableDependInfo > &infos, Array< MeshMaterialVariableDependInfo > &mat_infos) override
 Infos de dépendances.
 
IMeshMaterialVariableInternal_internalApi () override
 
void incrementReference ()
 
Gestion des dépendances

Fonctions membres protégées

 ItemMaterialVariableScalar (const MaterialVariableBuildInfo &v, PrivatePartType *global_var, VariableRef *global_var_ref, MatVarSpace mvs)
 
ArrayView< ArrayView< DataType > > _containerView ()
 
- Fonctions membres protégées hérités de Arcane::Materials::ItemMaterialVariableBase< MaterialVariableScalarTraits< DataType > >
void _syncFromGlobalVariable ()
 
PrivatePartType * _trueGlobalVariable ()
 
void _init (ArrayView< PrivatePartType * > vars)
 
void _fillPartialValuesWithSuperValues (MeshComponentList components)
 
void _syncReferences (bool check_resize) override
 
void _resizeForIndexer (ResizeVariableIndexerArgs &args) override
 
void _copyHostViewsToViews (RunQueue *queue)
 
void _setView (Int32 index)
 Positionne les vues à partir du conteneur.
 
- Fonctions membres protégées hérités de Arcane::Materials::MeshMaterialVariable
ITraceMng_traceMng () const
 
void _copyToBuffer (SmallSpan< const MatVarIndex > matvar_indexes, Span< std::byte > bytes, RunQueue *queue) const
 
void _copyFromBuffer (SmallSpan< const MatVarIndex > matvar_indexes, Span< const std::byte > bytes, RunQueue *queue)
 

Fonctions membres privées

Int32 dataTypeSize () const override
 
void copyToBuffer (ConstArrayView< MatVarIndex > matvar_indexes, ByteArrayView bytes) const override
 
void copyFromBuffer (ConstArrayView< MatVarIndex > matvar_indexes, ByteConstArrayView bytes) override
 
void _synchronizeV1 ()
 
void _synchronizeV2 ()
 
void _synchronizeV5 ()
 
Int64 _synchronize2 ()
 
void _copyToBufferLegacy (SmallSpan< const MatVarIndex > matvar_indexes, Span< std::byte > bytes) const
 
void _copyFromBufferLegacy (SmallSpan< const MatVarIndex > matvar_indexes, Span< const std::byte > bytes)
 

Membres hérités additionnels

- Fonctions membres publiques statiques hérités de Arcane::Materials::MeshMaterialVariable
static void _genericCopyTo (Span< const std::byte > input, SmallSpan< const Int32 > input_indexes, Span< std::byte > output, SmallSpan< const Int32 > output_indexes, const RunQueue &queue, Int32 data_type_size)
 
- Attributs protégés hérités de Arcane::Materials::ItemMaterialVariableBase< MaterialVariableScalarTraits< DataType > >
PrivatePartType * m_global_variable
 
VariableRefm_global_variable_ref
 
UniqueArray< PrivatePartType * > m_vars
 Variables pour les différents matériaux.
 
UniqueArray< ContainerViewType > m_device_views
 Liste des vues visibles uniquement depuis l'accélérateur.
 
UniqueArray< ContainerViewType > m_host_views
 Liste des vues visibles uniquement depuis l'ĥote.
 
- Attributs protégés hérités de Arcane::Materials::MeshMaterialVariable
MeshMaterialVariablePrivatem_p = nullptr
 
UniqueArray< Span< std::byte > > m_views_as_bytes
 

Description détaillée

template<typename DataType>
class Arcane::Materials::ItemMaterialVariableScalar< DataType >

Variable scalaire sur un matériau du maillage.

Définition à la ligne 425 du fichier MeshMaterialVariable.h.

Documentation des définitions de type membres

◆ BaseClass

Définition à la ligne 430 du fichier MeshMaterialVariable.h.

◆ ContainerType

Définition à la ligne 437 du fichier MeshMaterialVariable.h.

◆ ContainerViewType

Définition à la ligne 434 du fichier MeshMaterialVariable.h.

◆ PrivatePartType

Définition à la ligne 435 du fichier MeshMaterialVariable.h.

◆ ThatClass

template<typename DataType >
using Arcane::Materials::ItemMaterialVariableScalar< DataType >::ThatClass = ItemMaterialVariableScalar<DataType>

Définition à la ligne 432 du fichier MeshMaterialVariable.h.

◆ Traits

Définition à la ligne 431 du fichier MeshMaterialVariable.h.

◆ ValueDataType

Définition à la ligne 436 du fichier MeshMaterialVariable.h.

◆ VariableRefType

Définition à la ligne 438 du fichier MeshMaterialVariable.h.

Documentation des constructeurs et destructeur

◆ ItemMaterialVariableScalar()

template<typename DataType >
Arcane::Materials::ItemMaterialVariableScalar< DataType >::ItemMaterialVariableScalar ( const MaterialVariableBuildInfo v,
PrivatePartType *  global_var,
VariableRef global_var_ref,
MatVarSpace  mvs 
)
protected

Définition à la ligne 135 du fichier MeshMaterialVariableScalar.cc.

Documentation des fonctions membres

◆ _containerView()

template<typename DataType >
ArrayView< ArrayView< DataType > > Arcane::Materials::ItemMaterialVariableScalar< DataType >::_containerView ( )
inlineprotected

Définition à la ligne 453 du fichier MeshMaterialVariable.h.

◆ _copyFromBufferLegacy()

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::_copyFromBufferLegacy ( SmallSpan< const MatVarIndex matvar_indexes,
Span< const std::byte >  bytes 
)
private

Définition à la ligne 313 du fichier MeshMaterialVariableScalar.cc.

◆ _copyToBufferLegacy()

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::_copyToBufferLegacy ( SmallSpan< const MatVarIndex matvar_indexes,
Span< std::byte >  bytes 
) const
private

Définition à la ligne 286 du fichier MeshMaterialVariableScalar.cc.

◆ _synchronize2()

template<typename DataType >
Int64 Arcane::Materials::ItemMaterialVariableScalar< DataType >::_synchronize2 ( )
private

Définition à la ligne 357 du fichier MeshMaterialVariableScalar.cc.

◆ _synchronizeV1()

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::_synchronizeV1 ( )
private

Définition à la ligne 403 du fichier MeshMaterialVariableScalar.cc.

◆ _synchronizeV2()

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::_synchronizeV2 ( )
private

Définition à la ligne 506 du fichier MeshMaterialVariableScalar.cc.

◆ _synchronizeV5()

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::_synchronizeV5 ( )
private

Définition à la ligne 581 du fichier MeshMaterialVariableScalar.cc.

◆ copyFromBuffer()

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::copyFromBuffer ( ConstArrayView< MatVarIndex matvar_indexes,
ByteConstArrayView  bytes 
)
overrideprivatevirtual

Implémente Arcane::Materials::MeshMaterialVariable.

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

◆ copyToBuffer()

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::copyToBuffer ( ConstArrayView< MatVarIndex matvar_indexes,
ByteArrayView  bytes 
) const
overrideprivatevirtual

Implémente Arcane::Materials::MeshMaterialVariable.

Définition à la ligne 302 du fichier MeshMaterialVariableScalar.cc.

◆ dataTypeSize()

template<typename DataType >
Int32 Arcane::Materials::ItemMaterialVariableScalar< DataType >::dataTypeSize ( ) const
overrideprivatevirtual

Implémente Arcane::Materials::MeshMaterialVariable.

Définition à la ligne 276 du fichier MeshMaterialVariableScalar.cc.

◆ dumpValues() [1/2]

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::dumpValues ( std::ostream &  ostr)
overridevirtual

Affiche les valeurs de la variable sur le flot ostr.

Implémente Arcane::Materials::IMeshMaterialVariable.

Définition à la ligne 683 du fichier MeshMaterialVariableScalar.cc.

Références Arcane::IItemFamily::allItems().

◆ dumpValues() [2/2]

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::dumpValues ( std::ostream &  ostr,
AllEnvCellVectorView  view 
)
overridevirtual

Affiche les valeurs de la variable pour la vue view sur le flot ostr.

Implémente Arcane::Materials::IMeshMaterialVariable.

Définition à la ligne 661 du fichier MeshMaterialVariableScalar.cc.

Références ENUMERATE_ALLENVCELL.

◆ fillFromArray() [1/2]

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::fillFromArray ( IMeshMaterial mat,
ConstArrayView< DataType >  values 
)

Remplit les valeurs de la variable pour un matériau à partir d'un tableau.

Cette méthode effectue l'opération suivante:

Integer index=0;
matvar[imatcell] = values[index];
++index;
}
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120
#define ENUMERATE_MATCELL(iname, mat)
Macro pour itérer sur toutes les mailles d'un matériau.

Définition à la ligne 161 du fichier MeshMaterialVariableScalar.cc.

Références ENUMERATE_COMPONENTITEM.

◆ fillFromArray() [2/2]

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::fillFromArray ( IMeshMaterial mat,
ConstArrayView< DataType >  values,
Int32ConstArrayView  indexes 
)

Remplit les valeurs de la variable pour un matériau à partir d'un tableau.

Cette méthode effectue l'opération suivante:

Integer index=0;
matvar[imatcell] = values[index];
++index;
}

Définition à la ligne 189 du fichier MeshMaterialVariableScalar.cc.

Références Arccore::ConstArrayView< T >::size().

◆ fillPartialValues()

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::fillPartialValues ( const DataType &  value)

Remplit les valeurs partielles avec la valeur value.

Définition à la ligne 260 du fichier MeshMaterialVariableScalar.cc.

◆ fillToArray() [1/2]

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::fillToArray ( IMeshMaterial mat,
ArrayView< DataType >  values 
)

Remplit un tableau à partir des valeurs de la variable pour un matériau.

Cette méthode effectue l'opération suivante:

Integer index=0;
values[index] = matvar[imatcell];
++index;
}

Définition à la ligne 216 du fichier MeshMaterialVariableScalar.cc.

Références ENUMERATE_COMPONENTITEM.

◆ fillToArray() [2/2]

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::fillToArray ( IMeshMaterial mat,
ArrayView< DataType >  values,
Int32ConstArrayView  indexes 
)

Remplit un tableau à partir des valeurs de la variable pour un matériau.

Cette méthode effectue l'opération suivante:

Integer index=0;
values[index] = matvar[imatcell];
++index;
}

Définition à la ligne 243 du fichier MeshMaterialVariableScalar.cc.

Références Arccore::ConstArrayView< T >::size().

◆ operator[]()

template<typename DataType >
DataType Arcane::Materials::ItemMaterialVariableScalar< DataType >::operator[] ( MatVarIndex  mvi) const
inline

Définition à la ligne 457 du fichier MeshMaterialVariable.h.

◆ serialize()

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::serialize ( ISerializer sbuffer,
Int32ConstArrayView  ids 
)
overridevirtual

◆ synchronize() [1/2]

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::synchronize ( )
overridevirtual

Synchronise la variable.

La synchronisation se fait sur tous les matériaux de la maille. Il est indispensable que toutes mailles fantômes aient déjà le bon nombre de matériaux.

Implémente Arcane::Materials::IMeshMaterialVariable.

Définition à la ligne 340 du fichier MeshMaterialVariableScalar.cc.

Références Arcane::IParallelMng::stat(), et Arcane::IParallelMng::timerMng().

◆ synchronize() [2/2]

template<typename DataType >
void Arcane::Materials::ItemMaterialVariableScalar< DataType >::synchronize ( MeshMaterialVariableSynchronizerList sync_list)
overridevirtual

Implémente Arcane::Materials::IMeshMaterialVariable.

Définition à la ligne 388 du fichier MeshMaterialVariableScalar.cc.

◆ views()

template<typename DataType >
ArrayView< DataType > * Arcane::Materials::ItemMaterialVariableScalar< DataType >::views ( )
inline

Définition à la ligne 449 du fichier MeshMaterialVariable.h.


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