## Documentation de la bibliothèque MED-fichier V2.3 : Guide de référence - Module "MED_Variable_Scalaire".

Sommaire de la page
- - Liste des routines Accès direct par le nom Interface C
    MEDscalaireCr MEDscalaireEntierEcr MEDscalaireFlottantEcr | MEDnScalaire MEDscalaireInfo MEDnScalairePasdeTemps | MEDscalairePasdetempsInfo MEDscalaireEntierLire MEDscalaireFlottantLire
  - Interface FORTRAN
    efscac efscee efscfe | efnsca efscai efnspd | efspdi efscel efscfl
- Accès thématique
  Création d'une variable scalaire Interface C : MEDscalaireCr Interface FORTRAN : efscac Ecriture d'une valeur scalaire entière Interface C : MEDscalaireEntierEcr Interface FORTRAN : efscee Ecriture d'une valeur scalaire flottante Interface C : MEDscalaireFlottantEcr Interface FORTRAN : efscfe Lecture du nombre de variable scalaire Interface C : MEDnScalaire Interface FORTRAN : efnsca Lecture des informations sur une variable scalaire Interface C : MEDscalaireInfo Interface FORTRAN : efscai | Lecture du nombre de pas de temps dans une variable scalaire Interface C : MEDnScalairePasdeTemps Interface FORTRAN : efnspd Lecture des informations sur un pas de temps Interface C : MEDscalairePasdetempsInfo Interface FORTRAN : efspdi Lecture d'une valeur entière dans une variable scalaire Interface C : MEDscalaireEntierLire Interface FORTRAN : efscel Lecture d'une valeur flottante dans une variable scalaire Interface C : MEDscalaireFlottantLire Interface FORTRAN : efscfl

Retour à la page du guide de référence.

# Liste des routines

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.

# Création d'une variable scalaire

### Version C

- Nom : MEDscalaireCr
- Signature :

      med_err
      MEDscalaireCr(med_idt fid,char *scalaire, med_type_champ type, char *desc)

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - sca (IN) : nom de la variable scalaire.
  - type (IN) : type de la variable scalaire.
  - desc (IN) : description associée à la variable.
- Code retourné : 0 si réussite, -1 sinon.

### Version FORTRAN

- Nom : efscac
- Signature :

            subroutine efscac(fid,sca,type,desc,cret)

            character *(*) sca,desc
            integer fid, cret, type

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - sca (IN) : nom de la variable scalaire.
  - type (IN) : type de la variable scalaire.
  - desc (IN) : description associée à la variable.
  - cret (OUT) : code de retour, 0 si réussite, -1 sinon.

### Description

Création d'un variable scalaire numérique dans un fichier.

### Remarques

- Le nom de la variable scalaire est une chaîne de MED_TAILLE_NOM caractères en Fortran (au plus MED_TAILLE_NOM en C).
- Le type de la variable est au choix :
  - MED_FLOAT64 : flottant 64 bits IEEE.
  - MED_INT32 : entier 32 bits.
  - MED_INT64 : entier 64 bits
- La description est une chaîne de MED_TAILLE_DESC (200) caractères.

# Ecriture d'une valeur scalaire entière

### Version C

- Nom : MEDscalaireEntierEcr
- Signature :

      med_err
      MEDscalaireEntierEcr(med_idt fid, char *sca,med_int val, med_int numdt,
                           char *dtunit, med_float dt, med_int numo)

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - sca (IN) : nom de la variable scalaire.
  - val (IN) : valeur entière.
  - numdt (IN) : numéro du pas de temps.
  - dtunit (IN) : unité du pas de temps.
  - dt (IN) : valeur du pas de temps.
  - numo (IN) : numéro d'ordre.
- Code retourné : 0 en cas de succès, -1 sinon.

### Version FORTRAN

- Nom : efscee
- Signature :

            subroutine efscee(fid,sca,val,numdt,dtunit,dt,numo,cret)

            character *32 sca
            character*16 dtunit
            integer fid,val,n,cret
            integer numdt,numo
            real*8 dt

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - sca (IN) : nom de la variable scalaire.
  - val (IN) : valeur entière.
  - numdt (IN) : numéro du pas de temps.
  - dtunit (IN) : unité du pas de temps.
  - dt (IN) : valeur du pas de temps.
  - numo (IN) : numéro d'ordre.
  - cret (OUT) : code de retour, 0 si réussite, -1 sinon.

