Back to home page

Project CMSSW displayed by LXR



Warning, /HLTriggerOffline/Egamma/doc/README is written in an unsupported language. File is not indexed.

0001 ************************************************
0002 * Validation/Optimization Tools for HLTOffline *
0003 * by Joshua Berger                             *
0004 ************************************************
0006 Instructions for running code:
0008 1. Compile the code as usual using scramv1 b.
0010 2. Find a suitable sample to run on.  The sample should have RAW since the HLT now works from RAW.  
0011    Insert this in PoolSource.fileNames in test/HLTRecoWithoutFilters.cfg.
0013 3. Change the output file name to something suitable for the input file.  The output of this stage 
0014    will be a root file containing all the HLT isolation variables and some other quantities of 
0015    interest for e/gamma.  Then do
0017                 > cmsRun HLTRecoWithoutFilters.cfg
0019    If you want to run on larger samples, you will probably want to run on a batch or on the grid.
0020    I have several sample scripts in ../test/HLTStudyData/ for running on the batches at FNAL and CERN as well as using CRAB.
0021    Getting grid credentials... now that's a different story.
0023 For Validation:
0024 4. Edit ../macros/Get*Eff.C, where * is the name of one of the Egamma HLT paths: SingleElectron, 
0025    RelaxedSingleElectron, etc.  Change the TFile argument to the file created in 3.  Change the cuts 
0026    at the beginning of the file to the cuts you would like to test.  These are currently the cuts in 
0027    the actual HLT code as of 1_6_0.  This should probably be updated to follow the newer format (files
0028    should be consolidated and user-defined multi-cut functions should be eliminated).
0030 5. Do the following:
0032                 > cd ../macros
0033                 > root.exe
0034                 [] .L CopyTreeMulti.C; // Only if running a Double trigger
0035                 [] .x Get*Eff.C
0037    The output will be as follows: a text output to stdout of the number of events passing each filter
0038    and the efficiency of each filter and 3 graphs of efficiency vs. Et, eta, phi to 
0039    macros/images/EffV(Et/eta/phi)(SE/RSE/etc.).gif.
0041 Bugs:
0042 - Root scripts produce a long series of errors that do no affect the output.  These will probably be eliminated
0043   if the code is updated using the new SUM$ function described in other files.
0044 - When eff = 1, the errors are calculated using some Bayesian algorithm in this version root.  This is
0045   changed to the more usual "error = 0 for eff = 1" way of working in newer versions of root (that we are not
0046   using for some reason).
0048 For Rates, Plots, Optimization, ...:
0049 6. Most of the files for these functions are documented with comments.  They are all located in ../macros with
0050    self-explanatory (I think) names.  Old Vars refers to files meant to study IHcal, E/p, while New Vars refers to
0051    files meant to study H/E, |1/E - 1/p|.  Note that I have added H/E and |1/E - 1/p| to the output of the
0052    CMSSW part of the code.  However, I have not updated the root scripts yet because not all the background samples
0053    contain this update!  More details in the actual files where relevant.  In order to run any of these scripts, do
0054    the following in the macros directory:
0056                 > root.exe
0057                 [] .L <Script-Name>.C++
0058                 [] <Script-Name>
0060   Warning: the output is generally to file names defined in the script file.