Implémentation d'un gestion des matériaux. Plus de détails...
#include <arcane/materials/internal/MeshMaterialMng.h>
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 () |
IMesh * | mesh () override |
Maillage associé. | |
ITraceMng * | traceMng () override |
Gestionnaire de traces. | |
MeshMaterialInfo * | registerMaterialInfo (const String &name) override |
Enregistre les infos du matériau de nom name. | |
IMeshEnvironment * | createEnvironment (const MeshEnvironmentBuildInfo &infos) override |
Création d'un milieu. | |
IMeshBlock * | createBlock (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. | |
IMeshEnvironment * | findEnvironment (const String &name, bool throw_exception=true) override |
Retourne le milieux de nom name. | |
IMeshBlock * | findBlock (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. | |
IMeshMaterialVariable * | findVariable (const String &name) override |
Variable de nom name ou nullptr si aucune de ce nom existe. | |
IMeshMaterialVariable * | checkVariable (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. | |
Mutex * | variableLock () 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. | |
IMeshMaterialVariableFactoryMng * | variableFactoryMng () 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 |
AllEnvData * | allEnvData () |
ComponentItemSharedInfo * | componentItemSharedInfo (Int32 level) const |
void | syncVariablesReferences (bool check_resize) |
Met à jour les références des variables. | |
void | incrementTimestamp () |
void | dumpInfos2 (std::ostream &o) |
const MeshHandle & | meshHandle () 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. | |
Runner & | runner () const |
RunQueue & | runQueue () const |
Accelerator::RunQueuePool & | asyncRunQueuePool () 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. | |
TraceAccessor & | operator= (const TraceAccessor &rhs) |
Opérateur de recopie. | |
virtual | ~TraceAccessor () |
Libère les ressources. | |
ITraceMng * | traceMng () 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 |
Amis | |
class | MeshMaterialBackup |
Membres hérités additionnels | |
Fonctions membres publiques statiques hérités de Arcane::Materials::IMeshMaterialMng | |
static IMeshMaterialMng * | getReference (const MeshHandleOrMesh &mesh_handle, bool create=true) |
Récupère ou créé la référence associée à mesh. | |
static Ref< IMeshMaterialMng > | getTrueReference (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 |
Implémentation d'un gestion des matériaux.
Définition à la ligne 60 du fichier MeshMaterialMng.h.
|
private |
Type de la liste des variables par nom complet.
Définition à la ligne 328 du fichier MeshMaterialMng.h.
|
private |
Paire de la liste des variables par nom complet.
Définition à la ligne 330 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 332 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 333 du fichier MeshMaterialMng.h.
Arcane::Materials::MeshMaterialMng::MeshMaterialMng | ( | const MeshHandle & | mesh_handle, |
const String & | name | ||
) |
Définition à la ligne 126 du fichier MeshMaterialMng.cc.
|
override |
Définition à la ligne 151 du fichier MeshMaterialMng.cc.
|
private |
Définition à la ligne 838 du fichier MeshMaterialMng.cc.
|
private |
Définition à la ligne 333 du fichier MeshMaterialMng.cc.
|
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().
|
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().
|
private |
Définition à la ligne 1092 du fichier MeshMaterialMng.cc.
|
private |
Définition à la ligne 1014 du fichier MeshMaterialMng.cc.
|
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().
|
private |
Définition à la ligne 1303 du fichier MeshMaterialMng.cc.
|
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.
Définition à la ligne 647 du fichier MeshMaterialMng.cc.
|
private |
Définition à la ligne 621 du fichier MeshMaterialMng.cc.
|
private |
Définition à la ligne 595 du fichier MeshMaterialMng.cc.
|
private |
Définition à la ligne 797 du fichier MeshMaterialMng.cc.
|
inlineoverridevirtual |
API interne à Arcane.
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 309 du fichier MeshMaterialMng.h.
Référencé par Arcane::Materials::AllEnvData::_computeInfosForEnvCells(), et Arcane::Materials::AllEnvData::forceRecompute().
|
private |
Définition à la ligne 586 du fichier MeshMaterialMng.cc.
|
private |
Définition à la ligne 1244 du fichier MeshMaterialMng.cc.
|
private |
Définition à la ligne 851 du fichier MeshMaterialMng.cc.
|
private |
Définition à la ligne 1106 du fichier MeshMaterialMng.cc.
|
private |
Définition à la ligne 1259 du fichier MeshMaterialMng.cc.
|
inlineprivate |
Définition à la ligne 413 du fichier MeshMaterialMng.h.
AllEnvCellVectorView Arcane::Materials::MeshMaterialMng::_view | ( | SmallSpan< const Int32 > | cells_local_id | ) |
Définition à la ligne 1024 du fichier MeshMaterialMng.cc.
|
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()).
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 479 du fichier MeshMaterialMng.cc.
Références ARCANE_CHECK_POINTER.
|
inline |
Définition à la ligne 317 du fichier MeshMaterialMng.h.
|
inline |
Définition à la ligne 292 du fichier MeshMaterialMng.h.
|
inline |
Définition à la ligne 316 du fichier MeshMaterialMng.h.
|
inlineoverridevirtual |
Liste des blocs.
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 208 du fichier MeshMaterialMng.h.
void Arcane::Materials::MeshMaterialMng::build | ( | ) |
Définition à la ligne 201 du fichier MeshMaterialMng.cc.
|
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.
|
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.
|
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().
|
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 * Arcane::Materials::MeshMaterialMng::componentItemSharedInfo | ( | Int32 | level | ) | const |
Définition à la ligne 1283 du fichier MeshMaterialMng.cc.
|
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.
|
private |
Définition à la ligne 1328 du fichier MeshMaterialMng.cc.
|
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().
|
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().
|
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.
|
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.
|
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.
void Arcane::Materials::MeshMaterialMng::dumpInfos2 | ( | std::ostream & | o | ) |
Définition à la ligne 904 du fichier MeshMaterialMng.cc.
|
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.
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.
|
inlineoverridevirtual |
Liste des milieux.
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 205 du fichier MeshMaterialMng.h.
|
inlineoverridevirtual |
Liste des milieux vus comme composants.
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 206 du fichier MeshMaterialMng.h.
|
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.
|
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.
|
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.
|
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.
|
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.
|
inlineprivate |
Définition à la ligne 322 du fichier MeshMaterialMng.h.
|
inline |
Définition à la ligne 296 du fichier MeshMaterialMng.h.
|
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.
|
inlineoverridevirtual |
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 307 du fichier MeshMaterialMng.h.
|
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.
|
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.
|
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.
|
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.
|
inlineoverridevirtual |
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 285 du fichier MeshMaterialMng.h.
|
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().
|
inlineoverridevirtual |
Liste des matériaux vus comme composants.
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 204 du fichier MeshMaterialMng.h.
|
inlineoverridevirtual |
Maillage associé.
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 168 du fichier MeshMaterialMng.h.
Références Arcane::MeshHandle::mesh().
Référencé par Arcane::Materials::AllEnvData::_computeInfosForEnvCells(), et Arcane::Materials::AllEnvData::forceRecompute().
|
inline |
Définition à la ligne 299 du fichier MeshMaterialMng.h.
|
inlineoverridevirtual |
Flags pour paramêtrer les modifications.
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 191 du fichier MeshMaterialMng.h.
|
inlineoverridevirtual |
Nom du gestionnaire.
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 202 du fichier MeshMaterialMng.h.
|
inline |
Définition à la ligne 237 du fichier MeshMaterialMng.h.
|
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().
|
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.
|
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()).
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 489 du fichier MeshMaterialMng.cc.
Références ARCANE_CHECK_POINTER.
|
inline |
Définition à la ligne 314 du fichier MeshMaterialMng.h.
|
inline |
Définition à la ligne 315 du fichier MeshMaterialMng.h.
|
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.
|
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.
|
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.
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.
|
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.
Positionner les flags pour paramêtrer les modifications de matériaux/milieux.
Les flags possibles sont une combinaison de eModificationFlags.
Par exemple:
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.
|
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.
|
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 (
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.
|
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.
|
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.
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().
|
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.
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 233 du fichier MeshMaterialMng.h.
Références m_timestamp.
|
inlineoverridevirtual |
Gestionnaire de traces.
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 169 du fichier MeshMaterialMng.h.
Références Arccore::TraceAccessor::traceMng().
|
inline |
Définition à la ligne 235 du fichier MeshMaterialMng.h.
|
inline |
Définition à la ligne 236 du fichier MeshMaterialMng.h.
|
inlineoverridevirtual |
Interface de la fabrique de variables.
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 276 du fichier MeshMaterialMng.h.
|
inlineoverridevirtual |
Verrou utilisé pour le multi-threading.
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 225 du fichier MeshMaterialMng.h.
|
inlinefinalvirtual |
Vue sur les mailles milieux correspondant au groupe cells.
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 248 du fichier MeshMaterialMng.h.
|
inlinefinalvirtual |
Vue sur les mailles milieux correspondant au groupe cells.
Implémente Arcane::Materials::IMeshMaterialMng.
Définition à la ligne 243 du fichier MeshMaterialMng.h.
|
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.
|
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().
|
friend |
Définition à la ligne 66 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 349 du fichier MeshMaterialMng.h.
|
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.
|
private |
Définition à la ligne 374 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 373 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 371 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 390 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 362 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 360 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 379 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 358 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 359 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 376 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 367 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 338 du fichier MeshMaterialMng.h.
Définition à la ligne 391 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 346 du fichier MeshMaterialMng.h.
Définition à la ligne 344 du fichier MeshMaterialMng.h.
Définition à la ligne 341 du fichier MeshMaterialMng.h.
Définition à la ligne 345 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 393 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 347 du fichier MeshMaterialMng.h.
Définition à la ligne 342 du fichier MeshMaterialMng.h.
Définition à la ligne 343 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 355 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 356 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 354 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 337 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 380 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 348 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 353 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 340 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 378 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 370 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 382 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 375 du fichier MeshMaterialMng.h.
|
private |
Compteur du nombre de modifications des matériaux.
Définition à la ligne 372 du fichier MeshMaterialMng.h.
Référencé par timestamp().
|
private |
Définition à la ligne 363 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 361 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 357 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 368 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 377 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 351 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 339 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 364 du fichier MeshMaterialMng.h.
|
private |
Définition à la ligne 365 du fichier MeshMaterialMng.h.