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

Implémentation d'un gestion des matériaux. Plus de détails...

#include <arcane/materials/internal/MeshMaterialMng.h>

+ Graphe d'héritage de Arcane::Materials::MeshMaterialMng:
+ Graphe de collaboration de Arcane::Materials::MeshMaterialMng:

Classes

class  InternalApi
 
class  RunnerInfo
 Informations sur la file d'exécution utilisée. Plus de détails...
 

Fonctions membres publiques

 MeshMaterialMng (const MeshHandle &mesh_handle, const String &name)
 
void build ()
 
IMeshmesh () override
 Maillage associé.
 
ITraceMngtraceMng () override
 Gestionnaire de traces.
 
MeshMaterialInforegisterMaterialInfo (const String &name) override
 Enregistre les infos du matériau de nom name.
 
IMeshEnvironmentcreateEnvironment (const MeshEnvironmentBuildInfo &infos) override
 Création d'un milieu.
 
IMeshBlockcreateBlock (const MeshBlockBuildInfo &infos) override
 Créé un bloc.
 
void addEnvironmentToBlock (IMeshBlock *block, IMeshEnvironment *env) override
 Ajoute un milieu à un bloc existant.
 
void removeEnvironmentToBlock (IMeshBlock *block, IMeshEnvironment *env) override
 Supprime un milieu à un bloc existant.
 
void endCreate (bool is_continue) override
 Indique qu'on a fini de créer les milieux.
 
void setDataInitialisationWithZero (bool v) override
 Indique comment initialiser les nouvelles valeurs dans les mailles matériaux et milieux.
 
bool isDataInitialisationWithZero () const override
 Indique comment initialiser les nouvelles valeurs dans les mailles matériaux et milieux.
 
void setKeepValuesAfterChange (bool v) override
 Positionne la sauvegarde des valeurs entre deux modifications des matériaux.
 
bool isKeepValuesAfterChange () const override
 Indique si les valeurs des variables sont conservées entre les modifications.
 
void setMeshModificationNotified (bool v) override
 Indique si les milieux et matériaux suivent les changements de topologie dans le maillage.
 
bool isMeshModificationNotified () const override
 Indique si les milieux et matériaux suivent les changements de topologie dans le maillage.
 
void setModificationFlags (int v) override
 Positionner les flags pour paramêtrer les modifications de matériaux/milieux.
 
int modificationFlags () const override
 Flags pour paramêtrer les modifications.
 
void setAllocateScalarEnvironmentVariableAsMaterial (bool v) override
 Positionne l'option indiquant si les variables scalaires milieux sont allouées sur les matériaux.
 
bool isAllocateScalarEnvironmentVariableAsMaterial () const override
 Indique si les variables scalaires milieux sont allouées sur les matériaux.
 
void setDataCompressorServiceName (const String &name) override
 
String dataCompressorServiceName () const override
 virtual Nom du service utilisé pour compresser les données
 
String name () const override
 Nom du gestionnaire.
 
ConstArrayView< IMeshMaterial * > materials () const override
 Liste des matériaux.
 
ConstArrayView< IMeshComponent * > materialsAsComponents () const override
 Liste des matériaux vus comme composants.
 
ConstArrayView< IMeshEnvironment * > environments () const override
 Liste des milieux.
 
ConstArrayView< IMeshComponent * > environmentsAsComponents () const override
 Liste des milieux vus comme composants.
 
ConstArrayView< IMeshComponent * > components () const override
 Liste de tous les composants.
 
ConstArrayView< IMeshBlock * > blocks () const override
 Liste des blocs.
 
IMeshEnvironmentfindEnvironment (const String &name, bool throw_exception=true) override
 Retourne le milieux de nom name.
 
IMeshBlockfindBlock (const String &name, bool throw_exception=true) override
 Retourne le bloc de nom name.
 
void fillWithUsedVariables (Array< IMeshMaterialVariable * > &variables) override
 Remplit le tableau variables avec la liste des variables matériaux utilisés.
 
IMeshMaterialVariablefindVariable (const String &name) override
 Variable de nom name ou nullptr si aucune de ce nom existe.
 
IMeshMaterialVariablecheckVariable (IVariable *global_var) override
 Variable aux matériaux associé à la variable global global_var (nullptr si aucune)
 
void dumpInfos (std::ostream &o) override
 Ecrit les infos des matériaux et milieux sur le flot o.
 
void dumpCellInfos (Cell cell, std::ostream &o) override
 Ecrit les infos de la maille cell sur le flot o.
 
void checkValid () override
 Vérifie la validité des structures internes.
 
void forceRecompute () override
 Force le recalcul des informations des matériaux.
 
MutexvariableLock () override
 Verrou utilisé pour le multi-threading.
 
bool synchronizeMaterialsInCells () override
 Synchronise les mailles des matériaux.
 
void checkMaterialsInCells (Integer max_print) override
 Vérifie que les mailles des matériaux sont cohérentes entre les sous-domaines.
 
Int64 timestamp () const override
 Compteur du nombre de modifications de la liste des matériaux et des milieux.
 
ConstArrayView< MeshEnvironment * > trueEnvironments () const
 
ConstArrayView< MeshMaterial * > trueMaterials () const
 
Int32 nbVariable () const
 
AllEnvCellVectorView _view (SmallSpan< const Int32 > cells_local_id)
 
AllEnvCellVectorView view (const CellGroup &cells) final
 Vue sur les mailles milieux correspondant au groupe cells.
 
AllEnvCellVectorView view (CellVectorView cells) final
 Vue sur les mailles milieux correspondant au groupe cells.
 
AllEnvCellVectorView view (SmallSpan< const Int32 > cells_local_id) final
 Vue sur les mailles milieux correspondant aux mailles de numéro locaux cells_local_id.
 
CellToAllEnvCellConverter cellToAllEnvCellConverter () override
 Créée une instance pour convertir de 'Cell' en 'AllEnvCell'.
 
void recreateFromDump () override
 Recréé les infos des matériaux et milieux à partir des infos de la protection.
 
void visitVariables (IFunctorWithArgumentT< IMeshMaterialVariable * > *functor) override
 Applique le fonctor functor sur l'ensemble des variables matériaux.
 
void setSynchronizeVariableVersion (Integer version) override
 Positionne la version de l'implémentation pour la synchronisation des variables matériaux.
 
Integer synchronizeVariableVersion () const override
 Version de l'implémentation pour la synchronisation des variables matériaux.
 
bool isInMeshMaterialExchange () const override
 Vrai si on est en train de faire un échange de maillage avec gestion des matériaux.
 
IMeshMaterialVariableFactoryMngvariableFactoryMng () const override
 Interface de la fabrique de variables.
 
void setUseMaterialValueWhenRemovingPartialValue (bool v) override
 Indique si on utilise la valeur matériau ou milieu lorsqu'on transforme une maille partielle en maille pure.
 
bool isUseMaterialValueWhenRemovingPartialValue () const override
 
