Arcane  4.1.11.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::MEDMeshReader

Lecteur de maillages au format MED. Plus de détails...

+ Graphe d'héritage de Arcane::MEDMeshReader:
+ Graphe de collaboration de Arcane::MEDMeshReader:

Classes

struct  AutoCloseMED
 
class  MEDFamilyInfo
 Information sur une famille d'entité MED. Plus de détails...
 
class  MEDGroupInfo
 Liste des groupes et des entités leur appartenant. Plus de détails...
 
class  MEDToArcaneItemInfo
 Informations pour passer des types MED aux types Arcane pour les entités. Plus de détails...
 

Fonctions membres publiques

 MEDMeshReader (ITraceMng *tm)
 
IMeshReader::eReturnType readMesh (IPrimaryMesh *mesh, const String &file_name)
 
- Fonctions membres publiques hérités de Arcane::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
 

Fonctions membres privées

IMeshReader::eReturnType _readMesh (IPrimaryMesh *mesh, const String &filename)
 
Int32 _readItems (med_idt fid, const char *meshnane, const MEDToArcaneItemInfo &iinfo, Array< Int16 > &polygon_nb_nodes, Array< med_int > &connectivity, Array< med_int > &family_values)
 Lit les informations des entités d'un type donné.
 
void _initMEDToArcaneTypes ()
 
void _addTypeInfo (int dimension, int nb_node, med_int med_type, ItemTypeId arcane_type)
 
void _addTypeInfo (int dimension, int nb_node, med_int med_type, ItemTypeId arcane_type, const Int32 *indirection)
 
void _readAndCreateCells (IPrimaryMesh *mesh, Int32 mesh_dimension, med_idt fid, const char *meshname)
 
void _readFaces (IPrimaryMesh *mesh, Int32 mesh_dimension, med_idt fid, const char *meshname)
 Lit les faces.
 
IMeshReader::eReturnType _readNodesCoordinates (IPrimaryMesh *mesh, Int64 nb_node, Int32 spacedim, med_idt fid, const char *meshname)
 
void _readFamilies (med_idt fid, const char *meshname)
 
void _readAvailableTypes (med_idt fid, const char *meshname)
 Récupère la liste des types géométriques présents dans le maillage.
 
void _clearItemsInGroups ()
 
void _broadcastGroups (ConstArrayView< String > names, IItemFamily *family)
 Broadcast les groupes de group_names pour la famille family.
 

Attributs privés

IPrimaryMeshm_mesh = nullptr
 Maillage en cours de lecture.
 
UniqueArray< MEDToArcaneItemInfom_med_to_arcane_types
 Tableau de conversion entre les types MED et Arcane.
 
std::unordered_map< med_int, Int32m_med_geotype_to_arcane_type_index
 Table des index dans m_med_to_arcane_type de chaque geotype.
 
std::unordered_map< Int32, MEDFamilyInfom_med_families_map
 Liste des familles.
 
UniqueArray< MEDGroupInfom_med_groups
 Liste des informations sur les groupes.
 
UniqueArray< med_int > m_med_geotypes_in_mesh
 Liste des 'geotype' présents dans le maillage.
 

Membres hérités additionnels

- Fonctions membres protégées hérités de Arcane::TraceAccessor
void _setLocalVerboseLevel (Int32 v)
 
Int32 _localVerboseLevel () const
 

Description détaillée

Lecteur de maillages au format MED.

Première version d'un lecteur MED gérant uniquement les maillages 2D, 3D et non structurés.

Définition à la ligne 49 du fichier MEDMeshReaderService.cc.

Documentation des constructeurs et destructeur

◆ MEDMeshReader()

Arcane::MEDMeshReader::MEDMeshReader ( ITraceMng * tm)
inlineexplicit

Définition à la ligne 137 du fichier MEDMeshReaderService.cc.

Documentation des fonctions membres

◆ _addTypeInfo() [1/2]

void Arcane::MEDMeshReader::_addTypeInfo ( int dimension,
int nb_node,
med_int med_type,
ItemTypeId arcane_type )
inlineprivate

Définition à la ligne 187 du fichier MEDMeshReaderService.cc.

◆ _addTypeInfo() [2/2]

void Arcane::MEDMeshReader::_addTypeInfo ( int dimension,
int nb_node,
med_int med_type,
ItemTypeId arcane_type,
const Int32 * indirection )
inlineprivate

Définition à la ligne 191 du fichier MEDMeshReaderService.cc.

◆ _broadcastGroups()

void Arcane::MEDMeshReader::_broadcastGroups ( ConstArrayView< String > group_names,
IItemFamily * family )
private

Broadcast les groupes de group_names pour la famille family.

La liste des groupes group_names est seulement utilisée pour le rang 0.

Définition à la ligne 969 du fichier MEDMeshReaderService.cc.

Références Arcane::IParallelMng::commRank(), Arcane::IItemFamily::findGroup(), m_mesh, et Arcane::ConstArrayView< T >::size().

+ Voici le graphe d'appel pour cette fonction :

◆ _clearItemsInGroups()

void Arcane::MEDMeshReader::_clearItemsInGroups ( )
inlineprivate

Définition à la ligne 207 du fichier MEDMeshReaderService.cc.

◆ _initMEDToArcaneTypes()

void Arcane::MEDMeshReader::_initMEDToArcaneTypes ( )
private

Définition à la ligne 237 du fichier MEDMeshReaderService.cc.

◆ _readAndCreateCells()

void Arcane::MEDMeshReader::_readAndCreateCells ( IPrimaryMesh * mesh,
Int32 mesh_dimension,
med_idt fid,
const char * meshname )
private

Définition à la ligne 521 du fichier MEDMeshReaderService.cc.

