Mmg
Simplicial remeshers (mesh adaptation, isovalue discretization, lagrangian movement)
Functions
API_functions_3d.c File Reference

C API functions definitions for MMG3D library. More...

#include "libmmg3d.h"
#include "libmmg3d_private.h"
#include "inlined_functions_3d_private.h"
#include "PRoctree_3d_private.h"
Include dependency graph for API_functions_3d.c:

Go to the source code of this file.

Functions

int MMG3D_Init_mesh (const int starter,...)
 
void MMG3D_Init_fileNames (MMG5_pMesh mesh, MMG5_pSol sol)
 
int MMG3D_Set_inputMeshName (MMG5_pMesh mesh, const char *meshin)
 
int MMG3D_Set_inputSolName (MMG5_pMesh mesh, MMG5_pSol sol, const char *solin)
 
int MMG3D_Set_outputMeshName (MMG5_pMesh mesh, const char *meshout)
 
int MMG3D_Set_outputSolName (MMG5_pMesh mesh, MMG5_pSol sol, const char *solout)
 
void MMG3D_Init_parameters (MMG5_pMesh mesh)
 
int MMG3D_Set_solSize (MMG5_pMesh mesh, MMG5_pSol sol, int typEntity, MMG5_int np, int typSol)
 
int MMG3D_Set_solsAtVerticesSize (MMG5_pMesh mesh, MMG5_pSol *sol, int nsols, MMG5_int nentities, int *typSol)
 
int MMG3D_setMeshSize_initData (MMG5_pMesh mesh, MMG5_int np, MMG5_int ne, MMG5_int nprism, MMG5_int nt, MMG5_int nquad, MMG5_int na)
 
int MMG3D_Set_meshSize (MMG5_pMesh mesh, MMG5_int np, MMG5_int ne, MMG5_int nprism, MMG5_int nt, MMG5_int nquad, MMG5_int na)
 
int MMG3D_Get_solSize (MMG5_pMesh mesh, MMG5_pSol sol, int *typEntity, MMG5_int *np, int *typSol)
 
int MMG3D_Get_solsAtVerticesSize (MMG5_pMesh mesh, MMG5_pSol *sol, int *nsols, MMG5_int *np, int *typSol)
 
int MMG3D_Get_meshSize (MMG5_pMesh mesh, MMG5_int *np, MMG5_int *ne, MMG5_int *nprism, MMG5_int *nt, MMG5_int *nquad, MMG5_int *na)
 
int MMG3D_Set_vertex (MMG5_pMesh mesh, double c0, double c1, double c2, MMG5_int ref, MMG5_int pos)
 
int MMG3D_Get_vertex (MMG5_pMesh mesh, double *c0, double *c1, double *c2, MMG5_int *ref, int *isCorner, int *isRequired)
 
int MMG3D_GetByIdx_vertex (MMG5_pMesh mesh, double *c0, double *c1, double *c2, MMG5_int *ref, int *isCorner, int *isRequired, MMG5_int idx)
 
int MMG3D_Set_vertices (MMG5_pMesh mesh, double *vertices, MMG5_int *refs)
 
int MMG3D_Get_vertices (MMG5_pMesh mesh, double *vertices, MMG5_int *refs, int *areCorners, int *areRequired)
 
int MMG3D_Set_tetrahedron (MMG5_pMesh mesh, MMG5_int v0, MMG5_int v1, MMG5_int v2, MMG5_int v3, MMG5_int ref, MMG5_int pos)
 
int MMG3D_Get_tetrahedron (MMG5_pMesh mesh, MMG5_int *v0, MMG5_int *v1, MMG5_int *v2, MMG5_int *v3, MMG5_int *ref, int *isRequired)
 
int MMG3D_Set_tetrahedra (MMG5_pMesh mesh, MMG5_int *tetra, MMG5_int *refs)
 
int MMG3D_Get_tetrahedra (MMG5_pMesh mesh, MMG5_int *tetra, MMG5_int *refs, int *areRequired)
 
int MMG3D_Set_prism (MMG5_pMesh mesh, MMG5_int v0, MMG5_int v1, MMG5_int v2, MMG5_int v3, MMG5_int v4, MMG5_int v5, MMG5_int ref, MMG5_int pos)
 
int MMG3D_Get_prism (MMG5_pMesh mesh, MMG5_int *v0, MMG5_int *v1, MMG5_int *v2, MMG5_int *v3, MMG5_int *v4, MMG5_int *v5, MMG5_int *ref, int *isRequired)
 
int MMG3D_Set_prisms (MMG5_pMesh mesh, MMG5_int *prisms, MMG5_int *refs)
 
int MMG3D_Get_prisms (MMG5_pMesh mesh, MMG5_int *prisms, MMG5_int *refs, int *areRequired)
 
int MMG3D_Set_triangle (MMG5_pMesh mesh, MMG5_int v0, MMG5_int v1, MMG5_int v2, MMG5_int ref, MMG5_int pos)
 
int MMG3D_Get_triangle (MMG5_pMesh mesh, MMG5_int *v0, MMG5_int *v1, MMG5_int *v2, MMG5_int *ref, int *isRequired)
 
int MMG3D_Set_triangles (MMG5_pMesh mesh, MMG5_int *tria, MMG5_int *refs)
 
int MMG3D_Get_triangles (MMG5_pMesh mesh, MMG5_int *tria, MMG5_int *refs, int *areRequired)
 
int MMG3D_Set_quadrilateral (MMG5_pMesh mesh, MMG5_int v0, MMG5_int v1, MMG5_int v2, MMG5_int v3, MMG5_int ref, MMG5_int pos)
 
int MMG3D_Get_quadrilateral (MMG5_pMesh mesh, MMG5_int *v0, MMG5_int *v1, MMG5_int *v2, MMG5_int *v3, MMG5_int *ref, int *isRequired)
 
int MMG3D_Set_quadrilaterals (MMG5_pMesh mesh, MMG5_int *quads, MMG5_int *refs)
 
int MMG3D_Get_quadrilaterals (MMG5_pMesh mesh, MMG5_int *quads, MMG5_int *refs, int *areRequired)
 
int MMG3D_Set_edge (MMG5_pMesh mesh, MMG5_int v0, MMG5_int v1, MMG5_int ref, MMG5_int pos)
 
int MMG3D_Get_edge (MMG5_pMesh mesh, MMG5_int *e0, MMG5_int *e1, MMG5_int *ref, int *isRidge, int *isRequired)
 
int MMG3D_Set_edges (MMG5_pMesh mesh, MMG5_int *edges, MMG5_int *refs)
 
int MMG3D_Get_edges (MMG5_pMesh mesh, MMG5_int *edges, MMG5_int *refs, int *areRidges, int *areRequired)
 
int MMG3D_Set_corner (MMG5_pMesh mesh, MMG5_int k)
 
int MMG3D_Unset_corner (MMG5_pMesh mesh, MMG5_int k)
 
int MMG3D_Set_requiredVertex (MMG5_pMesh mesh, MMG5_int k)
 
int MMG3D_Unset_requiredVertex (MMG5_pMesh mesh, MMG5_int k)
 
int MMG3D_Set_requiredTetrahedron (MMG5_pMesh mesh, MMG5_int k)
 
int MMG3D_Unset_requiredTetrahedron (MMG5_pMesh mesh, MMG5_int k)
 
int MMG3D_Set_requiredTetrahedra (MMG5_pMesh mesh, MMG5_int *reqIdx, MMG5_int nreq)
 
int MMG3D_Unset_requiredTetrahedra (MMG5_pMesh mesh, MMG5_int *reqIdx, MMG5_int nreq)
 
int MMG3D_Set_requiredTriangle (MMG5_pMesh mesh, MMG5_int k)
 
int MMG3D_Unset_requiredTriangle (MMG5_pMesh mesh, MMG5_int k)
 
int MMG3D_Set_requiredTriangles (MMG5_pMesh mesh, MMG5_int *reqIdx, MMG5_int nreq)
 
int MMG3D_Unset_requiredTriangles (MMG5_pMesh mesh, MMG5_int *reqIdx, MMG5_int nreq)
 
int MMG3D_Set_parallelTriangle (MMG5_pMesh mesh, MMG5_int k)
 
int MMG3D_Unset_parallelTriangle (MMG5_pMesh mesh, MMG5_int k)
 
int MMG3D_Set_parallelTriangles (MMG5_pMesh mesh, MMG5_int *parIdx, MMG5_int npar)
 
int MMG3D_Unset_parallelTriangles (MMG5_pMesh mesh, MMG5_int *parIdx, MMG5_int npar)
 
int MMG3D_Set_ridge (MMG5_pMesh mesh, MMG5_int k)
 
int MMG3D_Unset_ridge (MMG5_pMesh mesh, MMG5_int k)
 
int MMG3D_Set_requiredEdge (MMG5_pMesh mesh, MMG5_int k)
 
int MMG3D_Unset_requiredEdge (MMG5_pMesh mesh, MMG5_int k)
 
int MMG3D_Set_normalAtVertex (MMG5_pMesh mesh, MMG5_int k, double n0, double n1, double n2)
 
int MMG3D_Get_normalAtVertex (MMG5_pMesh mesh, MMG5_int k, double *n0, double *n1, double *n2)
 
double MMG3D_Get_tetrahedronQuality (MMG5_pMesh mesh, MMG5_pSol met, MMG5_int k)
 
int MMG3D_Set_scalarSol (MMG5_pSol met, double s, MMG5_int pos)
 
int MMG3D_Get_scalarSol (MMG5_pSol met, double *s)
 
int MMG3D_Set_scalarSols (MMG5_pSol met, double *s)
 
int MMG3D_Get_scalarSols (MMG5_pSol met, double *s)
 
int MMG3D_Set_vectorSol (MMG5_pSol met, double vx, double vy, double vz, MMG5_int pos)
 
int MMG3D_Get_vectorSol (MMG5_pSol met, double *vx, double *vy, double *vz)
 
int MMG3D_Set_vectorSols (MMG5_pSol met, double *sols)
 
