## Documentation de la biliothèque MED-fichier V2.2 : Guide de référence - Module "MED_Point_De_Gauss".

Sommaire de la page
- - Liste des routines Accès direct par le nom Interface C
    MEDgaussEcr MEDgaussInfo | MEDgaussLire MEDnGauss
  - Interface FORTRAN
    efgaue efgaui | efgaul efngau
- Accès thématique
  Ecriture d'un élément de référence de localisation des points de Gauss dans un fichier Interface C : MEDgaussEcr Interface FORTRAN : efgaue Lecture des informations sur un élément de référence de localisation des points de Gauss dans un fichier Interface C : MEDgaussInfo Interface FORTRAN : efgaui | Lecture d'un élément de référence de localisation des points de Gauss dans un fichier Interface C : MEDgaussLire Interface FORTRAN : efgaul Lecture du nombre d'éléments de référence de localisation des points de Gauss dans un fichier Interface C : MEDnGauss Interface FORTRAN : efngau

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

# Liste des routines

Les routines disponibles permettent de :

- Créer un élément de référence de localisation de points Gauss dans un fichier (NOUVELLE FONCTIONNALITE).
- Savoir combien d'élément de référence de localisation de points de Gauss contient un fichier (NOUVELLE FONCTIONNALITE).
- Lire les informations sur un élément de référence de localisation des points de Gauss (type géométrique, nombre de point de Gauss) (NOUVELLE FONCTIONNALITE).
- Lire un élément de référence de localisation des points de Gauss dans un fichier (NOUVELLE FONCTIONNALITE).

# Ecriture d'un élément de référence de localisation des points de Gauss dans un fichier

### Interface C

- Nom : MEDgaussEcr
- Signature :

      med_err
      MEDgaussEcr(med_idt fid, med_geometrie_element type_geo, med_float *refcoo, med_mode_switch mode_coo,
      	    med_int ngauss, med_float *gscoo, med_float * wg, char * locname)

- Paramètres :
  - fid (IN) : descripteur du fichier courant.
  - type_geo (IN) : Le type géométrique de l'entité concerné {MED_POINT,MED_SEG2 ......}
  - refcoo (IN) : Les coordonnées des noeuds de l'élément de référence (tableau de taille(typegeo%100)*(typegeo/100) )
  - mode_coo (IN) : Choix du type d'entrelacement utilisé en mémoire pour <refcoo> et <gscoo>
  - ngauss (IN) : Nombre de points de Gauss pour l'élément de référence considéré
  - gscoo (IN) : Les coordonnées des points de Gauss pour l'élément de référence (tableau de taille ngauss*type_geo/100)
  - wg (IN) : Poids à appliquer aux points d'intégration (tableau de taille ngauss)
  - locname (IN) : Nom à associer à la localisation (MED_TAILLE_NOM)
- Code retourné : 0 si réussite, -1 sinon.

### Interface FORTRAN

- Nom : efgaue
- Signature :

            subroutine efgaue( fid, typgeo, refcoo, mode_coo, ngauss,
           1                  gscoo, wg, locname,cret)
            integer fid, typgeo, mode_coo, ngauss,cret
            real*8 refcoo(*),gscoo(*),wg(*)
            character *(*) locname
            integer edfgaue

- Paramètres :
  - Idem C +
  - cret (OUT) : code de retour, 0 si réussite, -1 sinon.

### Description

Cette routine permet de définir la localisation de nom <locname> des points de Gauss pour toutes les entités de type géométrique <typgeo> d'un champ utilisant cette localisation :

- Afin de localiser les <ngauss> points de Gauss dans l'élément de référence, il est tout d'abord nécessaire de définir les coordonnées <refcoo> des points constituant cet élément.
- L'ordre d'apparition des noeuds constituant l'élément de référence doit suivre le modèle MED. Par contre cette définition est distincte de l'espace utilisé pour le maillage, la dimension de l'espace est celle du type géométrique (dimension = (valeur de "typegeo")/100). Il est donc possible d'utiliser des coordonnées relatives pour les (typegeo%100) noeuds de l'élément de référence.
- Une fois l'élément de référence défini, il est possible d'y placer les <ngauss> points de Gauss en plaçant leurs coordonnées dans le tableau <gscoo>. Ces coordonnées sont dans le même espace de dimension(typegeo/100) que celui de l'élément de référence.
- Il est possible de définir un poids pour chaque point de Gauss dans le tableau <wg>.

### Remarques

- Le nom de la localisation est une chaîne de MED_TAILLE_NOM (32) caractères.
- Le type d'entrelacement utilisé en mémoire est soit :
  - MED_FULL_INTERLACE : (x1,y1,z1,x2,...)
  - MED_NO_INTERLACE : (x1,x2,y1,y2,z1,z2)
- Une localisation doit être définie avant d'être utilisée en référence dans la routine MEDchampEcr/efchae.
- A la lecture des champs portant sur les points de Gauss des éléments, le nombre de point de Gauss <ngauss> est renvoyé par les routines MEDpasdetempsInfo/efpdti et MEDchampRefInfo/efrefi. Ce nombre correspond à celui passé en argument à MEDgaussEcr/efgaue.
- Apport fonctionnel de MED-fichier V2.2 : Il est désormais possible de définir des modèles de localisation des points de Gauss sur des éléments de référence.

# Lecture des informations sur un élément de référence de localisation des points de Gauss

### Interface C

- Nom : MEDgaussInfo
- Signature :

      med_err
      MEDgaussInfo(med_idt fid, int indice, char * locname, med_geometrie_element * type_geo,
      	     med_int * ngauss )

