Astronomy on the Desktop

Many people's initial exposure to science is through astronomy, and they are inspired by that first look through a
telescope or their first glimpse of a Hubble image. Several
software packages are available for the Linux desktop that allow users to
enjoy their love of the stars. I look at several packages in this
article that
should be available for most distributions.

The first is Stellarium,
my personal favorite for day-to-day stargazing. When you install it,
you get a thorough star catalog. By default, Stellarium
starts up in full-screen mode. The layout makes for a
very attractive display of the sky above you, and almost all the details
of the display are customizable.

Figure 1. Opening Stellarium gives you a look at the local sky.

If you hover your mouse pointer over
either the bottom-left border or the lower-left-side border, one of
two configuration panels appears. From here,
you can set visual items, such as constellation outlines, constellation
names, whether galaxies and nebulae are visible, as well as
a coordinate grid. You also can set location and time values. This means
you not only can see what the sky looked like in the past or what it
will look like in the future, but you also can see what it looks like on
the other side of the planet. Additionally, you can add even more stars to the catalog
that Stellarium uses.

Figure 2. You can set the time so it's later, letting you check out what you might want to
look for that evening.

Figure 3. The configuration window lets you download even more star catalogs.

Stellarium includes a script capability. With it, you can script views of
starfields and share them with others. When you install Stellarium, you get
several demo scripts to use as examples. As of version 0.10.1,
there is a new scripting engine based on the Qt scripting engine.
A full API is available, allowing you to interact with all of the
functions that Stellarium provides. It is a full scripting language
called ECMAscript. You may know it better as JavaScript. You can define
your own functions, encapsulating larger chunks of work. There is a
for statement, providing a loop structure that will look familiar to C and
Java programmers.

To access and run scripts in Stellarium, you need to
open the configuration window and click on the scripts tab. Once you've
written your own scripts and want to run them, you can place them in
the scripts subdirectory of the user data directory. On Linux machines,
the user data directory is $HOME/.stellarium. Once you put your script
files there, along with any textures they may require, they will show up
within the list of scripts in the configuration window.
A plugin architecture also is available, but it is much harder to use, and the
API varies from version to version.

The nice thing about Stellarium is that it isn't limited to your
computer. It can interact with the real world in a couple
ways. The first is through telescope control. Stellarium provides two
different mechanisms for controlling your telescope. The older mechanism
is a client-server model. The server runs as a standalone application
that connects to and controls one telescope. It then can listen to one
or more clients, which can include Stellarium. Several options
are available for the server portion, and they provide control for many
telescopes from Meade, Celestron and others. The second mechanism is a
plugin for Stellarium, which first was available in version 0.10.3. This
mechanism can send only slew instructions to the telescope, which
essentially are "go to" instructions.

One major warning is that Stellarium
will not stop you from slewing to the sun. This could damage both eyes
and equipment if you don't have proper filters on your telescope,
so always be careful if you are working during the day.

The plugin
can interact with pretty much any telescope that understands either
the Meade LX200 interface or the Celestron NexStar interface.

The
other way Stellarium can interact with the real world is as a
planetarium. Stellarium can handle the calculations involved in projecting
over a sphere. This way, you can make a DIY planetarium. You need
a dome onto which you can project your display across the inside. You
also need a video projector and a spherical security mirror.
Use the spherical distortion feature in Stellarium and then project
the results through the video projector and onto the mirror. Then, you
can lie back under the dome and see the sky above you. The Stellarium Web
site has links to groups
on the Internet where you can find help and hints when building your
own planetarium.

The other popular astronomy program is Celestia. Celestia is a three-dimensional simulation of the universe. Where most astronomy software
shows you what the sky looks like from the surface of the Earth,
Celestia can show you what the sky looks like from anywhere in the
solar system.

Figure 4. When you first open Celestia, you get a satellite-eye view of the Earth.

Joey Bernard has a background in both physics and computer science. This serves him well in his day job as a computational research consultant at the University of New Brunswick. He also teaches computational physics and parallel programming.

The Ubuntu Wiki has a nice list with a ton more software, though I haven't had the chance to check any out aside from Stellarium and Celestia yet. Too much light pollution here to take a huge interest...