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

Sommaire de la page
Introduction Modèles de programmation Mode de définition des variables scalaire dans un fichier Créer une variable scalaire dans un fichier Ecrire une valeur dans une variable scalaire Lire le nombre de variable scalaire dans un fichier Accès aux variables scalaire d'un fichier Lire les informations sur une variable scalaire Accès au(x) valeur(s) d'une variable scalaire Lire le nombre de pas de temps dans une variable scalaire Lire les informations sur un pas de temps dans une variable scalaire Lire une valeur dans une variable scalaire Exemples de programmation Exemple d'écriture de variables scalaire dans un fichier Exemple de lecture des variables scalaire d'un fichier

Retour à la page de garde du guide d'utilisation

# Introduction

Les routines disponibles permettent de :

- Créer une variable scalaire de type entier ou flottant dans un fichier.
- Ecrire une valeur entière ou flottante dans une variable scalaire du type correspondant selon éventuellement un pas de temps et/ou un numéro d'ordre.
- Lire le nombre de variables scalaires dans un fichier.
- Lire les informations sur une variable scalaire (nom, type, description associée).
- Lire le nombre de pas de temps/numéro d'ordre dans un variable scalaire.
- Lire les informations sur un pas de temps et/ou un numéro d'ordre.
- Lire une valeur entière ou flottante dans une variable scalaire du type correspondant selon éventuellement un pas de temps et/ou un numéro d'ordre.

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

# Modèles de programmation

### Mode de définition des variables scalaire dans un fichier

L'écriture de variables scalaire dans un fichier MED est optionnelle : un fichier MED peut contenir de 0 à plusieurs variables.

Le mode d'écriture pour chaque variable scalaire consiste à :

- Créer la variable. Cette variable peut être de type entier ou réel.
- Ecrire dans la variable une ou plusieurs valeurs du type correspondant. Chaque valeur peut être éventuellement associée à un pas de temps et ou un numéro d'ordre.

### Créer une variable scalaire dans un fichier

La routine MEDscalaireCr/efscac permet de créer une variable scalaire dans un fichier.

Le type de la variable est au choix :

- MED_FLOAT64 : flottant 64 bits IEEE.
- MED_INT32 : entier 32 bits.
- MED_INT64 : entier 64 bits

### Ecrire une valeur dans une variable scalaire

On dispose de 2 routines selon le type de la variable :

- La routine MEDscalaireEntierEcr/efscee permet d'écrire une valeur dans un variable scalaire de type entier.
- La routine MEDscalaireFlottantEcr/efscfe permet d'écrire une valeur dans un variable scalaire de type réel.

Dans les 2 cas, la valeur est éventuellement associée à un pas de temps et/ou un numéro d'ordre. La présence du pas de temps et celle du numéro d'ordre sont optionnelles :

- La constante MED_NOPDT (-1) permet d'indiquer qu'il n'y a pas de pas de temps.
- La constante MED_NONOR (-1) permet d'indiquer qu'il n'y a pas de numéro d'ordre.

### Lire le nombre de variable scalaire dans un fichier

La routine MEDnScalaire/efnsca permet de lire le nombre de variables scalaire dans un fichier.

Remarque :

- La présence de variable scalaire dans un maillage est optionnelle : un maillage peut contenir de zéro à plusieurs variables.

### Accès aux variables scalaire d'un fichier

Dès que l'on connaît le nombre de variables scalaire, il est possible d'accéder à chacune d'entre elles par l'intermédiaire d'une boucle. Si on a "N" variables, 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 variable donnée.

### Lire les informations sur une variable scalaire

La routine MEDscalaireInfo/efscai permet de lire les informations sur une variable scalaire repérée selon un indice dans le fichier -i.e. :

- Le nom.
- Le type.
- La description associée.

### Accès au(x) valeur(s) d'une variable scalaire

Pour accéder à l'ensemble des valeurs d'une variable scalaire, il faut :

- Lire le nombre de valeur, ce nombre est donné par le nombre pas de temps. Une valeur associée à aucun pas de temps est comptabilisée par cette opération.
- Pour chaque pas de temps (boucle) :
  - Lire les informations sur le pas de temps.
  - Lire la valeur associée au pas de temps.

### Lire le nombre de pas de temps dans une variable scalaire

La routine MEDnScalairePasdeTemps/efnspd permet de lire le nombre de pas de temps dans une variable scalaire.

### Lire les informations sur un pas de temps dans une variable scalaire

La routine MEDscalairePasdetempsInfo/efspdi permet de lire les informations sur un pas de temps. Il s'agit en fait d'un couple (pas de temps, numéro d'ordre). On lit :

- Le numéro du pas de temps.
- L'unité du pas de temps.
- La valeur du pas de temps.
- La valeur du numéro d'ordre.

La présence du pas de temps et celle du numéro d'ordre sont optionnelles. Dans ce cas, on récupère

- La constante MED_NOPDT (-1) pour indiquer qu'il n'y a pas de pas de temps à la place du numéro de pas de temps.
- La constante MED_NONOR (-1) pour indiquer qu'il n'y a pas de numéro d'ordre.

### Lire une valeur dans une variable scalaire

On dispose de 2 routines selon le type de la variable :

- La routine MEDscalaireEntierLire/efscel permet de lire une valeur dans un variable scalaire de type entier.
- La routine MEDscalaireFlottantLire/efscfl permet de lire une valeur dans un variable scalaire de type réel.

Dans les 2 cas, la valeur est éventuellement associée à un pas de temps et/ou un numéro d'ordre. La présence du pas de temps et celle du numéro d'ordre sont optionnelles :

- La constante MED_NOPDT (-1) permet d'indiquer qu'il n'y a pas de pas de temps.
- La constante MED_NONOR (-1) permet d'indiquer qu'il n'y a pas de numéro d'ordre.

# Exemples de programmation

### Exemple d'écriture de variables scalaire dans un fichier

Le programme suivant permet de :

- Créer le fichier "test21.med".
- Créer dans ce fichier une variable scalaire entière.
- Ecrire dans cette variable :
  - Une valeur sans pas de temps et sans numéro d'ordre.
  - Une valeur avec un pas de temps et sans numéro d'ordre.
- Créer dans le fichier une variable scalaire de type réel :
- Ecrire dans cette variable un valeur avec un pas de temps et un numéro d'ordre.
- Fermer le fichier "test21.med".

Accès aux sources :

- Version C.
- Version FORTRAN.

### Exemple de lecture des variables scalaire d'un fichier

Le programme suivant permet de :

- Ouvrir le fichier "test21.med" en mode MED_LECTURE.
- Lire dans le fichier le nombre de variable scalaire.
- Pour chaque variable :
  - Lire les informations sur la variable.
  - Lire le nombre de pas de temps.
  - Pour chaque pas de temps :
    - Lire les informations sur le pas de temps.
    - Lire la valeur associée.
- Fermer le fichier "test21.med".

Accès aux sources :

- Version C.
- Version FORTRAN.