int MMG3D_Get_vectorSols (MMG5_pSol met, double *sols)
 
int MMG3D_Set_tensorSol (MMG5_pSol met, double m11, double m12, double m13, double m22, double m23, double m33, MMG5_int pos)
 
int MMG3D_Get_tensorSol (MMG5_pSol met, double *m11, double *m12, double *m13, double *m22, double *m23, double *m33)
 
int MMG3D_Set_tensorSols (MMG5_pSol met, double *sols)
 
int MMG3D_Get_tensorSols (MMG5_pSol met, double *sols)
 
int MMG3D_Set_ithSol_inSolsAtVertices (MMG5_pSol sol, int i, double *s, MMG5_int pos)
 
int MMG3D_Get_ithSol_inSolsAtVertices (MMG5_pSol sol, int i, double *s, MMG5_int pos)
 
int MMG3D_Set_ithSols_inSolsAtVertices (MMG5_pSol sol, int i, double *s)
 
int MMG3D_Get_ithSols_inSolsAtVertices (MMG5_pSol sol, int i, double *s)
 
void MMG3D_Set_handGivenMesh (MMG5_pMesh mesh)
 
int MMG3D_Chk_meshData (MMG5_pMesh mesh, MMG5_pSol met)
 
static int MMG3D_skipIso (MMG5_pMesh mesh)
 
int MMG3D_Add_tetrahedron (MMG5_pMesh mesh, MMG5_int v0, MMG5_int v1, MMG5_int v2, MMG5_int v3, MMG5_int ref)
 
MMG5_int MMG3D_Add_vertex (MMG5_pMesh mesh, double c0, double c1, double c2, MMG5_int ref)
 
int MMG3D_Set_iparameter (MMG5_pMesh mesh, MMG5_pSol sol, int iparam, MMG5_int val)
 
int MMG3D_Get_iparameter (MMG5_pMesh mesh, MMG5_int iparam)
 
int MMG3D_Set_dparameter (MMG5_pMesh mesh, MMG5_pSol sol, int dparam, double val)
 
int MMG3D_Set_localParameter (MMG5_pMesh mesh, MMG5_pSol sol, int typ, MMG5_int ref, double hmin, double hmax, double hausd)
 
int MMG3D_Set_multiMat (MMG5_pMesh mesh, MMG5_pSol sol, MMG5_int ref, int split, MMG5_int rin, MMG5_int rout)
 
int MMG3D_Set_lsBaseReference (MMG5_pMesh mesh, MMG5_pSol sol, MMG5_int br)
 
int MMG3D_Free_allSols (MMG5_pMesh mesh, MMG5_pSol *sol)
 
int MMG3D_Free_all (const int starter,...)
 
int MMG3D_Free_structures (const int starter,...)
 
int MMG3D_Free_names (const int starter,...)
 

Detailed Description

C API functions definitions for MMG3D library.

Author
Algiane Froehly (Inria/UBordeaux)
Version
5
Date
01 2014
Warning
Use the MMG3D_ prefix: MMG5_ prefix will became obsolete soon...
Note
This file contains some internal functions for the API, see the mmg3d/libmmg3d.h header file for the documentation of all the usefull user's API functions.

C API for MMG3D library.

Definition in file API_functions_3d.c.

Function Documentation

◆ MMG3D_Add_tetrahedron()

int MMG3D_Add_tetrahedron ( MMG5_pMesh  mesh,
MMG5_int  v0,
MMG5_int  v1,
MMG5_int  v2,
MMG5_int  v3,
MMG5_int  ref 
)
Parameters
meshpointer toward the mesh structure.
v0first vertex of tetrahedron.
v1second vertex of tetrahedron.
v2third vertex of tetrahedron.
v3fourth vertex of tetrahedron.
reftetrahedron reference.
Returns
0 if unable to create the tetra, the index of the new tetra if the new tetra has strictly positive area, -the index of the new tetra if it has a zero area or if it has been reorientated.

