Author:
Millman David L.,Griesheimer David P.,Nease Brian R.,Snoeyink Jack
Abstract
For large, highly detailed models, Monte Carlo simulations may spend a large fraction of their run-time performing simple point location and distance to surface calculations for every geometric component in a model. In such cases, the use of bounding boxes (axis-aligned boxes that bound each geometric component) can improve particle tracking efficiency and decrease overall simulation run time significantly. In this paper we present a robust and efficient algorithm for generating the numerically-optimal bounding box (optimal to within a user-specified tolerance) for an arbitrary Constructive Solid Geometry (CSG) object defined by quadratic surfaces. The new algorithm uses an iterative refinement to tighten an initial, conservatively large, bounding box into the numerically-optimal bounding box. At each stage of refinement, the algorithm subdivides the candidate bounding box into smaller boxes, which are classified as inside, outside, or intersecting the boundary of the component. In cases where the algorithm cannot unambiguously classify a box, the box is refined further. This process continues until the refinement near the component’s extremal points reach the user-selected tolerance level. This refinement/classification approach is more efficient and practical than methods that rely on computing actual boundary representations or sampling to determine the extent of an arbitrary CSG component. A complete description of the bounding box algorithm is presented, along with a proof that the algorithm is guaranteed to converge to within specified tolerance of the true optimal bounding box. The paper also provides a discussion of practical implementation details for the algorithm as well as numerical results highlighting performance and accuracy for several representative CSG components.
Reference18 articles.
1. Gottschalk S., Lin M. C., and Manocha D., “OBBTree: A Hierarchical Structure for Rapid Interference Detection,” Proc. SIGGRAPH ’96: Proceedings of the 23rd Annual Conference on Computer Graphics and Interactive Techniques, 1996.
2. Griesheimer D. P. et al., “MC21 v.6.0 – A Continuous-Energy Monte Carlo Particle Transport Code with Integrated Reactor Feedback Capabilities,” Proc. Joint International Conference on Supercomputing in Nuclear Applications and Monte Carlo (SNA + MC), 2013.
3. X-5 Monte Carlo Team, “MCNP – A General Monte Carlo n-Particle Transport Code Version 5,” LA-UR-03-1987, Los Alamos National Laboratory (2003).
4. Candelore N., Gast R., and Ondis L., “RCP01 - A Monte Carlo Program for Solving Neutron and Photon Transport Problems in Three-Dimensional Geometry with Detailed Energy Description,” WAPD-TM-1267, Bettis Laboratory (1978).
5. “POV-Ray, Persistence of Vision Raytracer (Version 3.6),” www.povray.org.