med_int nmipfcre(med_int *fid, char *name, med_int *lon1, med_int *gtype, med_int *cnode, med_int *nvar, med_int *mdeg, med_int *nmaxc) #endif { med_int _ret; char *_fn1; med_geometry_type _gtype = (med_geometry_type) *gtype; med_bool _cnode = (med_bool) *cnode; _fn1 = _MED2cstring(name, (int) * lon1); if (!_fn1 ) return(-1); _ret = (med_int) MEDinterpCr((med_idt) *fid, _fn1, _gtype, _cnode, (med_int) *nvar, (med_int) *mdeg, (med_int) *nmaxc ); _MEDcstringFree(_fn1); return(_ret); }
int main (int argc, char **argv) { med_err _ret=0; med_idt _fid=0; /*Exemple 1 : - Elément de référence de type géométrique MED_TRIA3 - Point X(X1,X2) quelconque dans le plan de l'élément de référence - Fonctions de base : P1(X)=1-X1-X2 ; P2(X)=X1; P3(X)=X2; (issu du choix de la base polynomiale (1,X1,X2) et des trois noeuds de la maille de référence pour construire l'interpolation) */ const char _interpname1[] ="interpname1"; med_geometry_type _geotype1 =MED_TRIA3; med_bool _cellnodes1 =MED_TRUE; /* med_int _nbasisfunc1 =3; */ med_int _nvariable1 =2; med_int _maxdegree1 =1; med_int _nmaxcoefficient1=3; /* Ouverture en mode creation du fichier "current.med" */ _fid = MEDfileOpen("current.med",MODE_ACCES); if (_fid < 0) { MESSAGE("Erreur a la creation du fichier current.med"); return -1; } if ( (_ret = MEDinterpCr(_fid, _interpname1, _geotype1, _cellnodes1, _nvariable1, _maxdegree1, _nmaxcoefficient1 ) <0) ) { MESSAGE("Erreur à la création de la fonction d'interpolation n°1"); } if (MEDfileClose(_fid) < 0) { MESSAGE("ERROR : file closing"); return -1; } return _ret; }