Various changes
- New possibility to avoid running
insertSamples.pyevery time a different sample list has to be used:- Define an environment variable for the folder containing all the JSON files, e.g.
export SAMPLE_JSONS=/t3home/swertz/swertz/CMSSW_10_2_16_NanoSkim/src/uzh_ttbb/NanoSkimmer/test/Jul2020NanoV6Production/ - Specify
--samples TEMPLATE.YMLtocontrolPlotter.py, whereTEMPLATE.YMLcan be e.g.config/samples_template.ymlor another "template" file with a subset of the samples. - Note that the behviour of
insertSamples.pyis not changed, and can still be used as before (-> don't specify the--samplesargument, and insert the file list to be used intoconfig/samples.yml). - Also note that for technical reasons a
config/samples.ymlfile still has to be present to be loaded intoconfig/analysis.yml, even if that file is actually not used to build the sample list.
- Define an environment variable for the folder containing all the JSON files, e.g.
- Add new HT-binned samples to list
- Latest additions to
genMatchingStudies(matching with reco level objets) - Rework (and rename) function that normalizes and sums MC contributions to also support systematics (with some caveats)
- Some changes and additions to plotting utilities:
-
simplePlotter.py: reads simple YAML file (see e.g./t3home/swertz/swertz/bambooOutput/200701_genRecMatching_fixBug/comparisons.yml), produces not-too-ugly plots with ratios for comparisons -
plot2DslicesFrom3D.py: plot all 2D slices of a 3D histogram
-
-
bTagPlotter:- Produce and use 3D b-tag SF patches
- Produce all comparison plots from the postprocessing function
-
controlPlotter: use the 3D b-tag SF patches previously produced using thebTagPlotter - Also, I was thinking about the problem of avoiding overlap between the 5FS and 4FS samples: in the
samples_template.yml, you'll see that the 5FS samples only havettccandttjjsubprocess, while the 4FS sample only hasttB: this is sufficient to avoid any double-counting. Some comments though:- In some cases we might still want to process the
ttBcomponent of the 5FS sample. We'll have to find another way to exclude it from plotIt (I'll come up with something) - When doing unfolding we don't want to enforce the
ttBgenTtbarCategory for building the signal templates, so the unfolding plotter musn't enforce it (FYI @kcormier, is that OK with you like this?)
- In some cases we might still want to process the
Given that there are more and more things added to the bamboo plotting modules (extra arguments, file list insertion, b-tag SF patches, ...), it might be good to have a common subclass for all our modules, to avoid forgetting things and making updates easier. But I'll leave that to a future PR to avoid too disruptive changes now.