### Description

Ecriture d'une valeur entière dans une variable scalaire de type entier. Cette valeur entière est éventuellement associée à un pas de temps et/ou un numéro d'ordre.

### Remarques

- Le nom de la variable scalaire est une chaîne de MED_TAILLE_NOM caractères en Fortran (au plus MED_TAILLE_NOM en C).
- La présence d'un pas de temps est optionnelle. Dans le cas où la valeur entière n'est associée à aucun pas de temps, le paramètre numdt doit prendre la valeur MED_NOPDT (-1). Dans ce cas, les paramètres dt et dtunit ne sont pas pris en compte.
- L'unité du pas de temps est un chaîne de MED_TAILLE_PNOM (16) caractères.
- La présence d'un numéro d'ordre est optionnelle. Dans le cas où la valeur entière n'est associée à aucun numéro d'ordre, le paramètre numo doit prendre la valeur MED_NONOR (-1).

# Ecriture d'une valeur scalaire flottante

### Version C

- Nom : MEDscalaireFlottantEcr
- Signature :

      med_err
      MEDscalaireFlottantEcr(med_idt fid, char *sca,med_float val, med_int numdt,
                           char *dtunit, med_float dt, med_int numo)

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - sca (IN) : nom de la variable scalaire.
  - val (IN) : valeur flottante.
  - numdt (IN) : numéro du pas de temps.
  - dtunit (IN) : unité du pas de temps.
  - dt (IN) : valeur du pas de temps.
  - numo (IN) : numéro d'ordre.
- Code retourné : 0 en cas de succès, -1 sinon.

### Version FORTRAN

- Nom : efscfe
- Signature :

            subroutine efscfe(fid,sca,val,numdt,dtunit,dt,numo,cret)

            character *32 sca
            character*16 dtunit
            integer fid,n,cret
            integer numdt,numo
            real*8 val
            real*8 dt

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - sca (IN) : nom de la variable scalaire.
  - val (IN) : valeur flottante.
  - numdt (IN) : numéro du pas de temps.
  - dtunit (IN) : unité du pas de temps.
  - dt (IN) : valeur du pas de temps.
  - numo (IN) : numéro d'ordre.
  - cret (OUT) : code de retour, 0 si réussite, -1 sinon.

### Description

Ecriture d'une valeur flottante dans une variable scalaire de type réel. Cette valeur flottante est éventuellement associée à un pas de temps et/ou un numéro d'ordre.

### Remarques

- Le nom de la variable scalaire est une chaîne de MED_TAILLE_NOM caractères en Fortran (au plus MED_TAILLE_NOM en C).
- La présence d'un pas de temps est optionnelle. Dans le cas où la valeur entière n'est associée à aucun pas de temps, le paramètre numdt doit prendre la valeur MED_NOPDT (-1). Dans ce cas, les paramètres dt et dtunit ne sont pas pris en compte.
- L'unité du pas de temps est un chaîne de MED_TAILLE_PNOM (16) caractères.
- La présence d'un numéro d'ordre est optionnelle. Dans le cas où la valeur entière n'est associée à aucun numéro d'ordre, le paramètre numo doit prendre la valeur MED_NONOR (-1).

# Lecture du nombre de variable scalaire

### Version C

- Nom : MEDnScalaire
- Signature :

      med_int
      MEDnScalaire(med_idt fid)

- Paramètres :
  - fid (IN) : descripteur du fichier.
- Code retourné : nombre de variable scalaire si réussite, -1 sinon.

### Version FORTRAN

- Nom : efnsca
- Signature :

           subroutine efnsca(fid,n,cret)

           integer fid,cret,n

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - n (OUT) : nombre de variable scalaire.
  - cret (OUT) : code de retour, 0 si réussite, -1 sinon.

### Description

Lecture du nombre de variable scalaire dans un fichier.

### Remarques

Un fichier peut contenir plusieurs variables scalaire de noms différents.

# Lecture des informations sur une variable scalaire

### Version C