- Paramètres :
  - fid (IN) : descripteur du fichier
  - indice (IN) : itérateur (commence à 1)
  - locname (OUT): Nom associé à la localisation (MED_TAILLE_NOM)
  - type_geo (OUT): Le type géométrique de l'entité concerné {MED_POINT,MED_SEG2 ......}
  - ngauss (OUT): Nombre de points de Gauss pour l'élément de référence considéré
- Code retourné : 0 si réussite, -1 sinon.

### Interface FORTRAN

- Nom : efgaui
- Signature :

            subroutine efgaui( fid , indice , locname, typgeo, ngauss , cret)
            integer fid,indice,typgeo,ngauss,cret
            character *(*) locname

- Paramètres :
  - Idem C +
  - cret (OUT) : code de retour, 0 si réussite, -1 sinon.

### Description

Cette routine lit les informations sur un élément de référence de localisation des points de Gauss. Les informations lues sont :

- Le nom du modèle de localisation.
- Le nombre de points Gauss définis dans ce modèle.

### Remarques

- Une fois le nombre de localisations connu, il est possible de boucler sur tous ces éléments de référence. A chaque itération, la routine MEDgaussInfo/efgaui permet d'identifier chaque élément de référence.
- Apport fonctionnel de MED-fichier V2.2 : Il est désormais possible de définir des modèles de localisation des points de Gauss sur des éléments de référence.

# Lecture d'un élément de référence de localisation des points de Gauss dans un fichier

### Interface C

- Nom : MEDgaussLire
- Signature :

      med_err
      MEDgaussLire(med_idt fid, med_float *refcoo, med_float *gscoo, med_float * wg, med_mode_switch mode_coo, char *locname)

- Paramètres :
  - fid (IN) : descripteur du fichier
  - refcoo (OUT) : Les coordonnées des noeuds de l'élément de référence (tableau de taille(typegeo%100)*(typegeo/100) )
  - gscoo (OUT) : Les coordonnées des points de Gauss pour l'élément de référence (tableau de taille ngauss*type_geo/100)
  - wg (OUT) : Poids à appliquer aux points d'intégration (tableau de taille ngauss)
  - mode_coo (IN) : Choix du type d'entrelacement utilisé en mémoire pour refcoo et gscoo
  - locname (IN) : Nom à associer à la localisation (MED_TAILLE_NOM)
- Code retourné : 0 si réussite, -1 sinon.

### Interface FORTRAN

- Nom : efgaul
- Signature :

            subroutine efgaul( fid, refcoo, gscoo, wg,
           1                   mode_coo, locname, cret)
            integer fid,mode_coo,cret
            real*8 refcoo(*),gscoo(*),wg(*)
            character *(*) locname

- Paramètres :
  Idem C +
  - cret (OUT) : code de retour, 0 si réussite, -1 sinon.

### Description

Cette routine permet à partir d'un nom de localisation <locname> de lire dans un fichier la localisation des points de Gauss pour toutes les entités de type géométrique <typgeo> d'un champ utilisant cette localisation. :

- Afin de localiser les <ngauss> points de Gauss dans l'élément de référence, il est tout d'abord necessaire de s'informer des coordonnées <refcoo> des points constituant cette élément.
- L'ordre d'apparition des noeuds constituant l'élément de référence apparaît suivant le modèle MED. Cette définition est distincte de l'espace utilisé pour le maillage, la dimension de l'espace utilisé est celle du type géométrique (typegeo/100).
- Une fois l'élément de référence défini, il est possible de retrouver l'emplacement des <ngauss> points de Gauss en lisant leurs coordonnées dans le tableau <gscoo>. Ces coordonnées sont dans le même espace de dimension(typegeo/100) que celui de l'élément de référence.
- Chaque point de Gauss se voit affecter un poid indiqué dans le tableau <wg>.

### Remarques

- Le nom de la localisation est une chaîne de MED_TAILLE_NOM (32) caractères.
- Le type d'entrelacement utilisé en mémoire est soit :
  - MED_FULL_INTERLACE : (x1,y1,z1,x2,...)
  - MED_NO_INTERLACE : (x1,x2,y1,y2,z1,z2)
- Apport fonctionnel de MED-fichier V2.2 : Il est désormais possible de définir des modèles de localisation des points de Gauss sur des éléments de référence.

# Lecture du nombre d'éléments de référence de localisation des points de Gauss dans un fichier

### Interface C

- Nom : MEDnGauss
- Signature :

      med_int
      MEDnGauss(med_idt fid)

- Paramètres :
  - fid (IN) : descripteur du fichier.
- Code retourné : nombre d'éléments de référence de localisation des points de Gauss dans le fichier d'ID fid (eventuellement 0) si réussite, -1 sinon.

### Interface FORTRAN

- Nom : efngau
- Signature :

            subroutine efngau(fid,n,cret)
            integer fid, n, cret

- Paramètres :
  - fid (IN) : descripteur du fichier.
  - n (OUT) : nombre d'éléments de référence de localisation des points de Gauss dans le fichier d'ID fid (eventuellement 0).
  - cret (OUT) : code de retour, 0 si réussite, -1 sinon.

### Description

Cette routine renvoie le nombre d'élément de référence de localisation des points de Gauss du fichier.

### Remarques

- Apport fonctionnel de MED-fichier V2.2 : Il est désormais possible de définir des modèles de localisation des points de Gauss sur des éléments de référence.