mmg2d
libmmg2d.h
Go to the documentation of this file.
1 /* =============================================================================
2 ** This file is part of the mmg software package for the tetrahedral
3 ** mesh modification.
4 ** Copyright (c) Bx INP/CNRS/Inria/UBordeaux/UPMC, 2004-
5 **
6 ** mmg is free software: you can redistribute it and/or modify it
7 ** under the terms of the GNU Lesser General Public License as published
8 ** by the Free Software Foundation, either version 3 of the License, or
9 ** (at your option) any later version.
10 **
11 ** mmg is distributed in the hope that it will be useful, but WITHOUT
12 ** ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 ** FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
14 ** License for more details.
15 **
16 ** You should have received a copy of the GNU Lesser General Public
17 ** License and of the GNU General Public License along with mmg (in
18 ** files COPYING.LESSER and COPYING). If not, see
19 ** <http://www.gnu.org/licenses/>. Please read their terms carefully and
20 ** use this copy of the mmg distribution only if you accept them.
21 ** =============================================================================
22 */
34 #ifndef MMG2DLIB_H
35 #define MMG2DLIB_H
36 
37 #ifdef __cplusplus
38 extern "C" {
39 #endif
40 
41 #include "mmg/mmg2d/libmmgtypes.h"
42 
46 #define MMG2D_LMAX 1024
47 
57  enum MMG2D_Param {
86  };
87 
88 /*----------------------------- functions header -----------------------------*/
89 /* Initialization functions */
90 /* init structures */
91 
116  int MMG2D_Init_mesh(const int starter,...);
117 
143 
144 /* init file names */
161  int MMG2D_Set_inputMeshName(MMG5_pMesh mesh, const char* meshin);
178  int MMG2D_Set_outputMeshName(MMG5_pMesh mesh, const char* meshout);
196  int MMG2D_Set_inputSolName(MMG5_pMesh mesh,MMG5_pSol sol, const char* solin);
214  int MMG2D_Set_outputSolName(MMG5_pMesh mesh,MMG5_pSol sol, const char* solout);
232  int MMG2D_Set_iparameter(MMG5_pMesh mesh, MMG5_pSol sol, int iparam, int val);
233 
252  int MMG2D_Set_dparameter(MMG5_pMesh mesh, MMG5_pSol sol, int dparam, double val);
253 
278  int ref,double hmin,double hmax,double hausd);
279 
299  int MMG2D_Set_multiMat(MMG5_pMesh mesh, MMG5_pSol sol,int ref,int split,
300  int rin, int rex);
301 
302 /* init structure datas */
323  int MMG2D_Set_meshSize(MMG5_pMesh mesh, int np, int nt, int nquad, int na);
344  int MMG2D_Set_solSize(MMG5_pMesh mesh, MMG5_pSol sol, int typEntity,
345  int np, int typSol);
370  int nentities, int *typSol);
391  int MMG2D_Set_vertex(MMG5_pMesh mesh, double c0, double c1,
392  int ref,int pos);
415  int MMG2D_Set_vertices(MMG5_pMesh mesh, double *vertices,int *refs);
432  int MMG2D_Set_corner(MMG5_pMesh mesh, int k);
449  int MMG2D_Unset_corner(MMG5_pMesh mesh, int k);
450 
467 
484 
505  int MMG2D_Set_triangle(MMG5_pMesh mesh, int v0, int v1,
506  int v2, int ref, int pos);
526  int MMG2D_Set_triangles(MMG5_pMesh mesh, int *tria, int *refs);
527 
544 
561 
583  int MMG2D_Set_quadrilateral(MMG5_pMesh mesh, int v0, int v1,
584  int v2, int v3, int ref, int pos);
585 
606  int MMG2D_Set_quadrilaterals(MMG5_pMesh mesh, int *quadra,
607  int *refs);
608 
628  int MMG2D_Set_edge(MMG5_pMesh mesh, int v0, int v1, int ref, int pos);
646  int MMG2D_Set_edges(MMG5_pMesh mesh, int *edges, int* refs);
713  int MMG2D_Set_scalarSol(MMG5_pSol met, double s, int pos);
730  int MMG2D_Set_scalarSols(MMG5_pSol met, double *s);
750  int MMG2D_Set_vectorSol(MMG5_pSol met, double vx,double vy,
751  int pos);
768  int MMG2D_Set_vectorSols(MMG5_pSol met, double *sols);
789  int MMG2D_Set_tensorSol(MMG5_pSol met, double m11, double m12, double m22,
790  int pos);
808  int MMG2D_Set_tensorSols(MMG5_pSol met, double *sols);
829  int MMG2D_Set_ithSol_inSolsAtVertices(MMG5_pSol sol,int i, double* s,int pos);
851  int MMG2D_Set_ithSols_inSolsAtVertices(MMG5_pSol sol,int i, double* s);
852 
872  int MMG2D_Get_meshSize(MMG5_pMesh mesh, int* np, int* nt, int* nquad, int* na);
891  int MMG2D_Get_solSize(MMG5_pMesh mesh, MMG5_pSol sol, int* typEntity, int* np,
892  int* typSol);
914  int* nentities,int* typSol);
936  int MMG2D_Get_vertex(MMG5_pMesh mesh, double* c0, double* c1, int* ref,
937  int* isCorner, int* isRequired);
960  int MMG2D_GetByIdx_vertex(MMG5_pMesh mesh, double* c0, double* c1, int* ref,
961  int* isCorner, int* isRequired,int idx);
989  int MMG2D_Get_vertices(MMG5_pMesh mesh, double* vertices, int* refs,
990  int* areCorners, int* areRequired);
1012  int MMG2D_Get_triangle(MMG5_pMesh mesh, int* v0, int* v1, int* v2, int* ref
1013  ,int* isRequired);
1037  int MMG2D_Get_triangles(MMG5_pMesh mesh, int* tria, int* refs,
1038  int* areRequired);
1039 
1064  int MMG2D_Get_quadrilateral(MMG5_pMesh mesh, int* v0, int* v1, int* v2,
1065  int* v3,int* ref, int* isRequired);
1091  int MMG2D_Get_quadrilaterals(MMG5_pMesh mesh, int* quadra,int* refs,
1092  int* areRequired);
1116  int MMG2D_Get_edge(MMG5_pMesh mesh, int* e0, int* e1, int* ref
1117  ,int* isRidge, int* isRequired);
1138  int MMG2D_Get_edges(MMG5_pMesh mesh,int *edges,int* refs,
1139  int *areRidges,int *areRequired);
1140 
1158 
1174  int MMG2D_Get_scalarSol(MMG5_pSol met, double* s);
1191  int MMG2D_Get_scalarSols(MMG5_pSol met, double* s);
1208  int MMG2D_Get_vectorSol(MMG5_pSol met, double* vx, double* vy);
1225  int MMG2D_Get_vectorSols(MMG5_pSol met, double* sols);
1243  int MMG2D_Get_tensorSol(MMG5_pSol met, double *m11,double *m12,double *m22);
1260  int MMG2D_Get_tensorSols(MMG5_pSol met, double *sols);
1281  int MMG2D_Get_ithSol_inSolsAtVertices(MMG5_pSol sol,int i, double* s,int pos);
1303  int MMG2D_Get_ithSols_inSolsAtVertices(MMG5_pSol sol,int i, double* s);
1304 
1305 
1322 
1338 
1339 /* deallocations */
1371  int MMG2D_Free_all(const int starter,...);
1372 
1406  int MMG2D_Free_structures(const int starter,...);
1407 
1441  int MMG2D_Free_names(const int starter,...);
1442 
1459  int MMG2D_loadMesh(MMG5_pMesh mesh,const char * filename);
1460 
1479 int MMG2D_loadVtpMesh(MMG5_pMesh mesh,MMG5_pSol sol,const char *filename);
1498 int MMG2D_loadVtpMesh_and_allData(MMG5_pMesh mesh,MMG5_pSol *sol,const char *filename);
1499 
1518 int MMG2D_loadVtuMesh(MMG5_pMesh mesh,MMG5_pSol sol,const char *filename);
1519 
1538 int MMG2D_loadVtuMesh_and_allData(MMG5_pMesh mesh,MMG5_pSol *sol,const char *filename);
1539 
1558 int MMG2D_loadVtkMesh(MMG5_pMesh mesh,MMG5_pSol sol,const char *filename);
1559 
1578 int MMG2D_loadVtkMesh_and_allData(MMG5_pMesh mesh,MMG5_pSol *sol,const char *filename);
1579 
1598  int MMG2D_loadMshMesh(MMG5_pMesh mesh,MMG5_pSol sol,const char *filename);
1617  int MMG2D_loadMshMesh_and_allData(MMG5_pMesh mesh,MMG5_pSol *sol,const char *filename);
1618 
1637  int MMG2D_loadSol(MMG5_pMesh mesh,MMG5_pSol sol,const char * filename);
1655  int MMG2D_loadAllSols(MMG5_pMesh mesh,MMG5_pSol *sol, const char* filename);
1656 
1657  int MMG2D_loadVect(MMG5_pMesh ,char *);
1658 
1675  int MMG2D_saveMesh(MMG5_pMesh ,const char *);
1694  int MMG2D_saveMshMesh(MMG5_pMesh mesh,MMG5_pSol sol,const char *filename);
1713  int MMG2D_saveMshMesh_and_allData(MMG5_pMesh mesh,MMG5_pSol *sol,const char *filename);
1731  int MMG2D_saveVtkMesh(MMG5_pMesh mesh,MMG5_pSol sol,const char *filename);
1749  int MMG2D_saveVtkMesh_and_allData(MMG5_pMesh mesh,MMG5_pSol *sol,const char *filename);
1767  int MMG2D_saveVtuMesh(MMG5_pMesh mesh,MMG5_pSol sol,const char *filename);
1785  int MMG2D_saveVtuMesh_and_allData(MMG5_pMesh mesh,MMG5_pSol *sol,const char *filename);
1803  int MMG2D_saveVtpMesh(MMG5_pMesh mesh,MMG5_pSol sol,const char *filename);
1821  int MMG2D_saveVtpMesh_and_allData(MMG5_pMesh mesh,MMG5_pSol *sol,const char *filename);
1822 
1839  int MMG2D_saveTetgenMesh(MMG5_pMesh ,const char *);
1840 
1841 
1859  int MMG2D_saveSol(MMG5_pMesh mesh,MMG5_pSol sol ,const char *filename);
1877  int MMG2D_saveAllSols(MMG5_pMesh mesh,MMG5_pSol *sol ,const char *filename);
1878 
1879 
1880  int MMG2D_saveVect(MMG5_pMesh mesh,MMG5_pSol sol,const char *filename,double lambda);
1881 
1899 
1917 
1957 
1958 /* Tools for the library */
1959 // void (*MMG2D_callbackinsert) (int ,int ,int ,int, int);
1960 
1976  int MMG2D_doSol(MMG5_pMesh mesh ,MMG5_pSol met );
1977 
1994 
2008 
2027  int MMG2D_Get_numberOfNonBdyEdges(MMG5_pMesh mesh, int* nb_edges);
2028 
2052  int MMG2D_Get_nonBdyEdge(MMG5_pMesh mesh, int* e0, int* e1, int* ref, int idx);
2053 
2075  int MMG2D_Get_adjaTri(MMG5_pMesh mesh, int kel, int listri[3]);
2076 
2097  int MMG2D_Get_adjaVertices(MMG5_pMesh mesh, int ip, int lispoi[MMG2D_LMAX]);
2098 
2120  int MMG2D_Get_adjaVerticesFast(MMG5_pMesh mesh, int ip,int start,
2121  int lispoi[MMG2D_LMAX]);
2142  int MMG2D_Get_triFromEdge(MMG5_pMesh mesh, int ked, int *ktri, int *ied);
2166  int MMG2D_Get_trisFromEdge(MMG5_pMesh mesh, int ked, int ktri[2], int ied[2]);
2167 
2190  int MMG2D_Compute_eigenv(double m[3],double lambda[2],double vp[2][2]);
2191 
2192 
2217 
2230 
2244 
2245 
2246 #ifdef __cplusplus
2247 }
2248 #endif
2249 
2250 #endif
MMG5_Mesh::nprism
int nprism
Definition: libmmgtypes.h:560
MMG5_defsiz_startingMessage
int MMG5_defsiz_startingMessage(MMG5_pMesh mesh, MMG5_pSol met, const char *funcname)
Definition: isosiz.c:77
MMG2D_hashTria
int MMG2D_hashTria(MMG5_pMesh mesh)
Definition: hash_2d.c:35
MMG5_Edge
Structure to store edges of a MMG mesh.
Definition: libmmgtypes.h:274
MMG5_Par::hmax
double hmax
Definition: libmmgtypes.h:230
MMG2D_IPARAM_angle
@ MMG2D_IPARAM_angle
Definition: libmmg2d.h:61
MMG2D_Get_triangles
int MMG2D_Get_triangles(MMG5_pMesh mesh, int *tria, int *refs, int *areRequired)
Definition: API_functions_2d.c:988
MMG5_Mesh::prism
MMG5_pPrism prism
Definition: libmmgtypes.h:593
MMG5_Info::npar
int npar
Definition: libmmgtypes.h:478
MG_BDY
#define MG_BDY
Definition: mmgcommon.h:144
MMG5_Mesh::nenil
int nenil
Definition: libmmgtypes.h:570
MMG2D_setfunc
void MMG2D_setfunc(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmg2d_tools.c:36
MMG2D_IPARAM_debug
@ MMG2D_IPARAM_debug
Definition: libmmg2d.h:60
MMG5_Sol::np
int np
Definition: libmmgtypes.h:613
MMG5_Point::c
double c[3]
Definition: libmmgtypes.h:242
MMG2D_loadVtpMesh
int MMG2D_loadVtpMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
MMG5_Mesh::namax
int namax
Definition: libmmgtypes.h:559
MG_EDG
#define MG_EDG(tag)
Definition: mmgcommon.h:163
MMG5_displayLengthHisto
void MMG5_displayLengthHisto(MMG5_pMesh, int, double *, int, int, double, int, int, double, int, double *, int *, int8_t)
Definition: quality.c:251
MMG2D_indElt
int MMG2D_indElt(MMG5_pMesh mesh, int kel)
Definition: tools_2d.c:45
MG_MAX
#define MG_MAX(a, b)
Definition: mmgcommon.h:135
MMG5_orvol
double MMG5_orvol(MMG5_pPoint point, int *v)
Definition: tools.c:838
MMG2D_Set_edge
int MMG2D_Set_edge(MMG5_pMesh mesh, int v0, int v1, int ref, int pos)
Definition: API_functions_2d.c:1149
MMG5_Info::hmin
double hmin
Definition: libmmgtypes.h:476
MMG5_bezierCP
int(* MMG5_bezierCP)(MMG5_pMesh, MMG5_Tria *, MMG5_pBezier, int8_t)
Definition: mmgexterns.c:28
MMG5_Tria::v
int v[3]
Definition: libmmgtypes.h:303
MMG2D_Init_mesh
int MMG2D_Init_mesh(const int starter,...)
Definition: API_functions_2d.c:43
MMG5_Tetra
Definition: libmmgtypes.h:370
MMG2D_Set_corner
int MMG2D_Set_corner(MMG5_pMesh mesh, int k)
Definition: API_functions_2d.c:638
MMG5_Sol
Definition: libmmgtypes.h:610
MMG2D_Set_ithSol_inSolsAtVertices
int MMG2D_Set_ithSol_inSolsAtVertices(MMG5_pSol sol, int i, double *s, int pos)
Definition: API_functions_2d.c:1712
MMG5_Get_basename
char * MMG5_Get_basename(char *path)
Definition: mmg.c:402
MG_SIN
#define MG_SIN(tag)
Definition: mmgcommon.h:164
MMG2D_solTruncatureForOptim
void MMG2D_solTruncatureForOptim(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmg2d.c:56
MMG5_gradsiz_iso
int MMG5_gradsiz_iso(MMG5_pMesh mesh, MMG5_pSol met)
Definition: isosiz.c:277
MMG2D_Set_tensorSols
int MMG2D_Set_tensorSols(MMG5_pSol met, double *sols)
Definition: API_functions_2d.c:1617
MMG5_Point::s
int s
Definition: libmmgtypes.h:252
MMG2D_saveAllSols
int MMG2D_saveAllSols(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_2d.c:1538
MMG5_Edge::ref
int ref
Definition: libmmgtypes.h:276
MMG2D_Get_vertex
int MMG2D_Get_vertex(MMG5_pMesh mesh, double *c0, double *c1, int *ref, int *isCorner, int *isRequired)
Definition: API_functions_2d.c:663
MMG2D_Set_ithSols_inSolsAtVertices
int MMG2D_Set_ithSols_inSolsAtVertices(MMG5_pSol sol, int i, double *s)
Definition: API_functions_2d.c:1656
MMG2D_Set_edges
int MMG2D_Set_edges(MMG5_pMesh mesh, int *edges, int *refs)
Definition: API_functions_2d.c:1278
MMG5_Triangle
@ MMG5_Triangle
Definition: libmmgtypes.h:215
MMG2D_loadMesh
int MMG2D_loadMesh(MMG5_pMesh mesh, const char *filename)
Definition: inout_2d.c:26
MG_REF
#define MG_REF
Definition: mmgcommon.h:140
MMG2D_Set_vertices
int MMG2D_Set_vertices(MMG5_pMesh mesh, double *vertices, int *refs)
Definition: API_functions_2d.c:722
MG_EOK
#define MG_EOK(pt)
Definition: mmgcommon.h:161
MMG2D_Compute_eigenv
int MMG2D_Compute_eigenv(double m[3], double lambda[2], double vp[2][2])
Definition: libmmg2d_tools.c:510
MMG2D_Set_dparameter
int MMG2D_Set_dparameter(MMG5_pMesh mesh, MMG5_pSol sol, int dparam, double val)
Definition: API_functions_2d.c:242
MMG2D_Get_solSize
int MMG2D_Get_solSize(MMG5_pMesh mesh, MMG5_pSol sol, int *typEntity, int *np, int *typSol)
Definition: API_functions_2d.c:520
MMG2D_IPARAM_nosizreq
@ MMG2D_IPARAM_nosizreq
Definition: libmmg2d.h:76
mmg2dexterns.h
MMG2D_IPARAM_opnbdy
@ MMG2D_IPARAM_opnbdy
Definition: libmmg2d.h:63
MG_NOM
#define MG_NOM
Definition: mmgcommon.h:143
MMG2D_Set_vectorSols
int MMG2D_Set_vectorSols(MMG5_pSol met, double *sols)
Definition: API_functions_2d.c:1511
MMG2D_mmg2dlib
int MMG2D_mmg2dlib(MMG5_pMesh mesh, MMG5_pSol sol)
Definition: libmmg2d.c:164
MMG5_Mesh::xt
int xt
Definition: libmmgtypes.h:568
MMG5_Sol::namein
char * namein
Definition: libmmgtypes.h:620
MMG5_NSOLS_MAX
#define MMG5_NSOLS_MAX
Definition: libmmgtypes.h:170
MMG2D_set_metricAtPointsOnReqEdges
int MMG2D_set_metricAtPointsOnReqEdges(MMG5_pMesh mesh, MMG5_pSol met, int8_t ismet)
Definition: isosiz_2d.c:75
MMG2D_savemet_db
int MMG2D_savemet_db(MMG5_pMesh mesh, MMG5_pSol met, char *filename, int8_t pack)
Definition: inout_2d.c:1684
MMG5_Mesh::xp
int xp
Definition: libmmgtypes.h:568
MMG5_Sol::size
int size
Definition: libmmgtypes.h:616
MMG2D_Set_inputMeshName
int MMG2D_Set_inputMeshName(MMG5_pMesh mesh, const char *meshin)
Definition: API_functions_2d.c:63
MMG2D_loadVtkMesh
int MMG2D_loadVtkMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
MMG5_Info::imprim
int imprim
Definition: libmmgtypes.h:484
MMG2D_Set_triangles
int MMG2D_Set_triangles(MMG5_pMesh mesh, int *tria, int *refs)
Definition: API_functions_2d.c:931
MG_STR
#define MG_STR
Definition: mmgcommon.h:57
MMG2D_IPARAM_numberOfLocalParam
@ MMG2D_IPARAM_numberOfLocalParam
Definition: libmmg2d.h:73
MMG2D_2dMeshCheck
int MMG2D_2dMeshCheck(MMG5_pMesh mesh)
Definition: inout_2d.c:597
MMG5_Bezier::n
double n[6][3]
Definition: mmgcommon.h:559
MMG2D_loadMshMesh_and_allData
int MMG2D_loadMshMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_2d.c:685
MMG5_printSolStats
void MMG5_printSolStats(MMG5_pMesh mesh, MMG5_pSol *sol)
Definition: inout.c:2485
MMG5_iprv2
static const uint8_t MMG5_iprv2[3]
Definition: mmgcommon.h:548
MMG2D_LMAX
#define MMG2D_LMAX
Definition: libmmg2d.h:46
MMG5_Mesh::point
MMG5_pPoint point
Definition: libmmgtypes.h:589
MMG2D_IPARAM_numsubdomain
@ MMG2D_IPARAM_numsubdomain
Definition: libmmg2d.h:72
MMG2D_IPARAM_3dMedit
@ MMG2D_IPARAM_3dMedit
Definition: libmmg2d.h:65
MMG2D_Get_vectorSol
int MMG2D_Get_vectorSol(MMG5_pSol met, double *vx, double *vy)
Definition: API_functions_2d.c:1480
MMG2D_mmg2dmov
int MMG2D_mmg2dmov(MMG5_pMesh mesh, MMG5_pSol met, MMG5_pSol disp)
Definition: libmmg2d.c:927
MMG5_Tria::edg
int edg[3]
Definition: libmmgtypes.h:308
MMG5_build3DMetric
void MMG5_build3DMetric(MMG5_pMesh mesh, MMG5_pSol sol, int ip, double dbuf[6])
Definition: inout.c:1479
MMG2D_Get_triangle
int MMG2D_Get_triangle(MMG5_pMesh mesh, int *v0, int *v1, int *v2, int *ref, int *isRequired)
Definition: API_functions_2d.c:886
MMG5_Tria::tag
int16_t tag[3]
Definition: libmmgtypes.h:311
MMG5_Bezier::b
double b[10][3]
Definition: mmgcommon.h:558
MMG5_invmatg
int MMG5_invmatg(double m[9], double mi[9])
Definition: tools.c:330
MMG2D_Set_quadrilateral
int MMG2D_Set_quadrilateral(MMG5_pMesh mesh, int v0, int v1, int v2, int v3, int ref, int pos)
Definition: API_functions_2d.c:1014
mmg2d.h
MMG2D_writeDoubleSol
static void MMG2D_writeDoubleSol(MMG5_pSol sol, FILE *inm, int bin, int pos)
Definition: inout_2d.c:1454
MG_PARBDY
#define MG_PARBDY
Definition: mmgcommon.h:150
MMG2D_IPARAM_iso
@ MMG2D_IPARAM_iso
Definition: libmmg2d.h:62
MMG5_Info::hgradreq
double hgradreq
Definition: libmmgtypes.h:476
MMG5_Mesh::base
int base
Definition: libmmgtypes.h:564
MMG2D_IPARAM_nreg
@ MMG2D_IPARAM_nreg
Definition: libmmg2d.h:71
MMG_FREAD
#define MMG_FREAD(ptr, size, count, stream)
Definition: mmgcommon.h:400
MMG2D_loadVtuMesh_and_allData
int MMG2D_loadVtuMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
sol
MMG5_pMesh MMG5_pSol * sol
Definition: API_functionsf_2d.c:63
MMG2D_saveMshMesh_and_allData
int MMG2D_saveMshMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_2d.c:1440
MG_VOK
#define MG_VOK(ppt)
Definition: mmgcommon.h:160
MMG5_inxt2
static const uint8_t MMG5_inxt2[6]
Definition: mmgcommon.h:547
MMG5_Mesh::np
int np
Definition: libmmgtypes.h:559
MMG5_FILESTR_LGTH
#define MMG5_FILESTR_LGTH
Definition: mmgcommon.h:132
MMG5_Mesh::nsols
int nsols
Definition: libmmgtypes.h:561
MMG2D_IPARAM_noinsert
@ MMG2D_IPARAM_noinsert
Definition: libmmg2d.h:67
MMG2D_Set_scalarSols
int MMG2D_Set_scalarSols(MMG5_pSol met, double *s)
Definition: API_functions_2d.c:1413
MMG5_Point::ref
int ref
Definition: libmmgtypes.h:247
MMG2D_Free_solutions
void MMG2D_Free_solutions(MMG5_pMesh mesh, MMG5_pSol sol)
Definition: libmmg2d_tools.c:558
MMG2D_DPARAM_hmin
@ MMG2D_DPARAM_hmin
Definition: libmmg2d.h:78
MMG5_Par::ref
int ref
Definition: libmmgtypes.h:232
MMG5_sum_reqEdgeLengthsAtPoint
int MMG5_sum_reqEdgeLengthsAtPoint(MMG5_pMesh mesh, MMG5_pSol met, int ip0, int ip1)
Definition: isosiz.c:129
MMG2D_loadMshMesh
int MMG2D_loadMshMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
Definition: inout_2d.c:624
MMG2D_saveVtpMesh
int MMG2D_saveVtpMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
MMG5_saveMshMesh
int MMG5_saveMshMesh(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename, int metricData)
Definition: inout.c:1538
MMG2D_Get_scalarSols
int MMG2D_Get_scalarSols(MMG5_pSol met, double *s)
Definition: API_functions_2d.c:1430
MMG2D_zaldy
int MMG2D_zaldy(MMG5_pMesh mesh)
Definition: zaldy_2d.c:288
MMG2D_saveVtpMesh_and_allData
int MMG2D_saveVtpMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
meshin
MMG5_pMesh char * meshin
Definition: API_functionsf_2d.c:765
MMG2D_IPARAM_nosurf
@ MMG2D_IPARAM_nosurf
Definition: libmmg2d.h:70
MMG5_EPSOK
#define MMG5_EPSOK
Definition: mmgcommon.h:91
MMG5_Mesh::ne
int ne
Definition: libmmgtypes.h:559
MMG2D_lencurv_iso
double MMG2D_lencurv_iso(MMG5_pMesh mesh, MMG5_pSol met, int ip1, int ip2)
Definition: length_2d.c:62
MMG2D_scaleMesh
int MMG2D_scaleMesh(MMG5_pMesh, MMG5_pSol, MMG5_pSol)
Definition: scalem_2d.c:48
MMG5_Mesh::adja
int * adja
Definition: libmmgtypes.h:572
MMG5_Mesh::nai
int nai
Definition: libmmgtypes.h:559
MMG2D_Set_solSize
int MMG2D_Set_solSize(MMG5_pMesh mesh, MMG5_pSol sol, int typEntity, int np, int typSol)
Definition: API_functions_2d.c:431
MMG5_eigen2
int MMG5_eigen2(double *mm, double *lambda, double vp[2][2])
Find eigenvalues and vectors of a 2x2 matrix.
Definition: eigenv.c:682
MMG2D_mmg2dmesh
int MMG2D_mmg2dmesh(MMG5_pMesh mesh, MMG5_pSol sol)
Definition: libmmg2d.c:413
MMG2D_Get_quadrilaterals
int MMG2D_Get_quadrilaterals(MMG5_pMesh mesh, int *quadra, int *refs, int *areRequired)
Definition: API_functions_2d.c:1119
MMG2D_Set_tensorSol
int MMG2D_Set_tensorSol(MMG5_pSol met, double m11, double m12, double m22, int pos)
Definition: API_functions_2d.c:1549
MMG2D_Free_all
int MMG2D_Free_all(const int starter,...)
Definition: API_functions_2d.c:1820
MMG5_Info::hausd
double hausd
Definition: libmmgtypes.h:476
MMG5_check_readedMesh
int MMG5_check_readedMesh(MMG5_pMesh mesh, int nref)
Definition: inout.c:486
MMG5_Prism::v
int v[6]
Definition: libmmgtypes.h:432
MMG5_Mesh::tria
MMG5_pTria tria
Definition: libmmgtypes.h:595
MG_CRN
#define MG_CRN
Definition: mmgcommon.h:145
MMG2D_readFloatSol
static int MMG2D_readFloatSol(MMG5_pSol sol, FILE *inm, int bin, int iswp, int pos)
Definition: inout_2d.c:759
MMG2D_Free_triangles
void MMG2D_Free_triangles(MMG5_pMesh mesh)
Definition: libmmg2d_tools.c:526
MG_REQ
#define MG_REQ
Definition: mmgcommon.h:142
MMG2D_mmg2dlib
int MMG2D_mmg2dlib(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmg2d.c:164
MMG2D_saveMshMesh
int MMG2D_saveMshMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
Definition: inout_2d.c:1436
MMG2D_IPARAM_verbose
@ MMG2D_IPARAM_verbose
Definition: libmmg2d.h:58
MMG2D_IPARAM_nomove
@ MMG2D_IPARAM_nomove
Definition: libmmg2d.h:69
mesh
MMG5_pMesh * mesh
Definition: API_functionsf_2d.c:63
MMG5_ADD_MEM
#define MMG5_ADD_MEM(mesh, size, message, law)
Definition: mmgcommon.h:290
MMG5_Mesh::quadra
MMG5_pQuad quadra
Definition: libmmgtypes.h:596
MMG5_loadMshMesh_part2
int MMG5_loadMshMesh_part2(MMG5_pMesh mesh, MMG5_pSol *sol, FILE **inm, const long posNodes, const long posElts, const long *posNodeData, const int bin, const int iswp, const int nelts, const int nsols)
Definition: inout.c:626
MG_GEO
#define MG_GEO
Definition: mmgcommon.h:141
MMG5_eigenv
int MMG5_eigenv(int symmat, double *mat, double lambda[3], double v[3][3])
Find eigenvalues and vectors of a 3x3 matrix.
Definition: eigenv.c:384
MMG5_gradation_info
void MMG5_gradation_info(MMG5_pMesh mesh)
Definition: isosiz.c:96
MMG2D_Get_adjaTri
int MMG2D_Get_adjaTri(MMG5_pMesh mesh, int kel, int listri[3])
Return adjacent elements of a triangle.
Definition: libmmg2d_tools.c:328
MMG_FSCANF
#define MMG_FSCANF(stream, format,...)
Definition: mmgcommon.h:432
chrono
void chrono(int cmode, mytime *ptt)
Function to measure time.
Definition: chrono.c:49
MMG5_saveEdge
int MMG5_saveEdge(MMG5_pMesh mesh, const char *filename)
Definition: inout.c:2577
MMG5_SAFE_RECALLOC
#define MMG5_SAFE_RECALLOC(ptr, prevSize, newSize, type, message, law)
Definition: mmgcommon.h:341
MMG2D_saveVtuMesh
int MMG2D_saveVtuMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
MMG2D_Set_outputSolName
int MMG2D_Set_outputSolName(MMG5_pMesh mesh, MMG5_pSol sol, const char *solout)
Definition: API_functions_2d.c:77
MMG5_Mesh::npi
int npi
Definition: libmmgtypes.h:559
MMG5_Info::noinsert
uint8_t noinsert
Definition: libmmgtypes.h:500
MMG5_readDoubleSol3D
int MMG5_readDoubleSol3D(MMG5_pSol sol, FILE *inm, int bin, int iswp, int pos)
Definition: inout.c:2208
MMG5_reset_metricAtReqEdges_surf
int MMG5_reset_metricAtReqEdges_surf(MMG5_pMesh mesh, MMG5_pSol met, int8_t ismet)
Definition: isosiz.c:204
MMG2D_loadVect
int MMG2D_loadVect(MMG5_pMesh, char *)
MMG2D_DPARAM_ls
@ MMG2D_DPARAM_ls
Definition: libmmg2d.h:84
MMG5_Tria::ref
int ref
Definition: libmmgtypes.h:304
MMG5_Point
Structure to store points of a MMG mesh.
Definition: libmmgtypes.h:241
MMG5_interpreg_ani
int MMG5_interpreg_ani(MMG5_pMesh mesh, MMG5_pSol met, MMG5_pTria pt, int8_t i, double s, double mr[6])
Definition: intmet.c:498
MMG2D_mmg2dmov
int MMG2D_mmg2dmov(MMG5_pMesh mesh, MMG5_pSol met, MMG5_pSol disp)
Definition: libmmg2d.c:927
MMG5_nortri
int MMG5_nortri(MMG5_pMesh mesh, MMG5_pTria pt, double *n)
Definition: tools.c:156
MMG2D_Get_vectorSols
int MMG2D_Get_vectorSols(MMG5_pSol met, double *sols)
Definition: API_functions_2d.c:1533
MMG5_Info::ddebug
int8_t ddebug
Definition: libmmgtypes.h:487
mytime
Chrono object.
Definition: chrono.h:58
MMG5_Edge::b
int b
Definition: libmmgtypes.h:275
MMG2D_saveNeigh
static int MMG2D_saveNeigh(MMG5_pMesh mesh, const char *filename)
Definition: inout_2d.c:1923
MMG2D_loadMshMesh_and_allData
int MMG2D_loadMshMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_2d.c:685
MMG5_Sol::m
double * m
Definition: libmmgtypes.h:618
MMG2D_Get_edge
int MMG2D_Get_edge(MMG5_pMesh mesh, int *e0, int *e1, int *ref, int *isRidge, int *isRequired)
Definition: API_functions_2d.c:1222
MMG2D_Free_names
int MMG2D_Free_names(const int starter,...)
Definition: API_functions_2d.c:1849
MMG2D_Unset_requiredVertex
int MMG2D_Unset_requiredVertex(MMG5_pMesh mesh, int k)
Definition: API_functions_2d.c:657
MMG2D_Set_iparameter
int MMG2D_Set_iparameter(MMG5_pMesh mesh, MMG5_pSol sol, int iparam, int val)
Definition: API_functions_2d.c:102
MMG5_loadSolHeader
int MMG5_loadSolHeader(const char *filename, int meshDim, FILE **inm, int *ver, int *bin, int *iswp, int *np, int *dim, int *nsols, int **type, long *posnp, int imprim)
Definition: inout.c:2019
MMG5_rotmatrix
int MMG5_rotmatrix(double n[3], double r[3][3])
Definition: tools.c:233
MMG2D_DPARAM_angleDetection
@ MMG2D_DPARAM_angleDetection
Definition: libmmg2d.h:77
MMG5_STRONGFAILURE
#define MMG5_STRONGFAILURE
Definition: libmmgtypes.h:59
MMG2D_lencurv
double(* MMG2D_lencurv)(MMG5_pMesh, MMG5_pSol, int, int)
Definition: mmg2dexterns.c:6
MMG5_mark_pointsOnReqEdge_fromTria
void MMG5_mark_pointsOnReqEdge_fromTria(MMG5_pMesh mesh)
Definition: isosiz.c:242
MMG2D_mmg2d1n
int MMG2D_mmg2d1n(MMG5_pMesh, MMG5_pSol)
Definition: mmg2d1.c:807
MMG2D_Get_tensorSols
int MMG2D_Get_tensorSols(MMG5_pSol met, double *sols)
Definition: API_functions_2d.c:1640
MMG2D_Get_edges
int MMG2D_Get_edges(MMG5_pMesh mesh, int *edges, int *refs, int *areRidges, int *areRequired)
Definition: API_functions_2d.c:1298
MMG2D_Free_allSols
int MMG2D_Free_allSols(MMG5_pMesh mesh, MMG5_pSol *sol)
Definition: API_functions_2d.c:1814
MMG2D_mmg2dls
int MMG2D_mmg2dls(MMG5_pMesh mesh, MMG5_pSol sol, MMG5_pSol umet)
Definition: libmmg2d.c:636
MMG2D_mmg2d6
int MMG2D_mmg2d6(MMG5_pMesh, MMG5_pSol, MMG5_pSol)
Definition: mmg2d6.c:1001
MMG5_Quad::v
int v[4]
Definition: libmmgtypes.h:336
MG_MIN
#define MG_MIN(a, b)
Definition: mmgcommon.h:136
MMG5_interpmet22
int MMG5_interpmet22(MMG5_pMesh mesh, double *m, double *n, double s, double *mr)
Definition: intmet_2d.c:54
MMG2D_loadVtuMesh
int MMG2D_loadVtuMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
MMG2D_Set_quadrilaterals
int MMG2D_Set_quadrilaterals(MMG5_pMesh mesh, int *quadra, int *refs)
Definition: API_functions_2d.c:1094
MMG2D_restart
static int MMG2D_restart(MMG5_pMesh mesh)
Definition: libmmg2d.c:381
MMG2D_IPARAM_noswap
@ MMG2D_IPARAM_noswap
Definition: libmmg2d.h:68
MMG5_Mesh::na
int na
Definition: libmmgtypes.h:559
MMG2D_Get_trisFromEdge
int MMG2D_Get_trisFromEdge(MMG5_pMesh mesh, int ked, int ktri[2], int ied[2])
Definition: libmmg2d_tools.c:447
MMG2D_loadAllSols
int MMG2D_loadAllSols(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_2d.c:901
MMG5_Info::hgrad
double hgrad
Definition: libmmgtypes.h:476
MMG2D_Set_requiredTriangle
int MMG2D_Set_requiredTriangle(MMG5_pMesh mesh, int k)
Definition: API_functions_2d.c:860
MMG5_Edge::tag
int16_t tag
Definition: libmmgtypes.h:279
MMG5_EPS
#define MMG5_EPS
Definition: eigenv.h:32
MMG5_Point::tag
int16_t tag
Definition: libmmgtypes.h:253
MMG5_xPoint::n1
double n1[3]
Definition: libmmgtypes.h:264
MMG5_Tria
Definition: libmmgtypes.h:301
MMG5_Mesh::nanil
int nanil
Definition: libmmgtypes.h:571
MMG2D_Set_solsAtVerticesSize
int MMG2D_Set_solsAtVerticesSize(MMG5_pMesh mesh, MMG5_pSol *sol, int nsols, int nentities, int *typSol)
Definition: API_functions_2d.c:475
MMG2D_Set_requiredVertex
int MMG2D_Set_requiredVertex(MMG5_pMesh mesh, int k)
Definition: API_functions_2d.c:650
MMG5_SUCCESS
#define MMG5_SUCCESS
Definition: libmmgtypes.h:43
MG_NOSURF
#define MG_NOSURF
Definition: mmgcommon.h:146
MMG2D_Set_localParameter
int MMG2D_Set_localParameter(MMG5_pMesh mesh, MMG5_pSol sol, int typ, int ref, double hmin, double hmax, double hausd)
Definition: API_functions_2d.c:310
MMG5_Bezier
Definition: mmgcommon.h:557
MMG5_readFloatSol3D
int MMG5_readFloatSol3D(MMG5_pSol sol, FILE *inm, int bin, int iswp, int pos)
Definition: inout.c:2159
MMG2D_saveVtkMesh_and_allData
int MMG2D_saveVtkMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
MMG5_eigensym
int MMG5_eigensym(double m[3], double lambda[2], double vp[2][2])
Definition: eigenv.c:797
MMG5_SW
#define MMG5_SW
Definition: mmgcommon.h:176
MMG2D_saveSol
int MMG2D_saveSol(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
Definition: inout_2d.c:1479
MMG5_Sol::ver
int ver
Definition: libmmgtypes.h:611
MMG2D_Get_ithSol_inSolsAtVertices
int MMG2D_Get_ithSol_inSolsAtVertices(MMG5_pSol sol, int i, double *s, int pos)
Definition: API_functions_2d.c:1739
MMG2D_sum_reqEdgeLengthsAtPoint
int MMG2D_sum_reqEdgeLengthsAtPoint(MMG5_pMesh mesh, MMG5_pSol met, MMG5_pTria pt, int8_t i)
Definition: isosiz_2d.c:50
MMG2D_quickarea
double MMG2D_quickarea(double a[2], double b[2], double c[2])
Definition: tools.c:858
MMG5_LOWFAILURE
#define MMG5_LOWFAILURE
Definition: libmmgtypes.h:51
MMG2D_saveVect
int MMG2D_saveVect(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename, double lambda)
MMG5_Mesh::nquad
int nquad
Definition: libmmgtypes.h:560
MMG5_Info::nosurf
uint8_t nosurf
Definition: libmmgtypes.h:500
MMG5_unscaleMesh
int MMG5_unscaleMesh(MMG5_pMesh mesh, MMG5_pSol met, MMG5_pSol ls)
Definition: scalem.c:401
MG_NUL
#define MG_NUL
Definition: mmgcommon.h:151
MMG5_Quad::ref
int ref
Definition: libmmgtypes.h:337
MMG5_Sol::type
int type
Definition: libmmgtypes.h:617
MMG2D_outqua
int MMG2D_outqua(MMG5_pMesh, MMG5_pSol)
Definition: quality_2d.c:156
MMG2D_Set_parallelEdge
int MMG2D_Set_parallelEdge(MMG5_pMesh mesh, int k)
Definition: API_functions_2d.c:1204
MMG2D_DPARAM_hmax
@ MMG2D_DPARAM_hmax
Definition: libmmg2d.h:79
MMG5_Info::nsd
int nsd
Definition: libmmgtypes.h:485
MMG5_chkmsh
int(* MMG5_chkmsh)(MMG5_pMesh, int, int)
Definition: mmgexterns.c:27
MMG2D_saveMshMesh_and_allData
int MMG2D_saveMshMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_2d.c:1440
MMG2D_EPSD
#define MMG2D_EPSD
Definition: mmg2d.h:51
MMG2D_IPARAM_numberOfMat
@ MMG2D_IPARAM_numberOfMat
Definition: libmmg2d.h:74
MMG5_Mesh::xpoint
MMG5_pxPoint xpoint
Definition: libmmgtypes.h:590
MMG2D_Get_adjaVerticesFast
int MMG2D_Get_adjaVerticesFast(MMG5_pMesh mesh, int ip, int start, int lispoi[MMG2D_LMAX])
Return adjacent elements of a triangle.
Definition: libmmg2d_tools.c:354
MMG5_ATHIRD
#define MMG5_ATHIRD
Definition: mmgcommon.h:86
MMG2D_Init_parameters
void MMG2D_Init_parameters(MMG5_pMesh mesh)
Definition: API_functions_2d.c:80
MMG2D_loadVtkMesh_and_allData
int MMG2D_loadVtkMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
printim
void printim(double elps, char *stim)
Print real time.
Definition: chrono.c:149
MMG2D_saveSol
int MMG2D_saveSol(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
Definition: inout_2d.c:1479
MMG2D_saveTetgenMesh
int MMG2D_saveTetgenMesh(MMG5_pMesh, const char *)
Definition: inout_2d.c:2001
MMG2D_Unset_corner
int MMG2D_Unset_corner(MMG5_pMesh mesh, int k)
Definition: API_functions_2d.c:644
MMG5_Point::xp
int xp
Definition: libmmgtypes.h:248
MMG2D_Chk_meshData
int MMG2D_Chk_meshData(MMG5_pMesh mesh, MMG5_pSol met)
Definition: API_functions_2d.c:1769
MMG5_Mesh::tetra
MMG5_pTetra tetra
Definition: libmmgtypes.h:591
MMG2D_Init_fileNames
void MMG2D_Init_fileNames(MMG5_pMesh mesh, MMG5_pSol sol)
Definition: API_functions_2d.c:56
MMG2D_savenor_db
int MMG2D_savenor_db(MMG5_pMesh mesh, char *filename, int8_t pack)
Definition: inout_2d.c:1744
MMG5_paratmet
int MMG5_paratmet(double c0[3], double n0[3], double m[6], double c1[3], double n1[3], double mt[6])
Definition: mettools.c:652
MMG5_Info::fem
int8_t fem
Definition: libmmgtypes.h:493
MMG2D_loadAllSols
int MMG2D_loadAllSols(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_2d.c:901
MMG2D_analys
int MMG2D_analys(MMG5_pMesh mesh)
Definition: analys_2d.c:761
MMG2D_Set_scalarSol
int MMG2D_Set_scalarSol(MMG5_pSol met, double s, int pos)
Definition: API_functions_2d.c:1352
MMG2D_Get_triFromEdge
int MMG2D_Get_triFromEdge(MMG5_pMesh mesh, int ked, int *ktri, int *ied)
Definition: libmmg2d_tools.c:428
MMG2D_IPARAM_anisosize
@ MMG2D_IPARAM_anisosize
Definition: libmmg2d.h:75
mmgcommon.h
MMG5_Info::renum
int renum
Definition: libmmgtypes.h:481
MMG2D_Set_vectorSol
int MMG2D_Set_vectorSol(MMG5_pSol met, double vx, double vy, int pos)
Definition: API_functions_2d.c:1439
MMG2D_Param
MMG2D_Param
Input parameters for mmg library.
Definition: libmmg2d.h:57
MMG5_Set_inputSolName
int MMG5_Set_inputSolName(MMG5_pMesh mesh, MMG5_pSol sol, const char *solin)
Definition: API_functions.c:183
tminit
void tminit(mytime *t, int maxtim)
Initialize mytime object.
Definition: chrono.c:120
MMG5_Sol::dim
int dim
Definition: libmmgtypes.h:612
MMG5_Quad::tag
int16_t tag[4]
Definition: libmmgtypes.h:341
MMG5_buildridmetnor
int MMG5_buildridmetnor(MMG5_pMesh mesh, MMG5_pSol met, int np0, double nt[3], double mr[6], double r[3][3])
Definition: mettools.c:191
MMG2D_loadMesh
int MMG2D_loadMesh(MMG5_pMesh mesh, const char *filename)
Definition: inout_2d.c:26
MMG2D_Get_numberOfNonBdyEdges
int MMG2D_Get_numberOfNonBdyEdges(MMG5_pMesh mesh, int *nb_edges)
Definition: libmmg2d_tools.c:193
MMG2D_Set_inputSolName
int MMG2D_Set_inputSolName(MMG5_pMesh mesh, MMG5_pSol sol, const char *solin)
Definition: API_functions_2d.c:68
MMG5_Info::optim
uint8_t optim
Definition: libmmgtypes.h:500
MMG2D_saveMesh
int MMG2D_saveMesh(MMG5_pMesh, const char *)
Definition: inout_2d.c:1005
MMG5_Quad
Definition: libmmgtypes.h:335
MMG2D_savemesh_db
int MMG2D_savemesh_db(MMG5_pMesh mesh, char *filename, int8_t pack)
Definition: inout_2d.c:1591
MMG2D_readDoubleSol
static int MMG2D_readDoubleSol(MMG5_pSol sol, FILE *inm, int bin, int iswp, int pos)
Definition: inout_2d.c:790
MMG2D_mmg2d9
int MMG2D_mmg2d9(MMG5_pMesh, MMG5_pSol, MMG5_pSol, int **)
Definition: mmg2d9.c:571
MMG5_Mesh::nt
int nt
Definition: libmmgtypes.h:559
MMG5_countBinaryElts
static int MMG5_countBinaryElts(FILE **inm, const int nelts, const int iswp, int *np, int *na, int *nt, int *nq, int *ne, int *npr)
Definition: inout.c:89
MMG5_saveNode
int MMG5_saveNode(MMG5_pMesh mesh, const char *filename)
Definition: inout.c:2503
_LIBMMG5_RETURN
#define _LIBMMG5_RETURN(mesh, sol, met, val)
Definition: mmgcommon.h:182
MMG5_Par::hausd
double hausd
Definition: libmmgtypes.h:231
MMG5_Mesh
MMG mesh structure.
Definition: libmmgtypes.h:552
MMG2D_Get_nonBdyEdge
int MMG2D_Get_nonBdyEdge(MMG5_pMesh mesh, int *e0, int *e1, int *ref, int idx)
Definition: libmmg2d_tools.c:286
MMG2D_mmg2dmesh
int MMG2D_mmg2dmesh(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmg2d.c:413
MMG5_Info::par
MMG5_pPar par
Definition: libmmgtypes.h:475
MMG5_xPoint::n2
double n2[3]
Definition: libmmgtypes.h:264
MMG5_writeDoubleSol3D
void MMG5_writeDoubleSol3D(MMG5_pMesh mesh, MMG5_pSol sol, FILE *inm, int bin, int pos, int metricData)
Definition: inout.c:2257
MMG2D_excfun
static void MMG2D_excfun(int sigid)
Definition: mmg2d.h:97
MMG2D_GetByIdx_vertex
int MMG2D_GetByIdx_vertex(MMG5_pMesh mesh, double *c0, double *c1, int *ref, int *isCorner, int *isRequired, int idx)
Definition: API_functions_2d.c:690
MMG5_Info::nosizreq
uint8_t nosizreq
Definition: libmmgtypes.h:500
MMG5_xPoint
Structure to store surface points of a MMG mesh.
Definition: libmmgtypes.h:263
MMG2D_DPARAM_rmc
@ MMG2D_DPARAM_rmc
Definition: libmmg2d.h:85
MMG2D_mmg2d2
int MMG2D_mmg2d2(MMG5_pMesh, MMG5_pSol)
Definition: mmg2d2.c:495
MMG5_Sol::npmax
int npmax
Definition: libmmgtypes.h:614
MMG5_Edg
@ MMG5_Edg
Definition: libmmgtypes.h:214
MMG5_Tria::flag
int flag
Definition: libmmgtypes.h:310
MMG5_Mesh::ver
int ver
Definition: libmmgtypes.h:556
MMG2D_savedisp_db
int MMG2D_savedisp_db(MMG5_pMesh mesh, MMG5_pSol disp, char *filename, int8_t pack)
Definition: inout_2d.c:1799
MMG2D_Set_constantSize
int MMG2D_Set_constantSize(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmg2d_tools.c:487
MMG5_interp_iso
int MMG5_interp_iso(double *ma, double *mb, double *mp, double t)
Definition: intmet.c:478
MMG2D_Set_outputMeshName
int MMG2D_Set_outputMeshName(MMG5_pMesh mesh, const char *meshout)
Definition: API_functions_2d.c:72
MMG5_mmgIntmet33_ani
int MMG5_mmgIntmet33_ani(double *m, double *n, double *mr, double s)
Definition: intmet.c:49
MMG5_Info::iso
int8_t iso
Definition: libmmgtypes.h:489
MMG2D_Free_edges
void MMG2D_Free_edges(MMG5_pMesh mesh)
Definition: libmmg2d_tools.c:541
MMG5_Mesh::type
int type
Definition: libmmgtypes.h:558
MMG5_Info::hmax
double hmax
Definition: libmmgtypes.h:476
MMG5_Prism::ref
int ref
Definition: libmmgtypes.h:433
MMG5_Par
Definition: libmmgtypes.h:228
MMG5_Mesh::nei
int nei
Definition: libmmgtypes.h:559
MMG2D_Get_tensorSol
int MMG2D_Get_tensorSol(MMG5_pSol met, double *m11, double *m12, double *m22)
Definition: API_functions_2d.c:1583
MMG2D_Get_quadrilateral
int MMG2D_Get_quadrilateral(MMG5_pMesh mesh, int *v0, int *v1, int *v2, int *v3, int *ref, int *isRequired)
Definition: API_functions_2d.c:1048
MMG2D_Get_ithSols_inSolsAtVertices
int MMG2D_Get_ithSols_inSolsAtVertices(MMG5_pSol sol, int i, double *s)
Definition: API_functions_2d.c:1684
MMG2D_Get_triangleQuality
double MMG2D_Get_triangleQuality(MMG5_pMesh mesh, MMG5_pSol met, int k)
Definition: API_functions_2d.c:1328
MMG5_Mesh::info
MMG5_Info info
Definition: libmmgtypes.h:599
MMG2D_DPARAM_hgradreq
@ MMG2D_DPARAM_hgradreq
Definition: libmmg2d.h:83
MMG2D_saveMshMesh
int MMG2D_saveMshMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
Definition: inout_2d.c:1436
MMG5_Point::flag
int flag
Definition: libmmgtypes.h:251
MMG2D_doSol
int MMG2D_doSol(MMG5_pMesh mesh, MMG5_pSol met)
Definition: solmap_2d.c:46
MMG5_Edge::a
int a
Definition: libmmgtypes.h:275
MMG5_Par::elt
int8_t elt
Definition: libmmgtypes.h:233
MMG5_Mesh::npmax
int npmax
Definition: libmmgtypes.h:559
MMG5_rmtr
int MMG5_rmtr(double r[3][3], double m[6], double mr[6])
Definition: tools.c:199
MMG2D_Set_vertex
int MMG2D_Set_vertex(MMG5_pMesh mesh, double c0, double c1, int ref, int pos)
Definition: API_functions_2d.c:598
MMG2D_DPARAM_hausd
@ MMG2D_DPARAM_hausd
Definition: libmmg2d.h:81
MG_ISO
#define MG_ISO
Definition: libmmgtypes.h:65
MMG5_Tetra::ref
int ref
Definition: libmmgtypes.h:373
MMG5_printMetStats
void MMG5_printMetStats(MMG5_pMesh mesh, MMG5_pSol met)
Definition: inout.c:2467
MMG5_Mesh::nti
int nti
Definition: libmmgtypes.h:559
MMG2D_loadSol
int MMG2D_loadSol(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
Definition: inout_2d.c:817
tmp
tmp[*strlen0]
Definition: API_functionsf_2d.c:771
MMG5_chkMetricType
int MMG5_chkMetricType(MMG5_pMesh mesh, int *type, FILE *inm)
Definition: inout.c:2435
MMG2D_Set_triangle
int MMG2D_Set_triangle(MMG5_pMesh mesh, int v0, int v1, int v2, int ref, int pos)
Definition: API_functions_2d.c:785
MMG2D_Reset_verticestags
void MMG2D_Reset_verticestags(MMG5_pMesh mesh)
Definition: libmmg2d_tools.c:517
MMG2D_saveMesh
int MMG2D_saveMesh(MMG5_pMesh mesh, const char *filename)
Definition: inout_2d.c:1005
MMG2D_Set_requiredEdge
int MMG2D_Set_requiredEdge(MMG5_pMesh mesh, int k)
Definition: API_functions_2d.c:1180
MMG5_Mesh::nameout
char * nameout
Definition: libmmgtypes.h:601
MMG2D_RETURN_AND_PACK
#define MMG2D_RETURN_AND_PACK(mesh, met, sol, val)
Definition: libmmg2d.c:30
MMG5_intridmet
int MMG5_intridmet(MMG5_pMesh mesh, MMG5_pSol met, int ip1, int ip2, double s, double v[3], double mr[6])
Definition: intmet.c:162
MMG2D_saveVtkMesh
int MMG2D_saveVtkMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
MMG2D_loadVtpMesh_and_allData
int MMG2D_loadVtpMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
MMG2D_DPARAM_hsiz
@ MMG2D_DPARAM_hsiz
Definition: libmmg2d.h:80
MMG2D_DPARAM_hgrad
@ MMG2D_DPARAM_hgrad
Definition: libmmg2d.h:82
MMG5_swapf
float MMG5_swapf(float sbin)
Definition: inout.c:61
MMG2D_saveEle
static int MMG2D_saveEle(MMG5_pMesh mesh, const char *filename)
Definition: inout_2d.c:1851
MMG2D_Free_structures
int MMG2D_Free_structures(const int starter,...)
Definition: API_functions_2d.c:1834
MMG5_SAFE_CALLOC
#define MMG5_SAFE_CALLOC(ptr, size, type, law)
Definition: mmgcommon.h:304
MMG5_saveSolHeader
int MMG5_saveSolHeader(MMG5_pMesh mesh, const char *filename, FILE **inm, int ver, int *bin, int np, int dim, int nsols, int *type, int *size)
Definition: inout.c:2323
MMG5_gradsizreq_iso
int MMG5_gradsizreq_iso(MMG5_pMesh mesh, MMG5_pSol met)
Definition: isosiz.c:368
MMG2D_Set_multiMat
int MMG2D_Set_multiMat(MMG5_pMesh mesh, MMG5_pSol sol, int ref, int split, int rin, int rex)
Definition: API_functions_2d.c:383
MMG2D_Set_solSize
int MMG2D_Set_solSize(MMG5_pMesh mesh, MMG5_pSol sol, int typEntity, int np, int typSol)
Definition: API_functions_2d.c:431
MMG5_Scalar
@ MMG5_Scalar
Definition: libmmgtypes.h:202
MMG2D_saveVtuMesh_and_allData
int MMG2D_saveVtuMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
MMG2D_Get_vertices
int MMG2D_Get_vertices(MMG5_pMesh mesh, double *vertices, int *refs, int *areCorners, int *areRequired)
Definition: API_functions_2d.c:750
MMG5_DEL_MEM
#define MMG5_DEL_MEM(mesh, ptr)
Definition: mmgcommon.h:281
MMG5_Mesh::edge
MMG5_pEdge edge
Definition: libmmgtypes.h:597
MMG2D_Set_inputSolName
int MMG2D_Set_inputSolName(MMG5_pMesh mesh, MMG5_pSol sol, const char *solin)
Definition: API_functions_2d.c:68
MMG2D_Set_meshSize
int MMG2D_Set_meshSize(MMG5_pMesh mesh, int np, int nt, int nquad, int na)
Definition: API_functions_2d.c:389
ier
int ier
Definition: API_functionsf_2d.c:730
MMG2D_Set_commonFunc
static void MMG2D_Set_commonFunc(void)
Definition: mmg2d.h:375
MMG2D_mmg2dls
int MMG2D_mmg2dls(MMG5_pMesh mesh, MMG5_pSol sol, MMG5_pSol met)
Definition: libmmg2d.c:636
MMG2D_pack
int MMG2D_pack(MMG5_pMesh mesh, MMG5_pSol sol, MMG5_pSol met)
Definition: hash_2d.c:514
MMG2D_saveAllSols
int MMG2D_saveAllSols(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_2d.c:1538
MMG2D_IPARAM_lag
@ MMG2D_IPARAM_lag
Definition: libmmg2d.h:64
MMG5_Info::lag
int8_t lag
Definition: libmmgtypes.h:494
MMG2D_Get_meshSize
int MMG2D_Get_meshSize(MMG5_pMesh mesh, int *np, int *nt, int *nquad, int *na)
Definition: API_functions_2d.c:574
MMG5_loadMshMesh_part1
int MMG5_loadMshMesh_part1(MMG5_pMesh mesh, const char *filename, FILE **inm, long *posNodes, long *posElts, long **posNodeData, int *bin, int *iswp, int *nelts, int *nsols)
Definition: inout.c:238
MMG5_Prism
Definition: libmmgtypes.h:431
MMG2D_keep_only1Subdomain
void MMG2D_keep_only1Subdomain(MMG5_pMesh mesh, int nsd)
Definition: tools_2d.c:91
MMG2D_intmet_iso
int MMG2D_intmet_iso(MMG5_pMesh mesh, MMG5_pSol met, int k, int8_t i, int ip, double s)
Definition: intmet_2d.c:38
MMG5_Info::setfem
int8_t setfem
Definition: libmmgtypes.h:490
MMG5_compute_meanMetricAtMarkedPoints_iso
int MMG5_compute_meanMetricAtMarkedPoints_iso(MMG5_pMesh mesh, MMG5_pSol met)
Definition: isosiz.c:167
MMG2D_IPARAM_mem
@ MMG2D_IPARAM_mem
Definition: libmmg2d.h:59
MMG2D_saveTetgenMesh
int MMG2D_saveTetgenMesh(MMG5_pMesh mesh, const char *filename)
Definition: inout_2d.c:2001
MMG2D_Unset_requiredTriangle
int MMG2D_Unset_requiredTriangle(MMG5_pMesh mesh, int k)
Definition: API_functions_2d.c:873
long_ani
double long_ani(double *ca, double *cb, double *ma, double *mb)
Definition: length_2d.c:46
MMG5_Info::hsiz
double hsiz
Definition: libmmgtypes.h:476
MMG2D_Get_adjaVertices
int MMG2D_Get_adjaVertices(MMG5_pMesh mesh, int ip, int lispoi[MMG2D_LMAX])
Return adjacent elements of a triangle.
Definition: libmmg2d_tools.c:342
MMG5_surftri_iso
double MMG5_surftri_iso(MMG5_pMesh mesh, MMG5_pSol met, MMG5_pTria ptt)
Definition: isosiz.c:42
if
if(!ier) exit(EXIT_FAILURE)
MMG5_Mesh::ntmax
int ntmax
Definition: libmmgtypes.h:559
MMG5_Point::tmp
int tmp
Definition: libmmgtypes.h:249
MMG2D_IPARAM_optim
@ MMG2D_IPARAM_optim
Definition: libmmg2d.h:66
MMG2D_intmet_ani
int MMG2D_intmet_ani(MMG5_pMesh mesh, MMG5_pSol met, int k, int8_t i, int ip, double s)
Definition: intmet_2d.c:209
TIMEMAX
#define TIMEMAX
Definition: chrono.h:49
long_iso
double long_iso(double *ca, double *cb, double *ma, double *mb)
Definition: length_2d.c:26
starter
const int starter
Definition: API_functionsf_2d.c:728
MMG2D_loadMshMesh
int MMG2D_loadMshMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
Definition: inout_2d.c:624
MMG5_EPSD
#define MMG5_EPSD
Definition: eigenv.h:31
MMG5_Info::metRidTyp
uint8_t metRidTyp
Definition: libmmgtypes.h:501
MMG5_Mesh::dim
int dim
Definition: libmmgtypes.h:557
MMG2D_lencurv_ani
double MMG2D_lencurv_ani(MMG5_pMesh mesh, MMG5_pSol met, int ip1, int ip2)
Definition: length_2d.c:81
MMG5_Set_defaultTruncatureSizes
int MMG5_Set_defaultTruncatureSizes(MMG5_pMesh mesh, int8_t sethmin, int8_t sethmax)
Definition: API_functions.c:526
MMG5_Vertex
@ MMG5_Vertex
Definition: libmmgtypes.h:213
MMG5_swapd
double MMG5_swapd(double sbin)
Definition: inout.c:73
MMG5_compute_meanMetricAtMarkedPoints
int(* MMG5_compute_meanMetricAtMarkedPoints)(MMG5_pMesh, MMG5_pSol)
Definition: mmgexterns.c:34
MMG2D_Unset_requiredEdge
int MMG2D_Unset_requiredEdge(MMG5_pMesh mesh, int k)
Definition: API_functions_2d.c:1192
MMG5_SAFE_FREE
MMG5_SAFE_FREE(tmp)
MMG2D_defsiz_iso
int MMG2D_defsiz_iso(MMG5_pMesh mesh, MMG5_pSol met)
Definition: isosiz_2d.c:130
MMG2D_Get_scalarSol
int MMG2D_Get_scalarSol(MMG5_pSol met, double *s)
Definition: API_functions_2d.c:1382
MMG5_Sol::npi
int npi
Definition: libmmgtypes.h:615
MMG2D_loadSol
int MMG2D_loadSol(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
Definition: inout_2d.c:817
MMG2D_iare
static const int MMG2D_iare[3][2]
Definition: mmg2d.h:128
MMG5_swapbin
int MMG5_swapbin(int sbin)
Definition: inout.c:38
MMG5_SD
#define MMG5_SD
Definition: mmgcommon.h:177
MMG2D_Get_solsAtVerticesSize
int MMG2D_Get_solsAtVerticesSize(MMG5_pMesh mesh, MMG5_pSol *sol, int *nsols, int *nentities, int *typSol)
Definition: API_functions_2d.c:545
MMG5_Tetra::v
int v[4]
Definition: libmmgtypes.h:372
MMG2D_prilen
int MMG2D_prilen(MMG5_pMesh mesh, MMG5_pSol sol)
Definition: length_2d.c:124
MMG5_Point::n
double n[3]
Definition: libmmgtypes.h:243