Mmg
Simplicial remeshers (mesh adaptation, isovalue discretization, lagrangian movement)
|
Lagrangian meshing. More...
#include "libmmg3d.h"
#include "libmmg3d_private.h"
#include "inlined_functions_3d_private.h"
#include "mmg3dexterns_private.h"
Go to the source code of this file.
Macros | |
#define | MMG5_DEGTOL 1.e-1 |
Functions | |
double | MMG5_estavglen (MMG5_pMesh mesh) |
static int | MMG5_intdispvol (double *v1, double *v2, double *vp, double t) |
static MMG5_int | MMG5_spllag (MMG5_pMesh mesh, MMG5_pSol disp, MMG5_pSol met, int itdeg, int *warn) |
MMG5_int | MMG5_swptetlag (MMG5_pMesh mesh, MMG5_pSol met, double crit, MMG3D_pPROctree PROctree, int itdeg) |
MMG5_int | MMG5_movtetlag (MMG5_pMesh mesh, MMG5_pSol met, int itdeg) |
static MMG5_int | MMG5_coltetlag (MMG5_pMesh mesh, MMG5_pSol met, int itdeg) |
MMG5_int | MMG5_chkmovmesh (MMG5_pMesh mesh, MMG5_pSol disp, short t, MMG5_int *tetIdx) |
int | MMG5_dispmesh (MMG5_pMesh mesh, MMG5_pSol disp, short t, int itdeg) |
int | MMG5_mmg3d3 (MMG5_pMesh mesh, MMG5_pSol disp, MMG5_pSol met, MMG5_int **invalidTets) |
Variables | |
int8_t | ddb |
Lagrangian meshing.
Definition in file mmg3d3.c.
MMG5_int MMG5_chkmovmesh | ( | MMG5_pMesh | mesh, |
MMG5_pSol | disp, | ||
short | t, | ||
MMG5_int * | tetIdx | ||
) |
mesh | pointer to the mesh structure |
disp | pointer to the displacement structure. |
t | fraction of displacement to test |
tetIdx | to fill with the list of non valid tetra if provided. |
Check if moving mesh with disp for a fraction t yields a valid mesh.
Definition at line 492 of file mmg3d3.c.
|
static |
mesh | pointer to the mesh structure. |
met | pointer to the metric structure. |
itdeg | degraded elements. |
Attempt to collapse small internal edges in the Lagrangian mode; only affects tetras marked with it.
Definition at line 405 of file mmg3d3.c.
int MMG5_dispmesh | ( | MMG5_pMesh | mesh, |
MMG5_pSol | disp, | ||
short | t, | ||
int | itdeg | ||
) |
double MMG5_estavglen | ( | MMG5_pMesh | mesh | ) |
|
inlinestatic |
int MMG5_mmg3d3 | ( | MMG5_pMesh | mesh, |
MMG5_pSol | disp, | ||
MMG5_pSol | met, | ||
MMG5_int ** | invalidTets | ||
) |
mesh | mesh structure |
disp | displacement structure |
met | metric structure |
invalidTets | array to store the list of invalid tetra if we are unable to move. |
Lagrangian node displacement and meshing. Code for options: info.lag >= 0 -> displacement, info.lag > 0 -> displacement+remeshing with swap and moves info.lag > 1 -> displacement+remeshing with split+collapse+swap+move
Definition at line 602 of file mmg3d3.c.
MMG5_int MMG5_movtetlag | ( | MMG5_pMesh | mesh, |
MMG5_pSol | met, | ||
int | itdeg | ||
) |
mesh | pointer to the mesh structure. |
met | pointer to the metric structure. |
itdeg | degraded elements. |
Analyze tetrahedra marked with it and move internal points so as to make mesh more uniform.
Definition at line 345 of file mmg3d3.c.
|
static |
mesh | pointer to the mesh structure. |
disp | pointer to the displacement structure. |
met | pointer to the metric structure. |
itdeg | degraded elements. |
*warn | warn is set to 1 if we don't have enough memory to complete mesh. |
Split edges of length bigger than MMG3D_LOPTL, in the Lagrangian mode.
Definition at line 104 of file mmg3d3.c.
MMG5_int MMG5_swptetlag | ( | MMG5_pMesh | mesh, |
MMG5_pSol | met, | ||
double | crit, | ||
MMG3D_pPROctree | PROctree, | ||
int | itdeg | ||
) |
mesh | pointer to the mesh structure. |
met | pointer to the metric structure. |
crit | coefficient of quality improvment. |
PROctree | pointer to the PROctree structure in delaunay mode and toward the NULL pointer otherwise. |
itdeg | degraded elements. |
Internal edge flipping in the Lagrangian mode; only affects tetra marked with it
Definition at line 294 of file mmg3d3.c.
|
extern |
Definition at line 42 of file mmg3d1_delone.c.