Other Computational Projects


BEHALF: a parallel Barnes-Hut algorithm for solving N-body problems using MPI and GPU computing

BEHALF is a parallel Barnes-Hut algorithm for solving N-body problems using MPI and GPU computing. Together with my colleagues, Ben Cook and Harshil Kamdar, we developed this code for the final project of the CS205 class at Harvard in the Spring 2018 semester. The N-body problem refers to the challenge of predicting the motion of N individual objects under the force of gravity. A typical example consists of evolving the motion of stars or dark matter particles in a galaxy. Barnes-Hut is a tree algorithm that can greatly speed-up the N-body computation by hierarchically subdividing space into octants, until there will be at most one particle per cell, and approximating the gravitational force between objects very far away from each other. Visit the Project Website to learn more about our code implementation, theory behind Barnes-Hut and Oct-Trees, as well as an analysis of the performance of the code for simulations of elliptical galaxies.