planets - Man Page

Gravitational simulation of planetary bodies

Description

Planets is a simple interactive program for playing with simulations of planetary systems. It is great teaching tool for understanding how gravitation works on a planetary level.

The user interface is aimed at being simple enough for a fairly young kid can get some joy of it.  There's also a special kid-mode aimed at very young children which grabs the focus and converts key banging into lots of random planets.

Keybindings

Universe definition

a

Add Planet

j

Place random orbital planet

r

Place random planet

u

Undo (undoes last planet insertion)

e

Reset to empty universe

g

Go Back (goes back to just after last planet insertion)

Mouse

Click on a planet to delete it

Physics

b

Toggle bounce (experimental)

Display control

Cursor keys

Panning

c, Space

Move display to center of mass

x

Initiate center of mass tracking

=

Zoom in

-

Zoom out

p

Toggle Pause

o

Change all colors randomly

t

Toggle Trace

d

Double Trace Length

h

Halve Trace Length

Mouse

Drag a box around a set of planets to follow the center of mass of those planets

Program control

H

Display help dialog

k

Display option dialog

Ctrl-Shift-k

Toggle kid-mode.  Kid mode locks the keyboard and mouse, so the only way to get out is to toggle kid-mode again to get out.

l

Load Universe After pressing l, press any other character to load the universe with that name. Universes are stored in ~/.planets/ .

s

Save Universe After pressing s, press any other character to save the universe with that name. Universes are saved in ~/.planets/ .

q, Esc

Quit

Technical Details

Planets uses a fourth-order runge-kutta approximation for the simulation itself.  Planet bouncing is achieved by adding a repulsive force to planets at close quarters.   Planets is fairly flexible: you can change the gravitational constant, the time-slice of the simulation, and even the exponent used in the gravitational law.  Universes are saved in the ~/.planets directory, and are simple human readable and editable files.

Bugs

Currently bouncing doesn't work very well unless you make the time-slice quite small.  Ideally, it would be nice to have a billiard-style bounce system, but it's not clear how to do this accurately in the presence of a strong gravitational field.

Author

Planets was written by Yaron M. Minsky <yminsky@cs.cornell.edu> as a gift for his nephew, Eyal Minsky-Fenick.

This manpage was contributed originally by Martin Pitt <martin@piware.de> for the Debian GNU/Linux system (but may be used by others).

Info

April 20, 2003