Here is HexMe, the first dataset composed of tetrahedral meshes with feature-entities whose main purpose is to humanly benchmark the hexahedral meshers, and related algorithms such as 3D frame field generation.
The originality of this dataset is to gather tetrahedral meshes with information about feature entities, in order to enable an objective basis for the assessment of the behavior of hexahedral methods.
Hence, we don't claim any rights for the CAD models that are used to produce the meshes (related licenses listed below).
They're available from this git
repository along with the scripts and related metadata files in order to expose to the users the full pipeline of the mesh generation.
This git
repository does not contain the tetrahedral meshes, but the files and scripts that are used to generate those meshes.
Snakemake orchestrates the whole pipeline.
The tetrahedral meshes are produced using the open source sofware Gmsh from three categories of Computer-Aided Design models:
- Simple models: basic shapes that are assumed to be easily hex-meshable
- Nasty models: academic shapes that are known to be challenging to hex-mesh
- Industrial models: real life shapes whose hexahedrization is highly valuable for the Finite Element community
CAD models are gathered in the folder original/
.
Filenames are structured as follow, (s|n|i)(\d{2})o_{extra}.(geo|stp|step|brep)
where:
(s|n|i)
stands for the category.(\d{2})
are the two digits corresponding to the arbirtrary and unique number of the model within its categoryo
stands for original{extra}
corresponds to an arbitrary description (if any) of the file
CAD models come from:
- ABC dataset (originally from Onshape)
- Gmsh (produced by us)
- GrabCAD
- MAMBO
- Siemens NX (produced by us)
Relevant information about the CAD models is available within the corresponding metadata files meta/(s|n|i)(\d{2})o_{extra}.yaml
.
For each CAD model, three kinds of meshes are provided:
- a curvature-adapted mesh: only the maximal mesh size is bounded
- a uniform mesh: the mesh size is constant
- a box-embedded mesh: the CAD model is embedded into a box which is as twice larger than the bounding box and this box model is meshed accordingly
The mesh parameters used by Gmsh are defined in the metadata files meta/(s|n|i)(\d{2})(c|u|b)_{extra}.yaml
, which means that for each model there are three more metadata files, one per mesh type (c|u|b)
.
Filenames correspond to the CAD ones, i.e. (s|n|i)(\d{2})(c|u|b)_{extra}.vtk
:
(s|n|i)
is the category of the CAD model(\d{2})
are the two digits corresponding to the arbirtrary and unique number of the model within its category(c|u|b)
is the kind of mesh{extra}
corresponds to an arbitrary description (if any) of the CAD file
A webpage hosts a catalog of those meshes, where it is possible to download a specific mesh (and associated files).
Otherwise, all meshes (and the corresponding log files) are downloadable in a single .zip
file (~1.5GB).
Meshes are exported by Gmsh using the extension .vtk
.
The export performed by Gmsh follows vtk DataFile Version 2.0
, in ASCII mode.
Gmsh's git-version is written within the file header.
The tetrahedral mesh with its feature-entities is written as an UNSTRUCTURED_GRID
.
The unstructured grid is defined by four sections:
POINTS
: coordinates of every nodeCELLS
: number of nodes and nodal definition of every element (vertices, edges, triangles and tetrahedra)CELL_TYPES
: integer corresponding to the type of the cell (1: vertex, 3: edge, 5: triangle, 10: tetrahedron)CELL_DATA
: integer corresponding to the cell color which is related to the CAD feature-entity (cell color and CAD color should be the same)
HexMe dataset is distributed under the MIT License
.
The licenses related to the CAD models are given in the corresponding metadata files meta/*.yaml
:
Apache 2.0
GrabCAD Terms
: related FAQMIT License
Onshape Terms
1(g)(i)Public Domain
Gmsh's use is regulated by GNU General Public License, version 2 or later
.
Snakemake's use is regulated by MIT License
.
Pierre-Alexandre Beaufort, Computer Graphics Group, University of Bern
pierre-alexandre (dot) beaufort (at) inf (dot) unibe (dot) ch
ERC AlgoHex, grant agreement No 853343