Aller à la documentation de ce fichier.
32 #define MODE_ACCES MED_ACC_RDWR
34 #define MODE_ACCES MED_ACC_RDEXT
36 #define MODE_ACCES MED_ACC_CREAT
39 int main (
int argc,
char **argv)
50 med_float mtrsf[7]={ 0, 0, 0, 0, 0, 0, 0};
61 med_int nnomnoe=0,nnumnoe=0,nnufano=0;
78 MESSAGE(
"Erreur a l'ouverture du fichier Test_MEDmeshNodeCoordinateTrsfWr.med");
83 MESSAGE(
"Erreur a la lecture de la dimension de l'espace du maillage :");
89 if (
MEDmeshInfo( fid, 1, maa, &sdim, &mdim, &type, desc, dtunit, &sort,
90 &nstep, &rep, nomcoo,unicoo) < 0 ) {
91 MESSAGE(
"Erreur a la lecture des informations sur le maillage : ");
SSCRUTE(maa);
94 printf(
"Maillage de nom : |%s| , de dimension : %d , et de type %d\n",maa,mdim,type);
95 printf(
"\t -Dimension de l'espace : %d\n",sdim);
96 printf(
"\t -Description du maillage : %s\n",desc);
97 printf(
"\t -Noms des axes : %s\n",nomcoo);
98 printf(
"\t -Unités des axes : %s\n",unicoo);
99 printf(
"\t -Type de repère : %d\n",rep);
100 printf(
"\t -Nombre d'étape de calcul : %d\n",nstep);
101 printf(
"\t -Unité des dates : %s\n",dtunit);
104 for (csit=0; csit <nstep; ++csit) {
107 MESSAGE(
"Erreur a la lecture des informations sur le maillage : ");
SSCRUTE(maa);
112 printf(
"\n -Etape de calcul n° %d : (%d,%d) avec dt=%f %s\n\n",csit+1,numdt,numit,dt,dtunit);
114 printf(
"\n -Etape de calcul n° %d : (%d,%d) avec dt=%f %s\n\n",csit+1,numit,numdt,dt,dtunit);
120 MESSAGE(
"Erreur a la lecture du nombre de noeuds.");
123 printf(
"Nombre de noeuds : "IFORMAT", (chgt,trsf) : (%1d,%1d) \n",nnoe,chgt,trsf);
126 printf(
"Aucun changement par rapport à la séquence de calcul précédente.\n");
128 if ( chgt && trsf ) {
129 printf(
"Seules les coordonnées sont modifiées par rapport à la séquence de calcul précédente.\n");
135 if ( chgt && !trsf ) {
137 printf(
"Des modifications ont eu lieu depuis la séquence de calcul précédente.\n");
141 MESSAGE(
"Erreur a la lecture de la présence d'une transformation géométrique : ");
145 printf(
"Les coordonnées sont modifiées par rapport à la séquence de calcul précédente.\n");
147 printf(
"Les coordonnées ne sont pas modifiées par rapport à la séquence de calcul précédente.\n");
150 printf(
"Une modification de la matrice de transformation a eu lieu par rapport à la séquence de calcul précédente.\n");
158 MESSAGE(
"Erreur a la lecture des coordonnees des noeuds");
166 if ( (nnomnoe>0) && inonoe) {
169 MESSAGE(
"Erreur a la lecture des noms des noeuds");
177 if ( (nnumnoe>0) && inunoe) {
180 MESSAGE(
"Erreur a la lecture des numéros des noeuds");
188 if ( (nnufano>0) && inufano) {
191 MESSAGE(
"Erreur a la lecture des numeros de famille des noeuds");
198 if (ret == 0 && nnoe > 0) {
201 printf(
"\n\tCoordonnees des noeuds : \n\t");
202 for (i=0;i<nnoe*sdim;i++)
203 printf(
"%f ",*(coo1+i));
208 MESSAGE(
"Erreur a la lecture de la matrice de transformation");
211 printf(
"Valeur de la matrice de transformation : ");
213 printf(
"%4.2f ",mtrsf[i]);
218 printf(
"\n\tNoms des noeuds : \n\t");
219 for (i=0;i<nnoe;i++) {
226 printf(
"\n\tNumeros des noeuds : \n\t");
228 printf(
IFORMAT" ",*(numnoe+i));
231 printf(
"\n\tNumeros des familles des noeuds : \n\t");
233 printf(
IFORMAT" ",*(nufano+i));
240 if (chgtco) free(coo1);
241 if (inonoe) free(nomnoe);
242 if (inunoe) free(numnoe);
243 if (inufano) free(nufano);
249 MESSAGE(
"Erreur a la fermeture du fichier");
MEDC_EXPORT med_int MEDmeshnEntity(const med_idt fid, const char *const meshname, const med_int numdt, const med_int numit, const med_entity_type entitype, const med_geometry_type geotype, const med_data_type datatype, const med_connectivity_mode cmode, med_bool *const changement, med_bool *const transformation)
Cette routine permet de lire le nombre d'entités dans un maillage pour une étape de calcul donnée.
MEDC_EXPORT med_err MEDmeshComputationStepInfo(const med_idt fid, const char *const meshname, const int csit, med_int *const numdt, med_int *const numit, med_float *const dt)
Cette routine permet de lire les informations relatives à une étape de calcul d'un maillage.
MEDC_EXPORT med_err MEDmeshEntityNumberRd(const med_idt fid, const char *const meshname, const med_int numdt, const med_int numit, const med_entity_type entitype, const med_geometry_type geotype, med_int *const number)
Cette routine permet de lire les numéros d'un type d'entité d'un maillage.
MEDC_EXPORT med_idt MEDfileOpen(const char *const filename, const med_access_mode accessmode)
Ouverture d'un fichier MED.
MEDC_EXPORT med_err MEDmeshNodeCoordinateTrsfRd(const med_idt fid, const char *const meshname, const med_int numdt, const med_int numit, const med_float *const coordinatetrsf)
Cette routine lit les paramètres de translation rotation à appliquer aux noeuds de l'étape de calcul ...
MEDC_EXPORT med_err MEDmeshEntityNameRd(const med_idt fid, const char *const meshname, const med_int numdt, const med_int numit, const med_entity_type entitype, const med_geometry_type geotype, char *const name)
Cette routine permet de lire les noms d'un type d'entité d'un maillage.
int main(int argc, char **argv)
MEDC_EXPORT med_int MEDmeshnAxis(const med_idt fid, const int meshit)
Cette routine permet de lire dans un maillage le nombre d'axes du repère des coordonnées des noeuds.
MEDC_EXPORT med_err MEDmeshNodeCoordinateRd(const med_idt fid, const char *const meshname, const med_int numdt, const med_int numit, const med_switch_mode switchmode, med_float *const coordinates)
Cette routine permet de lire dans un maillage le tableau des coordonnées des noeuds,...
MEDC_EXPORT med_err MEDfileClose(med_idt fid)
Fermeture d'un fichier MED.
MEDC_EXPORT med_err MEDmeshInfo(const med_idt fid, const int meshit, char *const meshname, med_int *const spacedim, med_int *const meshdim, med_mesh_type *const meshtype, char *const description, char *const dtunit, med_sorting_type *const sortingtype, med_int *const nstep, med_axis_type *const axistype, char *const axisname, char *const axisunit)
Cette routine permet de lire les informations relatives à un maillage dans un fichier.
MEDC_EXPORT med_err MEDmeshEntityFamilyNumberRd(const med_idt fid, const char *const meshname, const med_int numdt, const med_int numit, const med_entity_type entitype, const med_geometry_type geotype, med_int *const number)
Cette routine permet la lecture des numéros de famille d'un type d'entité d'un maillage.