Add a tetrahedra of vertices v0, v1,v2,v3 and reference ref at the first available position of the mesh.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_ADD_TETRAHEDRON(mesh,v0,v1,v2,v3,ref,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: v0,v1,v2,v3,ref
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 2003 of file API_functions_3d.c.

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

◆ MMG3D_Add_vertex()

MMG5_int MMG3D_Add_vertex ( MMG5_pMesh  mesh,
double  c0,
double  c1,
double  c2,
MMG5_int  ref 
)
Parameters
meshpointer toward the mesh structure.
c0x coor of the new point
c1y coor of the new point
c2z coor of the new point
refpoint reference.
Returns
0 if unable to create the point, the index of the new point otherwise.

Add a point of coor c0 c1 c2 and reference ref at the first available position of the mesh.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_ADD_VERTEX(mesh,c0,c1,c2,ref,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
REAL(KIND=8), INTENT(IN) :: c0,c1,c2
INTEGER(MMG5F_INT), INTENT(IN) :: ref
INTEGER(MMG5F_INT), INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 2077 of file API_functions_3d.c.

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

◆ MMG3D_Chk_meshData()

int MMG3D_Chk_meshData ( MMG5_pMesh  mesh,
MMG5_pSol  met 
)
Parameters
meshpointer toward the mesh structure.
metpointer toward the sol structure.
Returns
0 if failed, 1 otherwise.

Check if the number of given entities match with mesh and sol size (not mandatory) and check mesh datas.

Remarks
Fortran interface:

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

Definition at line 1879 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Free_all()

int MMG3D_Free_all ( const int  starter,
  ... 
)
Parameters
starterdummy argument used to initialize the variadic argument list.
...variadic arguments that depend to the library function that you have call.

For the MMG3D_mmg3dlib function, you need to call the MMG3D_Init_mesh function with the following arguments : MMG3D_Init_mesh(MMG5_ARG_start,MMG5_ARG_ppMesh, &your_mesh, MMG5_ARG_ppMet,&your_metric,MMG5_ARG_end).

For the MMG3D_mmg3dls function, you need to call the MMG3D_Init_mesh function with the following arguments : MMG3D_Init_mesh(MMG5_ARG_start,MMG5_ARG_ppMesh, &your_mesh, MMG5_ARG_ppLs, &your_level_set,MMG5_ARG_end).

For the MMG3D_mmg3dmov function, you must call : MMG3D_Init_mesh(MMG5_ARG_start,MMG5_ARG_ppMesh, &your_mesh, MMG5_ARG_ppMet,&empty_metric,MMG5_ARG_ppDisp, &your_displacement, MMG5_ARG_end).

Returns
1 if success, 0 if fail

Deallocations before return.

Remarks
we pass the structures by reference in order to have argument compatibility between the library call from a Fortran code and a C code.
no Fortran interface to allow variadic args.

Definition at line 2533 of file API_functions_3d.c.

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

◆ MMG3D_Free_allSols()

int MMG3D_Free_allSols ( MMG5_pMesh  mesh,
MMG5_pSol sol 
)
Parameters
meshpointer toward the mesh structure.
solpointer toward an array of solution structure (that stores solution fields).
Returns
1

Deallocation of an array of solution fields

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_Free_allSols(mesh,sol,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh,sol
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 2528 of file API_functions_3d.c.

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

◆ MMG3D_Free_names()

int MMG3D_Free_names ( const int  starter,
  ... 
)
Parameters
starterdummy argument used to initialize the variadic argument list.
...variadic arguments that depend to the library function that you have call.

For the MMG3D_mmg3dlib function, you need to call the MMG3D_Init_mesh function with the following arguments : MMG3D_Init_mesh(MMG5_ARG_start,MMG5_ARG_ppMesh, &your_mesh, MMG5_ARG_ppMet,&your_metric,MMG5_ARG_end).

For the MMG3D_mmg3dls function, you need to call the MMG3D_Init_mesh function with the following arguments : MMG3D_Init_mesh(MMG5_ARG_start,MMG5_ARG_ppMesh, &your_mesh, MMG5_ARG_ppLs, &your_level_set,MMG5_ARG_end).

For the MMG3D_mmg3dmov function, you must call : MMG3D_Init_mesh(MMG5_ARG_start,MMG5_ARG_ppMesh, &your_mesh, MMG5_ARG_ppMet,&empty_metric,MMG5_ARG_ppDisp, &your_displacement, MMG5_ARG_end).

Returns
0 if fail, 1 if success

Structure deallocations before return.

Remarks
we pass the structures by reference in order to have argument compatibility between the library call from a Fortran code and a C code.
No fortran interface to allow variadic arguments.

Definition at line 2561 of file API_functions_3d.c.

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

◆ MMG3D_Free_structures()

int MMG3D_Free_structures ( const int  starter,
  ... 
)
Parameters
starterdummy argument used to initialize the variadic argument list.
...variadic arguments that depend to the library function that you have call.

For the MMG3D_mmg3dlib function, you need to call the MMG3D_Init_mesh function with the following arguments : MMG3D_Init_mesh(MMG5_ARG_start,MMG5_ARG_ppMesh, &your_mesh, MMG5_ARG_ppMet,&your_metric,MMG5_ARG_end).

For the MMG3D_mmg3dls function, you need to call the MMG3D_Init_mesh function with the following arguments : MMG3D_Init_mesh(MMG5_ARG_start,MMG5_ARG_ppMesh, &your_mesh, MMG5_ARG_ppLs, &your_level_set,MMG5_ARG_end).

For the MMG3D_mmg3dmov function, you must call : MMG3D_Init_mesh(MMG5_ARG_start,MMG5_ARG_ppMesh, &your_mesh, MMG5_ARG_ppMet,&empty_metric,MMG5_ARG_ppDisp, &your_displacement, MMG5_ARG_end).

Returns
0 if fail, 1 if success

Structure deallocations before return.

Remarks
we pass the structures by reference in order to have argument compatibility between the library call from a Fortran code and a C code.
No fortran interface to allow variadic arguments.
no Fortran interface to allow variadic args.

Definition at line 2547 of file API_functions_3d.c.

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

◆ MMG3D_Get_edge()

int MMG3D_Get_edge ( MMG5_pMesh  mesh,
MMG5_int *  e0,
MMG5_int *  e1,
MMG5_int *  ref,
int *  isRidge,
int *  isRequired 
)
Parameters
meshpointer toward the mesh structure.
e0pointer toward the first extremity of the edge.
e1pointer toward the second extremity of the edge.
refpointer toward the edge reference.
isRidgepointer toward the flag saying if the edge is ridge.
isRequiredpointer toward the flag saying if the edge is required.
Returns
0 if failed, 1 otherwise.

Get extremities e0, e1 and reference ref of next edge of mesh.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_EDGE(mesh,e0,e1,ref,isRidge,isRequired,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(OUT) :: e0,e1
INTEGER(MMG5F_INT) :: ref
INTEGER :: isRidge,isRequired
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1126 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_edges()

int MMG3D_Get_edges ( MMG5_pMesh  mesh,
MMG5_int *  edges,
MMG5_int *  refs,
int *  areRidges,
int *  areRequired 
)
Parameters
meshpointer toward the mesh structure.
edgespointer toward the array of edges. Vertices of the $i^{th}$ edge are stored in edge[(i-1)*2]@2.
refsedges references. refs[i-1] is the ref of the $i^{th}$ edge.
areRidges1 if the edge is a ridge, 0 otherwise.
areRequired1 if the edge is required, 0 otherwise.
Returns
0 if failed, 1 otherwise.

Get vertices and references of the mesh edges.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_EDGES(mesh,edges,refs,areRidges,areRequired,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN) :: edges(*)
INTEGER(MMG5F_INT), INTENT(OUT):: refs(*)
INTEGER, INTENT(OUT) :: areRequired(*),areRidges(*)
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1189 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_iparameter()

int MMG3D_Get_iparameter ( MMG5_pMesh  mesh,
MMG5_int  iparam 
)
Parameters
meshpointer toward the mesh structure.
iparaminteger parameter to set (see MMG3D_Param structure).
Returns
The value of integer parameter.

Get the value of integer parameter iparam.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_IPARAMETER(mesh,iparam,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: iparam
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 2290 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_ithSol_inSolsAtVertices()

int MMG3D_Get_ithSol_inSolsAtVertices ( MMG5_pSol  sol,
int  i,
double *  s,
MMG5_int  pos 
)
Parameters
solpointer toward the array of solutions
iposition of the solution field that we want to get.
ssolution(s) at mesh vertex pos.
posindex of the vertex on which we get the solution.
Returns
0 if failed, 1 otherwise.

Get values of the ith field of the solution array at vertex pos. (pos from 1 to nb_vertices included and i from 1 to nb_sols).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_ITHSOL_INSOLSATVERTICES(sol,i,s,pos,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: sol
INTEGER, INTENT(IN) :: i
INTEGER(MMG5F_INT), INTENT(IN) :: pos
REAL(KIND=8), DIMENSION(*),INTENT(OUT) :: s
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1777 of file API_functions_3d.c.

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

◆ MMG3D_Get_ithSols_inSolsAtVertices()

int MMG3D_Get_ithSols_inSolsAtVertices ( MMG5_pSol  sol,
int  i,
double *  s 
)
Parameters
solpointer toward the array of solutions
iposition of the solution field that we want to get.
stable of the solutions at mesh vertices. The solution at vertex k is given by s[k-1] for a scalar sol, s[3*(k-1)]@3 for a vectorial solution and s[6*(k-1)]@6 for a tensor solution.
Returns
0 if failed, 1 otherwise.

Get values of the solution at the ith field of the solution array (i from 1 to nb_sols).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_ITHSOLS_INSOLSATVERTICES(sol,i,s,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: sol
INTEGER, INTENT(IN) :: i
REAL(KIND=8), DIMENSION(*),INTENT(OUT) :: s
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1835 of file API_functions_3d.c.

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

◆ MMG3D_Get_meshSize()

int MMG3D_Get_meshSize ( MMG5_pMesh  mesh,
MMG5_int *  np,
MMG5_int *  ne,
MMG5_int *  nprism,
MMG5_int *  nt,
MMG5_int *  nquad,
MMG5_int *  na 
)

recover datas

Parameters
meshpointer toward the mesh structure.
nppointer toward the number of vertices.
nepointer toward the number of tetrahedra.
nprismpointer toward the number of prisms.
ntpointer toward the number of triangles.
nquadpointer toward the number of quads.
napointer toward the number of edges.
Returns
1.

Get the number of vertices, tetrahedra, prisms, triangles, quadrilaterals and edges of the mesh.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_MESHSIZE(mesh,np,ne,nprism,nt,nquad,na,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT) :: np,ne,nprism,nt,nquad,na
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 339 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_normalAtVertex()

int MMG3D_Get_normalAtVertex ( MMG5_pMesh  mesh,
MMG5_int  k,
double *  n0,
double *  n1,
double *  n2 
)
Parameters
meshpointer toward the mesh structure.
kpoint index
n0x componant of the normal at point k.
n1y componant of the normal at point k.
n2z componant of the normal at point k.
Returns
1 if success.

Get normals (n0,n1,n2) at point k.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_NORMALATVERTEX(mesh,k,n0,n1,n2,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
REAL(KIND=8) :: n0,n1,n2
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1388 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_prism()

int MMG3D_Get_prism ( MMG5_pMesh  mesh,
MMG5_int *  v0,
MMG5_int *  v1,
MMG5_int *  v2,
MMG5_int *  v3,
MMG5_int *  v4,
MMG5_int *  v5,
MMG5_int *  ref,
int *  isRequired 
)
Parameters
meshpointer toward the mesh structure.
v0pointer toward the first vertex of prism.
v1pointer toward the second vertex of prism.
v2pointer toward the third vertex of prism.
v3pointer toward the fourth vertex of prism.
v4pointer toward the fifth vertex of prism.
v5pointer toward the sixth vertex of prism.
refpointer toward the prism reference.
isRequiredpointer toward the flag saying if prism is required.
Returns
0 if failed, 1 otherwise.

Get vertices v0, v1, v2, v3, v4, v5 and reference ref of next prism of mesh.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_PRISM(mesh,v0,v1,v2,v3,v4,v5,ref,isRequired,&
retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(OUT) :: v0,v1,v2,v3,v4,v5
INTEGER(MMG5F_INT) :: ref
INTEGER :: isRequired
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 753 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_prisms()

int MMG3D_Get_prisms ( MMG5_pMesh  mesh,
MMG5_int *  prisms,
MMG5_int *  refs,
int *  areRequired 
)
Parameters
meshpointer toward the mesh structure.
prismspointer toward the table of the prisms vertices. Vertices of the $i^{th}$ prism are stored in prisms[(i-1)*6]@6.
refspointer toward the table of the prism references. References of the $i^{th}$ prism is stored in refs[i-1].
areRequiredpointer toward the table of the flags saying if the prisms are required. areRequired[i-1]=1 if the $i^{th}$ prism is required.
Returns
0 if failed, 1 otherwise.

Get vertices and references of the mesh prisms.

Remarks
Fortran interface: (commentated in order to allow to pass %val(0) instead of the refs, areCorners or areRequired arrays)

‍! SUBROUTINE MMG3D_GET_PRISMS(mesh,prisms,refs,areRequired,&
! retval)
! MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
! INTEGER(MMG5F_INT), DIMENSION(*),INTENT(OUT) :: prisms
! INTEGER(MMG5F_INT), DIMENSION(*) :: refs
! INTEGER, DIMENSION(*) :: areRequired
! INTEGER, INTENT(OUT) :: retval
! END SUBROUTINE

Definition at line 829 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_quadrilateral()

int MMG3D_Get_quadrilateral ( MMG5_pMesh  mesh,
MMG5_int *  v0,
MMG5_int *  v1,
MMG5_int *  v2,
MMG5_int *  v3,
MMG5_int *  ref,
int *  isRequired 
)
Parameters
meshpointer toward the mesh structure.
v0pointer toward the first vertex of quadrilateral.
v1pointer toward the second vertex of quadrilateral.
v2pointer toward the third vertex of quadrilateral.
v3pointer toward the fourth vertex of quadrilateral.
refpointer toward the quadrilateral reference.
isRequiredpointer toward the flag saying if quadrilateral is required.
Returns
0 if failed, 1 otherwise.

Get vertices v0,v1,v2,v3 and reference ref of next quadrilateral of mesh.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_QUADRILATERAL(mesh,v0,v1,v2,v3,ref,isRequired,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(OUT) :: v0,v1,v2,v3,ref
INTEGER :: isRequired
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1005 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_quadrilaterals()

int MMG3D_Get_quadrilaterals ( MMG5_pMesh  mesh,
MMG5_int *  quads,
MMG5_int *  refs,
int *  areRequired 
)
Parameters
meshpointer toward the mesh structure.
quadspointer toward the table of the quadrilaterals vertices Vertices of the $i^{th}$ quadra are stored in tria[(i-1)*4]@4.
refspointer toward the table of the quadrilaterals references. refs[i-1] is the ref of the $i^{th}$ quadra.
areRequiredpointer toward table of the flags saying if quadrilaterals are required. areRequired[i-1]=1 if the $i^{th}$ quadra is required.
Returns
0 if failed, 1 otherwise.

Get vertices and references of the mesh quadrilaterals.

Remarks
Fortran interface: (Commentated in order to allow to pass %val(0) instead of the refs or areRequired arrays)

‍! SUBROUTINE MMG3D_GET_QUADRILATERALS(mesh,quads,refs,areRequired,retval)
! MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
! INTEGER(MMG5F_INT), DIMENSION(*),INTENT(OUT) :: quads
! INTEGER(MMG5F_INT), DIMENSION(*) :: refs
! INTEGER, DIMENSION(*) :: areRequired
! INTEGER, INTENT(OUT) :: retval
! END SUBROUTINE

Definition at line 1068 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_scalarSol()

int MMG3D_Get_scalarSol ( MMG5_pSol  met,
double *  s 
)
Parameters
metpointer toward the sol structure.
spointer toward the scalar solution value.
Returns
0 if failed, 1 otherwise.

Get solution s of next vertex of mesh.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_SCALARSOL(met,s,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: met
REAL(KIND=8), INTENT(OUT) :: s
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1464 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_scalarSols()

int MMG3D_Get_scalarSols ( MMG5_pSol  met,
double *  s 
)
Parameters
metpointer toward the sol structure.
stable of the scalar solutions at mesh vertices. s[i-1] is the solution at vertex i.
Returns
0 if failed, 1 otherwise.

Get solutions at mesh vertices.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_SCALARSOLS(met,s,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: met
REAL(KIND=8), DIMENSION(*),INTENT(OUT) :: s
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1511 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_solsAtVerticesSize()

int MMG3D_Get_solsAtVerticesSize ( MMG5_pMesh  mesh,
MMG5_pSol sol,
int *  nsols,
MMG5_int *  nentities,
int *  typSol 
)
Parameters
meshpointer toward the mesh structure.
solpointer toward an array of sol structure.
nsolspointer toward the number of solutions per entity.
nentitiespointer toward the number of solutions.
typSolarray of size MMG5_NSOLS_MAX to store type of each solution (scalar, vector..).
Returns
1.

Get the solution number, dimension and type.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_SOLSATVERTICESSIZE(mesh,sol,nsols,nentities,typSol,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh,sol
INTEGER :: nsols
INTEGER(MMG5F_INT) :: nentities
INTEGER :: typSol(*)
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 310 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_solSize()

int MMG3D_Get_solSize ( MMG5_pMesh  mesh,
MMG5_pSol  sol,
int *  typEntity,
MMG5_int *  np,
int *  typSol 
)
Parameters
meshpointer toward the mesh structure.
solpointer toward the sol structure.
typEntitypointer toward the type of entities to which solutions are applied.
nppointer toward the number of solutions.
typSolpointer toward the type of the solutions (scalar, vectorial, ...)
Returns
1.

Get the solution number, dimension and type.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_SOLSIZE(mesh,sol,typEntity,np,typSol,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh,sol
INTEGER :: typEntity,typSol
INTEGER(MMG5F_INT) :: np
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 286 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_tensorSol()

int MMG3D_Get_tensorSol ( MMG5_pSol  met,
double *  m11,
double *  m12,
double *  m13,
double *  m22,
double *  m23,
double *  m33 
)
Parameters
metpointer toward the sol structure.
m11pointer toward the position (1,1) in the solution tensor.
m12pointer toward the position (1,2) in the solution tensor.
m13pointer toward the position (1,3) in the solution tensor.
m22pointer toward the position (2,2) in the solution tensor.
m23pointer toward the position (2,3) in the solution tensor.
m33pointer toward the position (3,3) in the solution tensor.
Returns
0 if failed, 1 otherwise.

Get tensorial solution of next vertex of mesh.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_TENSORSOL(met,m11,m12,m13,m22,m23,m33,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: met
REAL(KIND=8), INTENT(OUT) :: m11,m12,m13,m22,m23,m33
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1669 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_tensorSols()

int MMG3D_Get_tensorSols ( MMG5_pSol  met,
double *  sols 
)
Parameters
metpointer toward the sol structure.
solstable of the solutions at mesh vertices. sols[6*(i-1)]@6 is the solution at vertex i.
Returns
0 if failed, 1 otherwise.

Get tensorial solutions at mesh vertices.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_TENSORSOLS(met,sols,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: met
REAL(KIND=8), DIMENSION(*), INTENT(OUT) :: sols
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1731 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_tetrahedra()

int MMG3D_Get_tetrahedra ( MMG5_pMesh  mesh,
MMG5_int *  tetra,
MMG5_int *  refs,
int *  areRequired 
)
Parameters
meshpointer toward the mesh structure.
tetrapointer toward the table of the tetrahedra vertices. Vertices of the $i^{th}$ tetra are stored in tetra[(i-1)*4]@4.
refspointer toward the table of the tetrahedron references. References of the $i^{th}$ tetra is stored in refs[i-1].
areRequiredpointer toward the table of the flags saying if the tetrahedra are required. areRequired[i-1]=1 if the $i^{th}$ tetra is required.
Returns
0 if failed, 1 otherwise.

Get vertices and references of the mesh tetrahedra.

Remarks
Fortran interface: (commentated in order to allow to pass %val(0) instead of the refs, areCorners or areRequired arrays)

‍! SUBROUTINE MMG3D_GET_TETRAHEDRA(mesh,tetra,refs,areRequired,&
! retval)
! MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
! INTEGER(MMG5F_INT), DIMENSION(*),INTENT(OUT) :: tetra
! INTEGER(MMG5F_INT), DIMENSION(*) :: refs
! INTEGER, DIMENSION(*) :: areRequired
! INTEGER, INTENT(OUT) :: retval
! END SUBROUTINE

Definition at line 689 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_tetrahedron()

int MMG3D_Get_tetrahedron ( MMG5_pMesh  mesh,
MMG5_int *  v0,
MMG5_int *  v1,
MMG5_int *  v2,
MMG5_int *  v3,
MMG5_int *  ref,
int *  isRequired 
)
Parameters
meshpointer toward the mesh structure.
v0pointer toward the first vertex of tetrahedron.
v1pointer toward the second vertex of tetrahedron.
v2pointer toward the third vertex of tetrahedron.
v3pointer toward the fourth vertex of tetrahedron.
refpointer toward the tetrahedron reference.
isRequiredpointer toward the flag saying if tetrahedron is required.
Returns
0 if failed, 1 otherwise.

Get vertices v0, v1, v2, v3 and reference ref of next tetra of mesh.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_TETRAHEDRON(mesh,v0,v1,v2,v3,ref,isRequired,&
retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(OUT):: v0,v1,v2,v3
INTEGER(MMG5F_INT) :: ref
INTEGER :: isRequired
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 589 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_tetrahedronQuality()

double MMG3D_Get_tetrahedronQuality ( MMG5_pMesh  mesh,
MMG5_pSol  met,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
metpointer toward the metric structure.
kindex of the tetra for which we want to get the quality.
Returns
the computed quality or 0. if fail.

Get quality of tetra k.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_TETRAHEDRONQUALITY(mesh,met,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh,met
INTEGER(MMG5F_INT), INTENT(IN):: k
REAL(KIND=8), INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1398 of file API_functions_3d.c.

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

◆ MMG3D_Get_triangle()

int MMG3D_Get_triangle ( MMG5_pMesh  mesh,
MMG5_int *  v0,
MMG5_int *  v1,
MMG5_int *  v2,
MMG5_int *  ref,
int *  isRequired 
)
Parameters
meshpointer toward the mesh structure.
v0pointer toward the first vertex of triangle.
v1pointer toward the second vertex of triangle.
v2pointer toward the third vertex of triangle.
refpointer toward the triangle reference.
isRequiredpointer toward the flag saying if triangle is required.
Returns
0 if failed, 1 otherwise.

Get vertices v0,v1,v2 and reference ref of next triangle of mesh.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_TRIANGLE(mesh,v0,v1,v2,ref,isRequired,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(OUT) :: v0,v1,v2
INTEGER(MMG5F_INT) :: ref
INTEGER :: isRequired
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 892 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_triangles()

int MMG3D_Get_triangles ( MMG5_pMesh  mesh,
MMG5_int *  tria,
MMG5_int *  refs,
int *  areRequired 
)
Parameters
meshpointer toward the mesh structure.
triapointer toward the table of the triangles vertices Vertices of the $i^{th}$ tria are stored in tria[(i-1)*3]@3.
refspointer toward the table of the triangles references. refs[i-1] is the ref of the $i^{th}$ tria.
areRequiredpointer toward table of the flags saying if triangles are required. areRequired[i-1]=1 if the $i^{th}$ tria is required.
Returns
0 if failed, 1 otherwise.

Get vertices and references of the mesh triangles.

Remarks
Fortran interface: (Commentated in order to allow to pass %val(0) instead of the refs or areRequired arrays)

‍! SUBROUTINE MMG3D_GET_TRIANGLES(mesh,tria,refs,areRequired,retval)
! MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
! INTEGER(MMG5F_INT), DIMENSION(*),INTENT(OUT) :: tria
! INTEGER(MMG5F_INT), DIMENSION(*) :: refs
! INTEGER, DIMENSION(*) :: areRequired
! INTEGER, INTENT(OUT) :: retval
! END SUBROUTINE

Definition at line 952 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_vectorSol()

int MMG3D_Get_vectorSol ( MMG5_pSol  met,
double *  vx,
double *  vy,
double *  vz 
)
Parameters
metpointer toward the sol structure.
vxx value of the vectorial solution.
vyy value of the vectorial solution.
vzz value of the vectorial solution.
Returns
0 if failed, 1 otherwise.

Get vectorial solution $(v_x,v_y,vz)$ of next vertex of mesh.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_VECTORSOL(met,vx,vy,vz,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: met
REAL(KIND=8), INTENT(OUT) :: vx,vy,vz
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1557 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_vectorSols()

int MMG3D_Get_vectorSols ( MMG5_pSol  met,
double *  sols 
)
Parameters
metpointer toward the sol structure.
solstable of the solutions at mesh vertices. sols[3*(i-1)]@3 is the solution at vertex i.
Returns
0 if failed, 1 otherwise.

Get vectorial solutions at mesh vertices

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_VECTORSOLS(met,sols,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: met
REAL(KIND=8), DIMENSION(*),INTENT(OUT) :: sols
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1612 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Get_vertex()

int MMG3D_Get_vertex ( MMG5_pMesh  mesh,
double *  c0,
double *  c1,
double *  c2,
MMG5_int *  ref,
int *  isCorner,
int *  isRequired 
)
Parameters
meshpointer toward the mesh structure.
c0pointer toward the coordinate of the point along the first dimension.
c1pointer toward the coordinate of the point along the second dimension.
c2pointer toward the coordinate of the point along the third dimension.
refpointer to the point reference.
isCornerpointer toward the flag saying if point is corner.
isRequiredpointer toward the flag saying if point is required.
Returns
1.

Get coordinates c0, c1,c2 and reference ref of next vertex of mesh.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GET_VERTEX(mesh,c0,c1,c2,ref,isCorner,isRequired, &
retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
REAL(KIND=8), INTENT(OUT) :: c0,c1,c2
INTEGER(MMG5F_INT) :: ref
INTEGER :: isCorner,isRequired
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 394 of file API_functions_3d.c.

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

◆ MMG3D_Get_vertices()

int MMG3D_Get_vertices ( MMG5_pMesh  mesh,
double *  vertices,
MMG5_int *  refs,
int *  areCorners,
int *  areRequired 
)
Parameters
meshpointer toward the mesh structure.
verticespointer toward the table of the points coordinates. The coordinates of the $i^{th}$ point are stored in vertices[(i-1)*3]@3.
refspointer to the table of the point references. The ref of the $i^th$ point is stored in refs[i-1].
areCornerspointer toward the table of the flags saying if points are corners. areCorners[i-1]=1 if the $i^{th}$ point is corner.
areRequiredpointer toward the table of flags saying if points are required. areRequired[i-1]=1 if the $i^{th}$ point is required.
Returns
1.

Get the coordinates and references of the mesh vertices.

Remarks
Fortran interface: (commentated in order to allow to pass %val(0) instead of the refs, areCorners or areRequired arrays)

‍! SUBROUTINE MMG3D_GET_VERTICES(mesh,vertices,refs,areCorners,&
! areRequired,retval)
! MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
! REAL(KIND=8),DIMENSION(*), INTENT(OUT) :: vertices
! INTEGER(MMG5F_INT), DIMENSION(*) :: refs
! INTEGER, DIMENSION(*) :: areCorners,areRequired
! INTEGER, INTENT(OUT) :: retval
! END SUBROUTINE

Definition at line 481 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_GetByIdx_vertex()

int MMG3D_GetByIdx_vertex ( MMG5_pMesh  mesh,
double *  c0,
double *  c1,
double *  c2,
MMG5_int *  ref,
int *  isCorner,
int *  isRequired,
MMG5_int  idx 
)
Parameters
meshpointer toward the mesh structure.
c0pointer toward the coordinate of the point along the first dimension.
c1pointer toward the coordinate of the point along the second dimension.
c2pointer toward the coordinate of the point along the third dimension.
refpointer to the point reference.
isCornerpointer toward the flag saying if point is corner.
isRequiredpointer toward the flag saying if point is required.
idxindex of point to get.
Returns
1.

Get coordinates c0, c1, c2 and reference ref of vertex idx of mesh.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_GETBYIDX_VERTEX(mesh,c0,c1,c2,ref,isCorner,isRequired,idx,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
REAL(KIND=8), INTENT(OUT) :: c0,c1,c2
INTEGER(MMG5F_INT) :: ref,idx
INTEGER :: isCorner,isRequired
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 421 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Init_fileNames()

void MMG3D_Init_fileNames ( MMG5_pMesh  mesh,
MMG5_pSol  sol 
)
Parameters
meshpointer toward the mesh structure.
solpointer toward the sol structure.

Initialize file names to their default values.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_INIT_FILENAMES(mesh,sol)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh,sol
END SUBROUTINE

Definition at line 58 of file API_functions_3d.c.

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

◆ MMG3D_Init_mesh()

int MMG3D_Init_mesh ( const int  starter,
  ... 
)
Parameters
starterdummy argument used to initialize the variadic argument list
...variadic arguments that depend to the library function that you want to call.

For the MMG3D_mmg3dlib function, you need to call the MMG3D_Init_mesh function with the following arguments : MMG3D_Init_mesh(MMG5_ARG_start,MMG5_ARG_ppMesh, &your_mesh, MMG5_ARG_ppMet MMG5_ARG_ppMet, &your_metric,MMG5_ARG_end).

For the MMG3D_mmg3dls function, you need to call the MMG3D_Init_mesh function with the following arguments : MMG3D_Init_mesh(MMG5_ARG_start,MMG5_ARG_ppMesh, &your_mesh, MMG5_ARG_ppLs, &your_level_set,MMG5_ARG_end).

For the MMG3D_mmg3dmov function, you must call : MMG3D_Init_mesh(MMG5_ARG_start,MMG5_ARG_ppMesh, &your_mesh, MMG5_ARG_ppMet,&empty_metric,MMG5_ARG_ppDisp, &your_displacement, MMG5_ARG_end).

Here,your_mesh is a MMG5_pMesh, your_metric your_level_set and your_displacement are MMG5_pSol.

Returns
1 if success, 0 if fail

MMG structures allocation and initialization.

Remarks
No fortran interface to allow variadic arguments.
Warning
detected bugs:
  • some points along open-boundaries end up with a normal (while they should not)

Definition at line 46 of file API_functions_3d.c.

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

◆ MMG3D_Init_parameters()

void MMG3D_Init_parameters ( MMG5_pMesh  mesh)
Parameters
meshpointer toward the mesh structure.

Initialization of the input parameters (stored in the Info structure).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_INIT_PARAMETERS(mesh)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
END SUBROUTINE

Definition at line 83 of file API_functions_3d.c.

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

◆ MMG3D_Set_corner()

int MMG3D_Set_corner ( MMG5_pMesh  mesh,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
kvertex index.
Returns
1.

Set corner at point pos.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_CORNER(mesh,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1219 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_dparameter()

int MMG3D_Set_dparameter ( MMG5_pMesh  mesh,
MMG5_pSol  sol,
int  dparam,
double  val 
)
Parameters
meshpointer toward the mesh structure.
solpointer toward the sol structure (unused).
dparamdouble parameter to set (see MMG3D_Param structure).
valvalue of the parameter.
Returns
0 if failed, 1 otherwise.

Set double parameter dparam at value val.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_DPARAMETER(mesh,sol,dparam,val,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
MMG5_DATA_PTR_T :: sol
INTEGER, INTENT(IN) :: dparam
REAL(KIND=8), INTENT(IN) :: val
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 2357 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_edge()

int MMG3D_Set_edge ( MMG5_pMesh  mesh,
MMG5_int  v0,
MMG5_int  v1,
MMG5_int  ref,
MMG5_int  pos 
)
Parameters
meshpointer toward the mesh structure.
v0first extremity of the edge.
v1second extremity of the edge.
refedge reference.
posedge position in the mesh.
Returns
0 if failed, 1 otherwise.

Set edges of extremities v0, v1 and reference ref at position pos in mesh structure (from 1 to nb_edges included)

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_EDGE(mesh,v0,v1,ref,pos,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: v0,v1,ref,pos
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1094 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_edges()

int MMG3D_Set_edges ( MMG5_pMesh  mesh,
MMG5_int *  edges,
MMG5_int *  refs 
)
Parameters
meshpointer toward the mesh structure.
edgespointer toward the array of edges. Vertices of the $i^{th}$ edge are stored in edge[(i-1)*2]@2.
refsedges references. refs[i-1] is the ref of the $i^{th}$ edge.
Returns
0 if failed, 1 otherwise.

Set vertices and references of the mesh edges.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_EDGES(mesh,edges,refs,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN) :: edges(*)
INTEGER(MMG5F_INT), INTENT(IN) :: refs(*)
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1172 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_handGivenMesh()

void MMG3D_Set_handGivenMesh ( MMG5_pMesh  mesh)
Parameters
meshpointer toward the mesh structure.

To mark as ended a mesh given without using the API functions (for example, mesh given by mesh->point[i] = 0 ...). Not recommanded.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_HANDGIVENMESH(mesh)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
END SUBROUTINE

Definition at line 1863 of file API_functions_3d.c.

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

◆ MMG3D_Set_inputMeshName()

int MMG3D_Set_inputMeshName ( MMG5_pMesh  mesh,
const char *  meshin 
)
Parameters
meshpointer toward the mesh structure.
meshininput mesh name.
Returns
1.

Set the name of input mesh.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_INPUTMESHNAME(mesh,meshin,strlen0,retval)
MMG5_DATA_PTR_T, INTENT(INOUT) :: mesh
CHARACTER(LEN=*), INTENT(IN) :: meshin
INTEGER, INTENT(IN) :: strlen0
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 65 of file API_functions_3d.c.

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

◆ MMG3D_Set_inputSolName()

int MMG3D_Set_inputSolName ( MMG5_pMesh  mesh,
MMG5_pSol  sol,
const char *  solin 
)
Parameters
meshpointer toward the mesh structure.
solpointer toward the sol structure.
solinname of the input solution file.
Returns
1.

Set the name of input solution file.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_INPUTSOLNAME(mesh,sol,solin,strlen0,retval)
MMG5_DATA_PTR_T, INTENT(INOUT) :: mesh,sol
CHARACTER(LEN=*), INTENT(IN) :: solin
INTEGER, INTENT(IN) :: strlen0
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 70 of file API_functions_3d.c.

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

◆ MMG3D_Set_iparameter()

int MMG3D_Set_iparameter ( MMG5_pMesh  mesh,
MMG5_pSol  sol,
int  iparam,
MMG5_int  val 
)

functions to set parameters

Parameters
meshpointer toward the mesh structure.
solpointer toward the sol structure (unused).
iparaminteger parameter to set (see MMG3D_Param structure).
valvalue for the parameter.
Returns
0 if failed, 1 otherwise.

Set integer parameter iparam at value val.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_IPARAMETER(mesh,sol,iparam,val,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
MMG5_DATA_PTR_T :: sol
INTEGER, INTENT(IN) :: iparam
INTEGER(MMG5F_INT), INTENT(IN) :: val
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 2109 of file API_functions_3d.c.

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

◆ MMG3D_Set_ithSol_inSolsAtVertices()

int MMG3D_Set_ithSol_inSolsAtVertices ( MMG5_pSol  sol,
int  i,
double *  s,
MMG5_int  pos 
)
Parameters
solpointer toward the array of solutions
iposition of the solution field that we want to set.
ssolution(s) at mesh vertex pos.
posindex of the vertex on which we set the solution.
Returns
0 if failed, 1 otherwise.

Set values of the solution at the ith field of the solution array and at position pos (pos from 1 to nb_vertices included and i from 1 to nb_sols).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_ITHSOL_INSOLSATVERTICES(sol,i,s,pos,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: sol
INTEGER, INTENT(IN) :: i
INTEGER(MMG5F_INT), INTENT(IN) :: pos
REAL(KIND=8), DIMENSION(*),INTENT(OUT) :: s
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1750 of file API_functions_3d.c.

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

◆ MMG3D_Set_ithSols_inSolsAtVertices()

int MMG3D_Set_ithSols_inSolsAtVertices ( MMG5_pSol  sol,
int  i,
double *  s 
)
Parameters
solpointer toward the array of solutions
iposition of the solution field that we want to set.
stable of the solutions at mesh vertices. The solution at vertex k is given by s[k-1] for a scalar sol, s[3*(k-1)]@3 for a vectorial solution and s[6*(k-1)]@6 for a tensor solution.
Returns
0 if failed, 1 otherwise.

Get values of the ith field of the solution array by array (i from 1 to nb_sols).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_ITHSOLS_INSOLSATVERTICES(sol,i,s,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: sol
INTEGER, INTENT(IN) :: i
REAL(KIND=8), DIMENSION(*),INTENT(OUT) :: s
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1807 of file API_functions_3d.c.

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

◆ MMG3D_Set_localParameter()

int MMG3D_Set_localParameter ( MMG5_pMesh  mesh,
MMG5_pSol  sol,
int  typ,
MMG5_int  ref,
double  hmin,
double  hmax,
double  hausd 
)
Parameters
meshpointer toward the mesh structure.
solpointer toward the sol structure.
typtype of entity (triangle, edge,...).
refreference of the entity.
hminminimal edge size.
hmaxmaximal edge size.
hausdvalue of the Hausdorff number.
Returns
0 if failed, 1 otherwise.

Set local parameters: set the hausdorff value at val for all elements of type typ and reference ref.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_LOCALPARAMETER(mesh,sol,typ,ref,&
hmin,hmax,hausd,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh,sol
INTEGER, INTENT(IN) :: typ
INTEGER(MMG5F_INT), INTENT(IN):: ref
REAL(KIND=8), INTENT(IN) :: hmin,hmax,hausd
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 2430 of file API_functions_3d.c.

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

◆ MMG3D_Set_lsBaseReference()

int MMG3D_Set_lsBaseReference ( MMG5_pMesh  mesh,
MMG5_pSol  sol,
MMG5_int  br 
)
Parameters
meshpointer toward the mesh structure.
solpointer toward the sol structure.
brnew level-set base reference.
Returns
0 if failed, 1 otherwise.

Set a new level-set base reference of ref br in ls discretization mode. Base references are boundary conditions to which implicit domain can be attached. All implicit volumes that are not attached to listed base references are deleted as spurious volumes by the rmc option.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_LSBASEREFERENCE(mesh,sol,br,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh,sol
INTEGER(MMG5F_INT) :: br
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 2523 of file API_functions_3d.c.

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

◆ MMG3D_Set_meshSize()

int MMG3D_Set_meshSize ( MMG5_pMesh  mesh,
MMG5_int  np,
MMG5_int  ne,
MMG5_int  nprism,
MMG5_int  nt,
MMG5_int  nquad,
MMG5_int  na 
)
Parameters
meshpointer toward the mesh structure.
npnumber of vertices.
nenumber of tetrahedra.
nprismnumber of prisms.
ntnumber of triangles.
nquadnumber of quads.
nanumber of edges.
Returns
0 if failed, 1 otherwise.

Set the number of vertices, tetrahedra, prisms, triangles, quadrilaterals and edges of the mesh and allocate the associated tables. If call twice, reset the whole mesh to realloc it at the new size

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_MESHSIZE(mesh,np,ne,nprism,nt,nquad,na,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT) :: np,ne,nprism,nt,nquad,na
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 260 of file API_functions_3d.c.

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

◆ MMG3D_Set_multiMat()

int MMG3D_Set_multiMat ( MMG5_pMesh  mesh,
MMG5_pSol  sol,
MMG5_int  ref,
int  split,
MMG5_int  rin,
MMG5_int  rex 
)
Parameters
meshpointer toward the mesh structure.
solpointer toward the sol structure.
refinput tetra reference.
splitMMG5_MMAT_NoSplit if the entity must not be splitted, MMG5_MMAT_Split otherwise
rininternal reference after ls discretization
rexexternal reference after ls discretization
Returns
0 if failed, 1 otherwise.

Set the reference mapping for the elements of ref ref in ls discretization mode.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_MULTIMAT(mesh,sol,ref,split,rin,rex,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh,sol
INTEGER, INTENT(IN) :: split
INTEGER(MMG5F_INT), INTENT(IN):: ref,rin,rex
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 2519 of file API_functions_3d.c.

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

◆ MMG3D_Set_normalAtVertex()

int MMG3D_Set_normalAtVertex ( MMG5_pMesh  mesh,
MMG5_int  k,
double  n0,
double  n1,
double  n2 
)
Parameters
meshpointer toward the mesh structure.
kpoint index
n0x componant of the normal at point k.
n1y componant of the normal at point k.
n2z componant of the normal at point k.
Returns
1 if success.

Set normals (n0,n1,n2) at point k.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_NORMALATVERTEX(mesh,k,n0,n1,n2,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
REAL(KIND=8), INTENT(IN) :: n0,n1,n2
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1376 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_outputMeshName()

int MMG3D_Set_outputMeshName ( MMG5_pMesh  mesh,
const char *  meshout 
)
Parameters
meshpointer toward the mesh structure.
meshoutname of the output mesh file.
Returns
1.

Set the name of output mesh file.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_OUTPUTMESHNAME(mesh,meshout,strlen0,retval)
MMG5_DATA_PTR_T, INTENT(INOUT) :: mesh
CHARACTER(LEN=*), INTENT(IN) :: meshout
INTEGER, INTENT(IN) :: strlen0
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 74 of file API_functions_3d.c.

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

◆ MMG3D_Set_outputSolName()

int MMG3D_Set_outputSolName ( MMG5_pMesh  mesh,
MMG5_pSol  sol,
const char *  solout 
)
Parameters
meshpointer toward the mesh structure.
solpointer toward the sol structure.
soloutname of the output solution file.
Returns
0 if failed, 1 otherwise.

Set the name of output solution file.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_OUTPUTSOLNAME(mesh,sol,solout,strlen0,retval)
MMG5_DATA_PTR_T, INTENT(INOUT) :: mesh,sol
CHARACTER(LEN=*), INTENT(IN) :: solout
INTEGER, INTENT(IN) :: strlen0
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 79 of file API_functions_3d.c.

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

◆ MMG3D_Set_parallelTriangle()

int MMG3D_Set_parallelTriangle ( MMG5_pMesh  mesh,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
ktriangle index.
Returns
1.

Set triangle k as parallel (triangle at the interface between two processors, ie, this triangle is required). (k from 1 to nb_tria included).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_PARALLELTRIANGLE(mesh,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1314 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_parallelTriangles()

int MMG3D_Set_parallelTriangles ( MMG5_pMesh  mesh,
MMG5_int *  parIdx,
MMG5_int  npar 
)
Parameters
meshpointer toward the mesh structure.
parIdxtable of the indices of the parallel trias.
nparnumber of triangles between processors.
Returns
1.

Set the parallel triangles (triangles at the interface between processors, ie this triangles are required).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_PARALLELTRIANGLES(mesh,parIdx,npar,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), DIMENSION(*),INTENT(IN) :: parIdx
INTEGER(MMG5F_INT), INTENT(IN) :: npar
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1330 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_prism()

int MMG3D_Set_prism ( MMG5_pMesh  mesh,
MMG5_int  v0,
MMG5_int  v1,
MMG5_int  v2,
MMG5_int  v3,
MMG5_int  v4,
MMG5_int  v5,
MMG5_int  ref,
MMG5_int  pos 
)
Parameters
meshpointer toward the mesh structure.
v0first vertex of prism.
v1second vertex of prism.
v2third vertex of prism.
v3fourth vertex of prism.
v4fifth vertex of prism.
v5sixth vertex of prism.
refprism reference.
posprism position in the mesh.
Returns
0 if failed, 1 otherwise.

Set prisms of vertices v0, v1,v2,v3,v4,v5 and reference ref at position pos in mesh structure (from 1 to nb_prisms included).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_PRISM(mesh,v0,v1,v2,v3,v4,v5,ref,pos,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: v0,v1,v2,v3,v4,v5,ref,pos
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 713 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_prisms()

int MMG3D_Set_prisms ( MMG5_pMesh  mesh,
MMG5_int *  prisms,
MMG5_int *  refs 
)
Parameters
meshpointer toward the mesh structure.
prismsvertices of the prisms of the mesh Vertices of the $i^{th}$ prism are stored in prism[(i-1)*6]@6.
refstable of the prisms references. References of the $i^{th}$ prisms is stored in refs[i-1].
Returns
0 if failed, 1 otherwise.

Set vertices and references of the mesh prisms.

Remarks
Fortran interface: (commentated in order to allow to pass %val(0) instead of the refs array)

‍! SUBROUTINE MMG3D_SET_PRISMS(mesh,prisms,refs,retval)
! MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
! INTEGER(MMG5F_INT), DIMENSION(*), INTENT(IN) :: prisms
! INTEGER(MMG5F_INT), DIMENSION(*), INTENT(IN) :: refs
! INTEGER, INTENT(OUT) :: retval
! END SUBROUTINE

Definition at line 799 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_quadrilateral()

int MMG3D_Set_quadrilateral ( MMG5_pMesh  mesh,
MMG5_int  v0,
MMG5_int  v1,
MMG5_int  v2,
MMG5_int  v3,
MMG5_int  ref,
MMG5_int  pos 
)
Parameters
meshpointer toward the mesh structure.
v0first vertex of quadrilateral.
v1second vertex of quadrilateral.
v2third vertex of quadrilateral.
v3fourth vertex of quadrilateral.
refquadrilateral reference.
posquadrilateral position in the mesh.
Returns
0 if failed, 1 otherwise.

Set quadrilateral of vertices v0, v1, v2, v3 and reference ref at position pos in mesh structure (from 1 to nb_quadrangles included).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_QUADRILATERAL(mesh,v0,v1,v2,v3,ref,pos,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: v0,v1,v2,v3,ref,pos
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 977 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_quadrilaterals()

int MMG3D_Set_quadrilaterals ( MMG5_pMesh  mesh,
MMG5_int *  quads,
MMG5_int *  refs 
)
Parameters
meshpointer toward the mesh structure.
quadspointer toward the table of the quads vertices Vertices of the $i^{th}$ quadra are stored in quads[(i-1)*3]@3.
refspointer toward the table of the quadrilateral references. refs[i-1] is the ref of the $i^{th}$ quadra.
Returns
0 if failed, 1 otherwise.

Set vertices and references of the mesh quadrilaterals.

Remarks
Fortran interface: (commentated in order to allow to pass %val(0) instead of the refs array)

‍! SUBROUTINE MMG3D_SET_QUADRILATERALS(mesh,quads,refs,retval)
! MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
! INTEGER(MMG5F_INT),DIMENSION(*), INTENT(IN) :: quads
! INTEGER(MMG5F_INT),DIMENSION(*), INTENT(IN) :: refs
! INTEGER, INTENT(OUT) :: retval
! END SUBROUTINE

Definition at line 1050 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_requiredEdge()

int MMG3D_Set_requiredEdge ( MMG5_pMesh  mesh,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
kedge index.
Returns
1.

Set edge k as required.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_REQUIREDEDGE(mesh,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1364 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_requiredTetrahedra()

int MMG3D_Set_requiredTetrahedra ( MMG5_pMesh  mesh,
MMG5_int *  reqIdx,
MMG5_int  nreq 
)
Parameters
meshpointer toward the mesh structure.
reqIdxtable of the indices of the required elements.
nreqnumber of required elements
Returns
1.

Set the required Tetra.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_REQUIREDTETRAHEDRA(mesh,reqIdx,nreq,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), DIMENSION(*),INTENT(IN) :: reqIdx
INTEGER(MMG5F_INT), INTENT(IN) :: nreq
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1256 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_requiredTetrahedron()

int MMG3D_Set_requiredTetrahedron ( MMG5_pMesh  mesh,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
kelement index.
Returns
1.

Set element k as required (k from 1 to nb_tetra included).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_REQUIREDTETRAHEDRON(mesh,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1244 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_requiredTriangle()

int MMG3D_Set_requiredTriangle ( MMG5_pMesh  mesh,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
ktriangle index.
Returns
1.

Set triangle k as required (k from 1 to nb_tria included).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_REQUIREDTRIANGLE(mesh,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1276 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_requiredTriangles()

int MMG3D_Set_requiredTriangles ( MMG5_pMesh  mesh,
MMG5_int *  reqIdx,
MMG5_int  nreq 
)
Parameters
meshpointer toward the mesh structure.
reqIdxtable of the indices of the required trias.
nreqnumber of required trias
Returns
1.

Set the required triangles

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_REQUIREDTRIANGLES(mesh,reqIdx,nreq,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), DIMENSION(*),INTENT(IN) :: reqIdx
INTEGER(MMG5F_INT), INTENT(IN) :: nreq
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1292 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_requiredVertex()

int MMG3D_Set_requiredVertex ( MMG5_pMesh  mesh,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
kvertex index.
Returns
1.

Set point k as required (k from 1 to nb_vertices included).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_REQUIREDVERTEX(mesh,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1231 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_ridge()

int MMG3D_Set_ridge ( MMG5_pMesh  mesh,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
kedge index.
Returns
1.

Set ridge at edge k.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_RIDGE(mesh,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1352 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_scalarSol()

int MMG3D_Set_scalarSol ( MMG5_pSol  met,
double  s,
MMG5_int  pos 
)
Parameters
metpointer toward the sol structure.
ssolution scalar value.
posposition of the solution in the mesh.
Returns
0 if failed, 1 otherwise.

Set scalar value s at position pos in solution structure (pos from 1 to nb_vertices included).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_SCALARSOL(met,s,pos,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: met
REAL(KIND=8), INTENT(IN) :: s
INTEGER(MMG5F_INT), INTENT(IN):: pos
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1430 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_scalarSols()

int MMG3D_Set_scalarSols ( MMG5_pSol  met,
double *  s 
)
Parameters
metpointer toward the sol structure.
stable of the scalar solutions values. s[i-1] is the solution at vertex i.
Returns
0 if failed, 1 otherwise.

Set scalar solutions at mesh vertices.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_SCALARSOLS(met,s,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: met
REAL(KIND=8),DIMENSION(*), INTENT(IN) :: s
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1494 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_solsAtVerticesSize()

int MMG3D_Set_solsAtVerticesSize ( MMG5_pMesh  mesh,
MMG5_pSol sol,
int  nsols,
MMG5_int  nentities,
int *  typSol 
)
Parameters
meshpointer toward the mesh structure.
solpointer toward an allocatable sol structure.
nsolsnumber of solutions per entity
nentitiesnumber of vertices
typSolArray of size nsols listing the type of the solutions (scalar, vectorial...).
Returns
0 if failed, 1 otherwise.

Initialize an array of solutions field defined at vertices: set dimension, types and number of data. To use to initialize an array of solution fields (not used by Mmg itself).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_SOLSATVERTICESSIZE(mesh,sol,nsols,nentities,typSol,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh,sol
INTEGER, INTENT(IN) :: nsols
INTEGER(MMG5F_INT), INTENT(IN):: nentities
INTEGER, INTENT(IN) :: typSol(*)
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Sol tab allocation

Definition at line 157 of file API_functions_3d.c.

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

◆ MMG3D_Set_solSize()

int MMG3D_Set_solSize ( MMG5_pMesh  mesh,
MMG5_pSol  sol,
int  typEntity,
MMG5_int  np,
int  typSol 
)
Parameters
meshpointer toward the mesh structure.
solpointer toward the sol structure.
typEntitytype of solutions entities (vertices, triangles...).
npnumber of solutions.
typSoltype of solution (scalar, vectorial...).
Returns
0 if failed, 1 otherwise.

Initialize a solution field: set dimension, types and number of data. To use to initialize a metric, a level-set or a displacement field.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_SOLSIZE(mesh,sol,typEntity,np,typSol,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh,sol
INTEGER(MMG5F_INT), INTENT(IN):: np
INTEGER, INTENT(IN) :: typEntity,typSol
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 112 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_tensorSol()

int MMG3D_Set_tensorSol ( MMG5_pSol  met,
double  m11,
double  m12,
double  m13,
double  m22,
double  m23,
double  m33,
MMG5_int  pos 
)
Parameters
metpointer toward the sol structure.
m11value of the tensorial solution at position (1,1) in the tensor
m12value of the tensorial solution at position (1,2) in the tensor
m13value of the tensorial solution at position (1,3) in the tensor
m22value of the tensorial solution at position (2,2) in the tensor
m23value of the tensorial solution at position (2,3) in the tensor
m33value of the tensorial solution at position (3,3) in the tensor
posposition of the solution in the mesh (begin to 1).
Returns
0 if failed, 1 otherwise.

Set tensorial values at position pos in solution structure. (pos from 1 to nb_vertices included).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_TENSORSOL(met,m11,m12,m13,m22,m23,m33,pos,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: met
REAL(KIND=8), INTENT(IN) :: m11,m12,m13,m22,m23,m33
INTEGER(MMG5F_INT), INTENT(IN):: pos
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1627 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_tensorSols()

int MMG3D_Set_tensorSols ( MMG5_pSol  met,
double *  sols 
)
Parameters
metpointer toward the sol structure.
solstable of the tensorial solutions. sols[6*(i-1)]@6 is the solution at vertex i
Returns
0 if failed, 1 otherwise.

Set tensorial values by array.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_TENSORSOLS(met,sols,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: met
REAL(KIND=8),DIMENSION(*), INTENT(IN) :: sols
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1705 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_tetrahedra()

int MMG3D_Set_tetrahedra ( MMG5_pMesh  mesh,
MMG5_int *  tetra,
MMG5_int *  refs 
)
Parameters
meshpointer toward the mesh structure.
tetravertices of the tetras of the mesh Vertices of the $i^{th}$ tetra are stored in tetra[(i-1)*4]@4.
refstable of the tetrahedra references. References of the $i^{th}$ tetra is stored in refs[i-1].
Returns
0 if failed, 1 otherwise.

Set vertices and references of the mesh tetrahedra.

Remarks
Fortran interface: (commentated in order to allow to pass %val(0) instead of the refs array)

‍! SUBROUTINE MMG3D_SET_TETRAHEDRA(mesh,tetra,refs,retval)
! MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
! INTEGER(MMG5F_INT), DIMENSION(*), INTENT(IN) :: tetra
! INTEGER(MMG5F_INT), DIMENSION(*), INTENT(IN) :: refs
! INTEGER, INTENT(OUT) :: retval
! END SUBROUTINE

Definition at line 631 of file API_functions_3d.c.

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

◆ MMG3D_Set_tetrahedron()

int MMG3D_Set_tetrahedron ( MMG5_pMesh  mesh,
MMG5_int  v0,
MMG5_int  v1,
MMG5_int  v2,
MMG5_int  v3,
MMG5_int  ref,
MMG5_int  pos 
)
Parameters
meshpointer toward the mesh structure.
v0first vertex of tetrahedron.
v1second vertex of tetrahedron.
v2third vertex of tetrahedron.
v3fourth vertex of tetrahedron.
reftetrahedron reference.
postetrahedron position in the mesh.
Returns
0 if failed, 1 otherwise.

Set tetrahedra of vertices v0, v1,v2,v3 and reference ref at position pos in mesh structure (from 1 to nb_tetra included).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_TETRAHEDRON(mesh,v0,v1,v2,v3,ref,pos,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: v0,v1,v2,v3,pos
INTEGER(MMG5F_INT), INTENT(IN):: ref
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 517 of file API_functions_3d.c.

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

◆ MMG3D_Set_triangle()

int MMG3D_Set_triangle ( MMG5_pMesh  mesh,
MMG5_int  v0,
MMG5_int  v1,
MMG5_int  v2,
MMG5_int  ref,
MMG5_int  pos 
)
Parameters
meshpointer toward the mesh structure.
v0first vertex of triangle.
v1second vertex of triangle.
v2third vertex of triangle.
reftriangle reference.
postriangle position in the mesh.
Returns
0 if failed, 1 otherwise.

Set triangle of vertices v0, v1, v2 and reference ref at position pos in mesh structure (from 1 to nb_triangle included).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_TRIANGLE(mesh,v0,v1,v2,ref,pos,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN) :: v0,v1,v2,ref,pos
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 858 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_triangles()

int MMG3D_Set_triangles ( MMG5_pMesh  mesh,
MMG5_int *  tria,
MMG5_int *  refs 
)
Parameters
meshpointer toward the mesh structure.
triapointer toward the table of the tria vertices Vertices of the $i^{th}$ tria are stored in tria[(i-1)*3]@3.
refspointer toward the table of the triangle references. refs[i-1] is the ref of the $i^{th}$ tria.
Returns
0 if failed, 1 otherwise.

Set vertices and references of the mesh triangles.

Remarks
Fortran interface: (commentated in order to allow to pass %val(0) instead of the refs array)

‍! SUBROUTINE MMG3D_SET_TRIANGLES(mesh,tria,refs,retval)
! MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
! INTEGER(MMG5F_INT),DIMENSION(*), INTENT(IN) :: tria
! INTEGER(MMG5F_INT),DIMENSION(*), INTENT(IN) :: refs
! INTEGER, INTENT(OUT) :: retval
! END SUBROUTINE

Definition at line 934 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_vectorSol()

int MMG3D_Set_vectorSol ( MMG5_pSol  met,
double  vx,
double  vy,
double  vz,
MMG5_int  pos 
)
Parameters
metpointer toward the sol structure.
vxx value of the vectorial solution.
vyy value of the vectorial solution.
vzz value of the vectorial solution.
posposition of the solution in the mesh (begin to 1).
Returns
0 if failed, 1 otherwise.

Set vectorial value $(v_x,v_y,v_z)$ at position pos in solution structure. (pos from 1 to nb_vertices included).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_VECTORSOL(met,vx,vy,vz,pos,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: met
REAL(KIND=8), INTENT(IN) :: vx,vy,vz
INTEGER(MMG5F_INT), INTENT(IN):: pos
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1520 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_vectorSols()

int MMG3D_Set_vectorSols ( MMG5_pSol  met,
double *  sols 
)
Parameters
metpointer toward the sol structure.
solstable of the vectorial solutions sols[3*(i-1)]@3 is the solution at vertex i
Returns
0 if failed, 1 otherwise.

Set vectorial solutions at mesh vertices

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_VECTORSOLS(met,sols,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: met
REAL(KIND=8),DIMENSION(*), INTENT(IN) :: sols
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1589 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_vertex()

int MMG3D_Set_vertex ( MMG5_pMesh  mesh,
double  c0,
double  c1,
double  c2,
MMG5_int  ref,
MMG5_int  pos 
)
Parameters
meshpointer toward the mesh structure.
c0coordinate of the point along the first dimension.
c1coordinate of the point along the second dimension.
c2coordinate of the point along the third dimension.
refpoint reference.
posposition of the point in the mesh.
Returns
1.

Set vertex of coordinates c0, c1,c2 and reference ref at position pos in mesh structure (from 1 to nb_vertices included).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_SET_VERTEX(mesh,c0,c1,c2,ref,pos,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
REAL(KIND=8), INTENT(IN) :: c0,c1,c2
INTEGER(MMG5F_INT), INTENT(IN):: ref,pos
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 358 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Set_vertices()

int MMG3D_Set_vertices ( MMG5_pMesh  mesh,
double *  vertices,
MMG5_int *  refs 
)
Parameters
meshpointer toward the mesh structure.
verticestable of the points coor. The coordinates of the $i^{th}$ point are stored in vertices[(i-1)*3]@3.
refstable of points references. The ref of the $i^th$ point is stored in refs[i-1].
Returns
1.

Set vertices coordinates and references in mesh structure

Remarks
Fortran interface: (commentated in order to allow to pass %val(0) instead of the refs array)

‍! SUBROUTINE MMG3D_SET_VERTICES(mesh,vertices,refs,retval)
! MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
! REAL(KIND=8), INTENT(IN) :: vertices(*)
! INTEGER(MMG5F_INT),INTENT(IN) :: refs(*)
! INTEGER, INTENT(OUT) :: retval
! END SUBROUTINE

Definition at line 454 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_setMeshSize_initData()

int MMG3D_setMeshSize_initData ( MMG5_pMesh  mesh,
MMG5_int  np,
MMG5_int  ne,
MMG5_int  nprism,
MMG5_int  nt,
MMG5_int  nquad,
MMG5_int  na 
)
Parameters
meshpointer toward the mesh structure.
npnumber of vertices.
nenumber of tetrahedra.
nprismnumber of prisms.
ntnumber of triangles.
nquadnumber of quads.
nanumber of edges.
Returns
0 if failed, 1 otherwise.

Check the input mesh size and assign their values to the mesh.

Definition at line 216 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_skipIso()

static int MMG3D_skipIso ( MMG5_pMesh  mesh)
inlinestatic

Definition at line 1925 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Unset_corner()

int MMG3D_Unset_corner ( MMG5_pMesh  mesh,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
kvertex index.
Returns
1.

Remove corner attribute at point pos (from 1 to nb_vertices included).

Remarks
Fortran interface

‍ SUBROUTINE MMG3D_UNSET_CORNER(mesh,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1225 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Unset_parallelTriangle()

int MMG3D_Unset_parallelTriangle ( MMG5_pMesh  mesh,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
ktriangle index.
Returns
1.

Remove parallel attribute from triangle k (ie tria aren't preserved anymore). (k from 1 to nb_tria included).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_UNSET_PARALLELTRIANGLE(mesh,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1322 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Unset_parallelTriangles()

int MMG3D_Unset_parallelTriangles ( MMG5_pMesh  mesh,
MMG5_int *  parIdx,
MMG5_int  npar 
)
Parameters
meshpointer toward the mesh structure.
parIdxtable of the indices of the parallel trias.
nparnumber of triangles between processors.
Returns
1.

Remove parallel attributes from triangles (ie tria aren't preserved anymore).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_UNSET_PARALLELTRIANGLES(mesh,parIdx,npar,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), DIMENSION(*),INTENT(IN) :: parIdx
INTEGER(MMG5F_INT), INTENT(IN) :: npar
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1341 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Unset_requiredEdge()

int MMG3D_Unset_requiredEdge ( MMG5_pMesh  mesh,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
kedge index.
Returns
1.

Remove required attribute from edge k.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_UNSET_REQUIREDEDGE(mesh,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1370 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Unset_requiredTetrahedra()

int MMG3D_Unset_requiredTetrahedra ( MMG5_pMesh  mesh,
MMG5_int *  reqIdx,
MMG5_int  nreq 
)
Parameters
meshpointer toward the mesh structure.
reqIdxtable of the indices of the required elements.
nreqnumber of required elements
Returns
1.

Remove required attribute from a list of Tetra whose indices are contained in array reqIdx.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_UNSET_REQUIREDTETRAHEDRA(mesh,reqIdx,nreq,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), DIMENSION(*),INTENT(IN) :: reqIdx
INTEGER(MMG5F_INT), INTENT(IN) :: nreq
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1266 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Unset_requiredTetrahedron()

int MMG3D_Unset_requiredTetrahedron ( MMG5_pMesh  mesh,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
kelement index.
Returns
1.

Remove required attribute from element k (k from 1 to nb_tetra included).

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_UNSET_REQUIREDTETRAHEDRON(mesh,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1250 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Unset_requiredTriangle()

int MMG3D_Unset_requiredTriangle ( MMG5_pMesh  mesh,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
ktriangle index.
Returns
1.

Remove required attribute from triangle k.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_UNSET_REQUIREDTRIANGLE(mesh,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1284 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Unset_requiredTriangles()

int MMG3D_Unset_requiredTriangles ( MMG5_pMesh  mesh,
MMG5_int *  reqIdx,
MMG5_int  nreq 
)
Parameters
meshpointer toward the mesh structure.
reqIdxtable of the indices of the required trias.
nreqnumber of required trias
Returns
1.

Remove required attribute from triangles

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_UNSET_REQUIREDTRIANGLES(mesh,reqIdx,nreq,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), DIMENSION(*),INTENT(IN) :: reqIdx
INTEGER(MMG5F_INT), INTENT(IN) :: nreq
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1303 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Unset_requiredVertex()

int MMG3D_Unset_requiredVertex ( MMG5_pMesh  mesh,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
kvertex index.
Returns
1.

Remove required attribute from point k.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_UNSET_REQUIREDVERTEX(mesh,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1238 of file API_functions_3d.c.

Here is the caller graph for this function:

◆ MMG3D_Unset_ridge()

int MMG3D_Unset_ridge ( MMG5_pMesh  mesh,
MMG5_int  k 
)
Parameters
meshpointer toward the mesh structure.
kedge index.
Returns
1.

Remove ridge attribute at edge k.

Remarks
Fortran interface:

‍ SUBROUTINE MMG3D_UNSET_RIDGE(mesh,k,retval)
MMG5_DATA_PTR_T,INTENT(INOUT) :: mesh
INTEGER(MMG5F_INT), INTENT(IN):: k
INTEGER, INTENT(OUT) :: retval
END SUBROUTINE

Definition at line 1358 of file API_functions_3d.c.

Here is the caller graph for this function: