Go to the documentation of this file.
31 #define MMG5_EPSD 1.e-30
32 #define MMG5_EPS 1.e-06
34 int MMG5_eigenv(
int symmat,
double *mat,
double lambda[3],
double v[3][3]);
35 int MMG5_eigen2(
double *mm,
double *lambda,
double vp[2][2]);
36 extern int MMG5_eigensym(
double m[3],
double lambda[2],
double vp[2][2]);
static double Id[3][3]
Identity matrix.
Definition: eigenv.c:64
double hmax
Definition: libmmgtypes.h:203
int xtmax
Definition: libmmgtypes.h:516
int npar
Definition: libmmgtypes.h:447
static const unsigned char MMG5_inxt3[7]
next vertex of tetra: {1,2,3,0,1,2,3}
Definition: mmg3d.h:141
#define MG_BDY
Definition: mmgcommon.h:145
double c[3]
Definition: libmmgtypes.h:215
static const unsigned char MMG5_arpt[4][3]
arpt[i]: edges passing through vertex i
Definition: mmg3d.h:159
double(* MMG5_lenedg)(MMG5_pMesh, MMG5_pSol, int, MMG5_pTetra)
Definition: mmg3dexterns.c:4
#define MG_MAX(a, b)
Definition: mmgcommon.h:136
int v[3]
Definition: libmmgtypes.h:272
Definition: libmmgtypes.h:339
#define MG_MINUS
Definition: mmgcommon.h:79
Definition: libmmgtypes.h:563
#define MMG5_NULKAL
Definition: mmgcommon.h:99
static int MMG5_correction_ani(MMG5_pMesh mesh, MMG5_pSol met, int ip, int *list, int ilist, int nedep, double volmin)
Definition: delaunay_3d.c:355
int MMG5_chkcol_int(MMG5_pMesh mesh, MMG5_pSol met, int k, char iface, char iedg, int *list, int ilist, char typchk)
Definition: colver_3d.c:42
@ MMG5_Triangle
Definition: libmmgtypes.h:188
int MMG3D_newElt(MMG5_pMesh mesh)
Definition: zaldy_3d.c:94
int MMG5_colver(MMG5_pMesh mesh, MMG5_pSol met, int *list, int ilist, char indq, char typchk)
Definition: colver_3d.c:713
#define MG_NOM
Definition: mmgcommon.h:144
#define MMG3D_EPSRAD
Definition: delaunay_3d.c:39
int xt
Definition: libmmgtypes.h:525
char iso
Definition: libmmgtypes.h:453
int MMG5_eigensym(double m[3], double lambda[2], double vp[2][2])
Definition: eigenv.c:746
int nxt
Definition: libmmgtypes.h:489
int size
Definition: libmmgtypes.h:569
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:356
int b
Definition: libmmgtypes.h:489
int MMG5_cenrad_iso(MMG5_pMesh mesh, double *ct, double *c, double *rad)
Definition: cenrad_3d.c:45
Identic as MMG5_HGeom but use MMG5_hedge to store edges instead of MMG5_hgeom (memory economy).
Definition: libmmgtypes.h:499
int16_t tag[6]
Definition: libmmgtypes.h:363
char MMG5_chkedg(MMG5_pMesh mesh, MMG5_pTria pt, char ori, double, double, int)
MMG5_pPoint point
Definition: libmmgtypes.h:542
#define MMG3D_KTA
Definition: delaunay_3d.c:50
int16_t ftag[4]
Definition: libmmgtypes.h:361
#define MG_GET(flag, bit)
Definition: mmgcommon.h:169
int16_t tag[3]
Definition: libmmgtypes.h:280
static int MMG5_check_accuracy(double mat[6], double lambda[3], double v[3][3], double w1[3], double w2[3], double w3[3], double maxm, int order, int symmat)
Definition: eigenv.c:282
int opnbdy
Definition: libmmgtypes.h:448
#define MG_PARBDY
Definition: mmgcommon.h:151
int base
Definition: libmmgtypes.h:521
static const unsigned char MMG5_idir[4][3]
idir[i]: vertices of face opposite to vertex i
Definition: mmg3d.h:145
int nxt
Definition: libmmgtypes.h:500
int MMG5_delone(MMG5_pMesh mesh, MMG5_pSol sol, int ip, int *list, int ilist)
Definition: delaunay_3d.c:140
#define MMG3D_KTB
Definition: delaunay_3d.c:51
int ref
Definition: libmmgtypes.h:205
int k
Definition: libmmgtypes.h:490
MMG5_pxTetra xtetra
Definition: libmmgtypes.h:545
char tagdel
Definition: libmmgtypes.h:225
#define egal(x, y)
Definition: eigenv.c:56
@ MMG5_Tetrahedron
Definition: libmmgtypes.h:189
static double MMG5_orcal(MMG5_pMesh mesh, MMG5_pSol met, int iel)
Definition: inlined_functions_3d.h:262
#define MMG5_EPSOK
Definition: mmgcommon.h:98
int MMG3D_findEdge(MMG5_pMesh mesh, MMG5_pTetra pt, int k, int na, int nb, int error, char *mmgWarn, char *ia)
Definition: boulep_3d.c:110
int * adja
Definition: libmmgtypes.h:529
int MMG5_eigen2(double *mm, double *lambda, double vp[2][2])
Find eigenvalues and vectors of a 2x2 matrix.
Definition: eigenv.c:631
static const unsigned char MMG5_iprv2[3]
Definition: mmgcommon.h:471
double hausd
Definition: libmmgtypes.h:445
int max
Definition: libmmgtypes.h:500
double qual
Definition: libmmgtypes.h:340
int a
Definition: libmmgtypes.h:489
#define MG_REQ
Definition: mmgcommon.h:143
int mark
Definition: libmmgtypes.h:523
MMG5_pMesh * mesh
Definition: API_functionsf_3d.c:65
#define MG_GEO
Definition: mmgcommon.h:142
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:356
int flag
Definition: libmmgtypes.h:347
int ref
Definition: libmmgtypes.h:273
Structure to store points of a MMG mesh.
Definition: libmmgtypes.h:214
int MMG3D_delElt(MMG5_pMesh mesh, int iel)
Definition: zaldy_3d.c:117
int MMG5_hashNew(MMG5_pMesh mesh, MMG5_Hash *hash, int hsiz, int hmax)
Definition: hash.c:333
double * m
Definition: libmmgtypes.h:571
int MMG5_eigen2(double *mm, double *lambda, double vp[2][2])
Find eigenvalues and vectors of a 2x2 matrix.
Definition: eigenv.c:631
static const char MMG5_idirinv[4][4]
Definition: mmg3d.h:147
char elt
Definition: libmmgtypes.h:206
void MMG5_tet2tri(MMG5_pMesh mesh, int k, char ie, MMG5_Tria *ptt)
Definition: mmg3d1.c:52
int MMG3D_normalAdjaTri(MMG5_pMesh, int, char, int, double n[3])
Definition: split_3d.c:462
#define MG_MIN(a, b)
Definition: mmgcommon.h:137
int MMG5_startedgsurfball(MMG5_pMesh mesh, int nump, int numq, int *list, int ilist)
Definition: tools_3d.c:97
static int MMG5_topchkcol_bdy(MMG5_pMesh mesh, int k, int iface, char iedg, int *lists, int ilists)
Definition: colver_3d.c:180
#define MMG5_EPS
Definition: eigenv.h:32
#define MG_EIGENV_EPSD2
Definition: eigenv.c:46
int16_t tag
Definition: libmmgtypes.h:223
char ddb
Definition: mmg3d1_delone.c:41
Definition: libmmgtypes.h:270
Used to hash edges (memory economy compared to MMG5_hgeom).
Definition: libmmgtypes.h:488
double(* MMG5_lenedgspl)(MMG5_pMesh, MMG5_pSol, int, MMG5_pTetra)
Definition: mmg3dexterns.c:5
int MMG5_eigensym(double m[3], double lambda[2], double vp[2][2])
Definition: eigenv.c:746
#define MG_Tria
Definition: mmgcommon.h:156
#define MG_PLUS
Definition: mmgcommon.h:78
#define MG_NUL
Definition: mmgcommon.h:152
int MMG5_cenrad_ani(MMG5_pMesh mesh, double *ct, double *m, double *c, double *rad)
Definition: cenrad_3d.c:130
char fem
Definition: libmmgtypes.h:453
int MMG5_hashEdgeDelone(MMG5_pMesh mesh, MMG5_Hash *hash, int iel, int i, int *v)
Definition: delaunay_3d.c:55
int xp
Definition: libmmgtypes.h:218
MMG5_pTetra tetra
Definition: libmmgtypes.h:544
#define MMG3D_EPSCON
Definition: delaunay_3d.c:43
Structure to store the surface tetrahedra of a MMG mesh.
Definition: libmmgtypes.h:356
static const unsigned char MMG5_ifar[6][2]
ifar[i][]: faces sharing the ith edge of the tetra
Definition: mmg3d.h:155
char ori
Definition: libmmgtypes.h:365
double dhd
Definition: libmmgtypes.h:445
int MMG5_chkcol_bdy(MMG5_pMesh mesh, MMG5_pSol met, int k, char iface, char iedg, int *listv, int ilistv, int *lists, int ilists, char typchk)
Definition: colver_3d.c:358
#define MG_Tetra
Definition: mmgcommon.h:157
MMG5_hedge * item
Definition: libmmgtypes.h:501
#define MG_SET(flag, bit)
Definition: mmgcommon.h:167
double hausd
Definition: libmmgtypes.h:204
MMG mesh structure.
Definition: libmmgtypes.h:509
int siz
Definition: libmmgtypes.h:500
#define MMG3D_LONMAX
Definition: delaunay_3d.c:44
MMG5_pPar par
Definition: libmmgtypes.h:444
static int MMG5_correction_iso(MMG5_pMesh mesh, int ip, int *list, int ilist, int nedep, double volmin)
Definition: delaunay_3d.c:481
int MMG5_chkmanicoll(MMG5_pMesh, int, int, int, int, int, char, char)
Definition: mmg3d2.c:899
double MMG5_caltet33_ani(MMG5_pMesh mesh, MMG5_pSol met, MMG5_pTetra pt)
Definition: quality_3d.c:90
static const unsigned char MMG5_iarf[4][3]
iarf[i]: edges of face opposite to vertex i
Definition: mmg3d.h:149
double hmax
Definition: libmmgtypes.h:445
Definition: libmmgtypes.h:201
MMG5_Info info
Definition: libmmgtypes.h:552
char parTyp
Definition: libmmgtypes.h:454
#define MG_CLR(flag, bit)
Definition: mmgcommon.h:168
static const unsigned char MMG5_iare[6][2]
vertices of extremities of the edges of the tetra
Definition: mmg3d.h:153
#define MAXTOU
Definition: eigenv.c:50
int MMG5_cavity_ani(MMG5_pMesh mesh, MMG5_pSol met, int iel, int ip, int *list, int lon, double volmin)
Definition: delaunay_3d.c:582
#define MG_EIGENV_EPSD
Definition: eigenv.c:45
int ref
Definition: libmmgtypes.h:342
#define MG_EIGENV_EPS6
Definition: eigenv.c:47
int16_t tag
Definition: libmmgtypes.h:348
static int newton3(double p[4], double x[3])
Find root(s) of a polynomial of degree 3.
Definition: eigenv.c:83
int edg[6]
Definition: libmmgtypes.h:359
static const unsigned char MMG5_inxt2[6]
Definition: mmgcommon.h:470
#define MMG5_SAFE_CALLOC(ptr, size, type, law)
Definition: mmgcommon.h:289
int MMG5_norpts(MMG5_pMesh, int, int, int, double *)
Definition: tools.c:129
#define MMG5_TAB_RECALLOC(mesh, ptr, initSize, wantedGap, type, message, law)
Definition: mmgcommon.h:348
int MMG5_cavity_iso(MMG5_pMesh mesh, MMG5_pSol sol, int iel, int ip, int *list, int lon, double volmin)
Definition: delaunay_3d.c:741
#define MMG5_DEL_MEM(mesh, ptr)
Definition: mmgcommon.h:266
int ier
Definition: API_functionsf_3d.c:839
#define MMG5_ANGEDG
Definition: mmgcommon.h:91
double gap
Definition: libmmgtypes.h:512
int mark
Definition: libmmgtypes.h:344
#define MG_EIGENV_EPS
Definition: eigenv.c:48
int ref[4]
Definition: libmmgtypes.h:357
int MMG5_norface(MMG5_pMesh mesh, int k, int iface, double v[3])
Definition: tools_3d.c:59
#define MMG3D_TETRA_REALLOC(mesh, jel, wantedGap, law)
Definition: mmg3d.h:92
#define MMG5_EPSD
Definition: eigenv.h:31
int xt
Definition: libmmgtypes.h:345
int v[4]
Definition: libmmgtypes.h:341