◆ _readAvailableTypes()

void Arcane::MEDMeshReader::_readAvailableTypes ( med_idt fid,
const char * meshname )
private

Récupère la liste des types géométriques présents dans le maillage.

Définition à la ligne 482 du fichier MEDMeshReaderService.cc.

Références ARCANE_FATAL, Arcane::TraceAccessor::info(), et m_med_geotypes_in_mesh.

+ Voici le graphe d'appel pour cette fonction :

◆ _readFaces()

void Arcane::MEDMeshReader::_readFaces ( IPrimaryMesh * mesh,
Int32 mesh_dimension,
med_idt fid,
const char * meshname )
private

Lit les faces.

Il n'y a pas besoin de créer explicitement les faces car cela est fait automatiquement dans Arcane. On se sert donc des faces de MED uniquement pour ajouter les faces dans les groupes correspondants dans le fichier de maillage.

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

Références _readItems(), ARCANE_FATAL, Arcane::Node::faces(), Arcane::TraceAccessor::info(), Arcane::Item::localId(), m_med_families_map, m_med_geotype_to_arcane_type_index, m_med_geotypes_in_mesh, m_med_groups, m_med_to_arcane_types, Arcane::Item::null(), Arcane::AbstractArray< T >::size(), Arcane::Array< DataType >::span(), Arcane::ItemTypeMng::typeFromId(), et Arcane::ItemTypeInfo::typeName().

+ Voici le graphe d'appel pour cette fonction :

◆ _readFamilies()

void Arcane::MEDMeshReader::_readFamilies ( med_idt fid,
const char * meshname )
private

Définition à la ligne 900 du fichier MEDMeshReaderService.cc.

◆ _readItems()

Int32 Arcane::MEDMeshReader::_readItems ( med_idt fid,
const char * meshname,
const MEDToArcaneItemInfo & iinfo,
Array< Int16 > & polygon_nb_nodes,
Array< med_int > & connectivity,
Array< med_int > & family_values )
private

Lit les informations des entités d'un type donné.

Lit les informations des entités dont le type est donné par iinfo. Les entités sont des mailles au sens MED, donc des Edge, Face ou Cell. En retour, indique le nombre d'entités lues. connectivity contiendra les connectivités pour les entités lues et family_values le tableau pour chaque entité de la famille à laquelle elle appartient. À noter qu'il est possible que family_values soit vide s'il n'y a pas de famille associée aux entités.

Si le type est MED_POLYGON, alors polygon_nb_nodes contiendra le nombre de noeuds de chaque polygone.

Définition à la ligne 800 du fichier MEDMeshReaderService.cc.

Références ARCANE_FATAL, ARCANE_THROW, Arcane::Array< DataType >::clear(), Arcane::Array< DataType >::data(), Arcane::TraceAccessor::info(), et Arcane::Array< DataType >::resize().

Référencé par _readFaces().

+ Voici le graphe d'appel pour cette fonction :
+ Voici le graphe des appelants de cette fonction :

◆ _readMesh()

IMeshReader::eReturnType Arcane::MEDMeshReader::_readMesh ( IPrimaryMesh * mesh,
const String & filename )
private

Définition à la ligne 300 du fichier MEDMeshReaderService.cc.

◆ _readNodesCoordinates()

IMeshReader::eReturnType Arcane::MEDMeshReader::_readNodesCoordinates ( IPrimaryMesh * mesh,
Int64 nb_node,
Int32 spacedim,
med_idt fid,
const char * meshname )
nodiscardprivate

Définition à la ligne 734 du fichier MEDMeshReaderService.cc.

◆ readMesh()

IMeshReader::eReturnType Arcane::MEDMeshReader::readMesh ( IPrimaryMesh * mesh,
const String & file_name )
nodiscard

Définition à la ligne 289 du fichier MEDMeshReaderService.cc.

Documentation des données membres

◆ m_med_families_map

std::unordered_map<Int32, MEDFamilyInfo> Arcane::MEDMeshReader::m_med_families_map
private

Liste des familles.

Définition à la ligne 176 du fichier MEDMeshReaderService.cc.

Référencé par _readFaces().

◆ m_med_geotype_to_arcane_type_index

std::unordered_map<med_int, Int32> Arcane::MEDMeshReader::m_med_geotype_to_arcane_type_index
private

Table des index dans m_med_to_arcane_type de chaque geotype.

Définition à la ligne 174 du fichier MEDMeshReaderService.cc.

Référencé par _readFaces().

◆ m_med_geotypes_in_mesh

UniqueArray<med_int> Arcane::MEDMeshReader::m_med_geotypes_in_mesh
private

Liste des 'geotype' présents dans le maillage.

Définition à la ligne 180 du fichier MEDMeshReaderService.cc.

Référencé par _readAvailableTypes(), et _readFaces().

◆ m_med_groups

UniqueArray<MEDGroupInfo> Arcane::MEDMeshReader::m_med_groups
private

Liste des informations sur les groupes.

Définition à la ligne 178 du fichier MEDMeshReaderService.cc.

Référencé par _readFaces().

◆ m_med_to_arcane_types

UniqueArray<MEDToArcaneItemInfo> Arcane::MEDMeshReader::m_med_to_arcane_types
private

Tableau de conversion entre les types MED et Arcane.

Définition à la ligne 172 du fichier MEDMeshReaderService.cc.

Référencé par _readFaces().

◆ m_mesh

IPrimaryMesh* Arcane::MEDMeshReader::m_mesh = nullptr
private

Maillage en cours de lecture.

Définition à la ligne 170 du fichier MEDMeshReaderService.cc.

Référencé par _broadcastGroups().


La documentation de cette classe a été générée à partir du fichier suivant :