Welcome to the


that is, periodic solutions of that problem with equal masses, such that the three bodies move along the same path on the plane (in a fixed reference frame). These solutions generalize the, by now, well known figure 8 solution, whose proof of existence has been established by A. Chenciner and R. Montgomery in the paper "A remarkable periodic solution of the three body problem in the case of equal masses", Annals of Mathematics, 152 (2000), 881--901.

You can find a preprint about the three-body problem called Dynamical properties of the figure eight solution of the three-body problem at /dsg/2001 .

The normalizations used are:

With these normalizations I restrict the present set of choreographies to the ones with period less than 30 units and minimum distance between the bodies along the path greater than 0.001.

Up to now I have found 345 choreographies. It seems clear that, taking out the restriction on the period, there are several countable families of such solutions.

To visualize these 345 solutions you need to download the choreo3.tar.gz file and unpack it by typing

tar -xvzf choreo3.tar.gz

This instruction will extract the contents of the archive to a directory named choreo3. Use gnuplot with the data downloaded in this directory. Remark : Please, make sure you have a recent version of gnuplot before complaining it gives some errors. (It surely works with version 3.7)

The directory contains:

two data files

dat.orb and dat.cir,

three files containing instructions for gnuplot

datagnu, choreo3.gnu and loop.gnu

and this README file.

All these files should be in the same working directory.

Please, follow the instructions below to see choreographies:

  1. start typing


    when it prompts you as



    call "datagnu" "a" "b" "c"

    (the symbols " should appear like that)


    a is the number of the first choreography you want to see

    b is the number of the last choreography you want to see

    c is the delay in seconds between two successive plots

    The values of a and b should be between 1 and 345. If a > b the choreographies are shown in reverse order.

    The value of c can be any non-negative integer.


    To see all of them from 1 to 345 with step 1 second, type

    call "datagnu" "1" "345" "1"

    To see just number 33, you can type

    call "datagnu" "33" "33" "0"

    To see from 100 to 90 in reverse order, waiting 4 seconds after every plot, type

    call "datagnu" "100" "90" "4"

  2. After that, just type

    load "choreo3.gnu"

On the screen where you started gnuplot, will appear the numbers of the choreographies displayed.

The scale tries to fit to the values of the coordinates.

The red points correspond to the initial position (and also after 1/3, 2/3 of the period). The blue points correspond to 1/6 of the period (and also to 3/6, 5/6).

The arc travelled by body number 1 in 1/3 of the period appears in blue, the one of body number 2 in red, and the one of body number 3 in green.


  1. It is strongly suggested to magnify the area of the plot done by gnuplot if it appears to be too small in your computer.

  2. Note that in some old versions of gnuplot an error message can appear at the end of the execution of a series of plots. This should produce no problem.

That's all.


Carles Simó