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-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #include <utility>
6 
7 #include "EVetoPlots.h"
9 #include "AthenaKernel/Units.h"
10 
11 namespace Tau{
12 
13 EVetoPlots::EVetoPlots(PlotBase* pParent, const std::string& sDir, std::string sTauJetContainerName):
14  PlotBase(pParent, sDir),
15  m_HadRadius(nullptr),
16  m_EMRadius(nullptr),
17  m_IsoFrac(nullptr),
18  m_CentFrac(nullptr),
19  m_id_RNNEleScore(nullptr),
20  m_id_RNNEleScoreSigTrans(nullptr),
21  m_pt_eleRNNloose(nullptr),
22  m_pt_eleRNNmed(nullptr),
23  m_pt_eleRNNtight(nullptr),
24  m_pt_eleRNNlooseHighPt(nullptr),
25  m_pt_eleRNNmedHighPt(nullptr),
26  m_pt_eleRNNtightHighPt(nullptr),
27  m_sTauJetContainerName(std::move(sTauJetContainerName))
28 {
29 }
30 
32 {
33 }
34 
35 
37 
38  m_HadRadius = Book1D("HadRadius",m_sTauJetContainerName + " Had Radius; HadRadius; # Part",20,0,2.);
39  m_EMRadius = Book1D("EMRadius",m_sTauJetContainerName + " EM Radius; EMRadius; # Part",20,0,2.);
40  m_IsoFrac = Book1D("IsoFrac",m_sTauJetContainerName + " Iso Frac; Iso Frac; # Part",20,0,1.);
41  m_CentFrac = Book1D("CentFrac",m_sTauJetContainerName + " Cent Frac; Cent Frac; # Part",20,0,1.);
42 
43  m_id_RNNEleScore = Book1D("id_RNNEleScore",m_sTauJetContainerName + " RNNEleScore ; RNNEleScore; # Tau",20,0.,1.00);
44  m_id_RNNEleScoreSigTrans = Book1D("id_RNNEleScoreSigTrans",m_sTauJetContainerName + " RNNEleScoreSigTrans ; RNNEleScoreSigTrans; # Tau",20,0.,1.00);
45  m_pt_eleRNNloose = Book1D("Pt_eleRNNloose",m_sTauJetContainerName + " Tau pt; pt; # Taus",20,0.,150.);
46  m_pt_eleRNNmed = Book1D("Pt_eleRNNmed",m_sTauJetContainerName + " Tau pt; pt; # Taus",20,0.,150.);
47  m_pt_eleRNNtight = Book1D("Pt_eleRNNtight",m_sTauJetContainerName + " Tau pt; pt; # Taus",20,0.,150.);
48  m_pt_eleRNNlooseHighPt = Book1D("Pt_eleRNNlooseHighPt",m_sTauJetContainerName + " Tau pt; pt; # Taus",20,0.,1500.);
49  m_pt_eleRNNmedHighPt = Book1D("Pt_eleRNNmedHighPt",m_sTauJetContainerName + " Tau pt; pt; # Taus",20,0.,1500.);
50  m_pt_eleRNNtightHighPt = Book1D("Pt_eleRNNtightHighPt",m_sTauJetContainerName + " Tau pt; pt; # Taus",20,0.,1500.);
51 }
52 
53  void EVetoPlots::fill(const xAOD::TauJet& tau, float weight) {
54 
55  float avariable = 0.;
56 
57  bool test = tau.detail(xAOD::TauJetParameters::hadRadius, avariable);
58  if(test) m_HadRadius->Fill(avariable, weight);
59 
61  if(test) m_EMRadius->Fill(avariable, weight);
62 
64  if(test) m_IsoFrac->Fill(avariable, weight);
65 
67  if(test) m_CentFrac->Fill(avariable, weight);
68 
69  static const SG::ConstAccessor<float> RNNEleScoreAcc("RNNEleScore");
70  if(RNNEleScoreAcc.isAvailable(tau)) {
72 
73  static const SG::ConstAccessor<float> RNNEleScoreSigTrans_v1Acc("RNNEleScoreSigTrans_v1");
74  if(RNNEleScoreSigTrans_v1Acc.isAvailable(tau)) {
75  m_id_RNNEleScoreSigTrans->Fill(RNNEleScoreSigTrans_v1Acc(tau), weight);
76  }
77 
78  static const SG::ConstAccessor<char> acc_RNNEleLoose("EleRNNLoose_v1");
79  if(acc_RNNEleLoose.isAvailable(tau) && acc_RNNEleLoose(tau)){
82  }
83 
84  static const SG::ConstAccessor<char> acc_RNNEleMedium("EleRNNMedium_v1");
85  if(acc_RNNEleMedium.isAvailable(tau) && acc_RNNEleMedium(tau)){
88  }
89 
90  static const SG::ConstAccessor<char> acc_RNNEleTight("EleRNNTight_v1");
91  if(acc_RNNEleTight.isAvailable(tau) && acc_RNNEleTight(tau)){
94  }
95  }
96 }
97 
98 }
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
GeV
#define GeV
Definition: PhysicsAnalysis/TauID/TauAnalysisTools/Root/HelperFunctions.cxx:17
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:10
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:31
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:13
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
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
Units.h
Wrapper to avoid constant divisions when using units.
Tau::EVetoPlots::initializePlots
void initializePlots()
Definition: EVetoPlots.cxx:36
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:53
xAOD::TauJetParameters::EMRadius
@ EMRadius
Get E_T radius.
Definition: TauDefs.h:190