Preliminary Post Processing Tool and Script to Get MC Normalization variables
PRELIMINARY IMPLEMENTATION.
-
XSectionData.yaml : Contains two paths.
- One referring to an official PMG folder that contains .txt file with various cross section/kFactor/filterEfficiency values per DSID (dataset number)
- A second one where a custom txt file is located. Same format and variables but different (probably NLO) values.
- HHbbyyCustomXSections.txt is the custom file.
-
GetXSectionTool.h/.src : A PostProcessorTool which utilizes the
IPMGCrossSectionToolwith its methods -->getAMIXsection(int dsid), getKfactor(int dsid), getFilterEff(int dsid). - bbyyPostProcess.py : Job options based on arguments.
What does the python script do? Basically runs on an easyjet produced ntuple called yybb_PHYSLITE_ntuple.root and produces another one called mcNormalisationVars.root which entails the branches AMIXsection, kFactor, FilterEff, luminosity and SumOfWeights (this one from the existing SOW post processing tool).
Assuming you have your run folder in the same directory as easyjet , you could do:
athena ../easyjet/bbyyAnalysis/bin/bbyyPostProcess.py - \
--inFile yybb_PHYSLITE_ntuple.root \
--xSectionsConfig ../easyjet/bbyyAnalysis/share/XSectionData.yaml \
--DSID 600021
--mcYears 2015,2016
Notes :
- Possibly the we can comment/uncomment one path in the
XSectionData.yamlfile instead of changing the path in thebbyyPostProcessscript. - the
mcYearsandDSIDargumments are a preliminary solution. We might try to save them at to the easyjet ntuples a priori.
Edited by Spyros Merianos