Mmg
Simplicial remeshers (mesh adaptation, isovalue discretization, lagrangian movement)
Functions
main.c File Reference
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
#include <signal.h>
#include <string.h>
#include <ctype.h>
#include <math.h>
#include <float.h>
#include "mmg/mmg3d/libmmg3d.h"
Include dependency graph for main.c:

Go to the source code of this file.

Functions

int main (int argc, char *argv[])
 

Function Documentation

◆ main()

int main ( int  argc,
char *  argv[] 
)

============================================================================= This file is part of the mmg software package for the tetrahedral mesh modification. Copyright (c) Bx INP/Inria/UBordeaux/UPMC, 2004- .

mmg is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

mmg is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License and of the GNU General Public License along with mmg (in files COPYING.LESSER and COPYING). If not, see http://www.gnu.org/licenses/. Please read their terms carefully and

use this copy of the mmg distribution only if you accept them.

Example of use of the mmg3dls function of the mmg3d library: here the user provide a level-set and a metric on which he want to adapt the final mesh

Author
Charles Dapogny (LJLL, UPMC)
Pascal Frey (LJLL, UPMC)
Algiane Froehly (Inria / IMB, Université de Bordeaux)
Version
5

1) Initialisation of mesh and sol structures

----------------— Level set discretization option ------------------—

2) Build mesh in MMG5 format

Two solutions: just use the MMG3D_loadMesh function that will read a .mesh(b) file formatted or manually set your mesh using the MMG3D_Set* functions

with MMG3D_loadMesh function

3) Build solution and metric in MMG5 format

Two solutions: just use the MMG3D_loadMesh function that will read a .mesh(b) file formatted or manually set your mesh using the MMG3D_Set* functions

load the level-set with MMG3D_loadMesh function

----------------— Give the Metric to Mmg ---------------------------—

a) give info for the metric: the metric is applied on vertex entities, number of vertices np is recoverd using get_meshSize and the sol is tensorial

b) give metric values and positions

4) (not mandatory): check if the number of given entities match with mesh size

----------------— level set discretization ------------------------—

isovalue discretization followed by an adaptation step over the input Metric mmgMet. The mmgMet structure is updated so at the end it contains the output metric of Mmg.

Definition at line 50 of file main.c.

Here is the call graph for this function: