Documentation de la bibliothèque MED-fichier V2.2 : Qu'est-ce que MED-fichier ?


Sommaire de la rubrique

La problématique des échanges de données.

Les échanges de données sont devenus une nécessité dans le cadre des études de simulation multi-physiques faisant collaborer différents logiciels de calcul scientifique. Pour réaliser ces échanges, il est nécessaire de développer entre les codes des passerelles logicielles. Pour cela deux approches sont possibles :

  1. L'approche au cas par cas où pour chaque couple de code devant communiquer, on réalise une passerelle spécifique et non réutilisable.
  2. L'approche standardisée qui consiste à réaliser des passerelles logicielles à base de modules externes réutilisables par différents couples de codes.

La démarche MED (Modélisation et Echanges de Données) s'inscrit dans cette seconde optique. Cette démarche consiste à :

  1. ETAPE 1 : Préciser la nature des données échangées. Cette étude est guidée par l'expression des besoins utilisateurs et doit aboutir à la définition d'un modèle d'échange de données balayant l'ensemble du spectre des données échangeables. Ce travail doit s'accompagner d'une évaluation :
  2. ETAPE 2 : A l'issue de la première étape, il s'agit de définir un outil logiciel qui permette :

Pour MED, cela nous a conduit à :

Le modèle d'échange de données MED

Le modèle de données MED représente actuellement les maillages et les champs de résultats. Ce sont ces données que MED propose d'échanger entre les codes.

L'idée est de pouvoir échanger lors d'études multi-physiques des maillages de plusieurs millions de noeuds.

Vous pouvez consulter la description complète du modèle de données associé à la V2.2.

La bibliothèque MED-fichier et son intégration dans un code de calcul

L'idée directrice a été de définir un module logiciel ré-utilisable (la bibliothèque MED-fichier) qui permette à des codes de calcul scientifique d'échanger des fichiers contenant les données du modèle.

Intégrer la bibliothèque MED-fichier dans un code de calcul revient à définir une architecture fonctionnelle comprenant les couches suivantes :

  1. La couche basse qui fournit les fonctions d'accès au support d'échange (fichier sur disque).
  2. La couche intermédiaire qui définit le mode de représentation et d'accès aux données du modèle commun et utilise les services de la couche basse.
  3. La couche haute qui gère l'import/export des données du modèle commun à partir ou vers les structures de données propres à chaque code de calcul. La couche haute utilise les services de la couche intermédiaire.

L'architecture technique découle tout naturellement de l'architecture fonctionnelle :

  1. La couche basse devient une couche logicielle adhérente au support physique des échanges. Cette couche constitue un module réutilisable et externe au code de calcul. De plus elle est totalement indépendante du modèle de données commun : elle offre uniquement un service d'accès à des structures de données générales (tableaux, listes, matrices, ...). Dans le cadre de MED, étant donnés les volumes de donnés ciblés (maillages à plusieurs millions de noeuds), c'est le format de fichier binaire HDF qui a été choisi. HDF est un format de fichier développé par le NCSA. Pour plus d'informations vous pouvez consulter le site WEB dédié à HDF.
  2. La couche intermédiaire est l'outil informatique d'accès aux données du modèle commun : Cette couche constitue également un module réutilisable et externe au code de calcul. La bibliothèque informatique MED-fichier constitue ce module. Elle offre une API (Application Programming Interface) C et FORTRAN.
  3. Enfin chaque code de calcul compatible avec le modèle de données commun peut intégrer en son sein une interface avec la couche intermédiaire. Cette interface constitue la couche logicielle haute. Une interface avec la bibliothèque MED permet à un code de calcul de lire/écrire dans un fichier au format HDF les données du modèle commun.

Cas d'utilisation

Ce qu'il faut retenir

Ce que MED-fichier apporte

Historique des développements