##
Documentation de la bibliothèque MED-fichier V2.3 : De la V2.2 à la V2.3

Sommaire de la rubrique

- Introduction
- Evolutions apportées au modèle de données
  - Support des maillages distribués
- Evolution apportées aux types pré-existants
  - Numérotation globale des entités
- Evolutions apportées à l'API de la bibliothèque
  - Nouvelles fonctionnalités
    - joints
    - numérotation globale
- Evolutions apportées aux utilitaires livrés avec la V2.3
  - Utilitaire MDUMP
  - Utilitaire MEDCONFORME
  - Utilitaire MEDIMPORT
- Mettre à jour une interface MED-fichier V2.2
  - Prise en compte des joints
  - Prise en compte de la numérotation globale des entités

# Introduction

Cette rubrique a pour objectif de faciliter le passage de MED-fichier V2.2 à MED-fichier V2.3, elle s'adresse en premier lieu aux développeurs qui veulent mettre à niveau leur interface avec la bibliothèque MED-fichier au sein d'un code.

Précisons immédiatement que l'API de MED-fichier V2.3 est compatible a 100% par rapport à MED-fichier V2.2 car elle résulte uniquement de l'ajout de nouvelles fonctions prenant en compte les joints et la numérotation globale.

# Evolutions apportées au modèle de données

### Support des maillages distribués

MED-fichier V2.3 donne la possibilité de stocker les informations nécessaires à la définition de maillages distribués sur plusieurs sous-domaines. Chaque maillage distribué peut être sauvegardé dans un fichier MED classique auquel peuvent s'ajouter la définition :

- de « joints », les raccords entre le maillage décrit et les maillages de sous-domaines voisins,
- d'une numérotation globale optionnelle des entités pour repérer les entités du domaine considéré par rapport au domaine global.

Pour plus de détails, on peut consulter le modèle de données et le guide d'utilisation du module "joint".

# Evolutions apportées aux types de données pré-existants

#### Numérotation globale des entités

Dans MED-fichier 2.3, on peut ajouter une numérotation globale optionnelleee à toute entité du maillage (noeud, arrete, ou maille). Le modèle de donnée a donc evolué pour supporter cette nouvelle fonctionalité, ceci en restant totalement compatible avec la version précédente de MED-fichier. Pour plus de détails, on peut consulter le modèle de données.

# Evolutions apportées à l'API de la bibliothèque

### Nouvelles fonctionnalités

#### Ecriture et lecture des joints associés à un maillage particulier

L'API de MED-fichier V2.3 propose des routines pour écrire/lire le contenu de joints associés à un maillage. Comme décrit dans le modele de données, un joint est une aggrégation de correspondances entre entités de même type ou non :

- A l'écriture :
  - La routine MEDjointCr/efjntc permet de créer un joint dans un fichier.
  - La routine MEDjointEcr/efjnte permet d'écrire le contenu d'une correspondance dans un joint
- A la lecture :
  - La routine MEDnJoint/efnjnt permet de lire le nombre de joints associé à un maillage dans un fichier.
  - La routine MEDjointInfo/efjnti permet de lire les informations sur un joint.
  - La routine MEDjointnCorres/efjnco permet de lire le nombre de correspondances d'un type donné qui composent un joint.
  - La routine MEDjointTypeCorres/efjtco permet de lire les informations sur une correspondance qui compose un joint.
  - La routine MEDjointLire/efjntl permet de lire le contenu d'une correspondance qui compose un joint.

La description de ces routines est disponible dans le guide de référence. Le mode d'utilisation de ces routines est fourni par le guide d'utilisation.

#### Ecriture et lecture d'une numérotation globale associée à des entités du maillage

- A l'écriture :
  - La routine MEDglobalNumEcr/efgnme permet d'ajouter une numérotation globale optionnelle sur des entités composant un maillage.
- A la lecture :
  - La routine MEDglobalNumLire/efgnml permet de lire une numérotation globale éventuellement associée sur des entités composant un maillage.

# Evolutions apportées aux utilitaires

### Utilitaire MDUMP

L'utilitaire mdump prend compte l'ensemble des évolutions du modèle et fonctionnelles pré-citées.

### Utilitaire MEDCONFORME

L'utilitaire medconforme permet de vérifier la conformité d'un fichier MED vis-à-vis de la bibliothèque MED-fichier V2.3.

Pour un fichier donné, l'utilitaire medconforme :

- Précise à quelle version de MED-fichier, medconforme est associé (ici MED-fichier V2.3).
- Vérifie le format du fichier (HDF) passé en paramètre (est-il au format HDF V5 ?).
- Vérifie si le fichier a été créé avec la même version de la bibliothèque MED-fichier (MED V2.3).

### Utilitaire MEDIMPORT

Aucun utilitaire "d'importation" n'est nécessaire comme le format MED V2.3 est totalement compatible avec le format MED V2.2

# Mettre à jour une interface MED-fichier V2.3

### Prise en compte des Joints

On a 2 possibilités :

- La première est de ne pas prendre en compte les joints. Dans ce cas de figure, on ne change rien à l'interface.
- La seconde est de pouvoir écrire/lire ces informations.

Dans cette seconde optique, vous devez prendre en compte les routines sur les joints fournies par MED-fichier V2.3 :

- A l'écriture :
  - La routine MEDjointCr/efjntc permet de créer un joint dans un fichier.
  - La routine MEDjointCorrEcr/efjcoe permet d'écrire le contenu d'une correspondance dans un joint
- A la lecture :
  - La routine MEDnJoint/efnjnt permet de lire le nombre de joints associé à un maillage dans un fichier.
  - La routine MEDjointInfo/efjnti permet de lire les informations sur un joint.
  - La routine MEDjointnCorr/efjnco permet de lire le nombre de correspondances qui compose un joint.
  - La routine MEDjointCorrInfo/efjcoi permet de lire les informations sur une correspondance qui compose un joint.
  - La routine MEDjointCorrLire/efjcol permet de lire le contenu d'une correspondance qui compose un joint.
  - La routine MEDjointCorrnEnt/efjcne permet de lire le nombre de couples de type d'entité en regard différent qui composent une correspondance.
  - La routine MEDjointCorrEntInfo/efjcei permet de lire les informations sur un type de couple d'entité en regard qui composent une correspondance.

### Prise en compte de la numérotation globale des entités

- La routine MEDglobalNumEcr/efgnme permet d'ajouter une numérotation globale optionnelle sur des entités composant un maillage.
- La routine MEDglobalNumLire/efgnml permet de lire une numérotation globale éventuellement associée sur des entités composant un maillage.