[Apologies for multiple postings]

Robust Geometric Computations for Neutron Tracking

GRAND Seminar <>
Oct 19, 11am, Room 4201

Jack Snoeyink <>
Department of Computer Science
UNC Chapel Hill
(on leave at the National Science Foundation, CISE CCF Algorithmic


As computer scientists, it is important for us to recognize when our
favorite abstractions break and to consider alternatives. In this talk we
will look at a particular geometric example exposing that computers
actually don't do real number arithmetic, but typically do use fast IEEE
754 floating-point hardware to do arithmetic. The problem is suggested by
David Greisheimer of Bettis labs: track neutrons in a CAD model of a
nuclear reactor. As I'll describe, his reactor is defined by a hierarchical
Constructive Solid Geometry representation, which forms unions and
intersections of geometric primitives bounded by quadratic surfaces. A
neutron is a point, so the task is to follow a point as it crosses each
surface in order. This is easier said than done; analysis of the degrees of
the geometric operations used reveals why. A point representing a neutron
can actually get stuck in a reactor -- something that makes a nuclear
physicist very nervous, since it breaks basic physical laws of
conservation. Degree-driven analysis suggests changing the problem to
tracking line segments where we apply geometric rounding to the segment
endpoints. By doing so, we can continue to use fast floating-point, but can
give guarantees on both geometric and topological properties (e.g., every
neutron going into a bounded region must come out). This is work with David
Millman and Michael Deakin.