The goal of the Meshing Contest held at the 24th IMR this year was to generate a grid for one of the two provided geometries using any technique so long as the final mesh and file did not exceed 20 million cells and 1GB, respectively. Prompted by our passion for good grid generation challenges, we decided to mesh not just one, but both geometries. The IMR steering committee judged the entries based on the novelty of the approach, the complexity of the spatial discretization, the quality of the grids, the usability of the proposed solution, and finally the aesthetics of the poster displaying our work.
This year, the IMR steering committee provided two geometries: a CAD model of a Fender® Jazzmaster electric guitar and a 3-D scan of the human abdomen. This article describes the process by which the winning grids were generated using Pointwise.
Fender® Jazzmaster Electric Guitar
One of the geometries provided by the IMR steering committee represented a Fender® Jazzmaster electric guitar, and it was provided in three different CAD formats: ACIS, Parasolid, and STEP. Although Pointwise is capable of importing each of these CAD formats, we ultimately used the STEP file. You can download the CAD files from the meshing contest website.
Preparing the Geometry for Meshing
Upon importing the database surfaces, we noticed two things that needed to be addressed before generating the surface grids:
- Missing surfaces
There were several missing surfaces on the body of the guitar that needed to be reconstructed within Pointwise. Using the Database Boundaries selection mask, a set of database boundaries was selected. The Coons Patch tool made quick work of generating the missing surfaces.
The newly created surfaces were assembled into quilts and models, and then they were subsequently added to the guitar model definition using the Assemble Models command. This tool is used to generate watertight models to ensure that no gaps, overlaps, or duplicate surfaces impede the ability of Pointwise to automatically generate a watertight triangular surface mesh.
- Guitar internals
The imported geometry presented an internal structure defining a series of voids intended to house the guitar’s electronic components. Since these components were not included in the provided CAD data--and were not going to be modeled--we decided to eliminate the internal structure and mesh the guitar as a solid body.
Another tool in our solid modeling feature suite called quilting was used to simplify the complex surface topology of the CAD model. While a model is a watertight representation of the geometry, quilts simplify the sometimes overly complex topology of the underlying geometry – they define logical meshing regions. Boundaries of quilts act as hard edges in the mesh and were used to define the hard edges of the geometry. With these geometry modifications, the model was complete and ready for the surface mesh.
Generating the Unstructured Surface Mesh
With quilts defining the individual watertight meshing regions within a given model, surface meshing is as simple as specifying an average grid point spacing and clicking Domains on Database Entities in the toolbar. However, you can get more sophisticated and specify a maximum turning angle for adjacent surface elements, a maximum deviation from the underlying geometry, and a number of other parameters controlling the clustering of points within a domain. These parameters can be specified before creating a surface mesh from the Defaults panel or afterward from the Solve panel.
Typically, a uniform unstructured surface mesh for the model is generated using a grid point spacing that resolves some of its largest features. Next, the surface mesh is refined by adjusting connector distributions or unstructured domain attributes. This is exactly how the surface mesh for the guitar was generated. Because we cleaned up the geometry and defined an appropriate quilt topology beforehand, surface meshing was completed in just a couple of mouse clicks.
An advancing front algorithm was chosen to generate the triangular surface mesh for the guitar geometry. A benefit of the advancing front technique is its ability to capture curvature in a more regular fashion.
Figure 1: The final surface grid shows the complexity and level of detail for the provided geometry for the Fender® Jazzmaster electric guitar.
Generating the Unstructured Volume Mesh
Since the primary structural component of an electric guitar is its neck, we elected to mesh the solid geometry for a structural analysis. An unstructured volume mesh, consisting of isotropic tetrahedra, was constructed from the resulting surface mesh and initialized using a modified Delaunay algorithm. The final mesh consists of 4.8 million isotropic tetrahedra.
Figure 2: The final volume grid of the Fender® Jazzmaster guitar has slightly over 4.8 million isotropic tetrahedra.
Exporting the Grid
Once the volume grid was initialized, it was prepared for export. This involved selecting a solver and then specifying the boundary conditions for the solver from the CAE menu. The IMR steering committee provided several options for export including the one we used: OpenFOAM.
The second geometry provided by the IMR steering committee was called SPL Abdominal Atlas. It was provided by the Surgical Planning Laboratory at Brigham and Women’s Hospital, Harvard Medical School. The atlas was derived from a computational tomography (CT) scan using a semi-automated image segmentation and three dimensional reconstruction technique. The CT scan was then converted into a triangulated stereolithography (STL) CAD formatted file prior to being imported into Pointwise. The original files in Nnrd and MRML formats can be downloaded from the
Surgical Planning Laboratory website.
Automation of the Grid Generation Process via Glyph Scripting
The focus of this meshing study was automation for a finite element analysis. A Glyph script was written to automatically do the following:
- Import the STL formatted geometry data into Pointwise
- Assign each imported database surface to a separate layer corresponding to the different parts of the body
- Assign a descriptive name to each layer
- Assign a unique color to all of the database entities contained in each layer (each layer contains a different body part)
- Calculate an average grid spacing for each database surface
- Generate an unstructured surface mesh on each database surface
- Generate a volume grid for the chosen subset of the SPL Abdominal Atlas
- Save a Pointwise project file
Step 1: Import and organize data in layers
The geometry provided by the IMR steering committee consisted of 94 STL files containing 218 individual database surfaces. The imported surfaces were organized into different layers according to the body part they represented (Figure 3).
Figure 3: The Layer Manager allowed the geometry to be organized into different layers
Step 2: Color-code imported data according to different body parts
Once the geometric data was imported into Pointwise and organized into separate layers, then the database surfaces corresponding to each layer were each given a unique color. This step is crucial to visually distinguish the different body parts.
Step 3: Generate unstructured surface mesh
As mentioned before, the SPL Abdominal Atlas data was converted to a triangulated STL format prior to being imported into Pointwise. The original tessellation of each database surface was used to calculate an average spacing between grid points during surface mesh generation. Different views of the final surface grid are shown in Figures 4 and 5.
Figure 4: The final surface grid for some of the internal organs and bones shows the complexity of the different body pats.
Figure 5: The internal organs and bones are bounded by muscle tissue that was also meshed.
Step 4: Generate volume grid
Although we generated a surface grid for every imported database surface, we elected to generate volume grids for a subset of the SPL Abdominal Atlas: two thoracic vertebrae and a single intervertebral disc. This decision was motivated by our desire to generate a volume grid suitable for basic intervertebral disc loading simulations. The final volume grid is shown in Figure 6.
Figure 6: The final volume grid for the two thoracic vertebrae and the single intervertebral disc has slightly over 1 million isotropic tetrahedra.
Step 5: Save Pointwise Project File
Lastly, the script automatically generates a new Pointwise project file containing the organized database surfaces as well as surface and volume grids.
Bringing both geometries together into a beautiful poster
The IMR steering committee judged the entries based on their novelty, their complexity of spatial discretization, their grid quality, their proposed solution usability, and finally their poster’s design aesthetic.
Once the final grids were complete, we struggled to figure out how to combine both of them into one aesthetically pleasing poster. The inspiration came to us from the fact that the 24th IMR overlapped by one day with the Austin City Limits music festival. Figure 7 shows the final result.
Figure 7: Pointwise 24th IMR poster submission showing the final grids inspired by the Austin City Limits music festival.
Figure 8: Travis Carrigan, Claudio Pita and Carolyn Woeber with the winning poster. Claudio is holding the 24th International Meshing Roundtable Meshing Contest award trophy.