

BiographyPaul Manstetten was born in 1984 in Berlin, Germany. He studied Mechatronics at the University of Applied Sciences Regensburg (Dipl.Ing.) and Computational Engineering at the University of ErlangenNuremberg (MSc). After three years as an application engineer for optical simulations at OSRAM Opto Semiconductors in Regensburg he joined the Institute for Microelectronics in 2015 as a project assistant. He finished his PhD studies (Dr.techn.) in 2018 and works as a postdoctoral researcher on high performance methods for semiconductor process simulation. 
Ray Tracing in NonImaging Applications
Today, ray tracing is most commonly associated with computer graphics applications where the objective is to render an image from a virtual scene. Such a scene is typically a collection of objects represented mathematically. The image is generated by tracing rays originating from a viewport into the scene. The intersection of these original rays with the objects in the scene commonly generate subsequent rays to approximate the rendering equation, generating an equilibrium of the radiance in the scene. The radiance towards the viewport finally defines the values of the pixels in the rendered image.
Nonimaging applications that use ray tracing as a computational method can potentially profit from the algorithmic advances and optimized computational performance of raytracing engines developed for rendering applications in computer graphics. Ray tracing can for example be applied in the simulation of radiative heat transport, nonimaging optics and particle transport. In fact, for advanced semiconductor process simulations, the computational performance of a featurescale etching or deposition process is largely determined by the raytracing performance.
The achievable raytracing performance is influenced by the underlying surface representation in an application and the pattern of rays requested by an application to be intersected with the surface. Fig. 1 illustrates different surface representations (i) using a signeddistance field, where the surface is implicitly represented by scalar values on a regular grid encoding the distance to the surface and using the sign to define inside and outside, (ii) using a set of overlapping spheres where the centers are located on the surface, (iii) using a set of overlapping oriented discs and (iv) using a closed triangle mesh representing the surface explicitly. Additionally, Fig. 1 schematically illustrates a coherent ray pattern originating from a single source and an incoherent pattern of rays originating from multiple source locations inside the domain.
Independent of the surface representation, an acceleration structure is required for a high throughput of intersection tests. Fig. 2 illustrates two types of acceleration structures, namely a bounding volume hierarchy and a treelike subdivision of the domain together with examples of rays (red lines) and required intersection tests (green points). For the treelike structure, a surface representation using a signeddistance field is indicated.
In practice, optimally utilizing raytracing algorithms and libraries from computer graphics in a nonimaging application requires a rigorous assessment of the requirements when it comes to the dynamics of the surface, surface representation, surface resolution, expected ray patterns, the underlying floating point data type of the calculations and targeted hardware platforms.
Fig. 1: Different surface representations and ray patterns.
Fig. 2: Acceleration structures for ray intersection tests.