Aller à la documentation de ce fichier.
24 #define MODE_ACCES MED_ACC_RDWR
26 #define MODE_ACCES MED_ACC_RDEXT
28 #define MODE_ACCES MED_ACC_CREAT
31 int main (
int argc,
char **argv)
51 int _coefficientit =0;
57 MESSAGE(
"Erreur a la creation du fichier current.med");
61 if ( (_ninterp =
MEDnInterp(_fid)) <0) {_ret=_ninterp;
goto ERROR;}
65 for ( _interpit=1; _interpit<= _ninterp; ++_interpit) {
77 MESSAGE(
"Erreur à lecture d'informations de la fonction d'interpolation n°");
ISCRUTE(_interpit);
81 fprintf(stdout,
"Fonction d'interpolation n° %d |%s| sur le type géométrique n° %d\n",
82 _interpit,_interpname, _geotype);
85 if ( _nbasisfunc == (_geotype % 100) )
86 fprintf(stdout,
"\t Les noeuds de construction sont les noeuds de la maille de référence.\n");
88 MESSAGE(
"Erreur : le nombre de noeuds de construction "\
89 "est différent du nombre de noeuds de la maille de référence.\n");
93 if ( _nvariable != (_geotype / 100) ) {
94 MESSAGE(
"Erreur : le nombre de variables "\
95 "est différent de la dimension de l'espace de la maille de référence.\n");
98 fprintf(stdout,
"\t Il y a %d fonctions de base avec %d variables\n ",_nbasisfunc,_nvariable);
99 fprintf(stdout,
"\t Le degré maximum des fonctions de base est %d et possèdent au maximum %d coefficients\n"
100 ,_maxdegree,_nmaxcoefficient);
104 for ( _basisfuncit=1; _basisfuncit<= _nbasisfunc; ++_basisfuncit) {
108 _basisfuncit) ) <0 ) {
109 MESSAGE(
"Erreur à la lecture du nombre de coefficients de la fonction de base n°");
ISCRUTE(_basisfuncit);
114 _power = (
med_int*) calloc(
sizeof(
med_int),_nvariable*_ncoefficient);
123 MESSAGE(
"Erreur à la lecture de la fonction de base n°");
ISCRUTE(_basisfuncit);
124 free(_coefficient);free(_power);
goto ERROR;
126 fprintf(stdout,
"\n\t Tableau de coefficients de la fonctions de base n° %d :\n\t",_basisfuncit);
127 for ( _coefficientit=0; _coefficientit< _ncoefficient; ++_coefficientit)
128 fprintf(stdout,
" %4f ",_coefficient[_coefficientit]);
130 fprintf(stdout,
"\n\t Tableau de puissances de la fonctions de base n° %d :\n\t",_basisfuncit);
131 for ( _powerit=0; _powerit< _nvariable*_ncoefficient; ++_powerit)
132 fprintf(stdout,
" %4d ",_power[_powerit]);
137 fprintf(stdout,
"\n");
145 MESSAGE(
"ERROR : file closing");
MEDC_EXPORT med_int MEDnInterp(const med_idt fid)
Cette routine renvoie le nombre d'interpolations disponibles dans le fichier.
MEDC_EXPORT med_idt MEDfileOpen(const char *const filename, const med_access_mode accessmode)
Ouverture d'un fichier MED.
int main(int argc, char **argv)
MEDC_EXPORT med_int MEDinterpBaseFunctionCoefSize(const med_idt fid, const char *const interpname, const med_int basisfuncit)
Cette routine retourne ne nombre de coefficients/monômes de la fonction de base/forme n° basisfunctit...
MEDC_EXPORT med_err MEDinterpInfo(const med_idt fid, const int interpit, char *const interpname, med_geometry_type *const geotype, med_bool *const cellnode, med_int *const nbasisfunc, med_int *const nvariable, med_int *const maxdegree, med_int *const nmaxcoef)
Cette fonction informe des caractéristiques de la fonction d'interpolation n° interpit.
MEDC_EXPORT med_err MEDinterpBaseFunctionRd(const med_idt fid, const char *const interpname, const int basisfuncit, med_int *const ncoef, med_int *const power, med_float *const coefficient)
Cette routine permet la lecture d'une fonction de base/forme de l'interpolation interpname.
MEDC_EXPORT med_err MEDfileClose(med_idt fid)
Fermeture d'un fichier MED.