mmgs
libmmgs.c File Reference

API functions for MMGS library. More...

#include "mmgs.h"
Include dependency graph for libmmgs.c:

Macros

#define MMGS_RETURN_AND_PACK(mesh, met, val)
 

Functions

static void MMGS_Free_topoTables (MMG5_pMesh mesh)
 
static int MMGS_packMesh (MMG5_pMesh mesh, MMG5_pSol met)
 
int MMGS_mmgsls (MMG5_pMesh mesh, MMG5_pSol met)
 
int MMGS_mmgslib (MMG5_pMesh mesh, MMG5_pSol met)
 

Detailed Description

API functions for MMGS library.

Author
Charles Dapogny (UPMC)
Cécile Dobrzynski (Bx INP/Inria/UBordeaux)
Pascal Frey (UPMC)
Algiane Froehly (Inria/UBordeaux)
Version
5
Date
01 2014
Todo:
documentation doxygen

Private API functions for MMGS library: incompatible functions with the main binary.

Macro Definition Documentation

◆ MMGS_RETURN_AND_PACK

#define MMGS_RETURN_AND_PACK (   mesh,
  met,
  val 
)
Value:
do \
{ \
if ( !MMGS_packMesh(mesh,met) ) { \
mesh->npi = mesh->np; \
mesh->nti = mesh->nt; \
mesh->nai = mesh->na; \
mesh->nei = mesh->ne; \
met->npi = met->np; \
return MMG5_LOWFAILURE; \
} \
_LIBMMG5_RETURN(mesh,met,val); \
}while(0)

Pack the mesh mesh and its associated metric met and return val.

Function Documentation

◆ MMGS_Free_topoTables()

static void MMGS_Free_topoTables ( MMG5_pMesh  mesh)
inlinestatic

Free adja, xtetra and xpoint tables

Here is the caller graph for this function:

◆ MMGS_mmgslib()

int MMGS_mmgslib ( MMG5_pMesh  mesh,
MMG5_pSol  met 
)
Parameters
meshpointer toward the mesh structure.
metpointer toward the sol (metric) structure.
Returns
MMG5_SUCCESS if success, MMG5_LOWFAILURE if fail but a conform mesh is saved or MMG5_STRONGFAILURE if fail and we can't save the mesh.

Main program for the library.

Remarks
Fortran interface:

SUBROUTINE MMGS_MMGSLIB(mesh,met,retval)
MMG5_DATA_PTR_T, INTENT(INOUT) :: mesh,met
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

In debug mode, check that all structures are allocated

Free topologic tables (adja, xpoint, xtetra) resulting from a previous run

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MMGS_mmgsls()

int MMGS_mmgsls ( MMG5_pMesh  mesh,
MMG5_pSol  met 
)
Parameters
meshpointer toward the mesh structure.
metpointer toward the sol (metric) structure.
Returns
MMG5_SUCCESS if success, MMG5_LOWFAILURE if fail but a conform mesh is saved or MMG5_STRONGFAILURE if fail and we can't save the mesh.

Main program for level set discretization library.

Remarks
Fortran interface:

SUBROUTINE MMGS_MMGSLS(mesh,met,retval)
MMG5_DATA_PTR_T, INTENT(INOUT) :: mesh,met
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

In debug mode, check that all structures are allocated

Free topologic tables (adja, xpoint, xtetra) resulting from a previous run

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MMGS_packMesh()

static int MMGS_packMesh ( MMG5_pMesh  mesh,
MMG5_pSol  met 
)
inlinestatic
Parameters
meshpointer toward the mesh structure (unused).
metpointer toward the solution (metric) structure.

Pack the sparse mesh and create edges before getting out of library

Here is the call graph for this function:
Here is the caller graph for this function:
MMG5_Mesh::np
int np
Definition: libmmgtypes.h:516
mesh
MMG5_pMesh * mesh
Definition: API_functionsf_s.c:63
MMG5_Mesh::ne
int ne
Definition: libmmgtypes.h:516
MMG5_Mesh::na
int na
Definition: libmmgtypes.h:516
MMG5_LOWFAILURE
#define MMG5_LOWFAILURE
Definition: libmmgtypes.h:48
MMGS_packMesh
static int MMGS_packMesh(MMG5_pMesh mesh, MMG5_pSol met)
Definition: libmmgs.c:87
MMG5_Mesh::nt
int nt
Definition: libmmgtypes.h:516