Science Analysis Systems (SAS)

Science Analysis Systems (SAS) develops and maintains the software that converts Level 0 (L0) data received from the MOC into Level 1 (L1) data, as well as the analysis tools used to analyze the L1 data. SAS supplies these data and tools to the collaboration and to the GSSC as needed.

Top-level SAS checkout packages may be thought of as source code toolkits from which the application and constituent package(s) needed to compile and analyze event information can be selected. The top-level packages have shell scripts (i.e., executables) located in the bin subdirectory of the directory where the rest of the code for the top-level package is compiled. Constituent packages (e.g, AcdDigi, AcdRecon, CalDigi, CalRecon, TkrDigi, TkrRecon, etc.) are specific packages included in a top-level package.

Source code is made available from the Concurrent Versions System (CVS) repository, while binary versions of any of the packages can be downloaded using the GLAST Installer.

Top-level packages include:

  • GlastRelease

GlastRelease, the primary SAS software package, is a toolkit of different application software packages with a wrapper bundling them into a single package;

The top-level application package within a GlastRelease is the GLast Event Analysis Machine (GLEAM). GLEAM takes the "raw" Level 0 data delivered to it in LAT Data Format (LDF data) and converts it to Level 1 data. The Level 1 data serves as input to the ScienceTools software packages.

Note: All GlastRelease outputs are in ROOT format.

  • ScienceTools

ScienceTools is a toolkit of L1 data analysis tools with a wrapper bundling them into a single package.

Developed jointly with the GLAST Science Support Center and compatible with the FTOOLS standards, most of the ScienceTools packages are components of the Standard Analysis Environment (SAE).

  • BeamtestRelease

A version of the GlastRelease toolkit modified in support of the Beam Test at CERN (conducted from late July through mid-September, 2006) and, later, at GSI.
  • EngineeringModel

EngineeringModels 1 & 2 (Em1 and Em2) are versions of the GlastRelease toolkit used for integration and testing.

External Libraries. External libraries used by GlastRelease software are included when a package is checked out using the GLAST Installer; these libraries include:

  • ROOT
  • Xerces
  • Gaudi
  • Mysql
  • GEANT4
  • LDF
  • HTL
  • OmniOrb
  • FOX
  • ZLIB

External libraries used by ScienceTools software include:

  • ROOT
  • PIL

Package and External Library Contents

To view the package and external library contents of code builds, including the version number for each package, click on:

Note: Pull down menus enable you to select Package, Version, and Tag and, when you click on the Submit button, the external packages are displayed by default; to view the entire package contents of a release, click on All Packages.

Release Manager. The Release Manager software makes a build each time a new version of a package is checked in, whether for GlastRelease, BeamtestRelease, EngineeringModel, or ScienceTool software. It also runs a series of tests to ensure interoperablility with other packages that have been checked in. Developers are notified by e-mail of any test failures related to their package. Release Manager links provide access to build logs and details of build results, including package lists, test results, errors, date, elapsed time, etc. A Summary Page is provided for each package version and links are also provided to:

  • Release Notes detailing differences with respect to the previous version
  • System Tests Outputs
  • Doxygen Outputs
  • XML Geometry Parameters
  • CVSWEB View of Packages
  • "Red-dot" Package Summary
  • Source Code: Linux and Windows
SAS Software Builds. Optimized software builds run significantly faster than unoptimized builds, and hence are desirable for event analysis. However, there is also the need to use a debugger during development as well as to track down bugs in production builds; hence, the need for unoptimized builds. While it would be convenient to have both optimized and unoptimized builds of everything readily available, that could quickly create an unnecessary strain on resources such as disk space, and SAS has therefore created the following build classes; each class serving a different function and having a different build frequency:
  • Tagged releases (optimized and unoptimized builds)
  • HEAD (unoptimized builds only)
  • LATEST (unoptimized builds only)
  • External Libraries:
    • optimized builds of libraries heavily used during event processing
      (e.g., Geant and Gaudi)
    • Unoptimised builds of less frequently used libraries (e.g., Xerces, used almost exclusively during initialization)
Red-Dot Summary. GlastRelease Red-Dot Summary pages are displays of packages that have changed when packages in the current release are compared with the packages in the previous release. For example, there are four columns on the GlastRelease Red-Dot Summary page:
  • package name (e.g., AcdDigi)
  • release(d in) specifies version, revision, and patch of the latest GlastRelease tag (i.e., a release and by definition, past history)
  • HEAD specifies a candidate set of packages to be the next GlastRelease
  • LATEST is a predictor of the next release; it lists the latest tag applied to a package, not necessarily the tag slated for the next release. Each of these packages is built nightly, so their state is known. As this column becomes error free, it becomes more certain that future releases will be smooth.

GLAST Software Installers.Two GLAST Software Installers are available: a GUI-based installer which can be used by Linux and Windows users, and a Linux Command Line Installer for Linux users only. These installers enable you to download and install the binaries of a top-level package (e.g., GlastRelease, BeamtestRelease, EngineeringModel, or ScienceTools), the External Libraries for those packages, the Configuration Management Tool (CMT) and the ROOT libraries (rootlibs) for GlastRelease, BeamtestRelease, or EngineeringModel.


Last updated by: Chuck Patterson 05/23/2007

Please send all comments and suggestions to: LAT ISOC Web Admin.