## Documentation de la bibliothèque MED-fichier V2.3 : Guide d'utilisation - Module "MED_Equivalence".

Sommaire de la page
Introduction Modèles de programmation Créer une équivalence dans un maillage Ecrire un tableau de correspondances dans une équivalence Lire le nombre d'équivalence dans un maillage Accéder aux équivalences dans un maillage Lire les informations sur une équivalence Accéder aux tableaux de correspondances dans une équivalence Lire le nombre de correspondance dans un tableau de correspondances Lire un tableau de correspondance dans une équivalence Exemples de programmation Exemple de création d'équivalence dans un maillage Exemple de lecture de toutes les équivalences d'un maillage Conventions sur la définition des correspondances dans une équivalence

Retour à la page de garde du guide utilisateur

# Introduction

Les routines disponibles permettent de :

- Créer une équivalence dans un maillage.
- Ecrire un tableau de correspondances entre binômes d'entités du maillage dans une équivalence.
- Lire le nombre d'équivalence dans un maillage.
- Lire les informations concernant une équivalence.
- Lire le nombre de correspondance existant dans un tableau de correspondances.
- Lire un tableau de correspondances dans une équivalence.

Ces routines sont détaillées dans le guide de référence du module "MED_Equivalence".

# Modèles de programmation

### Créer une équivalence dans un maillage

La routine MEDequivCr/efequc permet de créer une équivalence dans un maillage.

Remarques :

- L'écriture des équivalences dans un maillage est optionnelle : un maillage peut contenir de zéro à plusieurs équivalences.
- Pour chaque équivalence, il s'agit :
  - De la créer.
  - De lui associer des tableaux de correspondances entre les entités souhaitées.

### Ecrire un tableau de correspondances dans une équivalence

La routine MEDequivEcr/efeque permet d'écrire un tableau de correspondance dans une équivalence pour un type d'entité (MED_NOEUD, MED_MAILLE, MED_FACE, MED_ARETE). Si cette entité correspond à un élément, il faut en plus préciser le type géométrique de l'élément. Ce type géométrique peut être :

- Pour les noeuds : 0.
- Pour les mailles : MED_POINT1, MED_SEG2, MED_SEG3, MED_TRIA3, MED_TRIA6, MED_QUAD4, MED_QUAD8, MED_POLYGONE.
- Pour les faces : MED_TRIA3, MED_TRIA6, MED_QUAD4, MED_QUAD8, MED_POLYGONE.
- Pour les arêtes : MED_SEG2 et MED_SEG3.

La définition du tableau de correspondance doit respecter la convention définie dans la rubrique Conventions sur la définition des correspondances dans une équivalence.

### Lire le nombre d'équivalence dans un maillage

La routine MEDnEquiv/efnequ permet de lire le nombre d'équivalence dans un maillage.

Remarques :

- La présence des équivalences dans un maillage est optionnelle : un maillage peut contenir de zéro à plusieurs équivalences.

### Accéder aux équivalences dans un maillage

Dès que l'on connaît le nombre d'équivalence, il est possible d'accéder à chacune d'entre elles par l'intermédiaire d'une boucle. Si on a "N" équivalences, cette boucle ira de 1 à N. A chaque itération, la valeur du compteur de la boucle est un indice permettant l'accès à une équivalence donnée.

### Lire les informations sur une équivalence

La routine MEDequivInfo/efequi permet de lire les informations sur une équivalence, à savoir :

- Le nom.
- La description.

### Accéder aux tableaux de correspondances dans une équivalence

Dans une équivalence donnée, l'accès aux tableaux de correspondances se fait type d'entité par type d'entité de la manière suivante :

- Pour chaque type d'entité du maillage :
  - Lire le nombre de correspondance portant sur le type d'entité dans l'équivalence.
  - Si ce nombre est positif, lire le tableau des correspondances.

### Lire le nombre de correspondance dans un tableau de correspondances

La routine MEDnCorres/efncor permet de lire dans une équivalence le nombre de correspondance pour un type d'entité (MED_NOEUD, MED_MAILLE, MED_FACE, MED_ARETE). Si cette entité correspond à un élément, il faut en plus préciser le type géométrique de l'élément. Ce type géométrique peut être :

- Pour les noeuds : 0.
- Pour les mailles : MED_POINT1, MED_SEG2, MED_SEG3, MED_TRIA3, MED_TRIA6, MED_QUAD4, MED_QUAD8, MED_POLYGONE.
- Pour les faces : MED_TRIA3, MED_TRIA6, MED_QUAD4, MED_QUAD8, MED_POLYGONE.
- Pour les arêtes : MED_SEG2 et MED_SEG3.

### Lire un tableau de correspondance dans une équivalence

La routine MEDequivLire/efequl permet de lire un tableau de correspondance dans une équivalence pour un type d'entité (MED_NOEUD, MED_MAILLE, MED_FACE, MED_ARETE). Si cette entité correspond à un élément, il faut en plus préciser le type géométrique de l'élément. Ce type géométrique peut être :

- Pour les noeuds : 0.
- Pour les mailles : MED_POINT1, MED_SEG2, MED_SEG3, MED_TRIA3, MED_TRIA6, MED_QUAD4, MED_QUAD8, MED_POLYGONE.
- Pour les faces : MED_TRIA3, MED_TRIA6, MED_QUAD4, MED_QUAD8, MED_POLYGONE.
- Pour les arêtes : MED_SEG2 et MED_SEG3.

La définition du tableau de correspondance récupéré doit respecter la convention définie dans la rubrique Conventions sur la définition des correspondances dans une équivalence.

# Exemples de programmation

### Exemple de création d'équivalence dans un maillage

Le programme suivant va :

- Créer le fichier "test12.med".
- Créer dans ce fichier un maillage non structuré.
- Créer dans ce maillage une équivalence.
- Ecrire dans l'équivalence un tableau de correspondances sur les mailles MED_TRIA3.
- Fermer le fichier "test12.med".

Accès aux sources :

- Version C.
- Version FORTRAN.

### Exemple de lecture de toutes les équivalences d'un maillage

Le programme suivant offre un exemple de lecture des équivalences d'un maillage. Ce programme va :

- Ouvrir le fichier MED dont le nom est passé en argument en mode MED_LECTURE.
- Accéder au premier maillage du fichier.
- Lire le nombre d'équivalence dans ce maillage.
- Pour chaque équivalence :
  - Lire les informations sur l'équivalence.
  - Lire tous les tableaux de correspondance sur les noeuds, les différents types géométriques de mailles, de faces et d'arêtes.
- Fermer le fichier MED.

Accès aux sources :

- Version C.
- Version FORTRAN.

# Conventions sur la définition des correspondances dans une équivalence

Une équivalence est une liste de correspondances 2 à 2 entre des entités (noeuds, mailles, faces, arêtes) d'un même type. Les correspondances entre entités sont stockées 2 à 2 en mémoire dans une équivalence : ainsi le tableau de correspondances suivant {1,2,3,4,5,6} appliqué à des entités de type MED_TRIA3, signifie qu'on a les 3 correspondances suivantes :

- Entre le triangle numéro 1 et le triangle numéro 2.
- Entre le triangle numéro 3 et le triangle numéro 4.
- Entre le triangle numéro 5 et le triangle numéro 6.