AllEnvDataallEnvData ()
 
ComponentItemSharedInfocomponentItemSharedInfo (Int32 level) const
 
void syncVariablesReferences (bool check_resize)
 Met à jour les références des variables.
 
void incrementTimestamp ()
 
void dumpInfos2 (std::ostream &o)
 
const MeshHandlemeshHandle () const
 
void enableCellToAllEnvCellForRunCommand (bool is_enable, bool force_create=false) override
 Active ou désactive la construction et la mise à jour de la table de "connectivité" CellLocalId -> AllEnvCell pour les RUNCOMMAND.
 
bool isCellToAllEnvCellForRunCommand () const override
 
IMeshMaterialMngInternal_internalApi () const override
 API interne à Arcane.
 
Runnerrunner () const
 
RunQueuerunQueue () const
 
Accelerator::RunQueuePoolasyncRunQueuePool () const
 
Real additionalCapacityRatio () const
 
- Fonctions membres publiques hérités de Arccore::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
 

Types privés

using FullNameVariableMap = std::map< String, IMeshMaterialVariable * >
 Type de la liste des variables par nom complet.
 
using FullNameVariablePair = FullNameVariableMap::value_type
 Paire de la liste des variables par nom complet.
 
using VariableToMaterialVariableMap = std::map< IVariable *, IMeshMaterialVariable * >
 
using VariableToMaterialVariablePair = VariableToMaterialVariableMap::value_type
 

Fonctions membres privées

AllCellToAllEnvCellgetAllCellToAllEnvCell () const
 
void createAllCellToAllEnvCell ()
 
void _endUpdate ()
 Remise à jour des structures suite à une modification des mailles de matériaux ou de milieux.
 
IMeshMaterialVariable_findVariableFullyQualified (const String &name)
 
MeshMaterialInfo_findMaterialInfo (const String &name)
 
MeshEnvironment_findEnvironment (const String &name)
 
MeshBlock_findBlock (const String &name)
 
MeshMaterial_createMaterial (MeshEnvironment *env, MeshMaterialInfo *infos, const String &name)
 Création d'un matériau.
 
void _addVariableIndexer (MeshMaterialVariableIndexer *var_idx)
 
void _checkEndCreate ()
 
void _addVariableUnlocked (IMeshMaterialVariable *var)
 
void _saveInfosInProperties ()
 
void _checkCreateProperties ()
 
void _onMeshDestroyed ()
 
void _unregisterAllVariables ()
 
void _addVariable (IMeshMaterialVariable *var)
 
void _removeVariable (IMeshMaterialVariable *var)
 
MeshMaterialModifierImpl_modifier ()
 
ConstArrayView< MeshMaterialVariableIndexer * > _variablesIndexer ()
 
IMeshMaterialVariableSynchronizer_allCellsMatEnvSynchronizer () override
 Synchronizeur pour les variables matériaux et milieux sur toutes les mailles.
 
IMeshMaterialVariableSynchronizer_allCellsEnvOnlySynchronizer () override
 Synchronizeur pour les variables uniquement milieux sur toutes les mailles.
 
void _dumpStats ()
 

Attributs privés

MeshHandle m_mesh_handle
 
std::unique_ptr< InternalApim_internal_api
 
IVariableMngm_variable_mng = nullptr
 
String m_name
 
bool m_is_end_create = false
 
bool m_is_verbose = false
 
bool m_keep_values_after_change = true
 
bool m_is_data_initialisation_with_zero = false
 
bool m_is_mesh_modification_notified = false
 
bool m_is_allocate_scalar_environment_variable_as_material = false
 
bool m_is_use_material_value_when_removing_partial_value = false
 
int m_modification_flags = 0
 
Real m_additional_capacity_ratio = 0.05
 
Mutex m_variable_lock
 
std::unique_ptr< MeshMaterialModifierImplm_modifier
 
UniqueArray< MeshMaterialInfo * > m_materials_info
 
UniqueArray< IMeshMaterial * > m_materials
 
UniqueArray< IMeshComponent * > m_materials_as_components
 
UniqueArray< MeshMaterial * > m_true_materials
 
UniqueArray< IMeshEnvironment * > m_environments
 
UniqueArray< IMeshComponent * > m_environments_as_components
 
UniqueArray< IMeshComponent * > m_components
 
UniqueArray< MeshEnvironment * > m_true_environments
 
UniqueArray< IMeshBlock * > m_blocks
 
UniqueArray< MeshBlock * > m_true_blocks
 
UniqueArray< MeshMaterialVariableIndexer * > m_variables_indexer
 
UniqueArray< MeshMaterialVariableIndexer * > m_variables_indexer_to_destroy
 
FullNameVariableMap m_full_name_variable_map
 
VariableToMaterialVariableMap m_var_to_mat_var_map
 
std::unique_ptr< Propertiesm_properties
 
std::unique_ptr< AllEnvDatam_all_env_data
 
Int64 m_timestamp = 0
 Compteur du nombre de modifications des matériaux.
 
std::unique_ptr< IMeshMaterialVariableSynchronizerm_all_cells_mat_env_synchronizer
 
std::unique_ptr< IMeshMaterialVariableSynchronizerm_all_cells_env_only_synchronizer
 
Integer m_synchronize_variable_version = 1
 
std::unique_ptr< MeshMaterialExchangeMngm_exchange_mng
 
IMeshMaterialVariableFactoryMngm_variable_factory_mng = nullptr
 
std::unique_ptr< ObserverPoolm_observer_pool
 
String m_data_compressor_service_name
 
MeshMaterialSynchronizerm_mms = nullptr
 
std::unique_ptr< RunnerInfom_runner_info
 
UniqueArray< AllCellToAllEnvCellm_all_cell_to_all_env_cell
 Contient une instance de AllCellToAllEnvCell.
 
AllCellToAllEnvCellm_allcell_2_allenvcell = nullptr
 
bool m_is_allcell_2_allenvcell = false
 
bool m_is_use_accelerator_for_constituent_item_vector = true
 

Amis

class MeshMaterialBackup
 

Membres hérités additionnels

- Fonctions membres publiques statiques hérités de Arcane::Materials::IMeshMaterialMng
static IMeshMaterialMnggetReference (const MeshHandleOrMesh &mesh_handle, bool create=true)
 Récupère ou créé la référence associée à mesh.
 
static Ref< IMeshMaterialMnggetTrueReference (const MeshHandle &mesh_handle, bool create=true)
 Récupère ou créé la référence associée à mesh.
 
- Fonctions membres protégées hérités de Arccore::TraceAccessor
void _setLocalVerboseLevel (Int32 v)
 
Int32 _localVerboseLevel () const
 

Description détaillée

Implémentation d'un gestion des matériaux.

Définition à la ligne 60 du fichier MeshMaterialMng.h.

Documentation des définitions de type membres

◆ FullNameVariableMap

Type de la liste des variables par nom complet.

Définition à la ligne 328 du fichier MeshMaterialMng.h.

◆ FullNameVariablePair

using Arcane::Materials::MeshMaterialMng::FullNameVariablePair = FullNameVariableMap::value_type
private

Paire de la liste des variables par nom complet.

Définition à la ligne 330 du fichier MeshMaterialMng.h.

◆ VariableToMaterialVariableMap

using Arcane::Materials::MeshMaterialMng::VariableToMaterialVariableMap = std::map<IVariable*,IMeshMaterialVariable*>
private

Définition à la ligne 332 du fichier MeshMaterialMng.h.

◆ VariableToMaterialVariablePair

using Arcane::Materials::MeshMaterialMng::VariableToMaterialVariablePair = VariableToMaterialVariableMap::value_type
private

Définition à la ligne 333 du fichier MeshMaterialMng.h.

Documentation des constructeurs et destructeur

◆ MeshMaterialMng()

Arcane::Materials::MeshMaterialMng::MeshMaterialMng ( const MeshHandle mesh_handle,
const String name 
)

Définition à la ligne 126 du fichier MeshMaterialMng.cc.

◆ ~MeshMaterialMng()

Arcane::Materials::MeshMaterialMng::~MeshMaterialMng ( )
override

Définition à la ligne 151 du fichier MeshMaterialMng.cc.

Documentation des fonctions membres

◆ _addVariable()

void Arcane::Materials::MeshMaterialMng::_addVariable ( IMeshMaterialVariable var)
private

Définition à la ligne 838 du fichier MeshMaterialMng.cc.

◆ _addVariableIndexer()

void Arcane::Materials::MeshMaterialMng::_addVariableIndexer ( MeshMaterialVariableIndexer var_idx)
private

Définition à la ligne 333 du fichier MeshMaterialMng.cc.

◆ _allCellsEnvOnlySynchronizer()

IMeshMaterialVariableSynchronizer * Arcane::Materials::MeshMaterialMng::_allCellsEnvOnlySynchronizer ( )
inlineoverrideprivatevirtual

Synchronizeur pour les variables uniquement milieux sur toutes les mailles.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 421 du fichier MeshMaterialMng.h.

Référencé par Arcane::Materials::MeshMaterialMng::InternalApi::allCellsEnvOnlySynchronizer().

◆ _allCellsMatEnvSynchronizer()

IMeshMaterialVariableSynchronizer * Arcane::Materials::MeshMaterialMng::_allCellsMatEnvSynchronizer ( )
inlineoverrideprivatevirtual

Synchronizeur pour les variables matériaux et milieux sur toutes les mailles.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 417 du fichier MeshMaterialMng.h.

Référencé par Arcane::Materials::MeshMaterialMng::InternalApi::allCellsMatEnvSynchronizer().

◆ _checkCreateProperties()

void Arcane::Materials::MeshMaterialMng::_checkCreateProperties ( )
private

Définition à la ligne 1092 du fichier MeshMaterialMng.cc.

◆ _checkEndCreate()

void Arcane::Materials::MeshMaterialMng::_checkEndCreate ( )
private

Définition à la ligne 1014 du fichier MeshMaterialMng.cc.

◆ _createMaterial()

MeshMaterial * Arcane::Materials::MeshMaterialMng::_createMaterial ( MeshEnvironment env,
MeshMaterialInfo infos,
const String name 
)
private

Création d'un matériau.

Créé un matériau de nom name, dans le milieu env, avec les infos infos.

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

Références ARCANE_FATAL, et Arcane::Materials::MeshMaterialInfo::materialMng().

◆ _dumpStats()

void Arcane::Materials::MeshMaterialMng::_dumpStats ( )
private

Définition à la ligne 1303 du fichier MeshMaterialMng.cc.

◆ _endUpdate()

void Arcane::Materials::MeshMaterialMng::_endUpdate ( )
private

Remise à jour des structures suite à une modification des mailles de matériaux ou de milieux.

Définition à la ligne 671 du fichier MeshMaterialMng.cc.

◆ _findBlock()

MeshBlock * Arcane::Materials::MeshMaterialMng::_findBlock ( const String name)
private

Définition à la ligne 647 du fichier MeshMaterialMng.cc.

◆ _findEnvironment()

MeshEnvironment * Arcane::Materials::MeshMaterialMng::_findEnvironment ( const String name)
private

Définition à la ligne 621 du fichier MeshMaterialMng.cc.

◆ _findMaterialInfo()

MeshMaterialInfo * Arcane::Materials::MeshMaterialMng::_findMaterialInfo ( const String name)
private

Définition à la ligne 595 du fichier MeshMaterialMng.cc.

◆ _findVariableFullyQualified()

IMeshMaterialVariable * Arcane::Materials::MeshMaterialMng::_findVariableFullyQualified ( const String name)
private

Définition à la ligne 797 du fichier MeshMaterialMng.cc.

◆ _internalApi()

IMeshMaterialMngInternal * Arcane::Materials::MeshMaterialMng::_internalApi ( ) const
inlineoverridevirtual

◆ _modifier()

MeshMaterialModifierImpl * Arcane::Materials::MeshMaterialMng::_modifier ( )
private

Définition à la ligne 586 du fichier MeshMaterialMng.cc.

◆ _onMeshDestroyed()

void Arcane::Materials::MeshMaterialMng::_onMeshDestroyed ( )
private

Définition à la ligne 1244 du fichier MeshMaterialMng.cc.

◆ _removeVariable()

void Arcane::Materials::MeshMaterialMng::_removeVariable ( IMeshMaterialVariable var)
private

Définition à la ligne 851 du fichier MeshMaterialMng.cc.

◆ _saveInfosInProperties()

void Arcane::Materials::MeshMaterialMng::_saveInfosInProperties ( )
private

Définition à la ligne 1106 du fichier MeshMaterialMng.cc.

◆ _unregisterAllVariables()

void Arcane::Materials::MeshMaterialMng::_unregisterAllVariables ( )
private

Définition à la ligne 1259 du fichier MeshMaterialMng.cc.

◆ _variablesIndexer()

ConstArrayView< MeshMaterialVariableIndexer * > Arcane::Materials::MeshMaterialMng::_variablesIndexer ( )
inlineprivate

Définition à la ligne 413 du fichier MeshMaterialMng.h.

◆ _view()

AllEnvCellVectorView Arcane::Materials::MeshMaterialMng::_view ( SmallSpan< const Int32 >  cells_local_id)

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

◆ addEnvironmentToBlock()

void Arcane::Materials::MeshMaterialMng::addEnvironmentToBlock ( IMeshBlock block,
IMeshEnvironment env 
)
overridevirtual

Ajoute un milieu à un bloc existant.

Ajoute le milieu env au bloc block.

