Documentation de la bibliothèque MED-fichier V2.2 : Guide d'utilisation - Module "MED_Famille".
|
Retour à la page de garde du guide d'utilisation
Les routines disponibles permettent de :
- Créer une famille dans un maillage.
- Savoir combien de familles contient un maillage.
- Savoir combien d'attribut contient une famille.
- Savoir combien de groupe contient une famille.
- Lire les informations sur une famille (valeurs des attributs, liste des groupes).
- Convertir une liste de groupes en familles et écrire ces familles dans un maillage.
Ces routines sont détaillées dans le
guide de référence du module MED_Famille.
La routine MEDfamCr/effamc permet de créer une
famille dans un maillage.
Les conventions sur la création des familles dans un maillage
sont décrites dans la rubrique Conventions sur la définition des familles dans un maillage.
La routine MEDnFam/efnfam permet de lire le nombre de famille
dans un maillage.
Dès que l'on connait le nombre de famille, il est possible d'accéder
à chaque famille par l'intermédiaire d'une boucle.
Si on a "N" familles, 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 famille donnée.
La lecture des familles d'un maillage consiste à :
- Déterminer le nombre de famille.
- Pour chaque famille :
- Lire le nombre d'attributs
- Lire le nombre de groupes.
- Allouer la mémoire nécessaire au stockage des noms de groupes
et des attributs en mémoire.
- Lire les informations sur la famille (nom, numéro, attribut(s), groupes).
La routine MEDnAttribut/efnatt permet de lire le nombre
d'attribut dans une famille.
La routine MEDnGroupe/efngro permet de lire le nombre
de groupe dans une famille.
La routine MEDfamInfo/effami permet de lire les
informations sur une famille. Les données
lues sont :
- Le nom.
- Le numéro.
- Les attributs.
- Les groupes.
Les conventions sur la définition des familles dans un maillage
sont décrites dans la rubrique Conventions sur la définition des familles dans un maillage.
La routine MEDgro2famCr/efg2fc permet de :
- Convertir une liste de groupes d'entités en familles d'entités.
- Créer ces familles dans un maillage.
- Ecrire les numéros des familles des entités dans un maillage.
Avertissements : Cette routine n'a pas encore été testée
sur de gros cas d'utilisation. Il est recommandé d'attendre une
prochaine version de la bibliothèque avant de l'utiliser.
Le programme suivant crée dans un maillage des familles de noeuds
et d'éléments selon les conventions définies dans la rubrique
Conventions sur la définition des familles dans un maillage.
Ce programme va :
- Créer un fichier de nom "test8.med".
- Créer dans ce fichier un maillage non structuré.
- Créer la famille vide de numéro 0.
- Créer 3 familles d'éléments de numéros -1, -2 et -3.
- Créer 2 familles de noeuds de numéros 1 et 2.
- Fermer le fichier "test8.med".
Accès aux sources :
Le programme suivant va lire toutes les familles d'un maillage
selon les conventions définies dans la rubrique
Conventions sur la définition des familles dans un maillage.
Ce programme va :
- Ouvrir le fichier de nom "test8.med" en mode MED_LECTURE.
- Identifier le premier maillage de ce fichier.
- Lire le nombre de famille de ce maillage.
- Pour chaque famille :
- Lire le nombre de groupe.
- Lire le nombre d'attribut.
- Lire les informations sur la famille (nom, numéro, attribut(s), groupe(s)).
- Fermer le fichier "test8.med".
Accès aux sources :
Le programme suivant permet de :
- Créer le fichier de nom "test19.med".
- Créer dans ce fichier un maillage non structuré.
- Créer dans ce maillage la famille vide de numéro 0.
- Convertir une liste de groupe de noeuds en familles de noeuds et les créer dans le maillage.
- Convertir une liste de groupe de d'éléments en familles d'éléments et les créer dans le maillage.
- Fermer le fichier "tets19.med".
Accès aux sources :
- Une famille est composée de :
- Une liste d'attributs de valeurs entières (éventuellement vide).
- Une liste de noms de groupes (éventuellement vide).
-
Chaque attribut de famille est composé de :
- Un descripteur entier qui correspond à un numéro d'ordre dans la liste.
- Une valeur entière.
- Un descripteur qui est une chaîne de MED_TAILLE_DESC (200) caractères.
Les descripteurs et les valeurs sont stockés dans deux listes distinctes. Les descripteurs sont
stockés dans un tableau de caractères.
- Dans un maillage MED, on trouve trois types de familles:
- La famille de numéro 0 qui ne comporte aucun attribut ni groupe.
- Zéro ou plusieurs familles des noeuds dont le numéro doit être strictement positif.
- Zéro ou plusieurs familles d'éléments (mailles/faces/arêtes) dont le numéro doit être strictement négatif.
- La définition de la famille vide de numéro 0 est obligatoire, elle constitue la famille
de référence pour tous les noeuds et les éléments qui n'appartiennent
à aucun groupe et n'ont aucun attribut.
- Une famille de noeuds peut porter le même nom qu'un famille
d'éléments. Par contre les familles d'éléments (respectivement de noeuds) doivent
toutes avoir des noms différents.
- Le numéro de famille est le lien existant entre la famille considérée et
une entité du maillage (noeud, maille, face ou arête). Ce numéro doit
être unique dans chaque maillage.