TetGen

As indicated in previous sections, the Meshing panel adjusts automatically its property list depending on the Generator Algorithm selected. For the case of TetGen, the Meshing panel contains a combination of purely FEFLOW-related switches and native generator switches. The standard switches of TetGen generator can be recognized by its indication on parenthesis next to the option name. In the table below, a short summary of all these options is presented. For further details about TetGen switches, additional information is in the full manual for TetGen, which is available on the TetGen Website.

Generator Properties

The following properties can be set for the tetrahedral mesh generation. It is highly recommended to iteratively try different options, checking the results for mesh quality after each iteration. Flags in the property name refer to the corresponding command-line switch of the stand-alone TetGen mesh generator. The order of the description in the table follows the same order in the Meshing panel.

General Options

Property Description
Mesh the points cloud only Use all the vertices of the input data set only as a basis for meshing rather than polygons, lines and points. This option is much less demanding in input data quality, but will not completely retain input geometry. In case a 3D supermesh is used as a hull for meshing, the meshed domain may differ from the hull. Polygon and line add-ins may not be coincide with element faces and edges of the generated mesh.
Dihedral angle tolerance for facets comparison Neighboring facets in the input data with an angle higher than this value will be treated as intersecting.
Dihedral angle tolerance for facets overlap test Neighboring facets in the input data with an angle lower than this value will be shown as overlapping.
Tolerance for small feature size detection (-T) User-defined tolerance used by TetGen for multiple purposes, e.g., to check input facets for co-planarity. This is required to deal with the fact that floating-point variables do to provide exact numbers.

Quality Mesh Generation

By activating the Quality mesh generation (-q) option, TetGen generator is executed with the /q flag to create a quality tetrahedral mesh. A list of different constraints can be used to control the quality of the resulting mesh. They are classified basically in quality-related constraints and geometry-related constraints:

Quality-Related Constraints

Property Description

Delauney constrained (-D)

With this switch applied, TetGen will enforce Delauney tetrahedralization.

Radius-edge ratio

This value describes a maximum ratio of the radius of the circumference divided by the length of the shortest edge. Tets with values of below 2.5 are sometimes referred to as 'well-shaped'. So-called 'slivers', nearly degenerate, very flat tetrahedral can have small radius-edge ratios, though. A low limit for this parameter is thus not sufficient to obtain good mesh quality.

Minimum dihedral angle

Applies a minimum constraint on the dihedral angle of the generated tetrahedral elements. Minimum is 20°.

Maximum dihedral angle

Applies a maximum constraint on the dihedral angle of the generated tetrahedral elements. Maximum is 150°.

Approximate number of elements (-a)

Uses an approximate total number of elements to calculate a maximum constraint on the volume of each tetrahedral element.

Geometry-related Constraints

Property Description

Global tetrahedron volume constraint (-a)

Applies a global constraint on the maximum volume of each tetrahedral element.

Hull-facets area constraint [percent of area]

Applies a maximum constraint on the area of the element faces generated for the hull.

Add-in-facets area constraint [percent of area]

Applies a maximum constraint on the area of the element faces generated for polygon add-ins.

Addin-segments length constraint [percent of length]

Applies a maximum constraint on the length of the element edges generated at line add-ins.

Addin-points volume constraint

Applies a maximum constraint on the volume of the elements generated at point add-ins.

Geometry Preservation

The Meshing panel provides the possibility preserve certain geometrical information during the meshing process.

 

Property Description

Preserve external boundary (-Y)

With this switch enables, the original boundary geometry is not modified (refined) during the meshing process.

Preserve layered-mesh entities

Keep the element faces on original layers as faces of newly-generated tetrahedral meshes (only for re-meshing of a layered domain)

Inheritance of Model Data

The option is available by activating the Interpolate data (from old to new mesh) option. The switch is relevant in cases the input geometry (elemental selection) for the remeshing already contains some information about material properties. FEFLOW 7.5 can carry out different types of Elemental interpolation as described below. These options will help to transfer the material information to the newly generated elements from previously existing ones.

 

Property Description

Center in element

Interpolation of material properties is based on the coincidence of the element centroid (old mesh) to the newly-generated mesh (neighbourhood relationship).

Element intersection

The interpolation is carried out by verifying which parts of the newly-generated elements intersect the old mesh.

Volume-weighted intersection

The interpolation is carried out by verifying which parts of the newly-generated elements intersect the old mesh. In addition the interpolated values are volume-weighted.

No intersection

Interpolation is carried out neglecting the element intersection.

Centroidal Voronoi Tessellation (CVT)

Set of options are activating by proving a value different than zero in the field Generate nodes by Centroidal Voronoi Tesselation (CVT). This number provides additional add-in points for the mesh generation by using the CVT method. The set of additional points can help to obtain a more regular distribution of tetrahedral elements within the meshed domain.

 

Property Description

Number of iterations

Iteration number for CVT

Energy reduction order stopping criterion

Criterion for stopping the iteration

Number of smoothing steps

Number of smoothing steps of the Lloyd smoothing at the end of the process.

Number of Monte-Carlo samplings

Number of neighboring points used as sample points.

Exclusion distance around addin features

Distance around add-ins where no additional points are to be generated. Is used to avoid points that are too close to add-ins, causing meshing difficulties or at least an unnecessarily fine mesh.

Evaluation of Input / Output Data

Depending on the input data provided for the remeshing, TetGen can either succeed or fail. The result will strongly depend on the input selection sets (elements, nodes, edges and faces) and the map items. A typical problem is the self-intersection between some input geometries, which will end up with a termination of the mesh generation process. FEFLOW 7.5 provides some options to check the input data and the resulting mesh.

 

Property Description

Check input (-d)

Checks the input geometries for intersections.

Write input PLC to file

Write the input data for TetGen to a file in the import+export directory of the current problem path rather than meshing inside FEFLOW.

Verify TetGen generated mesh

Verification routine to evaluate geometrical inconsistences in the returned mesh from TetGen.

Display mesh quality statistics

Turns on the display of some mesh quality statistics. Using this option, some charts will be opened automatically after the meshing is done.

Extended Add-in Processing

These options provide an extended add-in processing, which is very useful to reduce the number of FEFLOW nodes in the resulting mesh by improper input geometry, map item (s).

 

Property Description

Point add-in snapping distance

Define the snapping distance between the point add-in (from Map Items section) and the existing FEFLOW nodes (available in the input selection set (s). If the point add-in is within the defined threshold, this will be snapped to the closest FEFLOW nodes. This operation reduces the generation of additional nodes in the newly-generated mesh.

Point add-in face proximity tolerance

Proximity of points is analysed by projecting then onto the polygonal facets, confronting the projection distance with the facets extent, and deciding to include the point or not according to the user-defined tolerance.

Other controls

Additional controls are listed below.

 

Property Description

Clean coordinates

TetGen can face negative rounding effects especially near boundaries when dealing with very small point to face or point to edge distances. The "Clean coordinates" option is used to improve the mesher behavior under such contexts, by cleaning the double precision excess digits as to facilitate points comparison and tiny features exclusion mechanisms.

Table of Contents

Index

Glossary

-Search-

Back