Traditionally, individual algorithm developers directly incorporate the requirements of their scheme into its resulting software implementation. While this is sufficient for basic execution, it severely limits the expandability and growth potential of the algorithm. An example of such a shortcoming is a fixed method of geometry access in a surface triangulation algorithm. By adopting a single description for the defining geometry, and embedding it within the implementation, the triangulation developer will fix, for all practical purposes, the form of geometry supported by the algorithm. A change to the method of geometry access requires knowledge of, and the ability to edit, the triangulation algorithm. The level of work required for such a change depends highly on the forethought and style of the initial incorporation. The approach advocated here, however, is to define a set of standard software interfaces for key elements of the unstructured grid generation process. In this example, the interface separates the specifics of the method for geometry access from those of the triangulation algorithm. As such, the triangulation algorithm is largely independent of the form of the underlying geometry. It accesses geometry solely through the interface and does so without regard for the method of implementation supporting the interface. Therefore, a given method of geometry access can be later modified, or replaced, as dictated by arising needs without directly impacting the triangulation algorithm itself. An open framework for the development of software applications in the field of unstructured numerical grid generation is presented. The goal of the framework is to define an Application Programming Interface that allows developers of grid generation software to seamlessly integrate alternative algorithms into their respective products. The presentation centers on decoupling the grid generation task into separate, largely independent component processes. The component processes are implemented following the guidelines of a standard software interface definition and can therefore be interchanged without the need to modify algorithm specifics. The approach contained herein provides for support of both legacy and emerging technology and is demonstrated through the description of a new unstructured grid generation package under development at the NASA Langley Research Center.
[1]
David L. Marcum,et al.
Generation of unstructured grids for viscous flow applications
,
1995
.
[2]
Frédéric Hecht,et al.
New Progress in Anisotropic Grid Adaptation for Inviscid and Viscous Flows Simulations
,
1995
.
[3]
S. Pirzadeh.
Unstructured grid generation by advancing front method using structured background grids
,
1993
.
[4]
Shahyar Pirzadeh,et al.
Progress toward a user-oriented unstructured viscous grid generator
,
1996
.
[5]
Kazuhiro Nakahashi,et al.
OVERSET UNSTRUCTURED GRID METHOD FOR FLOW SIMULATION OF COMPLEX AND MULTIPLE BODY PROBLEMS
,
2000
.
[6]
Paul S. Heckbert,et al.
A Pliant Method for Anisotropic Mesh Generation
,
1996
.
[7]
Michael Andrew Park,et al.
Adjoint-Based, Three-Dimensional Error Prediction and Grid Adaptation
,
2002
.
[8]
Rainald Loehner,et al.
A package for 3-D unstructured grid generation, finite-element flow solution and flow field visualization
,
1990
.
[9]
Houman Borouchaki,et al.
Unstructured Triangular-Quadrilateral Mesh Generation. Application to Surface Meshing
,
1996
.
[10]
Lee A. Butler,et al.
Combinatorial Solid Geometry, Boundary Representations, and n-Manifold Geometry
,
1991
.