Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Currently, the user must know which ROOT release was used for the data he wants to skim, and should define $ROOTSYS accordingly before running the skimmer. This ROOT release must be chosen within a subset which is defined by the administrator when installing the skimmer. Currently, for the noric cluster, the valid values for ROOTSYS are :

  1. /afs/slac/g/glast/ground/GLAST_EXT/$CMTCONFIG/5.10.00/root
  2. /afs/slac/g/glast/ground/GLAST_EXT/$CMTCONFIG/5.14.00g/root
  3. /afs/slac/g/glast/ground/GLAST_EXT/$CMTCONFIG/5.16.00-gl1/root
  4. /afs/slac/g/glast/ground/GLAST_EXT/$CMTCONFIG/5.18.00/root

For simple kinds of data, such as merit tuples, using a different recent ROOT release should be ok. If $ROOTSYS is 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 /nfsafs/farmslac/g/glast/u05ground/GLAST_EXT/$CMTCONFIG. If $CMTCONFIG is not defined, it will be set to rh9_gcc32.

So Thus, once $ROOTSYS is eventually defined, together with the relevant SK_* shell variables (as described in the user guide), one can simply type :

...

  1. Perl 5, which should be found with "/usr/bin/env perl".
  2. One of the supported ROOT releases (see belowabove), specified through wirh $ROOTSYS.
  3. ROOT 5.10.00 to 5.18.00 : the user can specify $ROOTSYS to any ROOT release, and it will be used as is by the skimmer, but the only 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.
  4. Gmake, which should be found in $PATH, is used by the administrator when locally recompiling the skimmer for a given $ROOTSYS

The predefined data kinds

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

The last release v5r10 should understand the following types :

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

Worth to be noted, some different kind of trees can be grouped in common files, such as merit, pointing_history and jobinfo. When skimming, the result is split among several files, one for each kind of tree. Also, some kind of trees do not have branches for the run and the event ids, such as pointing_history and jobinfo. Those trees are never skimmed, rather always merged.

The subset of ROOT releases which can be combined with the skimmer

...

So, on any site, including noric cluster, the administrator has compiled the skimmer for a subset of possible ROOT releases, and the user must choose within this subset. Currently, for the noric cluster, the subset is :

  1. 5.10/00
  2. 5.14/00g
  3. 5.16/00-gl1
  4. 5.18/00

The predefined data kinds

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

The last release v5r10 should understand the following types :

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

Worth to be noted, some different kind of trees can be grouped in common files, such as merit, pointing_history and jobinfo. When skimming, the result is split among several files, one for each kind of tree. Also, some kind of trees do not have branches for the run and the event ids, such as pointing_history and jobinfo. Those trees are never skimmed, rather always merged.