Multiple-Planet System Simulation for Measuring Radial Velocity of a Star

Student: Josh McRae

Faculty Mentor: Darci Snowden


With the addition of a spectrograph to the Central Washington University Science Center II Observatory 0.6-m Telescope, the detection of extra solar planets using the radial velocity method is possible. As such, tools are needed to help students interpret and understand the data collected. A program was constructed in Python 3.7 that utilized Newton’s law of gravitation to animate an n body simulation and measure the radial velocity of one body. With the radial velocity data, a measurement of an orbiting body’s mass and orbital period can be determined. Students will use the model to simulate theoretical systems to compare with data. Using the simulation allowed for the recreation of measured data from the 51 Pegasi system and calculate data for a simplified Solar System. The next step for the program is to code an algorithm capable of reducing the data from the radial velocity to its components so that multi-planetary systems can be analyzed more efficiently.


6 thoughts on “Multiple-Planet System Simulation for Measuring Radial Velocity of a Star”

  1. Nice work on this project, Josh! I am curious whether you could use your simulation framework to investigate conditions when planetary orbits become chaotic. Would you be able to use your simulation tool to tweak some of the parameters, such as planetary masses, and see what happens to the stability of the predicted orbits?

    1. Totally. The masses and initial positions and velocities of each object can be changed before the start of the simulation, and it wouldn’t be overly complicated to construct a user interface to manipulate some of the variables while the simulation is running.

  2. Michael Braunstein

    It’s not clear to me what your model of the 51 Peg system took as parameters. Known masses? Known inclination angle? Known orbital parameters? Could you clarify that? Thanks!

Leave a Reply

Your email address will not be published. Required fields are marked *