DerivationFrameworkHiggs Add new derivation (HDBS1) and implement code modifications required for it
This MR is made in order to add a new derivation (named HDBS1), deemed necessary for ttX(X->tautau) analysis. The derivation was modified from HIGG4D6 and implemented through rather simple code modifications in HIGG4Dx files that it uses.
An addition to HIGG4DxJets.py is implemented in the last code block that runs a custom boosted Ditau reconstruction which is crucial to the analysis (default DiTauRec for AODs uses high-pt seed jets while the analysis requires a lower pt cut on seed jets). Skimming is defined in HIGG4DxSkimming.py, runs in two steps (similar to HIGG4D6). Thinning is implemented in HIGG4DxThinning.py, where an addition was made of a tool to thin the newly created low-pt ditau container. Slimming is implemented in HIGG4DxSlimming, where some additions and modifications were implemented (adding the low-pt ditau container to the output, removing some jet containers from the output to reduce size).
The derivation was used privately (as a modified HIGG4D6) to produce signal and background DAODs from simulation (both locally and on the grid) and runs without crashing, the output DAODs have been checked on multiple occasions using both the checkxAOD.py scripts and the CxAOD framework that runs on these samples. The derivation was also tested on data AODs and events were found and saved (and DAODs were processed successfully in CxAOD framwork).
Much effort was made to minimize the output DAOD file sizes without compromising the analysis. The derivation yields an AOD->DAOD size fraction of ~5.5% for signal samples and ~4% for background samples (tested for two of the most major backgrounds to analysis, ttbar and ttZ), and the go-ahead to submit this merge request was agreed upon in the analysis group meeting on January 8th (https://indico.cern.ch/event/785501).