DAS  3.0
Das Analysis System
getHistoEfficiencyCurves.cc File Reference
#include <algorithm>
#include <cstdlib>
#include <filesystem>
#include <functional>
#include <iostream>
#include <ranges>
#include <vector>
#include "Core/CommonTools/interface/binnings.h"
#include "Core/CommonTools/interface/DASOptions.h"
#include "Core/CommonTools/interface/toolbox.h"
#include "Core/JEC/interface/common.h"
#include "Core/JEC/interface/resolution.h"
#include "Core/Trigger/interface/MakeEfficiencyHistos.h"
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/info_parser.hpp>
#include <TEfficiency.h>
#include <TH3.h>
#include <TString.h>
#include <darwin.h>
+ Include dependency graph for getHistoEfficiencyCurves.cc:

Namespaces

 DAS
 
 DAS::Normalisation
 

Functions

void loopOverDirs (TDirectory *dIn, TDirectory *dOut, const int steering, const DT::Slice slice)
 
void getHistoEfficiencyCurves (const fs::path &input, const fs::path &output, const pt::ptree &config, const int steering, const DT::Slice slice={1, 0})
 
int main (int argc, char *argv[])
 

Function Documentation

◆ main()

int main ( int  argc,
char *  argv[] 
)
135 {
136  try {
138 
139  fs::path input, output;
140 
141  auto options = DAS::Options(
142  "Extract the JetHT trigger efficiency from ROOT::TEfficiancy objects produced in the output\n"
143  "of getTriggerEfficiency*Method*, where Method: Emulation, Tag&Probe or EmulationShift.\n"
144  "Strategy:\n"
145  " - Take each x,y,z value of the 3D TEfficiency object:\n"
146  " -- x corresponds to each trigger\n"
147  " -- y corresponds to each |η| bin\n"
148  " -- z corresponds to the efficiency values\n"
149  " - The input file includes the efficiency and response\n"
150  " for three different cases of matching, according to\n"
151  " -- the pt of the leading jet\n"
152  " -- the most central jet\n"
153  " -- the rec jet that has the best match with the hlt jet"
154  " - The other methods are used as cross-checks",
156 
157  options.input("input", &input, "input ROOT file or directory")
158  .output("output", &output, "output ROOT file");
159 
160  const auto& config = options(argc, argv);
161  const auto& slice = options.slice();
162  const int steering = options.steering();
163 
164  DAS::Normalisation::getHistoEfficiencyCurves(input, output, config, steering, slice);
165  }
166  catch (boost::exception& e) {
167  DE::Diagnostic(e);
168  return EXIT_FAILURE;
169  }
170 
171  return EXIT_SUCCESS;
172 }
DYToLL_M-50_13TeV_pythia8_cff_GEN_SIM_RECOBEFMIX_DIGI_L1_DIGI2RAW_L1Reco_RECO.options
options
Definition: DYToLL_M-50_13TeV_pythia8_cff_GEN_SIM_RECOBEFMIX_DIGI_L1_DIGI2RAW_L1Reco_RECO.py:41
Darwin::Exceptions::Diagnostic
void Diagnostic(const boost::exception &e)
Definition: exceptions.h:131
DAS::Normalisation::getHistoEfficiencyCurves
void getHistoEfficiencyCurves(const fs::path &input, const fs::path &output, const pt::ptree &config, const int steering, const DT::Slice slice={1, 0})
Extract trigger efficiency distributions from getTriggerEfficiency*Method*
Definition: getHistoEfficiencyCurves.cc:115
Darwin::Tools::split
@ split
activate -k and -j to define slice
Definition: Options.h:26
Darwin::Tools::StandardInit
void StandardInit()
Definition: FileUtils.cc:70
Ntupliser_cfg.config
config
Definition: Ntupliser_cfg.py:330
DYToLL_M-50_13TeV_pythia8_cff_GEN_SIM_RECOBEFMIX_DIGI_L1_DIGI2RAW_L1Reco_RECO.input
input
Definition: DYToLL_M-50_13TeV_pythia8_cff_GEN_SIM_RECOBEFMIX_DIGI_L1_DIGI2RAW_L1Reco_RECO.py:35
DAS::Options
Darwin::Tools::Options Options(const char *, int=Darwin::Tools::none)
Constructs Darwin options with the correct commit information.
Definition: DASOptions.cc:14