You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Requirements

The skimmer is only usable on linux.
The release v4r0 depends on :

  1. Perl 5, which should be found with "/usr/bin/env perl".
  2. ROOT 5.10.00 to 5.16.00 : the user can specify $ROOTSYS to any ROOT release, and it will be used as is by the skimmer, but the only really validated releases are 5.10.00, 5.14.00g and 5.16.00 ; if not defined, the skimmer will search for $GLAST_EXT/ROOT/v5.10.00/root ; if GLAST_EXT is not defined, it will be set to /nfs/farm/g/glast/u05/GLAST_EXT/rh9_gcc32.

Installation

When one wants a given <release> of the skimmer, he must check out the package "DataServer" with the tag <release> from the GLAST CVS repository. Then he just needs to make "bin/skimmer" a reachable executable. For example, if one stores all the release under a single <SKIMMER_DIR> directory :

prompt> export CVSROOT=:ext:<user>@centaurusa.slac.stanford.edu:/nfs/slac/g/glast/ground/cvs
prompt> cd <SKIMMER_DIR>
prompt> cvs co -r <release> -d <release> DataServer
prompt> export PATH=<SKIMMER_DIR>/<release>/bin/skimmer:${PATH}

The predefined data kinds

The list of kinds of input data files which can be skimmed is currently hardcoded, and especially targetted to GLAST needs. For each of those kinds, we expect to have a main ROOT tree, with a main ROOT branch. Actually, we distinguish two sets of files : the ones which only rely on predefined ROOT types and have a single level of branches under the main one (the tuple-like files), and the others. The latter typically requires the loading of a dedicated data description library before the skimming.

The last release v3r10 should understand the following types :

  1. merit (tuple-like)
  2. mc (requires libmcRootData.so)
  3. digi (requires libdigiRootData.so)
  4. recon (requires libreconRootData.so)
  5. cal (tuple-like)
  6. svac (tuple-like)
  7. gcr (requires libgcrSelectRootData.so)

Worth to be noted, in the specific case of merit input files, the skimmer will also systematically merge the pointing_history and jobinfo trees and write them to separate output files.

Use tips

If you want to skim a kind of data which is not tuple-like, remember the skimmer will need to load the corresponding libraries (such as libmcRootData.so for mc data). So you must ensure those libraries are reachable from the machine where the skimmer will be running, for all the releases which were used when generating the data to be skimmed. If you recompile those libraries locally or copy them from SLAC, remember you must mimic the directory structure used at SLAC (as expected by the skimmer). Especially, for a given <main_package> and a given <release> (for example GlastRelease and v9r3) the path of the directory containing the libraries should end with "/<main_package>/<main_package>-<release>/lib/" ("/GlastRelease/GlastRelease-v9r3/lib/").

  • No labels