mmg3d
libmmg3d.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 */
23 
45 #ifndef MMG3DLIB_H
46 #define MMG3DLIB_H
47 
48 #ifdef __cplusplus
49 extern "C" {
50 #endif
51 
52 #include "mmg/mmg3d/libmmgtypes.h"
53 
57 #define MMG3D_LMAX 10240
58 
102 };
103 
104 /*--------------------------- functions header ---------------------------*/
105 /* Initialization functions */
106 /* init structures */
138  int MMG3D_Init_mesh(const int starter,...);
164 
165 /* init file names */
182  int MMG3D_Set_inputMeshName(MMG5_pMesh mesh,const char* meshin);
199  int MMG3D_Set_outputMeshName(MMG5_pMesh mesh, const char* meshout);
218  const char* solin);
237  const char* solout);
238 
239 /* init structure sizes */
259  int MMG3D_Set_solSize(MMG5_pMesh mesh, MMG5_pSol sol, int typEntity,
260  int np, int typSol);
261 
285  int nentities, int *typSol);
286 
309  int MMG3D_Set_meshSize(MMG5_pMesh mesh,int np,int ne,int nprism,
310  int nt,int nquad,int na);
311 
312 /* init structure datas */
334  int MMG3D_Set_vertex(MMG5_pMesh mesh, double c0, double c1,
335  double c2, int ref,int pos);
358  int MMG3D_Set_vertices(MMG5_pMesh mesh, double *vertices,int *refs);
380  int MMG3D_Set_tetrahedron(MMG5_pMesh mesh, int v0, int v1,
381  int v2, int v3, int ref, int pos);
402  int MMG3D_Set_tetrahedra(MMG5_pMesh mesh, int *tetra,
403  int *refs);
427  int MMG3D_Set_prism(MMG5_pMesh mesh, int v0, int v1,
428  int v2, int v3, int v4, int v5, int ref, int pos);
449  int MMG3D_Set_prisms(MMG5_pMesh mesh, int *prisms,
450  int *refs);
451 
472  int MMG3D_Set_triangle(MMG5_pMesh mesh, int v0, int v1,
473  int v2, int ref,int pos);
494  int MMG3D_Set_triangles(MMG5_pMesh mesh, int *tria, int *refs);
516  int MMG3D_Set_quadrilateral(MMG5_pMesh mesh, int v0, int v1,
517  int v2, int v3, int ref,int pos);
538  int MMG3D_Set_quadrilaterals(MMG5_pMesh mesh, int *quads, int *refs);
558  int MMG3D_Set_edge(MMG5_pMesh mesh, int v0, int v1, int ref,int pos);
574  int MMG3D_Set_corner(MMG5_pMesh mesh, int k);
575 
592  int MMG3D_Unset_corner(MMG5_pMesh mesh, int k);
593 
610 
627 
644 
662 
680  int MMG3D_Set_requiredTetrahedra(MMG5_pMesh mesh, int *reqIdx, int nreq);
681 
700  int MMG3D_Unset_requiredTetrahedra(MMG5_pMesh mesh, int *reqIdx, int nreq);
701 
718 
735 
753  int MMG3D_Set_requiredTriangles(MMG5_pMesh mesh, int *reqIdx, int nreq);
754 
772  int MMG3D_Unset_requiredTriangles(MMG5_pMesh mesh, int *reqIdx, int nreq);
773 
791 
809 
828  int MMG3D_Set_parallelTriangles(MMG5_pMesh mesh, int *parIdx, int npar);
829 
848  int MMG3D_Unset_parallelTriangles(MMG5_pMesh mesh, int *parIdx, int npar);
849 
865  int MMG3D_Set_ridge(MMG5_pMesh mesh, int k);
866 
882  int MMG3D_Unset_ridge(MMG5_pMesh mesh, int k);
883 
900 
917 
938  int MMG3D_Set_normalAtVertex(MMG5_pMesh mesh, int k, double n0, double n1,
939  double n2) ;
940 
959  int MMG3D_Set_scalarSol(MMG5_pSol met, double s,int pos);
976  int MMG3D_Set_scalarSols(MMG5_pSol met, double *s);
997  int MMG3D_Set_vectorSol(MMG5_pSol met, double vx,double vy, double vz,
998  int pos);
1015  int MMG3D_Set_vectorSols(MMG5_pSol met, double *sols);
1039  int MMG3D_Set_tensorSol(MMG5_pSol met, double m11,double m12, double m13,
1040  double m22,double m23, double m33, int pos);
1057  int MMG3D_Set_tensorSols(MMG5_pSol met, double *sols);
1079  int MMG3D_Set_ithSol_inSolsAtVertices(MMG5_pSol sol,int i, double* s,int pos);
1101  int MMG3D_Set_ithSols_inSolsAtVertices(MMG5_pSol sol,int i, double* s);
1102 
1116 
1117 /* check init */
1134 
1153  int MMG3D_Set_iparameter(MMG5_pMesh mesh,MMG5_pSol sol, int iparam,
1154  int val);
1173  int MMG3D_Set_dparameter(MMG5_pMesh mesh,MMG5_pSol sol, int dparam,
1174  double val);
1199  int ref,double hmin,double hmax,double hausd);
1200 
1220  int MMG3D_Set_multiMat(MMG5_pMesh mesh, MMG5_pSol sol,int ref,int split,
1221  int rin, int rex);
1222 
1245  int MMG3D_Get_meshSize(MMG5_pMesh mesh, int* np, int* ne,int *nprism, int* nt,
1246  int* nquad, int* na);
1267  int MMG3D_Get_solSize(MMG5_pMesh mesh, MMG5_pSol sol, int* typEntity,
1268  int* np,int* typSol);
1291  int* nentities,int* typSol);
1318  int MMG3D_Get_vertex(MMG5_pMesh mesh, double* c0, double* c1, double* c2,
1319  int* ref,int* isCorner, int* isRequired);
1320 
1344  int MMG3D_GetByIdx_vertex(MMG5_pMesh mesh, double* c0, double* c1, double* c2, int* ref,
1345  int* isCorner, int* isRequired,int idx);
1346 
1375  int MMG3D_Get_vertices(MMG5_pMesh mesh, double* vertices, int* refs,
1376  int* areCorners, int* areRequired);
1401  int MMG3D_Get_tetrahedron(MMG5_pMesh mesh, int* v0, int* v1, int* v2,
1402  int* v3,int* ref, int* isRequired);
1428  int MMG3D_Get_tetrahedra(MMG5_pMesh mesh, int* tetra,int* refs,
1429  int* areRequired);
1456  int MMG3D_Get_prism(MMG5_pMesh mesh, int* v0, int* v1, int* v2,
1457  int* v3,int* v4,int* v5,int* ref, int* isRequired);
1483  int MMG3D_Get_prisms(MMG5_pMesh mesh, int* prisms,int* refs,
1484  int* areRequired);
1506  int MMG3D_Get_triangle(MMG5_pMesh mesh, int* v0, int* v1, int* v2, int* ref,
1507  int* isRequired);
1532  int MMG3D_Get_triangles(MMG5_pMesh mesh, int* tria, int* refs,
1533  int* areRequired);
1556  int MMG3D_Get_quadrilateral(MMG5_pMesh mesh, int* v0, int* v1, int* v2,int* v3,
1557  int* ref, int* isRequired);
1582  int MMG3D_Get_quadrilaterals(MMG5_pMesh mesh, int* quads, int* refs,
1583  int* areRequired);
1604  int MMG3D_Get_edge(MMG5_pMesh mesh, int* e0, int* e1, int* ref,
1605  int* isRidge, int* isRequired);
1623  int MMG3D_Set_edges(MMG5_pMesh mesh, int *edges, int* refs);
1644  int MMG3D_Get_edges(MMG5_pMesh mesh,int *edges,int* refs,
1645  int *areRidges,int *areRequired);
1666  int MMG3D_Get_normalAtVertex(MMG5_pMesh mesh, int k, double *n0, double *n1,
1667  double *n2) ;
1668 
1686 
1702  int MMG3D_Get_scalarSol(MMG5_pSol met, double* s);
1719  int MMG3D_Get_scalarSols(MMG5_pSol met, double* s);
1737  int MMG3D_Get_vectorSol(MMG5_pSol met, double* vx, double* vy, double* vz);
1754  int MMG3D_Get_vectorSols(MMG5_pSol met, double* sols);
1775  int MMG3D_Get_tensorSol(MMG5_pSol met, double *m11,double *m12, double *m13,
1776  double *m22,double *m23, double *m33);
1793  int MMG3D_Get_tensorSols(MMG5_pSol met, double *sols);
1814  int MMG3D_Get_ithSol_inSolsAtVertices(MMG5_pSol sol,int i, double* s,int pos);
1836  int MMG3D_Get_ithSols_inSolsAtVertices(MMG5_pSol sol,int i, double* s);
1837 
1853  int MMG3D_Get_iparameter(MMG5_pMesh mesh, int iparam);
1854 
1878  int MMG3D_Add_tetrahedron(MMG5_pMesh mesh, int v0, int v1,
1879  int v2, int v3, int ref);
1880 
1903  int MMG3D_Add_vertex(MMG5_pMesh mesh, double c0, double c1,
1904  double c2, int ref);
1905 
1906 /* input/output functions */
1923  int MMG3D_loadMesh(MMG5_pMesh mesh,const char *filename);
1942  int MMG3D_loadMshMesh(MMG5_pMesh mesh,MMG5_pSol sol,const char *filename);
1943 
1986 
2029 
2066  int MMG3D_saveMesh(MMG5_pMesh mesh, const char *filename);
2085  int MMG3D_saveMshMesh(MMG5_pMesh mesh,MMG5_pSol sol,const char *filename);
2086 
2180 
2197  int MMG3D_saveTetgenMesh(MMG5_pMesh ,const char *);
2198 
2217  int MMG3D_loadSol(MMG5_pMesh mesh,MMG5_pSol met, const char *filename);
2235  int MMG3D_loadAllSols(MMG5_pMesh mesh,MMG5_pSol *sol, const char* filename);
2236 
2254  int MMG3D_saveSol(MMG5_pMesh mesh,MMG5_pSol met, const char *filename);
2272  int MMG3D_saveAllSols(MMG5_pMesh mesh,MMG5_pSol *sol ,const char *filename);
2273 
2289 
2290 /* deallocations */
2322  int MMG3D_Free_all(const int starter,...);
2323 
2357  int MMG3D_Free_structures(const int starter,...);
2358 
2390  int MMG3D_Free_names(const int starter,...);
2391 
2392 /* library */
2410 
2431 
2451 
2467 
2481  int MMG3D_parsar(int argc,char *argv[],MMG5_pMesh mesh,MMG5_pSol met,MMG5_pSol sol);
2482 
2514  int MMG3D_usage(char *prog);
2543 
2569  int MMG3D_mmg3dcheck(MMG5_pMesh mesh,MMG5_pSol met,MMG5_pSol sol,double critmin,
2570  double lmin, double lmax, int *eltab,int8_t metRidTyp);
2591  void MMG3D_searchqua(MMG5_pMesh mesh, MMG5_pSol met, double critmin,
2592  int *eltab,int8_t metRidTyp);
2619  int MMG3D_searchlen(MMG5_pMesh mesh, MMG5_pSol met, double lmin,
2620  double lmax,int *eltab,int8_t metRidTyp);
2621 
2644  int MMG3D_Get_adjaTet(MMG5_pMesh mesh,int kel, int listet[4]);
2665 extern double (*MMG3D_lenedgCoor)(double *ca,double *cb,double *sa,double *sb);
2666 
2683  int MMG3D_hashTetra(MMG5_pMesh mesh, int pack);
2684 
2701 
2718 
2735 
2736 
2752 
2772 
2797  int MMG3D_Get_nonBdyTriangle(MMG5_pMesh mesh, int* v0, int* v1, int* v2, int* ref, int idx);
2798 
2821  int MMG3D_Get_tetFromTria(MMG5_pMesh mesh, int ktri, int *ktet, int *iface);
2822 
2847  int MMG3D_Get_tetsFromTria(MMG5_pMesh mesh, int ktri, int ktet[2], int iface[2]);
2848 
2873  int MMG3D_Compute_eigenv(double m[6],double lambda[3],double vp[3][3]);
2874 
2888 
2889 #ifdef __cplusplus
2890 }
2891 #endif
2892 
2893 #endif
MMG5_pMesh char * filename
Definition: API_functionsf_3d.c:1015
const int starter
Definition: API_functionsf_3d.c:977
MMG5_pMesh * mesh
Definition: API_functionsf_3d.c:65
MMG5_Info info
int MMG3D_Init_mesh(const int starter,...)
Definition: API_functions_3d.c:44
int MMG3D_Set_vertex(MMG5_pMesh mesh, double c0, double c1, double c2, int ref, int pos)
Definition: API_functions_3d.c:356
int MMG3D_Unset_parallelTriangle(MMG5_pMesh mesh, int k)
Definition: API_functions_3d.c:1318
int MMG3D_hashTetra(MMG5_pMesh mesh, int pack)
Definition: hash_3d.c:180
int MMG3D_loadVtuMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
int MMG3D_Get_vectorSol(MMG5_pSol met, double *vx, double *vy, double *vz)
Definition: API_functions_3d.c:1553
int MMG3D_Set_triangles(MMG5_pMesh mesh, int *tria, int *refs)
Definition: API_functions_3d.c:930
int MMG3D_Get_iparameter(MMG5_pMesh mesh, int iparam)
Definition: API_functions_3d.c:2277
int MMG3D_Set_meshSize(MMG5_pMesh mesh, int np, int ne, int nprism, int nt, int nquad, int na)
Definition: API_functions_3d.c:258
int MMG3D_Get_adjaTet(MMG5_pMesh mesh, int kel, int listet[4])
Return adjacent elements of a tetrahedron.
Definition: libmmg3d_tools.c:102
int MMG3D_Set_ithSol_inSolsAtVertices(MMG5_pSol sol, int i, double *s, int pos)
Definition: API_functions_3d.c:1746
int MMG3D_loadVtkMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
int MMG3D_Get_solSize(MMG5_pMesh mesh, MMG5_pSol sol, int *typEntity, int *np, int *typSol)
Definition: API_functions_3d.c:284
int MMG3D_Set_requiredTetrahedron(MMG5_pMesh mesh, int k)
Definition: API_functions_3d.c:1240
void MMG3D_Init_fileNames(MMG5_pMesh mesh, MMG5_pSol sol)
Definition: API_functions_3d.c:56
int MMG3D_Set_triangle(MMG5_pMesh mesh, int v0, int v1, int v2, int ref, int pos)
Definition: API_functions_3d.c:854
int MMG3D_Get_numberOfNonBdyTriangles(MMG5_pMesh mesh, int *nb_tria)
Definition: libmmg3d_tools.c:682
int MMG3D_Get_solsAtVerticesSize(MMG5_pMesh mesh, MMG5_pSol *sol, int *nsols, int *nentities, int *typSol)
Definition: API_functions_3d.c:308
int MMG3D_Get_vertices(MMG5_pMesh mesh, double *vertices, int *refs, int *areCorners, int *areRequired)
Definition: API_functions_3d.c:479
void MMG3D_destockOptions(MMG5_pMesh mesh, MMG5_Info *info)
Definition: libmmg3d_tools.c:953
int MMG3D_Set_inputMeshName(MMG5_pMesh mesh, const char *meshin)
Definition: API_functions_3d.c:63
int MMG3D_Add_tetrahedron(MMG5_pMesh mesh, int v0, int v1, int v2, int v3, int ref)
Definition: API_functions_3d.c:1999
int MMG3D_Set_edges(MMG5_pMesh mesh, int *edges, int *refs)
Definition: API_functions_3d.c:1168
int MMG3D_saveVtuMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
int MMG3D_Set_ithSols_inSolsAtVertices(MMG5_pSol sol, int i, double *s)
Definition: API_functions_3d.c:1803
int MMG3D_usage(char *prog)
Definition: libmmg3d_tools.c:119
int MMG3D_Set_requiredEdge(MMG5_pMesh mesh, int k)
Definition: API_functions_3d.c:1360
void MMG3D_setfunc(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmg3d_tools.c:36
int MMG3D_Set_parallelTriangle(MMG5_pMesh mesh, int k)
Definition: API_functions_3d.c:1310
double MMG3D_Get_tetrahedronQuality(MMG5_pMesh mesh, MMG5_pSol met, int k)
Definition: API_functions_3d.c:1394
int MMG3D_Set_tensorSols(MMG5_pSol met, double *sols)
Definition: API_functions_3d.c:1701
int MMG3D_saveMshMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_3d.c:2099
int MMG3D_mmg3dcheck(MMG5_pMesh mesh, MMG5_pSol met, MMG5_pSol sol, double critmin, double lmin, double lmax, int *eltab, int8_t metRidTyp)
Definition: libmmg3d_tools.c:959
int MMG3D_Unset_ridge(MMG5_pMesh mesh, int k)
Definition: API_functions_3d.c:1354
int MMG3D_Get_ithSol_inSolsAtVertices(MMG5_pSol sol, int i, double *s, int pos)
Definition: API_functions_3d.c:1773
int MMG3D_loadVtkMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
int MMG3D_parsop(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmg3d_tools.c:552
int MMG3D_Set_dparameter(MMG5_pMesh mesh, MMG5_pSol sol, int dparam, double val)
Definition: API_functions_3d.c:2341
int MMG3D_Set_requiredTetrahedra(MMG5_pMesh mesh, int *reqIdx, int nreq)
Definition: API_functions_3d.c:1252
int MMG3D_Get_quadrilaterals(MMG5_pMesh mesh, int *quads, int *refs, int *areRequired)
Definition: API_functions_3d.c:1064
int MMG3D_Get_tensorSol(MMG5_pSol met, double *m11, double *m12, double *m13, double *m22, double *m23, double *m33)
Definition: API_functions_3d.c:1665
int MMG3D_Set_tetrahedra(MMG5_pMesh mesh, int *tetra, int *refs)
Definition: API_functions_3d.c:628
int MMG3D_Set_requiredTriangles(MMG5_pMesh mesh, int *reqIdx, int nreq)
Definition: API_functions_3d.c:1288
int MMG3D_Set_prisms(MMG5_pMesh mesh, int *prisms, int *refs)
Definition: API_functions_3d.c:795
int MMG3D_Unset_requiredEdge(MMG5_pMesh mesh, int k)
Definition: API_functions_3d.c:1366
int MMG3D_Compute_eigenv(double m[6], double lambda[3], double vp[3][3])
Definition: libmmg3d_tools.c:1381
int MMG3D_Unset_requiredTriangles(MMG5_pMesh mesh, int *reqIdx, int nreq)
Definition: API_functions_3d.c:1299
int MMG3D_saveMesh(MMG5_pMesh mesh, const char *filename)
Definition: inout_3d.c:1324
int MMG3D_Set_solsAtVerticesSize(MMG5_pMesh mesh, MMG5_pSol *sol, int nsols, int nentities, int *typSol)
Definition: API_functions_3d.c:155
int MMG3D_Get_prisms(MMG5_pMesh mesh, int *prisms, int *refs, int *areRequired)
Definition: API_functions_3d.c:825
void MMG3D_Free_solutions(MMG5_pMesh mesh, MMG5_pSol sol)
Definition: libmmg3d_tools.c:1387
int MMG3D_Set_scalarSols(MMG5_pSol met, double *s)
Definition: API_functions_3d.c:1490
int MMG3D_Unset_requiredTriangle(MMG5_pMesh mesh, int k)
Definition: API_functions_3d.c:1280
int MMG3D_loadVtuMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
int MMG3D_Set_vectorSol(MMG5_pSol met, double vx, double vy, double vz, int pos)
Definition: API_functions_3d.c:1516
int MMG3D_Free_allSols(MMG5_pMesh mesh, MMG5_pSol *sol)
Definition: API_functions_3d.c:2481
int MMG3D_loadSol(MMG5_pMesh mesh, MMG5_pSol met, const char *filename)
Definition: inout_3d.c:2104
int MMG3D_Add_vertex(MMG5_pMesh mesh, double c0, double c1, double c2, int ref)
Definition: API_functions_3d.c:2072
int MMG3D_Get_vectorSols(MMG5_pSol met, double *sols)
Definition: API_functions_3d.c:1608
int MMG3D_Unset_corner(MMG5_pMesh mesh, int k)
Definition: API_functions_3d.c:1221
int MMG3D_Set_parallelTriangles(MMG5_pMesh mesh, int *parIdx, int npar)
Definition: API_functions_3d.c:1326
int MMG3D_Set_multiMat(MMG5_pMesh mesh, MMG5_pSol sol, int ref, int split, int rin, int rex)
Definition: API_functions_3d.c:2477
int MMG3D_loadMesh(MMG5_pMesh mesh, const char *filename)
Definition: inout_3d.c:1187
int MMG3D_doSol(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmg3d_tools.c:1207
int MMG3D_Get_triangle(MMG5_pMesh mesh, int *v0, int *v1, int *v2, int *ref, int *isRequired)
Definition: API_functions_3d.c:888
int MMG3D_loadAllSols(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_3d.c:2170
int MMG3D_Get_tensorSols(MMG5_pSol met, double *sols)
Definition: API_functions_3d.c:1727
int MMG3D_Set_quadrilaterals(MMG5_pMesh mesh, int *quads, int *refs)
Definition: API_functions_3d.c:1046
int MMG3D_mmg3dlib(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmg3d.c:970
int MMG3D_stockOptions(MMG5_pMesh mesh, MMG5_Info *info)
Definition: libmmg3d_tools.c:940
int MMG3D_loadMshMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
Definition: inout_3d.c:1201
int MMG3D_Set_vectorSols(MMG5_pSol met, double *sols)
Definition: API_functions_3d.c:1585
int MMG3D_Set_tensorSol(MMG5_pSol met, double m11, double m12, double m13, double m22, double m23, double m33, int pos)
Definition: API_functions_3d.c:1623
void MMG3D_Set_handGivenMesh(MMG5_pMesh mesh)
Definition: API_functions_3d.c:1859
int MMG3D_Set_quadrilateral(MMG5_pMesh mesh, int v0, int v1, int v2, int v3, int ref, int pos)
Definition: API_functions_3d.c:973
int MMG3D_Get_prism(MMG5_pMesh mesh, int *v0, int *v1, int *v2, int *v3, int *v4, int *v5, int *ref, int *isRequired)
Definition: API_functions_3d.c:749
int MMG3D_Set_inputSolName(MMG5_pMesh mesh, MMG5_pSol sol, const char *solin)
Definition: API_functions_3d.c:68
int MMG3D_Get_vertex(MMG5_pMesh mesh, double *c0, double *c1, double *c2, int *ref, int *isCorner, int *isRequired)
Definition: API_functions_3d.c:392
int MMG3D_Unset_parallelTriangles(MMG5_pMesh mesh, int *parIdx, int npar)
Definition: API_functions_3d.c:1337
MMG3D_Param
Input parameters for mmg library.
Definition: libmmg3d.h:68
@ MMG3D_DPARAM_hmin
Definition: libmmg3d.h:93
@ MMG3D_IPARAM_debug
Definition: libmmg3d.h:71
@ MMG3D_IPARAM_numberOfLocalParam
Definition: libmmg3d.h:84
@ MMG3D_IPARAM_noswap
Definition: libmmg3d.h:80
@ MMG3D_IPARAM_opnbdy
Definition: libmmg3d.h:75
@ MMG3D_DPARAM_angleDetection
Definition: libmmg3d.h:92
@ MMG3D_DPARAM_hsiz
Definition: libmmg3d.h:95
@ MMG3D_DPARAM_hausd
Definition: libmmg3d.h:96
@ MMG3D_IPARAM_nosurf
Definition: libmmg3d.h:82
@ MMG3D_IPARAM_anisosize
Definition: libmmg3d.h:89
@ MMG3D_IPARAM_nomove
Definition: libmmg3d.h:81
@ MMG3D_IPARAM_renum
Definition: libmmg3d.h:88
@ MMG3D_DPARAM_hgrad
Definition: libmmg3d.h:97
@ MMG3D_IPARAM_nosizreq
Definition: libmmg3d.h:91
@ MMG3D_DPARAM_rmc
Definition: libmmg3d.h:100
@ MMG3D_IPARAM_angle
Definition: libmmg3d.h:72
@ MMG3D_IPARAM_noinsert
Definition: libmmg3d.h:79
@ MMG3D_DPARAM_ls
Definition: libmmg3d.h:99
@ MMG3D_DPARAM_hgradreq
Definition: libmmg3d.h:98
@ MMG3D_PARAM_size
Definition: libmmg3d.h:101
@ MMG3D_DPARAM_hmax
Definition: libmmg3d.h:94
@ MMG3D_IPARAM_numsubdomain
Definition: libmmg3d.h:87
@ MMG3D_IPARAM_lag
Definition: libmmg3d.h:76
@ MMG3D_IPARAM_nreg
Definition: libmmg3d.h:83
@ MMG3D_IPARAM_numberOfMat
Definition: libmmg3d.h:86
@ MMG3D_IPARAM_verbose
Definition: libmmg3d.h:69
@ MMG3D_IPARAM_numberOfLSBaseReferences
Definition: libmmg3d.h:85
@ MMG3D_IPARAM_optimLES
Definition: libmmg3d.h:78
@ MMG3D_IPARAM_optim
Definition: libmmg3d.h:77
@ MMG3D_IPARAM_iso
Definition: libmmg3d.h:73
@ MMG3D_IPARAM_octree
Definition: libmmg3d.h:90
@ MMG3D_IPARAM_nofem
Definition: libmmg3d.h:74
@ MMG3D_IPARAM_mem
Definition: libmmg3d.h:70
int MMG3D_searchlen(MMG5_pMesh mesh, MMG5_pSol met, double lmin, double lmax, int *eltab, int8_t metRidTyp)
Definition: libmmg3d_tools.c:1146
int MMG3D_Set_vertices(MMG5_pMesh mesh, double *vertices, int *refs)
Definition: API_functions_3d.c:452
int MMG3D_Get_tetrahedron(MMG5_pMesh mesh, int *v0, int *v1, int *v2, int *v3, int *ref, int *isRequired)
Definition: API_functions_3d.c:586
int MMG3D_loadMshMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_3d.c:1257
int MMG3D_Free_structures(const int starter,...)
Definition: API_functions_3d.c:2500
int MMG3D_Get_edges(MMG5_pMesh mesh, int *edges, int *refs, int *areRidges, int *areRequired)
Definition: API_functions_3d.c:1185
int MMG3D_Set_constantSize(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmg3d_tools.c:1339
int MMG3D_defaultValues(MMG5_pMesh mesh)
Definition: libmmg3d_tools.c:159
int MMG3D_saveVtkMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
int MMG3D_Free_names(const int starter,...)
Definition: API_functions_3d.c:2514
int MMG3D_Get_tetsFromTria(MMG5_pMesh mesh, int ktri, int ktet[2], int iface[2])
Definition: libmmg3d_tools.c:1101
int MMG3D_Set_outputSolName(MMG5_pMesh mesh, MMG5_pSol sol, const char *solout)
Definition: API_functions_3d.c:77
int MMG3D_Unset_requiredTetrahedra(MMG5_pMesh mesh, int *reqIdx, int nreq)
Definition: API_functions_3d.c:1262
int MMG3D_Get_edge(MMG5_pMesh mesh, int *e0, int *e1, int *ref, int *isRidge, int *isRequired)
Definition: API_functions_3d.c:1122
int MMG3D_Set_outputMeshName(MMG5_pMesh mesh, const char *meshout)
Definition: API_functions_3d.c:72
int MMG3D_Get_tetFromTria(MMG5_pMesh mesh, int ktri, int *ktet, int *iface)
Definition: libmmg3d_tools.c:1082
int MMG3D_saveSol(MMG5_pMesh mesh, MMG5_pSol met, const char *filename)
Definition: inout_3d.c:2268
int MMG3D_saveTetgenMesh(MMG5_pMesh, const char *)
Definition: inout_3d.c:2568
int MMG3D_Unset_requiredVertex(MMG5_pMesh mesh, int k)
Definition: API_functions_3d.c:1234
int MMG3D_Get_ithSols_inSolsAtVertices(MMG5_pSol sol, int i, double *s)
Definition: API_functions_3d.c:1831
int MMG3D_GetByIdx_vertex(MMG5_pMesh mesh, double *c0, double *c1, double *c2, int *ref, int *isCorner, int *isRequired, int idx)
Definition: API_functions_3d.c:419
int MMG3D_Set_scalarSol(MMG5_pSol met, double s, int pos)
Definition: API_functions_3d.c:1426
int MMG3D_Get_tetrahedra(MMG5_pMesh mesh, int *tetra, int *refs, int *areRequired)
Definition: API_functions_3d.c:685
int MMG3D_Chk_meshData(MMG5_pMesh mesh, MMG5_pSol met)
Definition: API_functions_3d.c:1875
int MMG3D_Get_scalarSols(MMG5_pSol met, double *s)
Definition: API_functions_3d.c:1507
int MMG3D_Unset_requiredTetrahedron(MMG5_pMesh mesh, int k)
Definition: API_functions_3d.c:1246
int MMG3D_Get_triangles(MMG5_pMesh mesh, int *tria, int *refs, int *areRequired)
Definition: API_functions_3d.c:948
int MMG3D_saveVtkMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
int MMG3D_parsar(int argc, char *argv[], MMG5_pMesh mesh, MMG5_pSol met, MMG5_pSol sol)
Definition: libmmg3d_tools.c:179
int MMG3D_Get_scalarSol(MMG5_pSol met, double *s)
Definition: API_functions_3d.c:1460
int MMG3D_Set_prism(MMG5_pMesh mesh, int v0, int v1, int v2, int v3, int v4, int v5, int ref, int pos)
Definition: API_functions_3d.c:709
int MMG3D_Get_nonBdyTriangle(MMG5_pMesh mesh, int *v0, int *v1, int *v2, int *ref, int idx)
Definition: libmmg3d_tools.c:896
int MMG3D_Set_solSize(MMG5_pMesh mesh, MMG5_pSol sol, int typEntity, int np, int typSol)
Definition: API_functions_3d.c:110
int MMG3D_saveMshMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
Definition: inout_3d.c:2094
int MMG3D_Get_quadrilateral(MMG5_pMesh mesh, int *v0, int *v1, int *v2, int *v3, int *ref, int *isRequired)
Definition: API_functions_3d.c:1001
void MMG3D_Init_parameters(MMG5_pMesh mesh)
Definition: API_functions_3d.c:81
int MMG3D_Set_localParameter(MMG5_pMesh mesh, MMG5_pSol sol, int typ, int ref, double hmin, double hmax, double hausd)
Definition: API_functions_3d.c:2404
int MMG3D_Free_all(const int starter,...)
Definition: API_functions_3d.c:2486
int MMG3D_mmg3dls(MMG5_pMesh mesh, MMG5_pSol sol, MMG5_pSol met)
Definition: libmmg3d.c:1199
int MMG3D_switch_metricStorage(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmg3d_tools.c:1364
int MMG3D_saveVtuMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
int MMG3D_Set_corner(MMG5_pMesh mesh, int k)
Definition: API_functions_3d.c:1215
void MMG3D_searchqua(MMG5_pMesh mesh, MMG5_pSol met, double critmin, int *eltab, int8_t metRidTyp)
Definition: libmmg3d_tools.c:1054
int MMG3D_Set_edge(MMG5_pMesh mesh, int v0, int v1, int ref, int pos)
Definition: API_functions_3d.c:1090
int MMG3D_Set_requiredTriangle(MMG5_pMesh mesh, int k)
Definition: API_functions_3d.c:1272
int MMG3D_mmg3dmov(MMG5_pMesh mesh, MMG5_pSol met, MMG5_pSol disp)
Definition: libmmg3d.c:1480
int MMG3D_Set_iparameter(MMG5_pMesh mesh, MMG5_pSol sol, int iparam, int val)
Definition: API_functions_3d.c:2104
int MMG3D_Set_requiredVertex(MMG5_pMesh mesh, int k)
Definition: API_functions_3d.c:1227
int MMG3D_saveAllSols(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_3d.c:2304
int MMG3D_Set_ridge(MMG5_pMesh mesh, int k)
Definition: API_functions_3d.c:1348
int MMG3D_Get_meshSize(MMG5_pMesh mesh, int *np, int *ne, int *nprism, int *nt, int *nquad, int *na)
Definition: API_functions_3d.c:337
int MMG3D_Get_normalAtVertex(MMG5_pMesh mesh, int k, double *n0, double *n1, double *n2)
Definition: API_functions_3d.c:1384
int MMG3D_Set_tetrahedron(MMG5_pMesh mesh, int v0, int v1, int v2, int v3, int ref, int pos)
Definition: API_functions_3d.c:515
int MMG3D_Set_normalAtVertex(MMG5_pMesh mesh, int k, double n0, double n1, double n2)
Definition: API_functions_3d.c:1372
double(* MMG3D_lenedgCoor)(double *ca, double *cb, double *sa, double *sb)
Definition: mmg3dexterns.c:4
Store input parameters of the run.
Definition: libmmgtypes.h:474
MMG mesh structure.
Definition: libmmgtypes.h:552
Definition: libmmgtypes.h:610