La modification d'un bloc ne peut avoir lieu que lors de l'initialisation, (donc avant l'appel à endCreate()).

Avertissement
Cette méthode ne modifie pas le groupe block->cells() et c'est donc à l'appelant d'ajouter au groupe les mailles du milieu si besoin.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 479 du fichier MeshMaterialMng.cc.

Références ARCANE_CHECK_POINTER.

◆ additionalCapacityRatio()

Real Arcane::Materials::MeshMaterialMng::additionalCapacityRatio ( ) const
inline

Définition à la ligne 317 du fichier MeshMaterialMng.h.

◆ allEnvData()

AllEnvData * Arcane::Materials::MeshMaterialMng::allEnvData ( )
inline

Définition à la ligne 292 du fichier MeshMaterialMng.h.

◆ asyncRunQueuePool()

Accelerator::RunQueuePool & Arcane::Materials::MeshMaterialMng::asyncRunQueuePool ( ) const
inline

Définition à la ligne 316 du fichier MeshMaterialMng.h.

◆ blocks()

ConstArrayView< IMeshBlock * > Arcane::Materials::MeshMaterialMng::blocks ( ) const
inlineoverridevirtual

Liste des blocs.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 208 du fichier MeshMaterialMng.h.

◆ build()

void Arcane::Materials::MeshMaterialMng::build ( )

Définition à la ligne 201 du fichier MeshMaterialMng.cc.

◆ cellToAllEnvCellConverter()

CellToAllEnvCellConverter Arcane::Materials::MeshMaterialMng::cellToAllEnvCellConverter ( )
overridevirtual

Créée une instance pour convertir de 'Cell' en 'AllEnvCell'.

Implémente Arcane::Materials::IMeshMaterialMng.

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

◆ checkMaterialsInCells()

void Arcane::Materials::MeshMaterialMng::checkMaterialsInCells ( Integer  max_print)
overridevirtual

Vérifie que les mailles des matériaux sont cohérentes entre les sous-domaines.

Cette méthode permet de vérifier que toutes les mailles fantômes de notre sous-domaine ont bien la même liste de matériaux que les mailles propres associées.

En cas d'erreur, on affiche la liste des mailles qui ne sont pas cohérentes et on lève une exception de type FatalErrorException.

max_print indique en cas d'erreur le nombre maximal d'erreur à afficher. S'il est négatif, on affiche toutes les mailles.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 976 du fichier MeshMaterialMng.cc.

◆ checkValid()

void Arcane::Materials::MeshMaterialMng::checkValid ( )
overridevirtual

Vérifie la validité des structures internes.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 713 du fichier MeshMaterialMng.cc.

Références ARCANE_FATAL, ENUMERATE_ALLENVCELL, Arcane::Item::localId(), et Arcane::Item::uniqueId().

Référencé par Arcane::Materials::AllEnvData::forceRecompute().

◆ checkVariable()

IMeshMaterialVariable * Arcane::Materials::MeshMaterialMng::checkVariable ( IVariable global_var)
overridevirtual

Variable aux matériaux associé à la variable global global_var (nullptr si aucune)

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 809 du fichier MeshMaterialMng.cc.

◆ componentItemSharedInfo()

ComponentItemSharedInfo * Arcane::Materials::MeshMaterialMng::componentItemSharedInfo ( Int32  level) const

Définition à la ligne 1283 du fichier MeshMaterialMng.cc.

◆ components()

ConstArrayView< IMeshComponent * > Arcane::Materials::MeshMaterialMng::components ( ) const
inlineoverridevirtual

Liste de tous les composants.

Cette liste est la concaténation de environmentsAsComponents() et materialsAsComponents(). Elle n'est valide qu'une fois endCreate() appelé.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 207 du fichier MeshMaterialMng.h.

◆ createAllCellToAllEnvCell()

void Arcane::Materials::MeshMaterialMng::createAllCellToAllEnvCell ( )
private

Définition à la ligne 1328 du fichier MeshMaterialMng.cc.

◆ createBlock()

IMeshBlock * Arcane::Materials::MeshMaterialMng::createBlock ( const MeshBlockBuildInfo infos)
overridevirtual

Créé un bloc.

Créé un bloc avec les infos infos.

La création d'un bloc ne peut avoir lieu que lors de l'initialisation, (donc avant l'appel à endCreate()), mais après la création des milieux.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 449 du fichier MeshMaterialMng.cc.

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

◆ createEnvironment()

IMeshEnvironment * Arcane::Materials::MeshMaterialMng::createEnvironment ( const MeshEnvironmentBuildInfo infos)
overridevirtual

Création d'un milieu.

Les infos du milieu sont données par la structure infos. En même temps que le milieu sont créés tous les matériaux le constituant.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 395 du fichier MeshMaterialMng.cc.

Références ARCANE_FATAL, Arcane::Materials::MeshEnvironment::build(), Arcane::Materials::MeshEnvironmentBuildInfo::materials(), Arcane::Materials::MeshEnvironment::materials(), Arcane::Materials::MeshEnvironmentBuildInfo::name(), et Arcane::Materials::MeshEnvironment::name().

◆ dataCompressorServiceName()

String Arcane::Materials::MeshMaterialMng::dataCompressorServiceName ( ) const
inlineoverridevirtual

virtual Nom du service utilisé pour compresser les données

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 200 du fichier MeshMaterialMng.h.

◆ dumpCellInfos()

void Arcane::Materials::MeshMaterialMng::dumpCellInfos ( Cell  cell,
std::ostream &  o 
)
overridevirtual

Ecrit les infos de la maille cell sur le flot o.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 985 du fichier MeshMaterialMng.cc.

Références ENUMERATE_CELL_ENVCELL, et ENUMERATE_CELL_MATCELL.

◆ dumpInfos()

void Arcane::Materials::MeshMaterialMng::dumpInfos ( std::ostream &  o)
overridevirtual

Ecrit les infos des matériaux et milieux sur le flot o.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 864 du fichier MeshMaterialMng.cc.

◆ dumpInfos2()

void Arcane::Materials::MeshMaterialMng::dumpInfos2 ( std::ostream &  o)

Définition à la ligne 904 du fichier MeshMaterialMng.cc.

◆ enableCellToAllEnvCellForRunCommand()

void Arcane::Materials::MeshMaterialMng::enableCellToAllEnvCellForRunCommand ( bool  is_enable,
bool  force_create = false 
)
inlineoverridevirtual

Active ou désactive la construction et la mise à jour de la table de "connectivité" CellLocalId -> AllEnvCell pour les RUNCOMMAND.

On peut activer également par la variable d'environnement ARCANE_ALLENVCELL_FOR_RUNCOMMAND. En option, on peut forcer la création de la table, ce qui peut être util lors d'un appel tardif de cette méthode par rapport à celui du ForceRecompute()

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 301 du fichier MeshMaterialMng.h.

◆ endCreate()

void Arcane::Materials::MeshMaterialMng::endCreate ( bool  is_continue)
overridevirtual

Indique qu'on a fini de créer les milieux.

L'instance n'est pas utilisable tant que cette méthode n'a pas été appelée.

Si is_continue est vrai, recontruit pour chaque matériau et milieu la liste de leurs mailles à partir des informations de reprise.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 499 du fichier MeshMaterialMng.cc.

◆ environments()

ConstArrayView< IMeshEnvironment * > Arcane::Materials::MeshMaterialMng::environments ( ) const
inlineoverridevirtual

Liste des milieux.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 205 du fichier MeshMaterialMng.h.

◆ environmentsAsComponents()

ConstArrayView< IMeshComponent * > Arcane::Materials::MeshMaterialMng::environmentsAsComponents ( ) const
inlineoverridevirtual

Liste des milieux vus comme composants.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 206 du fichier MeshMaterialMng.h.

◆ fillWithUsedVariables()

void Arcane::Materials::MeshMaterialMng::fillWithUsedVariables ( Array< IMeshMaterialVariable * > &  variables)
overridevirtual

Remplit le tableau variables avec la liste des variables matériaux utilisés.

La tableau variables est vidé avant l'appel.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 821 du fichier MeshMaterialMng.cc.

◆ findBlock()

IMeshBlock * Arcane::Materials::MeshMaterialMng::findBlock ( const String name,
bool  throw_exception = true 
)
overridevirtual

Retourne le bloc de nom name.

Si aucune bloc de ce nom n'existe, retourne null si throw_exception est false et lève une exception si throw_exception vaut true.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 633 du fichier MeshMaterialMng.cc.

Références ARCANE_FATAL.

◆ findEnvironment()

IMeshEnvironment * Arcane::Materials::MeshMaterialMng::findEnvironment ( const String name,
bool  throw_exception = true 
)
overridevirtual

Retourne le milieux de nom name.

Si aucune milieu de ce nom n'existe, retourne null si throw_exception est false et lève une exception si throw_exception vaut true.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 607 du fichier MeshMaterialMng.cc.

Références ARCANE_FATAL.

◆ findVariable()

IMeshMaterialVariable * Arcane::Materials::MeshMaterialMng::findVariable ( const String name)
overridevirtual

Variable de nom name ou nullptr si aucune de ce nom existe.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 774 du fichier MeshMaterialMng.cc.

◆ forceRecompute()

void Arcane::Materials::MeshMaterialMng::forceRecompute ( )
overridevirtual

Force le recalcul des informations des matériaux.

Cette méthode permet de forcer le recalcul les informations sur les mailles mixtes par exemple suite à un changement de maillage. Il s'agit d'une méthode temporaire qui sera supprimée à terme. Les valeurs mixtes sont invalidés après appel à cette méthode.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 659 du fichier MeshMaterialMng.cc.

◆ getAllCellToAllEnvCell()

AllCellToAllEnvCell * Arcane::Materials::MeshMaterialMng::getAllCellToAllEnvCell ( ) const
inlineprivate

Définition à la ligne 322 du fichier MeshMaterialMng.h.

◆ incrementTimestamp()

void Arcane::Materials::MeshMaterialMng::incrementTimestamp ( )
inline

Définition à la ligne 296 du fichier MeshMaterialMng.h.

◆ isAllocateScalarEnvironmentVariableAsMaterial()

bool Arcane::Materials::MeshMaterialMng::isAllocateScalarEnvironmentVariableAsMaterial ( ) const
inlineoverridevirtual

Indique si les variables scalaires milieux sont allouées sur les matériaux.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 194 du fichier MeshMaterialMng.h.

◆ isCellToAllEnvCellForRunCommand()

bool Arcane::Materials::MeshMaterialMng::isCellToAllEnvCellForRunCommand ( ) const
inlineoverridevirtual

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 307 du fichier MeshMaterialMng.h.

◆ isDataInitialisationWithZero()

bool Arcane::Materials::MeshMaterialMng::isDataInitialisationWithZero ( ) const
inlineoverridevirtual

Indique comment initialiser les nouvelles valeurs dans les mailles matériaux et milieux.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 182 du fichier MeshMaterialMng.h.

◆ isInMeshMaterialExchange()

bool Arcane::Materials::MeshMaterialMng::isInMeshMaterialExchange ( ) const
overridevirtual

Vrai si on est en train de faire un échange de maillage avec gestion des matériaux.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 1083 du fichier MeshMaterialMng.cc.

◆ isKeepValuesAfterChange()

bool Arcane::Materials::MeshMaterialMng::isKeepValuesAfterChange ( ) const
inlineoverridevirtual

Indique si les valeurs des variables sont conservées entre les modifications.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 185 du fichier MeshMaterialMng.h.

◆ isMeshModificationNotified()

bool Arcane::Materials::MeshMaterialMng::isMeshModificationNotified ( ) const
inlineoverridevirtual

Indique si les milieux et matériaux suivent les changements de topologie dans le maillage.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 188 du fichier MeshMaterialMng.h.

◆ isUseMaterialValueWhenRemovingPartialValue()

bool Arcane::Materials::MeshMaterialMng::isUseMaterialValueWhenRemovingPartialValue ( ) const
inlineoverridevirtual

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 285 du fichier MeshMaterialMng.h.

◆ materials()

ConstArrayView< IMeshMaterial * > Arcane::Materials::MeshMaterialMng::materials ( ) const
inlineoverridevirtual

Liste des matériaux.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 203 du fichier MeshMaterialMng.h.

Référencé par Arcane::Materials::AllEnvData::forceRecompute().

◆ materialsAsComponents()

ConstArrayView< IMeshComponent * > Arcane::Materials::MeshMaterialMng::materialsAsComponents ( ) const
inlineoverridevirtual

Liste des matériaux vus comme composants.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 204 du fichier MeshMaterialMng.h.

◆ mesh()

IMesh * Arcane::Materials::MeshMaterialMng::mesh ( )
inlineoverridevirtual

◆ meshHandle()

const MeshHandle & Arcane::Materials::MeshMaterialMng::meshHandle ( ) const
inline

Définition à la ligne 299 du fichier MeshMaterialMng.h.

◆ modificationFlags()

int Arcane::Materials::MeshMaterialMng::modificationFlags ( ) const
inlineoverridevirtual

Flags pour paramêtrer les modifications.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 191 du fichier MeshMaterialMng.h.

◆ name()

String Arcane::Materials::MeshMaterialMng::name ( ) const
inlineoverridevirtual

Nom du gestionnaire.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 202 du fichier MeshMaterialMng.h.

◆ nbVariable()

Int32 Arcane::Materials::MeshMaterialMng::nbVariable ( ) const
inline

Définition à la ligne 237 du fichier MeshMaterialMng.h.

◆ recreateFromDump()

void Arcane::Materials::MeshMaterialMng::recreateFromDump ( )
overridevirtual

Recréé les infos des matériaux et milieux à partir des infos de la protection.

Cette méthode remplace le endCreate() et ne peut être utilisée qu'en reprise et lors de l'initialisation.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 1165 du fichier MeshMaterialMng.cc.

Références ARCANE_FATAL, et Arcane::ItemGroup::null().

◆ registerMaterialInfo()

MeshMaterialInfo * Arcane::Materials::MeshMaterialMng::registerMaterialInfo ( const String name)
overridevirtual

Enregistre les infos du matériau de nom name.

Cette opération ne fait que enregistrer les informations d'un matériau. Ces informations sont ensuite utilisés lors de la création du milieu via createEnvironment().

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 372 du fichier MeshMaterialMng.cc.

Références ARCANE_FATAL.

◆ removeEnvironmentToBlock()

void Arcane::Materials::MeshMaterialMng::removeEnvironmentToBlock ( IMeshBlock block,
IMeshEnvironment env 
)
overridevirtual

Supprime un milieu à un bloc existant.

Supprime le milieu env au bloc block.

La modification d'un bloc ne peut avoir lieu que lors de l'initialisation, (donc avant l'appel à endCreate()).

Avertissement
Cette méthode ne modifie pas le groupe block->cells() et c'est donc à l'appelant d'ajouter au groupe les mailles du milieu si besoin.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 489 du fichier MeshMaterialMng.cc.

Références ARCANE_CHECK_POINTER.

◆ runner()

Runner & Arcane::Materials::MeshMaterialMng::runner ( ) const
inline

Définition à la ligne 314 du fichier MeshMaterialMng.h.

◆ runQueue()

RunQueue & Arcane::Materials::MeshMaterialMng::runQueue ( ) const
inline

Définition à la ligne 315 du fichier MeshMaterialMng.h.

◆ setAllocateScalarEnvironmentVariableAsMaterial()

void Arcane::Materials::MeshMaterialMng::setAllocateScalarEnvironmentVariableAsMaterial ( bool  v)
overridevirtual

Positionne l'option indiquant si les variables scalaires milieux sont allouées sur les matériaux.

Si actif, alors les variables scalaires milieux sont tout de même allouées aussi sur les matériaux. Cela permet de déclarer la même variable à la fois comme une variable matériau et milieu (par exemple MaterialVariableCellReal et EnvironmentVariableCellReal).

Par défaut cette option n'est pas active.

Cette méthode doit être activé avant l'appel à endCreate() pour être prise en compte.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 566 du fichier MeshMaterialMng.cc.

◆ setDataCompressorServiceName()

void Arcane::Materials::MeshMaterialMng::setDataCompressorServiceName ( const String name)
overridevirtual

\ brief Nom du service utilisé pour compresser les données lors du forceRecompute().

Si null (le défaut), aucune compression n'est effectuée.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 577 du fichier MeshMaterialMng.cc.

◆ setDataInitialisationWithZero()

void Arcane::Materials::MeshMaterialMng::setDataInitialisationWithZero ( bool  v)
inlineoverridevirtual

Indique comment initialiser les nouvelles valeurs dans les mailles matériaux et milieux.

Si vrai, les nouvelles valeurs sont initialisées à zéro ou le vecteur nul suivant le type de la donnée. Si faux, l'initialisation se fait avec la valeur globale.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 181 du fichier MeshMaterialMng.h.

◆ setKeepValuesAfterChange()

void Arcane::Materials::MeshMaterialMng::setKeepValuesAfterChange ( bool  v)
inlineoverridevirtual

Positionne la sauvegarde des valeurs entre deux modifications des matériaux.

Si actif, les valeurs des variables partielles sont conservées entre deux modifications de la liste des matériaux.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 184 du fichier MeshMaterialMng.h.

◆ setMeshModificationNotified()

void Arcane::Materials::MeshMaterialMng::setMeshModificationNotified ( bool  v)
inlineoverridevirtual

Indique si les milieux et matériaux suivent les changements de topologie dans le maillage.

Cette méthode doit être apellée avant toute création de matériau.

Si v vaut false, les milieux et les matériaux ne sont pas notifiés des changements de la topologie du maillage. Dans ce cas, toutes les données associées sont invalidées.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 187 du fichier MeshMaterialMng.h.

◆ setModificationFlags()

void Arcane::Materials::MeshMaterialMng::setModificationFlags ( int  v)
overridevirtual

Positionner les flags pour paramêtrer les modifications de matériaux/milieux.

Les flags possibles sont une combinaison de eModificationFlags.

Par exemple:

mm->setModificationFlags(flags);
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120
Interface du gestionnaire des matériaux et des milieux d'un maillage.
@ GenericOptimize
Active les optimisations génériques.
@ OptimizeMultiAddRemove
Active les optimisations pour les ajouts/supressions multiples.

Cette méthode doit être activé avant l'appel à endCreate() pour être prise en compte.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 555 du fichier MeshMaterialMng.cc.

◆ setSynchronizeVariableVersion()

void Arcane::Materials::MeshMaterialMng::setSynchronizeVariableVersion ( Integer  version)
inlineoverridevirtual

Positionne la version de l'implémentation pour la synchronisation des variables matériaux.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 264 du fichier MeshMaterialMng.h.

◆ setUseMaterialValueWhenRemovingPartialValue()

void Arcane::Materials::MeshMaterialMng::setUseMaterialValueWhenRemovingPartialValue ( bool  v)
inlineoverridevirtual

Indique si on utilise la valeur matériau ou milieu lorsqu'on transforme une maille partielle en maille pure.

Lors du passage d'une maille partielle en maille pure, il faut recopier la valeur partielle dans la valeur globale. Par défaut, le comportement n'est pas le même suivant que les optimisations sont actives ou non (

Voir également
modificationFlags()). Sans optimisation, c'est la valeur matériau qui est utilisée. Si l'optimisation eModificationFlags::GenericOptimize est active, c'est la valeur milieu.

Cette propriété, si elle vrai, permet d'utiliser la valeur matériau dans tous les cas.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 281 du fichier MeshMaterialMng.h.

◆ synchronizeMaterialsInCells()

bool Arcane::Materials::MeshMaterialMng::synchronizeMaterialsInCells ( )
overridevirtual

Synchronise les mailles des matériaux.

Cette méthode permet de synchroniser entre les sous-domaines les mailles de chaque matériau. Elle est collective

Lors de cet appel, le sous-domaine propriétaire de N mailles envoie aux sous-domaines qui possède ces N mailles en tant que mailles fantômes la liste des matériaux qu'il possède. Ces derniers sous-domaines mettent à jour cette liste en ajoutant ou supprimant au besoin les matériaux nécessaires.

Après cet appel, il est garanti que les mailles fantômes d'un sous-domaine ont bien la même liste de matériaux et milieux que cells du sous-domaine qui est propriétaire de ces mailles. Il est notamment possible de synchroniser des variables via MeshMaterialVariableRef::synchronize().

Retourne true si les matériaux de ce sous-domaine ont été modifiés suite à la synchronisation, false sinon.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 967 du fichier MeshMaterialMng.cc.

◆ synchronizeVariableVersion()

Integer Arcane::Materials::MeshMaterialMng::synchronizeVariableVersion ( ) const
inlineoverridevirtual

Version de l'implémentation pour la synchronisation des variables matériaux.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 269 du fichier MeshMaterialMng.h.

◆ syncVariablesReferences()

void Arcane::Materials::MeshMaterialMng::syncVariablesReferences ( bool  check_resize)

Met à jour les références des variables.

Cela doit être fait lorsque le nombre d'éléments par matériau ou milieu change car les tableaux contenant les variables associées peuvent être modifiés lors de l'opération.

Définition à la ligne 686 du fichier MeshMaterialMng.cc.

Référencé par Arcane::Materials::AllEnvData::forceRecompute().

◆ timestamp()

Int64 Arcane::Materials::MeshMaterialMng::timestamp ( ) const
inlineoverridevirtual

Compteur du nombre de modifications de la liste des matériaux et des milieux.

Ce compteur augmente à chaque fois que des matériaux sont ajoutés ou supprimés. L'incrément n'est pas forcément constant.

Note
Actuellement, ce compteur n'est pas sauvegardé lors d'une protection et vaudra donc 0 en reprise.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 233 du fichier MeshMaterialMng.h.

Références m_timestamp.

◆ traceMng()

ITraceMng * Arcane::Materials::MeshMaterialMng::traceMng ( )
inlineoverridevirtual

Gestionnaire de traces.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 169 du fichier MeshMaterialMng.h.

Références Arccore::TraceAccessor::traceMng().

◆ trueEnvironments()

ConstArrayView< MeshEnvironment * > Arcane::Materials::MeshMaterialMng::trueEnvironments ( ) const
inline

Définition à la ligne 235 du fichier MeshMaterialMng.h.

◆ trueMaterials()

ConstArrayView< MeshMaterial * > Arcane::Materials::MeshMaterialMng::trueMaterials ( ) const
inline

Définition à la ligne 236 du fichier MeshMaterialMng.h.

◆ variableFactoryMng()

IMeshMaterialVariableFactoryMng * Arcane::Materials::MeshMaterialMng::variableFactoryMng ( ) const
inlineoverridevirtual

Interface de la fabrique de variables.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 276 du fichier MeshMaterialMng.h.

◆ variableLock()

Mutex * Arcane::Materials::MeshMaterialMng::variableLock ( )
inlineoverridevirtual

Verrou utilisé pour le multi-threading.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 225 du fichier MeshMaterialMng.h.

◆ view() [1/3]

AllEnvCellVectorView Arcane::Materials::MeshMaterialMng::view ( CellVectorView  cells)
inlinefinalvirtual

Vue sur les mailles milieux correspondant au groupe cells.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 248 du fichier MeshMaterialMng.h.

◆ view() [2/3]

AllEnvCellVectorView Arcane::Materials::MeshMaterialMng::view ( const CellGroup cells)
inlinefinalvirtual

Vue sur les mailles milieux correspondant au groupe cells.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 243 du fichier MeshMaterialMng.h.

◆ view() [3/3]

AllEnvCellVectorView Arcane::Materials::MeshMaterialMng::view ( SmallSpan< const Int32 >  cell_local_id)
inlinefinalvirtual

Vue sur les mailles milieux correspondant aux mailles de numéro locaux cells_local_id.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 253 du fichier MeshMaterialMng.h.

◆ visitVariables()

void Arcane::Materials::MeshMaterialMng::visitVariables ( IFunctorWithArgumentT< IMeshMaterialVariable * > *  functor)
overridevirtual

Applique le fonctor functor sur l'ensemble des variables matériaux.

Implémente Arcane::Materials::IMeshMaterialMng.

Définition à la ligne 699 du fichier MeshMaterialMng.cc.

Référencé par Arcane::Materials::MeshMaterialExchangeMng::ExchangeCellStep::serialize().

Documentation des fonctions amies et associées

◆ MeshMaterialBackup

Définition à la ligne 66 du fichier MeshMaterialMng.h.

Documentation des données membres

◆ m_additional_capacity_ratio

Real Arcane::Materials::MeshMaterialMng::m_additional_capacity_ratio = 0.05
private

Définition à la ligne 349 du fichier MeshMaterialMng.h.

◆ m_all_cell_to_all_env_cell

UniqueArray<AllCellToAllEnvCell> Arcane::Materials::MeshMaterialMng::m_all_cell_to_all_env_cell
private

Contient une instance de AllCellToAllEnvCell.

On utilise un tableau avec un seul élément pour l'allouer en mémoire unifiée.

Définition à la ligne 389 du fichier MeshMaterialMng.h.

◆ m_all_cells_env_only_synchronizer

std::unique_ptr<IMeshMaterialVariableSynchronizer> Arcane::Materials::MeshMaterialMng::m_all_cells_env_only_synchronizer
private

Définition à la ligne 374 du fichier MeshMaterialMng.h.

◆ m_all_cells_mat_env_synchronizer

std::unique_ptr<IMeshMaterialVariableSynchronizer> Arcane::Materials::MeshMaterialMng::m_all_cells_mat_env_synchronizer
private

Définition à la ligne 373 du fichier MeshMaterialMng.h.

◆ m_all_env_data

std::unique_ptr<AllEnvData> Arcane::Materials::MeshMaterialMng::m_all_env_data
private

Définition à la ligne 371 du fichier MeshMaterialMng.h.

◆ m_allcell_2_allenvcell

AllCellToAllEnvCell* Arcane::Materials::MeshMaterialMng::m_allcell_2_allenvcell = nullptr
private

Définition à la ligne 390 du fichier MeshMaterialMng.h.

◆ m_blocks

UniqueArray<IMeshBlock*> Arcane::Materials::MeshMaterialMng::m_blocks
private

Définition à la ligne 362 du fichier MeshMaterialMng.h.

◆ m_components

UniqueArray<IMeshComponent*> Arcane::Materials::MeshMaterialMng::m_components
private

Définition à la ligne 360 du fichier MeshMaterialMng.h.

◆ m_data_compressor_service_name

String Arcane::Materials::MeshMaterialMng::m_data_compressor_service_name
private

Définition à la ligne 379 du fichier MeshMaterialMng.h.

◆ m_environments

UniqueArray<IMeshEnvironment*> Arcane::Materials::MeshMaterialMng::m_environments
private

Définition à la ligne 358 du fichier MeshMaterialMng.h.

◆ m_environments_as_components

UniqueArray<IMeshComponent*> Arcane::Materials::MeshMaterialMng::m_environments_as_components
private

Définition à la ligne 359 du fichier MeshMaterialMng.h.

◆ m_exchange_mng

std::unique_ptr<MeshMaterialExchangeMng> Arcane::Materials::MeshMaterialMng::m_exchange_mng
private

Définition à la ligne 376 du fichier MeshMaterialMng.h.

◆ m_full_name_variable_map

FullNameVariableMap Arcane::Materials::MeshMaterialMng::m_full_name_variable_map
private

Définition à la ligne 367 du fichier MeshMaterialMng.h.

◆ m_internal_api

std::unique_ptr<InternalApi> Arcane::Materials::MeshMaterialMng::m_internal_api
private

Définition à la ligne 338 du fichier MeshMaterialMng.h.

◆ m_is_allcell_2_allenvcell

bool Arcane::Materials::MeshMaterialMng::m_is_allcell_2_allenvcell = false
private

Définition à la ligne 391 du fichier MeshMaterialMng.h.

◆ m_is_allocate_scalar_environment_variable_as_material

bool Arcane::Materials::MeshMaterialMng::m_is_allocate_scalar_environment_variable_as_material = false
private

Définition à la ligne 346 du fichier MeshMaterialMng.h.

◆ m_is_data_initialisation_with_zero

bool Arcane::Materials::MeshMaterialMng::m_is_data_initialisation_with_zero = false
private

Définition à la ligne 344 du fichier MeshMaterialMng.h.

◆ m_is_end_create

bool Arcane::Materials::MeshMaterialMng::m_is_end_create = false
private

Définition à la ligne 341 du fichier MeshMaterialMng.h.

◆ m_is_mesh_modification_notified

bool Arcane::Materials::MeshMaterialMng::m_is_mesh_modification_notified = false
private

Définition à la ligne 345 du fichier MeshMaterialMng.h.

◆ m_is_use_accelerator_for_constituent_item_vector

bool Arcane::Materials::MeshMaterialMng::m_is_use_accelerator_for_constituent_item_vector = true
private

Définition à la ligne 393 du fichier MeshMaterialMng.h.

◆ m_is_use_material_value_when_removing_partial_value

bool Arcane::Materials::MeshMaterialMng::m_is_use_material_value_when_removing_partial_value = false
private

Définition à la ligne 347 du fichier MeshMaterialMng.h.

◆ m_is_verbose

bool Arcane::Materials::MeshMaterialMng::m_is_verbose = false
private

Définition à la ligne 342 du fichier MeshMaterialMng.h.

◆ m_keep_values_after_change

bool Arcane::Materials::MeshMaterialMng::m_keep_values_after_change = true
private

Définition à la ligne 343 du fichier MeshMaterialMng.h.

◆ m_materials

UniqueArray<IMeshMaterial*> Arcane::Materials::MeshMaterialMng::m_materials
private

Définition à la ligne 355 du fichier MeshMaterialMng.h.

◆ m_materials_as_components

UniqueArray<IMeshComponent*> Arcane::Materials::MeshMaterialMng::m_materials_as_components
private

Définition à la ligne 356 du fichier MeshMaterialMng.h.

◆ m_materials_info

UniqueArray<MeshMaterialInfo*> Arcane::Materials::MeshMaterialMng::m_materials_info
private

Définition à la ligne 354 du fichier MeshMaterialMng.h.

◆ m_mesh_handle

MeshHandle Arcane::Materials::MeshMaterialMng::m_mesh_handle
private

Définition à la ligne 337 du fichier MeshMaterialMng.h.

◆ m_mms

MeshMaterialSynchronizer* Arcane::Materials::MeshMaterialMng::m_mms = nullptr
private

Définition à la ligne 380 du fichier MeshMaterialMng.h.

◆ m_modification_flags

int Arcane::Materials::MeshMaterialMng::m_modification_flags = 0
private

Définition à la ligne 348 du fichier MeshMaterialMng.h.

◆ m_modifier

std::unique_ptr<MeshMaterialModifierImpl> Arcane::Materials::MeshMaterialMng::m_modifier
private

Définition à la ligne 353 du fichier MeshMaterialMng.h.

◆ m_name

String Arcane::Materials::MeshMaterialMng::m_name
private

Définition à la ligne 340 du fichier MeshMaterialMng.h.

◆ m_observer_pool

std::unique_ptr<ObserverPool> Arcane::Materials::MeshMaterialMng::m_observer_pool
private

Définition à la ligne 378 du fichier MeshMaterialMng.h.

◆ m_properties

std::unique_ptr<Properties> Arcane::Materials::MeshMaterialMng::m_properties
private

Définition à la ligne 370 du fichier MeshMaterialMng.h.

◆ m_runner_info

std::unique_ptr<RunnerInfo> Arcane::Materials::MeshMaterialMng::m_runner_info
private

Définition à la ligne 382 du fichier MeshMaterialMng.h.

◆ m_synchronize_variable_version

Integer Arcane::Materials::MeshMaterialMng::m_synchronize_variable_version = 1
private

Définition à la ligne 375 du fichier MeshMaterialMng.h.

◆ m_timestamp

Int64 Arcane::Materials::MeshMaterialMng::m_timestamp = 0
private

Compteur du nombre de modifications des matériaux.

Définition à la ligne 372 du fichier MeshMaterialMng.h.

Référencé par timestamp().

◆ m_true_blocks

UniqueArray<MeshBlock*> Arcane::Materials::MeshMaterialMng::m_true_blocks
private

Définition à la ligne 363 du fichier MeshMaterialMng.h.

◆ m_true_environments

UniqueArray<MeshEnvironment*> Arcane::Materials::MeshMaterialMng::m_true_environments
private

Définition à la ligne 361 du fichier MeshMaterialMng.h.

◆ m_true_materials

UniqueArray<MeshMaterial*> Arcane::Materials::MeshMaterialMng::m_true_materials
private

Définition à la ligne 357 du fichier MeshMaterialMng.h.

◆ m_var_to_mat_var_map

VariableToMaterialVariableMap Arcane::Materials::MeshMaterialMng::m_var_to_mat_var_map
private

Définition à la ligne 368 du fichier MeshMaterialMng.h.

◆ m_variable_factory_mng

IMeshMaterialVariableFactoryMng* Arcane::Materials::MeshMaterialMng::m_variable_factory_mng = nullptr
private

Définition à la ligne 377 du fichier MeshMaterialMng.h.

◆ m_variable_lock

Mutex Arcane::Materials::MeshMaterialMng::m_variable_lock
private

Définition à la ligne 351 du fichier MeshMaterialMng.h.

◆ m_variable_mng

IVariableMng* Arcane::Materials::MeshMaterialMng::m_variable_mng = nullptr
private

Définition à la ligne 339 du fichier MeshMaterialMng.h.

◆ m_variables_indexer

UniqueArray<MeshMaterialVariableIndexer*> Arcane::Materials::MeshMaterialMng::m_variables_indexer
private

Définition à la ligne 364 du fichier MeshMaterialMng.h.

◆ m_variables_indexer_to_destroy

UniqueArray<MeshMaterialVariableIndexer*> Arcane::Materials::MeshMaterialMng::m_variables_indexer_to_destroy
private

Définition à la ligne 365 du fichier MeshMaterialMng.h.


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