- Nom : MEDscalaireInfo
- Signature :

      med_err
      MEDscalaireInfo(med_idt fid,int ind,char *sca,
      		med_type_champ *type,char *desc)

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - ind (IN) : indice de la variable dans le fichier.
  - sca (OUT) : nom de la variable correspondant à l'indice.
  - type (OUT) : type de la variable.
  - desc (OUT) : description associée à la variable.
- Code retourné : 0 si réussite, -1 sinon.

### Version FORTRAN

- Nom : efscai
- Signature :

            subroutine efscai(fid,ind,sca,type,desc,cret)

            character *(*) sca,desc
            integer fid,ind,type,cret

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - ind (IN) : indice de la variable dans le fichier.
  - sca (OUT) : nom de la variable correspondant à l'indice.
  - type (OUT) : type de la variable.
  - desc (OUT) : description associée à la variable.
  - cret (OUT) : code de retour, 0 si réussite, -1 sinon.

### Description

Lecture des informations sur une variable scalaire repérée selon un indice dans le fichier -i.e. :

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

### Remarques

- Pour un fichier contenant N variables, les numéros d'indice vont de 1 à N.
- Les variables scalaire d'un fichier sont classées selon l'ordre alphabétique des noms des différents maillages et non selon l'ordre chronologique de création.
- Le nom de la variable scalaire est une chaîne de MED_TAILLE_NOM caractères en Fortran (au plus MED_TAILLE_NOM en C).
- Le type de la variable est au choix :
  - MED_FLOAT64 : flottant 64 bits IEEE.
  - MED_INT32 : entier 32 bits.
  - MED_INT64 : entier 64 bits
- La description est une chaîne de MED_TAILLE_DESC (200) caractères.

# Lecture du nombre de pas de temps dans une variable scalaire

### Version C

- Nom : MEDnScalairePasdeTemps
- Signature :

      med_int
      MEDnScalairePasdetemps(med_idt fid,char *sca)

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - sca (IN) : nom de la variable scalaire.
- Code retourné : nombre de pas de temps si réussite, -1 sinon.

### Version FORTRAN

- Nom : efnspd
- Signature :

            subroutine efnspd(fid,sca,n,cret)

            integer fid,n,cret
            character*32 sca

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - sca (IN) : nom de la variable scalaire.
  - n (OUT) : nombre de pas de temps.
  - cret (OUT) : code de retour, 0 si réussite, -1 sinon.

### Description

Lecture du nombre de pas de temps dans une variable scalaire.

### Remarques

- Le nom de la variable scalaire est une chaîne de MED_TAILLE_NOM caractères en Fortran (au plus MED_TAILLE_NOM en C).

# Lecture des informations sur un pas de temps

### Version C

- Nom : MEDscalairePasdetempsInfo
- Signature :

      med_err
      MEDscalairePasdetempsInfo(med_idt fid,char *sca,int ind,
      			  med_int * numdt, char * dtunit, med_float * dt,med_int * numo)

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - sca (IN) : nom de la variable correspondant à l'indice.
  - ind (IN) : indice du pas de temps dans la variable.
  - numdt (OUT) : numéro du pas de temps.
  - dtunit (OUT) : unité du pas de temps.
  - dt (OUT) : valeur du pas de temps.
  - numo (OUT) : numéro d'ordre.
- Code retourné : 0 si réussite, -1 sinon.

### Version FORTRAN

- Nom : efspdi
- Signature :

            subroutine efspdi(fid,sca,ind,
           1                  numdt,dtunit,dt,numo,cret)

            integer fid,ind,numdt,numo,cret
            character*32 sca
            character*16 dtunit
            real*8 dt

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - sca (IN) : nom de la variable correspondant à l'indice.
  - ind (IN) : indice du pas de temps dans la variable.
  - numdt (OUT) : numéro du pas de temps.
  - dtunit (OUT) : unité du pas de temps.
  - dt (OUT) : valeur du pas de temps.
  - numo (OUT) : numéro d'ordre.
  - cret (OUT) : code de retour, 0 si réussite, -1 sinon.

### Description

Lecture des informations sur un pas de temps repéré selon un indice dans une variable scalaire. 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.

### Remarques

