Galleries
To start at the end, I suggest you first take a look at the
choreography galleries. They showcase the diversity of
choreographies that are known so far; they also showcase
computer-assisted proof
techniques, because each orbit shown has been proven to exist
using my system.
The galleries are contained in dropdown
boxes below the main screen. They are initially hidden;
you can click the down-arrow button on the top-right of each
box to open it. You may then click on any of the thumbnail
images to see an animation of the depicted choreography.
Clicking an orbit also loads some explanatory text, showing
the name of the orbit (if it has one), the person who found
the orbit, the number of planets, and the symmetry group
it exhibits (a mathematical property of the orbit).
The first two galleries contain choreographies from the
academic literature prior to my work, and the remainder show
choreographies found using my programs. Most of them were
found by other users using this web application.
Go ahead and look at a few! Which one is your favorite?
A few remarks about the simulation
You may notice that in the
introduction
I talk about stars, on the
gravity
page I talk about bodies, and in the
Choreographer
I talk about planets. It is all the same! The
inconsistency is just sloppiness on my part; there is
no mathematical difference intended.
In the animation, one of the planets
is colored blue while the others are colored red. The
planets are all symmetric - each does the same thing - but
I found the coloration useful for tracking what happens
when two planets have a close approach. There are also
colored trails behind each planet. The trails are just a visual
affectation; I have trouble deciding if I like them
or not, so I included a checkbox to turn them off or on.
Also, I should fess up about something; when you are looking at
an animation, you are not actually seeing a live simulation
of the motion of planets. Instead the program is just following
a precomputed curve; the dots stay on the curve, and they
repeat it perfectly each time, just because that is what I told
the computer to do. In theory it is true that if you set up
the planets perfectly, they would trace out the curve perfectly -
that is what it means to be a choreography!
However, if you try to simulate the physics, things will
typically fall apart quickly. That is because most choreographies
are unstable; an unstable choreography is like a celestial
house of cards.
Drawing your first choreography
After getting inspired by the galleries, it is high
time to find a choreography yourself. If you read the
introduction,
then you know that the circle is the simplest choreography.
So that is a good place to start!
You first need to go back to the starting screen; if you
are looking at an animation, you need to click the
"Start over" button. You should now be looking at
a box with "Draw here!" written inside; for the rest
of this tutorial, I am going to refer to that box as the
canvas. The canvas is where the magic happens.
Beside the canvas, there is a dropdown control for
the number of planets as well as a "Symmetry group" field.
The defaults are for 3 planets and the "C(3,1/1)" symmetry
group. We will talk about symmetry groups later; for
now just leave it as-is. You can also leave the number of
planets at 3 for now.
Now comes the fun part: just use your mouse
(or your finger, if you are on a touchscreen device) to
draw a circle in the canvas! A crude, sloppy sketch will
do; it does not need to be very good at all. This
example sketch, for example, worked fine.
When you have drawn something vaguely like a circle,
click the "Load" and then "Go" buttons.
Some math
will happen, and the sketch you drew should morph into a
smooth circle. (Note: if you are on a modern-ish computer with a modern-ish
browser, the morphing may well be too fast to see.)
If something goes wrong and it does not quickly turn into
a circle, then you can "Start over" and try again.
When the computer decides it is done (that is,
it has "converged"),
it declares "Possible solution!" and switches over to
showing an animation in the canvas (just like the animations
of orbits in the gallery).
You have found a choreography!
Uploading
After you find a choreography, an "Upload it" button
appears. This gives you the option of sending me what you have
found; if someone finds the world's coolest choreography,
then I want to know about it! If you upload something, then
when they have a moment my servers will get to work
analyzing your choreography in more detail. Not
every orbit this program finds is real; there are especially
problems when two planets get really close, because collisions
confuse things. If it does appear to be real, though, then the
computer will try to
prove
existence. And if that works, then your choreography
could make it into the gallery!
For fun you can (optionally) tell me your name and
(optionally) give your orbit a name before you upload.
If what you found is real and seems to be new, then I will
typically use the name you give it the gallery! I have a
special place in my heart for well-named orbits, so if you
do find something great, go ahead and give it a great name.
If you are following this tutorial in order,
then you are currently looking at a circle and thinking about uploading
it. You can hold off on uploading for the moment, though; I promise you
I have seen a circle before!
The figure-eight
After rediscovering the circle, you might try to rediscover
the figure-eight. This is easy; just click "Start over"
and sketch a figure-eight in the canvas! Again, it does not have to be
very good at all. This example was good enough. Draw
something vaguely like this and, again, click the "Load"
and "Go" buttons. Voilà!
Call for orbits
Now that you have the basic procedure down, you can go
to town! Choreographies with 3 planets have been pretty
well explored, so it might be more fun to change the number
of planets. Another piece of advice: do not be too conservative
with your drawings. This little scribble, for example,
found a pretty nifty 6-planet choreography.
If you are having trouble getting your orbits to converge,
you might peek ahead at the tips below.
Symmetry groups
Some choreographies have symmetries: for example,
the figure-eight is the same as its mirror image if you
flip it over either its longest or shortest axis.
When we found the figure-eight orbit above, that symmetry
just arose on its own; we did not tell the computer that
we wanted a symmetric choreography. Explicitly asking for
symmetry, though, is a very powerful technique for finding
super cool choreographies. That is what the "Symmetry
group" option lets you do.
If you go to the starting (drawing) screen,
then beside the canvas, and below the number-of-planets
dropdown, there is a "Symmetry group" field. It should
currently say "C(N,1/1)", where N is the number of
planets you have. This secretly means "no extra symmetry"
and so it is the most general option; we do not force any
symmetry to happen, but it can occur on its own if it
wants to.
If you click the symmetry group label (it is in bold),
then you will get a selection popup. You first choose
the type of symmetry you want - you can always choose
rotational or reflectional symmetry, and if the number of
planets is odd then there are also three exceptional options
(mathematical oddities). For rotational or
reflectional symmetry, there are two parameters to choose.
Roughly speaking, the first controls "how much" symmetry,
and the second controls, for example, the difference between
drawing a pentagon and a pentagram.
The selection popup also shows an example of what
a curve with the chosen symmetry group might look like.
Instead of reading about the options, I think it is probably
simpler
to just look at these pictures.
Once you choose the symmetry group you want, just click
"Done" (or click outside the popup) to go back to the program.
Go ahead and draw whatever you want in the canvas. When you click
"Load" the computer will force your drawing to have the symmetry
you chose; it might look a lot different if you did not start
with something close to symmetric. Now just "Go" and see what
happens!
In case you are wondering, the symmetry group labels follow
an article
by
James Montaldi
and
Katrina Steckles.
This fine paper analyzed all of the possible symmetry
groups that could arise for choreographies.
Tips and tricks
Here are a few semi-secret features that are useful
for professional choreographers.
- Sometimes things can get stuck while the program is converging
(the part after you click "Go" and before it declares victory).
This especially happens if there are a lot of tangles
in the curve. You can help it along using nudging.
Take a look below the "Pause" button; there is a "Tip"
ending with the word "nudge" in bold. You can click
on that word to shake the orbit up a bit. If you want
more nudging, you can just hold the button. To get out
of a bad tangle it can be useful to really lean on it.
- The orbit might grow out of the canvas
or shrink to a tiny part of the canvas while it converges.
You can double-click on the canvas to reset the view
appropriately.
- Sometimes - especially when you have imposed a big symmetry
group - the program finds something that looks pretty good,
but it refuses to declare victory. Peek at the
readout below the canvas, and in particular the |∇S| number.
The program is trying to drive this number down to zero.
If it seems to have plateaued, then you may need to increase
the FFT length. This is a parameter that determines how accurate
the numerical calculations inside the program are; a longer
FFT slows the program down but makes things more accurate.
The current length is also shown, in bold, in the readout below
the canvas. You can increase the length by clicking on it.
In some cases it may help to increase it a couple of times.