##
Documentation de la bibliothèque MED-fichier V2.2 : 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.