Theory of the N-Body Problem
June 9, 1996
Using the above equations, it can be proven that several properties of a star system
can not be changed during the lifetime of the system. The proofs are fairly involved, but
the results are well known. Collectively, these properties are known as the "constants of
The constants of motion are:
The total energy of the system must be conserved. So, if the kinetic energy of
the system increases, the potential energy must decrease.
Matter can be neither created nor destroyed.
The total (linear) momentum of the system must be conserved.
The total angular momentum of the system must be conserved.
The center of mass of the system, if it moves at all, must move in a straight
line and with a constant speed.
Knowing that these items must remain constant can be used to help determine if
the results from a "solution" to the N-body problem is correct and, if not, the size of the
error. It will be shown later that numerical solution can not, in general, be exactly correct,
so determining the type and amount of errors is an important part of creating a good
method for solving the N-body problem.
While these formulas are not very complicated, it can be hard to get a good feel for
how the formulas respond with out working with them a fair amount, so looking at a few
examples at this time is warranted.
As a first example, let's look at the case of just two bodies in space as shown in
FIGURE 3. Each body will have a position in space, a mass and a velocity, which are inde-
pendent of all other bodies. If there is no force applied to a body, it will continue along on
a straight line in the direction of the velocity vector. How quickly the body would move
depends on the size of the velocity vector. In this example, Body 1 is moving up and to the
left, Body 2 is moving down and to the left. Body 2 is also moving quicker than Body 1.
A body with a certain mass
Velocity of the body
FIGURE 2. The components of a two body system
This document is best viewed as n-body.pdf because the translation to html was buggy.