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

Lecteur de fichiers de maillage au format msh. Plus de détails...

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

Classes

struct  MeshInfo
 
struct  MeshPhysicalName
 Infos sur un nom physique. Plus de détails...
 
struct  MeshPhysicalNameList
 Infos du bloc '$PhysicalNames'. Plus de détails...
 
struct  MeshV4ElementsBlock
 Infos d'un bloc pour $Elements pour la version 4. Plus de détails...
 
struct  MeshV4EntitiesNodes
 Infos pour les entités 0D. Plus de détails...
 
struct  MeshV4EntitiesWithNodes
 Infos pour les entités 1D, 2D et 3D. Plus de détails...
 

Types publics

using eReturnType = typename IMeshReader::eReturnType
 

Fonctions membres publiques

 MshMeshReader (ITraceMng *tm)
 
eReturnType readMeshFromMshFile (IMesh *mesh, const String &file_name) override
 
- 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
 

Fonctions membres privées

eReturnType _readNodesFromAsciiMshV2File (IosFile &, Array< Real3 > &)
 
eReturnType _readNodesFromAsciiMshV4File (IosFile &, MeshInfo &mesh_info)
 
eReturnType _readNodesFromBinaryMshFile (IosFile &, Array< Real3 > &)
 
Integer _readElementsFromAsciiMshV2File (IosFile &, MeshInfo &mesh_info)
 
Integer _readElementsFromAsciiMshV4File (IosFile &, MeshInfo &mesh_info)
 Lecture des éléments (mailles,faces,...)
 
eReturnType _readMeshFromNewMshFile (IMesh *, IosFile &)
 
void _allocateCells (IMesh *mesh, MeshInfo &mesh_info, bool is_read_items)
 
void _allocateGroups (IMesh *mesh, MeshInfo &mesh_info, bool is_read_items)
 
void _addFaceGroup (IMesh *mesh, MeshV4ElementsBlock &block, const String &group_name)
 
void _addCellGroup (IMesh *mesh, MeshV4ElementsBlock &block, const String &group_name)
 
void _addNodeGroup (IMesh *mesh, MeshV4ElementsBlock &block, const String &group_name)
 
Integer _switchMshType (Integer, Integer &)
 
void _readPhysicalNames (IosFile &ios_file, MeshInfo &mesh_info)
 
void _readEntitiesV4 (IosFile &ios_file, MeshInfo &mesh_info)
 Lecture des entités.
 

Attributs privés

Integer m_version = 0
 

Membres hérités additionnels

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

Description détaillée

Lecteur de fichiers de maillage au format msh.

Le format msh est celui utilisé par la bibliothèque gmsh.

Le lecteur supporte les versions 2.0 et 4.1 de ce format.

Seules une partie des fonctionnalités du format sont supportées:

  • seuls les éléments d'ordre 1 sont supportés.
  • les coordonnées paramétriques ne sont pas supportées
  • seules les sections $Nodes et $Entities sont lues

Définition à la ligne 102 du fichier MshMeshReader.cc.

Documentation des définitions de type membres

◆ eReturnType

using Arcane::MshMeshReader::eReturnType = typename IMeshReader::eReturnType

Définition à la ligne 108 du fichier MshMeshReader.cc.

Documentation des constructeurs et destructeur

◆ MshMeshReader()

Arcane::MshMeshReader::MshMeshReader ( ITraceMng tm)
inlineexplicit

Définition à la ligne 239 du fichier MshMeshReader.cc.

Documentation des fonctions membres

◆ _addCellGroup()

void Arcane::MshMeshReader::_addCellGroup ( IMesh mesh,
MeshV4ElementsBlock block,
const String group_name 
)
private

Définition à la ligne 843 du fichier MshMeshReader.cc.

◆ _addFaceGroup()

void Arcane::MshMeshReader::_addFaceGroup ( IMesh mesh,
MeshV4ElementsBlock block,
const String group_name 
)
private

Définition à la ligne 775 du fichier MshMeshReader.cc.

◆ _addNodeGroup()

void Arcane::MshMeshReader::_addNodeGroup ( IMesh mesh,
MeshV4ElementsBlock block,
const String group_name 
)
private

Définition à la ligne 865 du fichier MshMeshReader.cc.

◆ _allocateCells()

void Arcane::MshMeshReader::_allocateCells ( IMesh mesh,
MeshInfo mesh_info,
bool  is_read_items 
)
private

Définition à la ligne 644 du fichier MshMeshReader.cc.

◆ _allocateGroups()

void Arcane::MshMeshReader::_allocateGroups ( IMesh mesh,
MeshInfo mesh_info,
bool  is_read_items 
)
private

Définition à la ligne 707 du fichier MshMeshReader.cc.

◆ _readElementsFromAsciiMshV2File()

Integer Arcane::MshMeshReader::_readElementsFromAsciiMshV2File ( IosFile ios_file,
MeshInfo mesh_info 
)
private

Définition à la ligne 443 du fichier MshMeshReader.cc.

◆ _readElementsFromAsciiMshV4File()

Integer Arcane::MshMeshReader::_readElementsFromAsciiMshV4File ( IosFile ios_file,
MeshInfo mesh_info 
)
private

Lecture des éléments (mailles,faces,...)

Dans la version 4, les éléments sont rangés par genre (eItemKind)

numEntityBlocks(size_t) numElements(size_t)
minElementTag(size_t) maxElementTag(size_t)
elementTag(size_t) nodeTag(size_t) ...
...
...
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120

Définition à la ligne 522 du fichier MshMeshReader.cc.

Références ARCANE_FATAL, ARCANE_THROW, Arccore::TraceAccessor::info(), et Arcane::math::max().

Référencé par _readMeshFromNewMshFile().

◆ _readEntitiesV4()

