Treecode2: The Power of Pluralism. I. Static Tests
Joshua E. Barnes
TL;DR
Treecode2 introduces tree averaging by randomly affine-transforming the root cell coordinates at each timestep to statistically restore translational and rotational invariance in oct-tree N-body force calculations. The paper provides static tests showing improved potentials, accelerations, and reduced bulk forces/torques when averaging over many tree coordinate systems, and analyzes the trade-offs in computation time and error correlations. It also discusses softening corrections and the limits of averaging, noting that while invariance improves, exact momentum conservation is not guaranteed due to intrinsic force-structure asymmetries. The results establish a foundation for applying averaging dynamically in time-stepping to achieve better energy and angular momentum conservation, with dynamical tests reserved for the follow-up work.
Abstract
I describe an `oct-tree' N-body code which randomly shifts, reorients, and resizes the root cell at each time step. Averaging over a plurality of root cell positions and orientations statistically restores translational and rotational invariance. The potentials and forces which result can be much more accurate than those obtained from a single force calculation. In this paper, the principle of averaging is tested on static configurations. The next paper will show how this technique can substantially improve global energy, momentum, and angular momentum conservation at a negligible computational cost.
