We present a new approach for the generation of
hexahedral finite element meshes for solid bodies in computer-aided design.
The key idea is to use a purely combinatorial method, namely a
shelling process, to decompose a topological ball with a
prescribed surface mesh into combinatorial cubes, so-called hexahedra.
The shelling corresponds to a series of graph transformations
on the surface mesh which is guided by the cycle structure
of the combinatorial dual.
Our method transforms the graph of the
surface mesh iteratively by changing the dual
cycle structure until we get the surface mesh of a single hexahedron.
Starting with a single hexahedron and
reversing the order of the graph transformations, each transformation
step can be interpreted as adding one or more hexahedra to the so
far created hex complex.
Given an arbitrary solid body, we first decompose it into simpler
subdomains equivalent to topological balls by adding virtual
2-manifolds. Second, we determine a compatible quadrilateral surface
mesh for all created subdomains. Then, in the main part
we can use the shelling of topological balls to
build up a hex complex for each subdomain independently.
Finally, the combinatorial mesh(es) are embedded into the given solids
and smoothed to improve quality.