Abstract
Context. To understand the structures of complex astrophysical objects, 3D numerical simulations of radiative transfer processes are invaluable. For Monte Carlo radiative transfer, the most common radiative transfer method in 3D, the design of a spatial grid is important and non-trivial. Common choices include hierarchical octree and unstructured Voronoi grids, each of which has advantages and limitations. Tetrahedral grids, commonly used in ray-tracing computer graphics, can be an interesting alternative option.
Aims. We aim to investigate the possibilities, advantages, and limitations of tetrahedral grids in the context of Monte Carlo radiative transfer. In particular, we want to compare the performance of tetrahedral grids to other commonly used grid structures.
Methods. We implemented a tetrahedral grid structure, based on the open-source library TetGen, in the generic Monte Carlo radiative transfer code SKIRT. Tetrahedral grids can be imported from external applications or they can be constructed and adaptively refined within SKIRT. We implemented an efficient grid traversal method based on Plücker coordinates and Plücker products.
Results. The correct implementation of the tetrahedral grid construction and the grid traversal algorithm in SKIRT were validated using 2D radiative transfer benchmark problems. Using a simple 3D model, we compared the performance of tetrahedral, octree, and Voronoi grids. With a constant cell count, the octree grid outperforms the tetrahedral and Voronoi grids in terms of traversal speed, whereas the tetrahedral grid is poorer than the other grids in terms of grid quality. All told, we find that the performance of tetrahedral grids is relatively poor compared to octree and Voronoi grids.
Conclusions. Although the adaptively constructed tetrahedral grids might not be favourable in most media representative of astrophysical simulation models, they still form an interesting unstructured alternative to Voronoi grids for specific applications. In particular, they might prove useful for radiative transfer post-processing of hydrodynamical simulations run on tetrahedral or unstructured grids.