- Le nom de la variable scalaire est une chaîne de MED_TAILLE_NOM caractères en Fortran (au plus MED_TAILLE_NOM en C).
- La présence d'un pas de temps est optionnelle. Dans le cas où la valeur entière n'est associée à aucun pas de temps, la valeur du paramètre numdt retournée est MED_NOPDT (-1). Dans ce cas, les paramètres dt et dtunit ne sont pas à prendre en compte.
- L'unité du pas de temps est un chaîne de MED_TAILLE_PNOM (16) caractères.
- La présence d'un numéro d'ordre est optionnelle. Dans le cas où la valeur entière n'est associée à aucun numéro d'ordre, la valeur du paramètre numo renvoyée est MED_NONOR (-1).

# Lecture d'une valeur scalaire entière

### Version C

- Nom : MEDscalaireEntierLire
- Signature :

      med_err
      MEDscalaireEntierLire(med_idt fid, char *sca,med_int *val, med_int numdt,med_int numo)

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - sca (IN) : nom de la variable scalaire.
  - val (OUT) : valeur entière.
  - numdt (IN) : numéro du pas de temps.
  - numo (IN) : numéro d'ordre.
- Code retourné : 0 en cas de succès, -1 sinon.

### Version FORTRAN

- Nom : efscel
- Signature :

            subroutine efscel(fid,sca,val,numdt,numo,cret)

            character *32 sca
            integer fid,val,n,cret
            integer numdt,numo

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - sca (IN) : nom de la variable scalaire.
  - val (OUT) : valeur entière.
  - numdt (IN) : numéro du pas de temps.
  - numo (IN) : numéro d'ordre.
  - cret (OUT) : code de retour, 0 si réussite, -1 sinon.

### Description

Lecture d'une valeur entière dans une variable scalaire de type entier. Cette valeur entière est éventuellement associée à un pas de temps et/ou un numéro d'ordre.

### Remarques

- Le nom de la variable scalaire est une chaîne de MED_TAILLE_NOM caractères en Fortran (au plus MED_TAILLE_NOM en C).
- La présence d'un pas de temps est optionnelle. Dans le cas où la valeur entière n'est associée à aucun pas de temps, le paramètre numdt doit prendre la valeur MED_NOPDT (-1).
- La présence d'un numéro d'ordre est optionnelle. Dans le cas où la valeur entière n'est associée à aucun numéro d'ordre, le paramètre numo doit prendre la valeur MED_NONOR (-1).

# Lecture d'une valeur scalaire flottante

### Version C

- Nom : MEDscalaireFlottantLire
- Signature :

      med_err
      MEDscalaireFlottantLire(med_idt fid, char *sca,med_float *val, med_int numdt,med_int numo)

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - sca (IN) : nom de la variable scalaire.
  - val (OUT) : valeur flottante.
  - numdt (IN) : numéro du pas de temps.
  - numo (IN) : numéro d'ordre.
- Code retourné : 0 en cas de succès, -1 sinon.

### Version FORTRAN

- Nom : efscfl
- Signature :

            subroutine efscfl(fid,sca,val,numdt,numo,cret)

            character *32 sca
            integer fid,n,cret
            integer numdt,numo
            real*8 val

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - sca (IN) : nom de la variable scalaire.
  - val (OUT) : valeur flottante.
  - numdt (IN) : numéro du pas de temps.
  - numo (IN) : numéro d'ordre.
  - cret (OUT) : code de retour, 0 si réussite, -1 sinon.

### Description

Lecture d'une valeur flottante dans une variable scalaire de type réel. Cette valeur flottante est éventuellement associée à un pas de temps et/ou un numéro d'ordre.

### Remarques

- Le nom de la variable scalaire est une chaîne de MED_TAILLE_NOM caractères en Fortran (au plus MED_TAILLE_NOM en C).
- La présence d'un pas de temps est optionnelle. Dans le cas où la valeur entière n'est associée à aucun pas de temps, le paramètre numdt doit prendre la valeur MED_NOPDT (-1).
- La présence d'un numéro d'ordre est optionnelle. Dans le cas où la valeur entière n'est associée à aucun numéro d'ordre, le paramètre numo doit prendre la valeur MED_NONOR (-1).