-
Notifications
You must be signed in to change notification settings - Fork 8
Open
Milestone
Description
This issue refers tot he selection part of our analysis and to the merging of AS and NTP (issue #191)
In NTP we have:
- ttbar muon selection
- ttbar electron selection
- selection analyser (cut flows)
In AS we used to have
- BasicSelection
- ttbar muon selection
- ttbar electron selection
- various control region selections
My current understanding of what we need:
- base selection class that
- inherits from
EDFilter - monitors selection steps (cut flow) for both weighted and unweighted)
- base functions similar to BasicSelection.h
- adds the selection result as a boolean with prefix + selection step name to the event content
- supports tagging mode
- uses our final objects (jets, MET, etc) after corrections instead of applying them in the selection itself
- inherits from
- a python script that prints cut flow as (partially exists in DPS)
- latex table
- twiki layout
- simple console output
- a script that can pick events passing a certain selection and storing the result in the format of
{run:{lumi:[events, ...]}}aka JSON file. This one is useful for diffs of all kind (changes in selection, synchronisation exercise) - one selection inheriting from base selection per signal- & control-region
The last step should only contain minimal amount of code due to the inheritance.
This would mean that most of the code inTopPairElectronPlusJetsSelectionFilterandTopPairMuonPlusJetsSelectionFilter.
This means that nothing would change in the way the selection are used in the python config (parameters will be passed down).
If everyone is generally happy with that I will start implementing the changes in parallel to the existing selections. This way we can validate old vs new with the described python scripts.