SATAN Introduction
| GSI | Biophysics | SATAN long write-up |


SATAN is a command-line oriented progam for evaluation and analysis of experimental data taken in list mode (event-by-event). The main "customers" are small experiments with parameter numbers in the hundreds or less, and moderate requirements for event-by-event data reduction. A typical high-energy physics experiment would not fit into this category.

Data objects

The most important data objects SATAN (System to Analyze Tremendeous Amounts of Nuclear Data) can handle are Due to the huge space requirements these data are usually in binary (non-ASCII) format.

Data flow and analysis

The main sources of list mode data are running data acquisition setups (online mode), disk or tape files. The data are reduced by feeding them into a user-written analysis program, where they are processed and accumulated in analyzers. SATAN works in multithreading mode, that is, data I/O and analysis runs as a task or thread separate from command-driven actions. The user has full control over the system while data events are coming in.
To support user analysis programming a set of macros is supplied. They are resolved into plain C code by means of a special preprocessor. The basic idea is that as much internal information as possible is hidden from the user, who needs only to supply an analysis program for listmode analysis.
Commands on the shell level support preprocessing, compiling and linking of user analysis programs.

Spectra processing

If only spectra are to be processed, SATAN can be used also without an own analysis routine. Spectra can be manipulated, fitted, stored in (and retrieved from) data element libraries and exported to other evaluation systems.
Spectra can be visualized in one or two dimensions and data can be presented with various symbols, connecting lines, linewidths and colours. A function fitting package is attached to allow least squares optimization of builtin and user defined functions.


Graphics output can be on any X-server for display or PostScript printers for paper copies. Encapsulated PostScript files can be used later in word processors like TeX.
At present SATAN isn't designed to produce publication-ready graphs, it is meant as a tool for data reduction from listmode to spectrum data. Please use the export facilities to create data for "nice" data plotting programs such as gd.

Command interface

SATAN sessions are usually invoked in foreground at the shell level, thus allowing interactive data evaluation. Background batch execution is also supported. SATAN supports command scripts so that batch execution is possible by grouping several commands in a single script file which can readily be executed rather than typing individual commands.
Historically SATAN once ran on GSI's MVS mainframe computer. Hence legacy data and script files (with slight modifications) can be recycled.


SATAN is available for a variety of platforms: Versions for other operating systems depend on demand. At GSI, SATAN is installed on the central AIX and Linux computers in the /usr/local/mk/SATAN/ directory. For use outside GSI an export package (tar'ed and compressed) is available on GSI's
ftp server or here.
It comprises the executable, shell scripts, tutorial data and documentation in HTML and system specific format.
| GSI | Biophysics | SATAN long write-up |
Valid HTML 3.2!
Last updated:, 7-Jul-2005