MAJ_21_22_maillages.c
Aller à la documentation de ce fichier.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef MESGERR
00020 #define MESGERR 1
00021 #endif
00022
00023
00024 #include "med_config.h"
00025 #include "med_outils.h"
00026 #include <string.h>
00027
00028
00029
00030
00031
00032 #include "med21.h"
00033 #include "med_hdfi21.h"
00034 #include "MAJ_21_22.h"
00035
00036 void MAJ_21_22_maillages(med_idt fid)
00037 {
00038 med_idt gid;
00039 med_err ret;
00040 int n,i;
00041 char nom[MED_TAILLE_NOM+1];
00042 char chemin[MED_TAILLE_MAA+MED_TAILLE_NOM+1];
00043 char description[MED_TAILLE_DESC+1] = "Maillage converti au format MED V2.2";
00044 med_int type = (med_int) MED_NON_STRUCTURE;
00045 med_int dimension;
00046
00047
00048 n = 0;
00049 _MEDnObjets(fid,(char *) MED_MAA,&n);
00050 EXIT_IF(n < 0,"Erreur a la lecture du nombre de maillage",NULL);
00051
00052
00053
00054
00055
00056
00057 for (i=0;i<n;i++) {
00058
00059 ret = _MEDobjetIdentifier(fid,(char *) MED_MAA,i,nom);
00060 EXIT_IF(ret < 0,"Identification d'un maillage",NULL);
00061 fprintf(stdout," >>> Normalisation du maillage [%s] \n",nom);
00062
00063
00064 strcpy(chemin,MED_MAA);
00065 strcat(chemin,nom);
00066 gid = _MEDdatagroupOuvrir(fid,chemin);
00067 EXIT_IF(gid < 0,"Accès au maillage",nom);
00068
00069
00070 ret = _MEDattrEntierLire(gid,(char *)(MED_NOM_DIM),&dimension);
00071 EXIT_IF(ret < 0,"Lecture de la dimension du maillage",nom);
00072
00073
00074 ret = _MEDattrStringEcrire(gid,(char *)(MED_NOM_DES),MED_TAILLE_DESC,description);
00075 EXIT_IF(ret < 0,"Ecriture de la description du maillage ",nom);
00076 ret = _MEDattrEntierEcrire(gid,(char *)(MED_NOM_TYP),&type);
00077 EXIT_IF(ret < 0,"Ecriture de la dimension du maillage ",nom);
00078
00079
00080 MAJ_21_22_noeuds_maillage(gid,dimension);
00081 fprintf(stdout," ... Normalisation des noeuds effectuée ... \n");
00082
00083
00084 MAJ_21_22_elements_maillage(gid,dimension);
00085 fprintf(stdout," ... Normalisation des éléments effectuée ... \n");
00086
00087
00088 MAJ_21_22_familles_maillage(gid);
00089 fprintf(stdout," ... Normalisation des familles effectuée ... \n");
00090
00091
00092 ret = _MEDdatagroupFermer(gid);
00093 EXIT_IF(ret < 0,"Fermeture de l'accès au maillage",NULL);
00094
00095 fprintf(stdout," >>> Normalisation du maillage [%s] ... OK ... \n",nom);
00096 }
00097 }