Go to the documentation of this file.
44 #include "mmg/mmgs/libmmgtypes.h"
49 #define MMGS_LMAX 1024
260 int nentities,
int *typSol);
305 double c2,
int ref,
int pos);
349 int v2,
int ref,
int pos);
597 int *areRidges,
int *areRequired);
739 double m22,
double m23,
double m33,
int pos);
881 double hmin,
double hmax,
double hausd);
944 int* nentities,
int* typSol);
969 int* isCorner,
int* isRequired);
994 int* isCorner,
int* isRequired,
int idx);
1024 int* areCorners,
int* areRequired);
1094 int* isRidge,
int* isRequired);
1207 double *m22,
double *m23,
double *m33);
int MMGS_Set_requiredVertex(MMG5_pMesh mesh, int k)
Definition: API_functions_s.c:717
#define MMGS_LMAX
Definition: libmmgs.h:49
Structure to store edges of a MMG mesh.
Definition: libmmgtypes.h:274
int MMGS_Get_solsAtVerticesSize(MMG5_pMesh mesh, MMG5_pSol *sol, int *nsols, int *nentities, int *typSol)
Definition: API_functions_s.c:251
@ MMGS_DPARAM_angleDetection
Definition: libmmgs.h:77
@ MMGS_DPARAM_hmax
Definition: libmmgs.h:79
int nenil
Definition: libmmgtypes.h:570
int MMGS_defaultValues(MMG5_pMesh mesh)
Definition: libmmgs_tools.c:98
int np
Definition: libmmgtypes.h:613
int MMGS_loadVtpMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
#define MG_EDG(tag)
Definition: mmgcommon.h:163
int MMGS_Get_ithSol_inSolsAtVertices(MMG5_pSol sol, int i, double *s, int pos)
Definition: API_functions_s.c:1168
static void MMGS_Free_topoTables(MMG5_pMesh mesh)
Definition: libmmgs.c:64
int MMGS_loadVtkMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
void MMGS_Init_fileNames(MMG5_pMesh mesh, MMG5_pSol sol)
Definition: API_functions_s.c:55
int MMGS_loadVtpMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
int MMGS_Set_vertices(MMG5_pMesh mesh, double *vertices, int *refs)
Definition: API_functions_s.c:328
@ MMGS_IPARAM_optim
Definition: libmmgs.h:67
int v[3]
Definition: libmmgtypes.h:303
int MMGS_loadAllSols(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_s.c:1355
Definition: libmmgtypes.h:610
int MMGS_loadVtkMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
int MMGS_Set_requiredEdge(MMG5_pMesh mesh, int k)
Definition: API_functions_s.c:757
int ref
Definition: libmmgtypes.h:276
int MMGS_loadMesh(MMG5_pMesh mesh, const char *filename)
Definition: inout_s.c:39
int MMGS_Get_normalAtVertex(MMG5_pMesh mesh, int k, double *n0, double *n1, double *n2)
Definition: API_functions_s.c:781
#define MG_EOK(pt)
Definition: mmgcommon.h:161
static void MMG5_excfun(int sigid)
Definition: mmgcommon.h:463
int MMGS_Set_inputMeshName(MMG5_pMesh mesh, const char *meshin)
Definition: API_functions_s.c:62
int MMGS_Get_scalarSol(MMG5_pSol met, double *s)
Definition: API_functions_s.c:853
int MMGS_Unset_ridge(MMG5_pMesh mesh, int k)
Definition: API_functions_s.c:751
void MMGS_Init_parameters(MMG5_pMesh mesh)
Definition: API_functions_s.c:79
int MMGS_Set_requiredTriangle(MMG5_pMesh mesh, int k)
Definition: API_functions_s.c:730
int MMGS_GetByIdx_vertex(MMG5_pMesh mesh, double *c0, double *c1, double *c2, int *ref, int *isCorner, int *isRequired, int idx)
Definition: API_functions_s.c:382
int MMGS_mmgs2(MMG5_pMesh, MMG5_pSol, MMG5_pSol)
Definition: mmgs2.c:610
int xp
Definition: libmmgtypes.h:568
int MMGS_saveVtpMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
int MMGS_hashTria(MMG5_pMesh mesh)
Definition: hash_s.c:77
int size
Definition: libmmgtypes.h:616
int MMGS_Free_names(const int starter,...)
Definition: API_functions_s.c:1605
int imprim
Definition: libmmgtypes.h:484
int MMGS_Chk_meshData(MMG5_pMesh mesh, MMG5_pSol met)
Definition: API_functions_s.c:1255
#define MG_STR
Definition: mmgcommon.h:57
const int starter
Definition: API_functionsf_s.c:712
int MMGS_loadSol(MMG5_pMesh mesh, MMG5_pSol met, const char *filename)
Definition: inout_s.c:1288
uint8_t nomove
Definition: libmmgtypes.h:500
int MMGS_mmgslib(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmgs.c:530
MMG5_pPoint point
Definition: libmmgtypes.h:589
@ MMGS_IPARAM_nosizreq
Definition: libmmgs.h:76
int MMGS_Get_adjaTri(MMG5_pMesh mesh, int kel, int listri[3])
Return adjacent elements of a triangle.
Definition: libmmgs_tools.c:601
int MMGS_doSol(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmgs_tools.c:689
@ MMGS_DPARAM_hausd
Definition: libmmgs.h:81
int edg[3]
Definition: libmmgtypes.h:308
@ MMGS_DPARAM_hgrad
Definition: libmmgs.h:82
int16_t tag[3]
Definition: libmmgtypes.h:311
@ MMGS_DPARAM_hmin
Definition: libmmgs.h:78
@ MMGS_DPARAM_ls
Definition: libmmgs.h:84
int MMGS_Free_all(const int starter,...)
Definition: API_functions_s.c:1577
int MMGS_Set_scalarSols(MMG5_pSol met, double *s)
Definition: API_functions_s.c:882
MMG5_pMesh char * meshin
Definition: API_functionsf_s.c:750
int MMGS_Set_localParameter(MMG5_pMesh mesh, MMG5_pSol sol, int typ, int ref, double hmin, double hmax, double hausd)
Definition: API_functions_s.c:1503
void MMG5_solTruncatureForOptim(MMG5_pMesh mesh, MMG5_pSol met)
Definition: mmg.c:263
#define MG_VOK(ppt)
Definition: mmgcommon.h:160
static const uint8_t MMG5_inxt2[6]
Definition: mmgcommon.h:547
int MMGS_mmgsls(MMG5_pMesh mesh, MMG5_pSol sol, MMG5_pSol umet)
Definition: libmmgs.c:295
int MMGS_Set_vectorSols(MMG5_pSol met, double *sols)
Definition: API_functions_s.c:979
int np
Definition: libmmgtypes.h:559
int MMGS_Unset_requiredTriangle(MMG5_pMesh mesh, int k)
Definition: API_functions_s.c:738
int MMGS_analys(MMG5_pMesh mesh)
Definition: analys_s.c:701
int ref
Definition: libmmgtypes.h:247
int MMGS_Set_solSize(MMG5_pMesh mesh, MMG5_pSol sol, int typEntity, int np, int typSol)
Definition: API_functions_s.c:88
MMG5_pMesh * mesh
Definition: API_functionsf_s.c:63
int MMGS_Get_vectorSols(MMG5_pSol met, double *sols)
Definition: API_functions_s.c:1002
int MMGS_loadVtuMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
int * adja
Definition: libmmgtypes.h:572
uint8_t noswap
Definition: libmmgtypes.h:500
MMG5_pTria tria
Definition: libmmgtypes.h:595
int MMGS_Set_outputMeshName(MMG5_pMesh mesh, const char *meshout)
Definition: API_functions_s.c:71
#define MG_CRN
Definition: mmgcommon.h:145
void MMGS_destockOptions(MMG5_pMesh mesh, MMG5_Info *info)
Definition: libmmgs_tools.c:458
int MMGS_saveAllSols(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_s.c:1487
int MMGS_Get_solSize(MMG5_pMesh mesh, MMG5_pSol sol, int *typEntity, int *np, int *typSol)
Definition: API_functions_s.c:225
#define MMG5_ADD_MEM(mesh, size, message, law)
Definition: mmgcommon.h:290
int MMGS_Set_edge(MMG5_pMesh mesh, int v0, int v1, int ref, int pos)
Definition: API_functions_s.c:580
#define MG_GEO
Definition: mmgcommon.h:141
void chrono(int cmode, mytime *ptt)
Function to measure time.
Definition: chrono.c:49
@ MMGS_IPARAM_iso
Definition: libmmgs.h:65
int MMGS_Set_inputSolName(MMG5_pMesh mesh, MMG5_pSol sol, const char *solin)
Definition: API_functions_s.c:67
uint8_t noinsert
Definition: libmmgtypes.h:500
int MMGS_saveVtkMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
@ MMGS_IPARAM_keepRef
Definition: libmmgs.h:66
int ref
Definition: libmmgtypes.h:304
int MMGS_Set_scalarSol(MMG5_pSol met, double s, int pos)
Definition: API_functions_s.c:818
Structure to store points of a MMG mesh.
Definition: libmmgtypes.h:241
int MMGS_Get_vectorSol(MMG5_pSol met, double *vx, double *vy, double *vz)
Definition: API_functions_s.c:947
int MMGS_Unset_corner(MMG5_pMesh mesh, int k)
Definition: API_functions_s.c:711
void MMGS_setfunc(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmgs_tools.c:39
@ MMGS_IPARAM_angle
Definition: libmmgs.h:64
int8_t ddebug
Definition: libmmgtypes.h:487
Chrono object.
Definition: chrono.h:58
int b
Definition: libmmgtypes.h:275
double MMGS_Get_triangleQuality(MMG5_pMesh mesh, MMG5_pSol met, int k)
Definition: API_functions_s.c:791
double * m
Definition: libmmgtypes.h:618
int MMGS_usage(char *prog)
Definition: libmmgs_tools.c:70
#define MMG5_STRONGFAILURE
Definition: libmmgtypes.h:59
int MMGS_Set_iparameter(MMG5_pMesh mesh, MMG5_pSol sol, int iparam, int val)
Definition: API_functions_s.c:1300
@ MMGS_IPARAM_numberOfLocalParam
Definition: libmmgs.h:72
int MMGS_Set_dparameter(MMG5_pMesh mesh, MMG5_pSol sol, int dparam, double val)
Definition: API_functions_s.c:1450
int MMGS_Get_triangles(MMG5_pMesh mesh, int *tria, int *refs, int *areRequired)
Definition: API_functions_s.c:554
int MMGS_Get_meshSize(MMG5_pMesh mesh, int *np, int *nt, int *na)
Definition: API_functions_s.c:280
int MMGS_Get_iparameter(MMG5_pMesh mesh, int iparam)
Definition: API_functions_s.c:1403
int MMGS_saveMshMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_s.c:1283
int MMGS_loadVtuMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
int na
Definition: libmmgtypes.h:559
int MMGS_Set_ridge(MMG5_pMesh mesh, int k)
Definition: API_functions_s.c:746
int MMGS_Set_meshSize(MMG5_pMesh mesh, int np, int nt, int na)
Definition: API_functions_s.c:180
int16_t tag
Definition: libmmgtypes.h:279
@ MMGS_PARAM_size
Definition: libmmgs.h:85
int MMGS_Set_solsAtVerticesSize(MMG5_pMesh mesh, MMG5_pSol *sol, int nsols, int nentities, int *typSol)
Definition: API_functions_s.c:135
int MMGS_Get_tensorSol(MMG5_pSol met, double *m11, double *m12, double *m13, double *m22, double *m23, double *m33)
Definition: API_functions_s.c:1059
int MMGS_saveMshMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
Definition: inout_s.c:1278
int16_t tag
Definition: libmmgtypes.h:253
int MMGS_Set_outputSolName(MMG5_pMesh mesh, MMG5_pSol sol, const char *solout)
Definition: API_functions_s.c:76
Definition: libmmgtypes.h:301
MMGS_Param
Input parameters for mmg library.
Definition: libmmgs.h:60
#define MMG5_SUCCESS
Definition: libmmgtypes.h:43
int MMGS_mmgsls(MMG5_pMesh mesh, MMG5_pSol sol, MMG5_pSol met)
Definition: libmmgs.c:295
@ MMGS_DPARAM_hsiz
Definition: libmmgs.h:80
#define MMG5_LOWFAILURE
Definition: libmmgtypes.h:51
@ MMGS_IPARAM_numsubdomain
Definition: libmmgs.h:73
int MMGS_Set_triangles(MMG5_pMesh mesh, int *tria, int *refs)
Definition: API_functions_s.c:532
int MMG5_unscaleMesh(MMG5_pMesh mesh, MMG5_pSol met, MMG5_pSol ls)
Definition: scalem.c:401
#define MG_NUL
Definition: mmgcommon.h:151
static int MMGS_packMesh(MMG5_pMesh mesh, MMG5_pSol sol, MMG5_pSol met)
Definition: libmmgs.c:91
int MMGS_Set_corner(MMG5_pMesh mesh, int k)
Definition: API_functions_s.c:705
int nsd
Definition: libmmgtypes.h:485
int(* MMG5_chkmsh)(MMG5_pMesh, int, int)
Definition: mmgexterns.c:27
MMG5_pxPoint xpoint
Definition: libmmgtypes.h:590
int MMGS_Compute_eigenv(double m[6], double lambda[3], double vp[3][3])
Definition: libmmgs_tools.c:841
int npnil
Definition: libmmgtypes.h:569
void printim(double elps, char *stim)
Print real time.
Definition: chrono.c:149
int MMGS_Get_edges(MMG5_pMesh mesh, int *edges, int *refs, int *areRidges, int *areRequired)
Definition: API_functions_s.c:675
int xp
Definition: libmmgtypes.h:248
int MMG5_mmgs1(MMG5_pMesh, MMG5_pSol, int *)
Definition: mmgs1.c:1379
int MMGS_Get_scalarSols(MMG5_pSol met, double *s)
Definition: API_functions_s.c:899
int MMGS_Get_nonBdyEdge(MMG5_pMesh mesh, int *e0, int *e1, int *ref, int idx)
Definition: libmmgs_tools.c:559
int MMGS_Unset_requiredEdge(MMG5_pMesh mesh, int k)
Definition: API_functions_s.c:763
@ MMGS_IPARAM_nreg
Definition: libmmgs.h:71
int MMGS_saveVtpMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
void tminit(mytime *t, int maxtim)
Initialize mytime object.
Definition: chrono.c:120
int MMGS_Get_triangle(MMG5_pMesh mesh, int *v0, int *v1, int *v2, int *ref, int *isRequired)
Definition: API_functions_s.c:489
static void MMGS_Set_commonFunc(void)
Definition: mmgs.h:230
int MMGS_Set_tensorSols(MMG5_pSol met, double *sols)
Definition: API_functions_s.c:1096
uint8_t optim
Definition: libmmgtypes.h:500
@ MMGS_IPARAM_verbose
Definition: libmmgs.h:61
int nt
Definition: libmmgtypes.h:559
#define _LIBMMG5_RETURN(mesh, sol, met, val)
Definition: mmgcommon.h:182
MMG mesh structure.
Definition: libmmgtypes.h:552
@ MMGS_IPARAM_mem
Definition: libmmgs.h:62
@ MMGS_IPARAM_noinsert
Definition: libmmgs.h:68
int MMGS_saveMesh(MMG5_pMesh mesh, const char *filename)
Definition: inout_s.c:818
int MMGS_Set_constantSize(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmgs_tools.c:816
int MMGS_Set_edges(MMG5_pMesh mesh, int *edges, int *refs)
Definition: API_functions_s.c:658
int MMGS_saveVtuMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
int8_t iso
Definition: libmmgtypes.h:489
int MMGS_loadMshMesh(MMG5_pMesh mesh, MMG5_pSol sol, const char *filename)
Definition: inout_s.c:705
int MMGS_saveSol(MMG5_pMesh mesh, MMG5_pSol met, const char *filename)
Definition: inout_s.c:1451
int MMGS_Get_ithSols_inSolsAtVertices(MMG5_pSol sol, int i, double *s)
Definition: API_functions_s.c:1226
int MMGS_Get_vertex(MMG5_pMesh mesh, double *c0, double *c1, double *c2, int *ref, int *isCorner, int *isRequired)
Definition: API_functions_s.c:355
int MMGS_Get_vertices(MMG5_pMesh mesh, double *vertices, int *refs, int *areCorners, int *areRequired)
Definition: API_functions_s.c:415
MMG5_Info info
Definition: libmmgtypes.h:599
int MMGS_Unset_requiredVertex(MMG5_pMesh mesh, int k)
Definition: API_functions_s.c:724
int MMGS_Set_tensorSol(MMG5_pSol met, double m11, double m12, double m13, double m22, double m23, double m33, int pos)
Definition: API_functions_s.c:1017
int a
Definition: libmmgtypes.h:275
@ MMGS_IPARAM_anisosize
Definition: libmmgs.h:75
int MMGS_Free_allSols(MMG5_pMesh mesh, MMG5_pSol *sol)
Definition: API_functions_s.c:1572
int MMGS_mmgslib(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmgs.c:530
Store input parameters of the run.
Definition: libmmgtypes.h:474
int MMGS_Free_structures(const int starter,...)
Definition: API_functions_s.c:1591
@ MMGS_IPARAM_renum
Definition: libmmgs.h:74
int MMGS_Set_ithSol_inSolsAtVertices(MMG5_pSol sol, int i, double *s, int pos)
Definition: API_functions_s.c:1141
int MMGS_Get_edge(MMG5_pMesh mesh, int *e0, int *e1, int *ref, int *isRidge, int *isRequired)
Definition: API_functions_s.c:612
#define MMG5_SAFE_CALLOC(ptr, size, type, law)
Definition: mmgcommon.h:304
int MMGS_Set_vertex(MMG5_pMesh mesh, double c0, double c1, double c2, int ref, int pos)
Definition: API_functions_s.c:292
int MMGS_Set_normalAtVertex(MMG5_pMesh mesh, int k, double n0, double n1, double n2)
Definition: API_functions_s.c:769
#define MMG5_DEL_MEM(mesh, ptr)
Definition: mmgcommon.h:281
int MMGS_Set_ithSols_inSolsAtVertices(MMG5_pSol sol, int i, double *s)
Definition: API_functions_s.c:1198
@ MMGS_DPARAM_hgradreq
Definition: libmmgs.h:83
MMG5_pEdge edge
Definition: libmmgtypes.h:597
void MMGS_Free_solutions(MMG5_pMesh mesh, MMG5_pSol sol)
Definition: libmmgs_tools.c:847
int MMGS_saveVtuMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
int MMGS_saveVtkMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
#define MMGS_RETURN_AND_PACK(mesh, met, sol, val)
Definition: libmmgs.c:47
int MMGS_loadMshMesh_and_allData(MMG5_pMesh mesh, MMG5_pSol *sol, const char *filename)
Definition: inout_s.c:761
int MMGS_inqua(MMG5_pMesh, MMG5_pSol)
Definition: quality_s.c:386
int MMGS_parsar(int argc, char *argv[], MMG5_pMesh mesh, MMG5_pSol met, MMG5_pSol sol)
Definition: libmmgs_tools.c:113
int MMGS_Init_mesh(const int starter,...)
Definition: API_functions_s.c:42
double hsiz
Definition: libmmgtypes.h:476
int tmp
Definition: libmmgtypes.h:249
int MMGS_Get_adjaVerticesFast(MMG5_pMesh mesh, int ip, int start, int lispoi[MMGS_LMAX])
Return adjacent elements of a triangle.
Definition: libmmgs_tools.c:615
#define TIMEMAX
Definition: chrono.h:49
int MMGS_Set_vectorSol(MMG5_pSol met, double vx, double vy, double vz, int pos)
Definition: API_functions_s.c:909
@ MMGS_IPARAM_nomove
Definition: libmmgs.h:70
int MMGS_stockOptions(MMG5_pMesh mesh, MMG5_Info *info)
Definition: libmmgs_tools.c:445
int MMG5_scaleMesh(MMG5_pMesh mesh, MMG5_pSol met, MMG5_pSol ls)
Definition: scalem.c:273
int MMGS_Set_triangle(MMG5_pMesh mesh, int v0, int v1, int v2, int ref, int pos)
Definition: API_functions_s.c:451
int MMGS_prilen(MMG5_pMesh mesh, MMG5_pSol met, int)
Definition: quality_s.c:281
int MMGS_Get_numberOfNonBdyEdges(MMG5_pMesh mesh, int *nb_edges)
Definition: libmmgs_tools.c:464
@ MMGS_IPARAM_noswap
Definition: libmmgs.h:69
int MMGS_Get_tensorSols(MMG5_pSol met, double *sols)
Definition: API_functions_s.c:1122
int MMGS_outqua(MMG5_pMesh, MMG5_pSol)
Definition: quality_s.c:453
@ MMGS_IPARAM_debug
Definition: libmmgs.h:63