Christoph Lenz was born in 1988 in Vienna, Austria. He studied Technical Mathematics at the Technische Universität Wien where he received his Bachelor's degree (2017) and the degree of Diplomingenieur (2019). After finishing his thesis which was written in collaboration with the IuE, he decided to join the research team of the institute, where he is currently working on his doctoral degree. His research interests include high performance algorithms and data structures and he will be working within the scope of the Christian Doppler Laboratory for High Performance TCAD.
Surface Mesh Simplification for Meshes Originating from Topography Simulation
An essential part of process technology computer-aided design (TCAD) simulations is the simulation of the evolution of a surface representing, for example, the growing oxide of a silicon oxidation process. This evolution is robustly handled via a level-set approach, requiring the surface to be implicitly represented for efficient implementation. This surface evolution is driven by the flux rate distribution, the computation of which is a dominant contribution to the simulation runtime but for which highly efficient implementations are available based on ray-tracing methods for explicit representations (e.g. triangle surface meshes). To utilize these high-performance flux calculation approaches, an optimized surface mesh is necessary, which has to be extracted from the level-set and optimized to balance resolution with the number of mesh elements.
A surface mesh is extracted from the level-set using a marching cubes algorithm. This algorithm creates a significant number of triangles. Furthermore, depending on the position of the level-set function, the marching cubes algorithm may produce bad elements, such as triangles with a very small angle (needles). Moreover, the computational cost of ray tracing (essential for flux rate calculations) increases with the number of triangles in the surface mesh. So, simplifying these surface meshes is an important way to reduce the surface rate calculation runtime.Fig. 1 shows an example of a surface mesh that has been extracted from a level-set after several simulation steps. When inspecting this surface mesh, it can clearly be seen that it has several huge flat areas with an unnecessarily fine resolution. These flat areas do not contain geometric variation, so the triangles in these areas hold redundant information about the geometry of the surface mesh.
To reduce the resolution in such geometrically constant areas, a new surface mesh simplification method has been developed. This method splits the surface mesh into two separate regions. One region contains the areas that hold information about the geometry of the surface mesh (the feature region), and the other region contains the flat areas of the surface mesh (the transition region).This is achieved using feature detection on the surface mesh that utilizes the mean curvature of each vertex in the surface mesh. This allows one to carefully simplify the feature region in a very limited manner, which lowers the deviation from the original surface mesh. On the other hand, the transition region can be simplified to a greater extent since there is no information about the geometry that needs to be preserved (i.e. flat regions).Furthermore, to sustain a high triangle quality within the entire surface mesh, the transition region is simplified to form a transition from small to big triangles. Fig. 2 shows an example of a surface mesh simplified using this method.This process allows the simplification algorithm to remove more triangles from flat areas of a surface mesh and is thereby able to create a simplified surface mesh with little to no deviation from the original surface mesh (see Fig. 3).
Fig. 1: Surface mesh extracted from a level-set using a marching cubes algorithm.
Fig. 2: Surface mesh simplified with the proposed simplification method.
Fig. 3: Hausdorff distance from each vertex of the original surface mesh to a surface mesh simplified using the new simplification method and a reference algorithm. The smaller the Hausdorff distance, the better.