Sattool is a program for the prediction of the motion of artificial satellites. Support for predicting the visual magnitudes of these satellites is already in place, with support for predicting the radio frequencies coming soon.
Sattool is structured as a set of small sub-programs, each of which does one task. In order to determine which sub-program to run, sattool first looks at the name it was called under. If that name is of the format sat<prog>, it calls the subprogram <prog>. Otherwise, it expects to be invoked as 'sattool <prog>', with the program name available as the first argument.
Generally, shell pipelines are used to connect the various steps in a prediction process together. This allows for maximum flexiblity and control of this process, even allowing the various steps to be run on different machines. (For example, running the computationally intensive prediction step on one machine, and the less demanding live tracking on a second machine.) Using the shell also encourages the creation of scripts to automate common tasks.
Sattool works on lists of things. A thing is something like a satellite, a pass, a site, or an encounter. Many things can look like other things when appropriate. For example, if a Pass is used in a situation where a satellite is more appropriate, the satellite corresponding to the pass will be used rather than the pass itself.
This may seem complicated, but usually results in sattool doing the right thing in most circumstances.
The following are the command line options that the various sattool sub-programs take. Not every option is relavent to every sub-program, but the ones that are relevant are obeyed consistently.
The following are environment variables that many of the sattool sub-programs take. There are also environment variables that are only relavant to one of the sub-programs... They're listed in the documentation for that sub-program.
tom-sattool@onegeek.org