Back to Starlab home

Starlab Tools

All tools (that is, programs run at the command line, or in a script) within Starlab are designed to read input data (in the form of standard snapshots) from stdin, accept run-time parameters from the command line, write snapshots to stdout, and send all other information (such as log files or diagnostic messages) to stdout.

For a current list of all tools automatically built as part of the current Starlab distribution, click here.

The simplest way to use Starlab is to chain commands via UNIX pipes, redirecting output streams as appropriate. For example, to

  1. create a W0 = 5 King model of 10000 (unlabeled) particles
  2. add a Salpeter mass spectrum between 0.2 and 20 solar masses
  3. scale to standard units
  4. integrate the motion forward in time for 100 dynamical time units, with log output every 1 time unit, snapshot output every 10 units,
saving the log and snapshot data in separate files, type:
    (makeking -w 5 -n 10000
            | makemass -l .2 -u 20 -x -2.35
            | scale -s 
            | kira -t 100 -d 1 -D 10 > snapshot ) >& log

The Starlab tools (as of 10/98) are listed below. An up-to-date list may be found in the file TOOLS in the Starlab distribution. For online information on usage, type

        "tool-name --help"
or
        "tool-name --HELP"

Notes:

  1. Most tools are just simple interfaces onto the corresponding library functions, so virtually all of the functionality listed below is accessible in both command-line (piped) and program (compiled) contexts.
  2. All tools are routinely written in terms of the simplest class possible. Thus, for example, Starlab's data structure ensures that tools written for nodes will also work with dyns and hdyns. However, hdyn tools generally use some specific aspect of the hdyn class, and will not work with node or dyn input snapshots.

Basic Starlab tools (as of January 1999) are as follows. Tools which create new N-body systems are indicated with an asterisk; other tools read snapshots from stdin and write snapshots to stdout.

1. TOOLS OPERATING ON nodes.

2. TOOLS OPERATING ON dyns.

3. TOOLS OPERATING ON _dyn_s.

4. TOOLS OPERATING ON hdyns.

5. TOOLS OPERATING ON sdyn3s.

6. TOOLS OPERATING ON stars.

7. TOOLS OPERATING ON sdyns.