Abstract
This paper presents an event-driven approach that efficiently detects collisions among multiple ballistic spheres moving in the 3D space. Adopting a hierarchical uniform space subdivision scheme, we are able to trace the trajectories of spheres and their time-varying spatial distribution. We identify three types of events to detect the sequence of all collisions during our simulation: collision, entering, and leaving. The first type of event is due to actual collisions, and the other two types occur when spheres move from subspace to subspace in the space. Tracing all such events in the order of their occurring times, we are able to avoid fixed time step simulation. When the size of the largest sphere is bounded by a constant multiple of that of the smallest, it takes O(n~/sub c/ log n+n~/sub e/ log n) time with O(n) space after O(n log n) time preprocessing to simulate n moving spheres, where n~/sub c/ and n~/sub e/ are the number of actual collisions and that of entering and leaving events during the simulation, respectively. Since n~/sub e/, depends on the size of subspaces, we modify the collision model from kinetic theory for molecular gas to determine the subspace sizes for the space subdivision scheme, that minimize simulation time. Experimental results show that collision detection can be done in linear time in n over a large range.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have