Date on Honors Thesis

Spring 4-30-2021


Physics, Mathematics



Examining Committee Member

Joshua Ridley, PhD, Advisor

Examining Committee Member

Matthew Williams, PhD, Committee Member

Examining Committee Member

Hamid Kobraei, PhD, Committee Member


We present SnOrE (Simple n-body Orbital Engine), a Python package which aims to simulate n-body orbital systems while simultaneously overcoming early educational barriers of computational astrodynamics for undergraduate physics students. SnOrE exploits rudimentary syntax and commonly-understood Python libraries to accurately simulate orbits of systems, given initial position and momentum conditions of each body in the system. As the n-body problem is as of yet unsolvable theoretically for n ≥ 3, having a numerical perspective on complicated orbits is of great importance to potentially understanding the processes of star and planet formation. Especially significant examples of this research include multiple star system orbits, star clusters, and exoplanets with particularly unique orbital conditions. We applied our algorithm to various orbital systems to verify the accuracy of our method of orbital integration. Our results show SnOrE is able to simulate orbits within an error per orbital period of < 0.1% at a timestep interval of ≈ 0.1% the period of a stable orbital body. While this is only the first iteration of our engine and therefore has inaccuracies in extreme and particularly unique conditions, it is a solid framework for development in n-body research and an intuitive stepping-stool for budding computational astrophysicists.