void Arcane::MshMeshReader::_readEntitiesV4 ( IosFile ios_file,
MeshInfo mesh_info 
)
private

Lecture des entités.

Le format est:

*    $Entities
*      numPoints(size_t) numCurves(size_t)
*        numSurfaces(size_t) numVolumes(size_t)
*      pointTag(int) X(double) Y(double) Z(double)
*        numPhysicalTags(size_t) physicalTag(int) ...
*      ...
*      curveTag(int) minX(double) minY(double) minZ(double)
*        maxX(double) maxY(double) maxZ(double)
*        numPhysicalTags(size_t) physicalTag(int) ...
*        numBoundingPoints(size_t) pointTag(int) ...
*      ...
*      surfaceTag(int) minX(double) minY(double) minZ(double)
*        maxX(double) maxY(double) maxZ(double)
*        numPhysicalTags(size_t) physicalTag(int) ...
*        numBoundingCurves(size_t) curveTag(int) ...
*      ...
*      volumeTag(int) minX(double) minY(double) minZ(double)
*        maxX(double) maxY(double) maxZ(double)
*        numPhysicalTags(size_t) physicalTag(int) ...
*        numBoundngSurfaces(size_t) surfaceTag(int) ...
*      ...
*    $EndEntities
* 

Définition à la ligne 966 du fichier MshMeshReader.cc.

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

Référencé par _readMeshFromNewMshFile().

◆ _readMeshFromNewMshFile()

IMeshReader::eReturnType Arcane::MshMeshReader::_readMeshFromNewMshFile ( IMesh mesh,
IosFile ios_file 
)
private

The version 2.0 of the '.msh' file format is Gmsh's new native mesh file format. It is very similar to the old one (see Section 9.1.1 [Version 1.0], page 139), but is more general: it contains information about itself and allows to associate an arbitrary number of integer tags with each element. Ialso exists in both ASCII and binary form. The '.msh' file format, version 2.0, is divided in three main sections, defining the file format ($MeshFormat-$EndMeshFormat), the nodes ($Nodes-$EndNodes) and the elements ($Elements-$EndElements) in the mesh: /code $MeshFormat 2.0 file-type data-size (one-binary) is an integer of value 1 written in binary form. This integer is used for detecting if the computer on which the binary file was written and the computer on which the file is read are of the same type (little or big endian).

$EndMeshFormat $Nodes number-of-nodes node-number x-coord y-coord z-coord ... $EndNodes $Elements number-of-elements elm-number elm-type number-of-tags < tag > ... node-number-list ... $EndElements

Définition à la ligne 1060 du fichier MshMeshReader.cc.

Références _readElementsFromAsciiMshV4File(), _readEntitiesV4(), _readNodesFromAsciiMshV4File(), ARCANE_THROW, Arccore::TraceAccessor::info(), Arcane::IParallelMng::isParallel(), Arcane::IMesh::meshPartInfo(), Arcane::IMesh::parallelMng(), Arcane::IMeshReader::RTOk, et Arcane::IMesh::toPrimaryMesh().

Référencé par readMeshFromMshFile().

◆ _readNodesFromAsciiMshV2File()

IMeshReader::eReturnType Arcane::MshMeshReader::_readNodesFromAsciiMshV2File ( IosFile ios_file,
Array< Real3 > &  node_coords 
)
private

Définition à la ligne 343 du fichier MshMeshReader.cc.

◆ _readNodesFromAsciiMshV4File()

IMeshReader::eReturnType Arcane::MshMeshReader::_readNodesFromAsciiMshV4File ( IosFile ios_file,
MeshInfo mesh_info 
)
private
numEntityBlocks(size_t) numNodes(size_t)
minNodeTag(size_t) maxNodeTag(size_t)
entityDim(int) entityTag(int) parametric(int; 0 or 1)
nodeTag(size_t)
...
x(double) y(double) z(double)
< u(double; if parametric and entityDim >= 1) >
< v(double; if parametric and entityDim >= 2) >
< w(double; if parametric and entityDim == 3) >
...
...

Définition à la ligne 386 du fichier MshMeshReader.cc.

Références ARCANE_THROW, Arccore::TraceAccessor::info(), et Arcane::IMeshReader::RTOk.

Référencé par _readMeshFromNewMshFile().

◆ _readNodesFromBinaryMshFile()

IMeshReader::eReturnType Arcane::MshMeshReader::_readNodesFromBinaryMshFile ( IosFile ios_file,
Array< Real3 > &  node_coords 
)
private

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

◆ _readPhysicalNames()

void Arcane::MshMeshReader::_readPhysicalNames ( IosFile ios_file,
MeshInfo mesh_info 
)
private

Définition à la ligne 905 du fichier MshMeshReader.cc.

◆ _switchMshType()

Integer Arcane::MshMeshReader::_switchMshType ( Integer  mshElemType,
Integer &  nNodes 
)
private

Définition à la ligne 277 du fichier MshMeshReader.cc.

◆ readMeshFromMshFile()

IMeshReader::eReturnType Arcane::MshMeshReader::readMeshFromMshFile ( IMesh mesh,
const String filename 
)
overridevirtual

readMeshFromMshFile switch wether the targetted file is to be read with _readMeshFromOldMshFile or _readMeshFromNewMshFile function.

Implémente Arcane::IMshMeshReader.

Définition à la ligne 1168 du fichier MshMeshReader.cc.

Références _readMeshFromNewMshFile(), Arccore::TraceAccessor::error(), Arccore::TraceAccessor::info(), Arccore::String::localstr(), et Arcane::IMeshReader::RTError.

Documentation des données membres

◆ m_version

Integer Arcane::MshMeshReader::m_version = 0
private

Définition à la ligne 247 du fichier MshMeshReader.cc.


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