From GlueXWiki
Jump to: navigation, search

FSRoot is an alternative to DSelectors that uses flat trees.

There are two steps:

1. Use FlattenForFSRoot (hd_utilities/FlattenForFSRoot) to generate flat trees from the standard analysis trees.

 >  flatten -in [input file with analysis tree] -out [output file with flat tree]

2. Use FSRoot (available at https://github.com/remitche66/FSRoot) to make histograms from the flat trees.

Here is a working example:

1. Flatten an analysis tree:

 > flatten -in /u/home/remitche/FSRootExample/analysis.root -out flat.root
  • where analysis.root was created by running /u/home/remitche/FSRootExample/MC.run
  • which generates MC based on the config file /u/home/remitche/FSRootExample/MC.config
  • which simulates the process gamma p --> eta' p --> eta pi+ pi- p --> (pi+ pi- pi0) pi+ pi- p using genr8 with the input file /u/home/remitche/FSRootExample/MC.genr8

2a. Make a plot of the eta' mass using a cut on the chi^2/dof:

 root>  FSHistogram::getTH1F("flat.root","ntFSGlueX_100_221","MASS(2,3,4,5,6)","(80,0.8,1.2)","Chi2DOF<10.0")->Draw()
  • where particles 2-6 are the five pions from the eta' decay

2b. Skim the tree to a new file using a cut on the chi^2/dof:

 root>  FSTree::skimTree("flat.root","ntFSGlueX_100_221","flat.skim.root","Chi2DOF<10.0")