Version: 6.3.1

Meshes in MEDCoupling

Common concept shared by all type of Meshes

A mesh has a the following properties :

  • name
  • a dimension (called mesh dimension) and only one (it implies that all cells constituting mesh have the same dimension)
  • a space dimension (relative to coordinates)
  • a number of nodes
  • a number of cells

In MEDCoupling library there is no presence of faces nor edges.

As a mesh has one dimension and only once, that is to say every cells in mesh have the same dimension called MeshDimension.

That is to say the MEDMEM vocabulary of faces and edges do not exist anymore here in MEDCoupling.

For exemple a mesh with a meshDimension equal to 1, have cells of type NORM_SEG2. An another exemple, a mesh with a meshDimension equal to 2, have cells of type NORM_TRI3 and NORM_POLYGON for example.

The class that incarnates the concept described above is : ParaMEDMEM::MEDCouplingMesh.

Unstructured meshes

An unstructured mesh is defined by :

  • a point clouds where the explicit coordinates of each point must be specified.
  • nodal connectivity that specifies for each cell, the points in the previous point clouds that constitutes the cell.

As unstructured mesh is dynamically defined enough, this struture is used by MEDCoupling to instanciate degenerated meshes as :

  • points cloud only meshes. This type of mesh will have mesh dimension == 0
  • abstract meshes containing only one cell that covers a potentially infinite space. This abstract mesh is used as support of fields containing only one integrated value. This is typically used to represent fields used by system code. This type of mesh will have mesh dimension equal to -1.

The norm used for cells connectivity of different types, is the same as specified in MED file except that connectivities are in represented in C format and not in FORTRAN format !

The class in charge to dealt with the described concept is ParaMEDMEM::MEDCouplingUMesh. This class inherits from PointSet abstract meshes.

PointSet

This is a non instanciable class that deals with set of points without any connectivity aspect.

The class that incarnates this concept in MEDCoupling is : ParaMEDMEM::MEDCouplingPointSet.

This class is in charge to perform whole or part of algorithms of its subclasses (MEDCouplingUMesh and MEDCouplingUMeshDesc) for factorization reasons.

Some of most important implemented methods are :

Cartesian Mesh

A cartesian mesh is a mesh that represents structured mesh whose nodes are arranged along axes of trihedron. To instanciate an object of this type, only n arrays are needed. In this type of mesh space dimension and mesh dimension are equals and the value is n. The n arrays will have only one component and the values contained in these arrays will be ascendantly sorted.

The class that incarnates this concept in MEDCoupling is : ParaMEDMEM::MEDCouplingCMesh.

Extruded Mesh

An extruded mesh is a mesh also called 2.5 D. It a convolution of 2D unstructured mesh with 1D unstructured mesh. The problem is that this type of mesh is not managed by any file format that's why to build an instance of this mesh you need 3D unstructured mesh and a 2D unstructured mesh lying on the same coordinates. The advantage of this structure is that the interpolation time is optimized.

The class that incarnates this concept in MEDCoupling is : ParaMEDMEM::MEDCouplingExtrudedMesh.

Copyright © 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS