Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
EVetoPlots.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #include <utility>
6 
7 #include "EVetoPlots.h"
9 
10 namespace Tau{
11 
12 EVetoPlots::EVetoPlots(PlotBase* pParent, const std::string& sDir, std::string sTauJetContainerName):
13  PlotBase(pParent, sDir),
14  m_HadRadius(nullptr),
15  m_EMRadius(nullptr),
16  m_IsoFrac(nullptr),
17  m_CentFrac(nullptr),
18  m_id_RNNEleScore(nullptr),
19  m_id_RNNEleScoreSigTrans(nullptr),
20  m_pt_eleRNNloose(nullptr),
21  m_pt_eleRNNmed(nullptr),
22  m_pt_eleRNNtight(nullptr),
23  m_pt_eleRNNlooseHighPt(nullptr),
24  m_pt_eleRNNmedHighPt(nullptr),
25  m_pt_eleRNNtightHighPt(nullptr),
26  m_sTauJetContainerName(std::move(sTauJetContainerName))
27 {
28 }
29 
31 {
32 }
33 
34 
36 
37  m_HadRadius = Book1D("HadRadius",m_sTauJetContainerName + " Had Radius; HadRadius; # Part",20,0,2.);
38  m_EMRadius = Book1D("EMRadius",m_sTauJetContainerName + " EM Radius; EMRadius; # Part",20,0,2.);
39  m_IsoFrac = Book1D("IsoFrac",m_sTauJetContainerName + " Iso Frac; Iso Frac; # Part",20,0,1.);
40  m_CentFrac = Book1D("CentFrac",m_sTauJetContainerName + " Cent Frac; Cent Frac; # Part",20,0,1.);
41 
42  m_id_RNNEleScore = Book1D("id_RNNEleScore",m_sTauJetContainerName + " RNNEleScore ; RNNEleScore; # Tau",20,0.,1.00);
43  m_id_RNNEleScoreSigTrans = Book1D("id_RNNEleScoreSigTrans",m_sTauJetContainerName + " RNNEleScoreSigTrans ; RNNEleScoreSigTrans; # Tau",20,0.,1.00);
44  m_pt_eleRNNloose = Book1D("Pt_eleRNNloose",m_sTauJetContainerName + " Tau pt; pt; # Taus",20,0.,150.);
45  m_pt_eleRNNmed = Book1D("Pt_eleRNNmed",m_sTauJetContainerName + " Tau pt; pt; # Taus",20,0.,150.);
46  m_pt_eleRNNtight = Book1D("Pt_eleRNNtight",m_sTauJetContainerName + " Tau pt; pt; # Taus",20,0.,150.);
47  m_pt_eleRNNlooseHighPt = Book1D("Pt_eleRNNlooseHighPt",m_sTauJetContainerName + " Tau pt; pt; # Taus",20,0.,1500.);
48  m_pt_eleRNNmedHighPt = Book1D("Pt_eleRNNmedHighPt",m_sTauJetContainerName + " Tau pt; pt; # Taus",20,0.,1500.);
49  m_pt_eleRNNtightHighPt = Book1D("Pt_eleRNNtightHighPt",m_sTauJetContainerName + " Tau pt; pt; # Taus",20,0.,1500.);
50 }
51 
52  void EVetoPlots::fill(const xAOD::TauJet& tau, float weight) {
53 
54  float avariable = 0.;
55 
56  bool test = tau.detail(xAOD::TauJetParameters::hadRadius, avariable);
57  if(test) m_HadRadius->Fill(avariable, weight);
58 
60  if(test) m_EMRadius->Fill(avariable, weight);
61 
63  if(test) m_IsoFrac->Fill(avariable, weight);
64 
66  if(test) m_CentFrac->Fill(avariable, weight);
67 
68  static const SG::ConstAccessor<float> RNNEleScoreAcc("RNNEleScore");
69  if(RNNEleScoreAcc.isAvailable(tau)) {
71 
72  static const SG::ConstAccessor<float> RNNEleScoreSigTrans_v1Acc("RNNEleScoreSigTrans_v1");
73  if(RNNEleScoreSigTrans_v1Acc.isAvailable(tau)) {
74  m_id_RNNEleScoreSigTrans->Fill(RNNEleScoreSigTrans_v1Acc(tau), weight);
75  }
76 
78  m_pt_eleRNNloose->Fill(tau.pt()/1000., weight);
79  m_pt_eleRNNlooseHighPt->Fill(tau.pt()/1000., weight);
80  }
82  m_pt_eleRNNmed->Fill(tau.pt()/1000., weight);
83  m_pt_eleRNNmedHighPt->Fill(tau.pt()/1000., weight);
84  }
86  m_pt_eleRNNtight->Fill(tau.pt()/1000., weight);
87  m_pt_eleRNNtightHighPt->Fill(tau.pt()/1000., weight);
88  }
89  }
90 }
91 
92 }
Tau::EVetoPlots::m_pt_eleRNNtight
TH1 * m_pt_eleRNNtight
Definition: EVetoPlots.h:27
Tau::EVetoPlots::m_sTauJetContainerName
std::string m_sTauJetContainerName
Definition: EVetoPlots.h:34
Tau::EVetoPlots::m_HadRadius
TH1 * m_HadRadius
Definition: EVetoPlots.h:19
PlotBase
Definition: PlotBase.h:34
xAOD::TauJet_v3::discriminant
double discriminant(TauJetParameters::TauID discID) const
Get value of discriminant.
Definition: TauJet_v3.cxx:253
Tau::EVetoPlots::m_EMRadius
TH1 * m_EMRadius
Definition: EVetoPlots.h:20
python.copyTCTOutput.sDir
sDir
Definition: copyTCTOutput.py:60
Tau::EVetoPlots::m_pt_eleRNNloose
TH1 * m_pt_eleRNNloose
Definition: EVetoPlots.h:25
Tau
Definition: EfficiencyPtPlots.cxx:9
SG::ConstAccessor< float >
TrigInDetValidation_Base.test
test
Definition: TrigInDetValidation_Base.py:147
EVetoPlots.h
xAOD::TauJetParameters::hadRadius
@ hadRadius
Get hadron calorimeter radius.
Definition: TauDefs.h:192
Tau::EVetoPlots::m_pt_eleRNNmedHighPt
TH1 * m_pt_eleRNNmedHighPt
Definition: EVetoPlots.h:29
dqt_zlumi_pandas.weight
int weight
Definition: dqt_zlumi_pandas.py:189
PlotBase::Book1D
TH1D * Book1D(const std::string &name, const std::string &labels, int nBins, float start, float end, bool prependDir=true)
Book a TH1D histogram.
Definition: PlotBase.cxx:94
xAOD::TauJetParameters::centFrac
@ centFrac
Get centrality fraction.
Definition: TauDefs.h:200
Tau::EVetoPlots::~EVetoPlots
virtual ~EVetoPlots()
Definition: EVetoPlots.cxx:30
xAOD::TauJetParameters::EleRNNTight
@ EleRNNTight
Definition: TauDefs.h:134
Tau::EVetoPlots::m_pt_eleRNNlooseHighPt
TH1 * m_pt_eleRNNlooseHighPt
Definition: EVetoPlots.h:28
xAOD::TauJet_v3::pt
virtual double pt() const
The transverse momentum ( ) of the particle.
Tau::EVetoPlots::m_CentFrac
TH1 * m_CentFrac
Definition: EVetoPlots.h:22
Tau::EVetoPlots::EVetoPlots
EVetoPlots(PlotBase *pParent, const std::string &sDir, std::string sTauJetContainerName)
Definition: EVetoPlots.cxx:12
Tau::EVetoPlots::m_id_RNNEleScore
TH1 * m_id_RNNEleScore
Definition: EVetoPlots.h:23
xAOD::TauJet_v3
Class describing a tau jet.
Definition: TauJet_v3.h:41
Tau::EVetoPlots::m_id_RNNEleScoreSigTrans
TH1 * m_id_RNNEleScoreSigTrans
Definition: EVetoPlots.h:24
Tau::EVetoPlots::m_IsoFrac
TH1 * m_IsoFrac
Definition: EVetoPlots.h:21
Tau::EVetoPlots::m_pt_eleRNNmed
TH1 * m_pt_eleRNNmed
Definition: EVetoPlots.h:26
xAOD::TauJetParameters::EleRNNMedium
@ EleRNNMedium
Definition: TauDefs.h:133
Tau::EVetoPlots::m_pt_eleRNNtightHighPt
TH1 * m_pt_eleRNNtightHighPt
Definition: EVetoPlots.h:30
xAOD::TauJet_v3::detail
bool detail(TauJetParameters::Detail detail, int &value) const
Set veto flag.
Definition: TauJet_v3.cxx:292
xAOD::TauJet_v3::isTau
bool isTau(TauJetParameters::IsTauFlag flag) const
Get Flag for tau acceptance based on predefined arbitrary criteria.
Definition: TauJet_v3.cxx:273
xAOD::TauJetParameters::EleRNNLoose
@ EleRNNLoose
Definition: TauDefs.h:132
Tau::EVetoPlots::initializePlots
void initializePlots()
Definition: EVetoPlots.cxx:35
xAOD::TauJetParameters::isolFrac
@ isolFrac
Get isolation fraction.
Definition: TauDefs.h:198
xAOD::TauJetParameters::RNNEleScore
@ RNNEleScore
RNN score for Ele rejection (not transformed)
Definition: TauDefs.h:94
SG::ConstAccessor::isAvailable
bool isAvailable(const ELT &e) const
Test to see if this variable exists in the store.
ConstAccessor.h
Helper class to provide constant type-safe access to aux data.
Tau::EVetoPlots::fill
void fill(const xAOD::TauJet &tau, float weight)
Definition: EVetoPlots.cxx:52
xAOD::TauJetParameters::EMRadius
@ EMRadius
Get E_T radius.
Definition: TauDefs.h:190