ATLAS Offline Software
Loading...
Searching...
No Matches
TauParticleFlowPlots.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
6
7namespace Tau{
8
9 TauParticleFlowPlots::TauParticleFlowPlots(PlotBase* pParent, const std::string& sDir, const std::string& sTauJetContainerName):
10 PlotBase(pParent, sDir),
11 m_oTauKinematicPlots(this, "", sTauJetContainerName),
12 m_sTauJetContainerName(sTauJetContainerName)
13 {
14 }
15
19
21
22 m_cellBased_neuPFO_Pt = Book1D("cellBased_PFO_n_Pt",m_sTauJetContainerName + " Neutral PFO pt; pt; # PFO",200,0.,200000.);
23 m_cellBased_neuPFO_Eta = Book1D("cellBased_PFO_n_Eta",m_sTauJetContainerName + " Neutral PFO eta; eta; # PFO",128,-3.2,3.2);
24 m_cellBased_neuPFO_Phi = Book1D("cellBased_PFO_n_Phi",m_sTauJetContainerName + " Neutral PFO phi; phi; # PFO",64,-3.2,3.2);
25 m_cellBased_neuPFO_E = Book1D("cellBased_PFO_n_E",m_sTauJetContainerName + " Neutral PFO E; E; # PFO",200,0.,200000.);
26 m_cellBased_neuPFO_bdtPi0Score = Book1D("cellBased_PFO_n_bdtPi0Score",m_sTauJetContainerName + " Neutral PFO BDT Pi0 Score; Score; # PFO",60,-1.0,1.0);
27
28 m_pantau_CellBasedInput_isPanTauCandidate = Book1D("pantau_CellBasedInput_isPanTauCandidate",m_sTauJetContainerName +"pantau_CellBasedInput_isPanTauCandidate", 2 ,0 ,2);
29 m_pantau_CellBasedInput_DecayMode = Book1D("pantau_CellBasedInput_DecayMode",m_sTauJetContainerName +"pantau_CellBasedInput_DecayMode", 6, -0.5, 5.5);
30 m_pantau_CellBasedInput_BDTValue_1p0n_vs_1p1n = Book1D("pantau_CellBasedInput_BDTValue_1p0n_vs_1p1n",m_sTauJetContainerName + "pantau_CellBasedInput_BDTValue_1p0n_vs_1p1n",30,-1.,1.);
31 m_pantau_CellBasedInput_BDTValue_1p1n_vs_1pXn = Book1D("pantau_CellBasedInput_BDTValue_1p1n_vs_1pXn",m_sTauJetContainerName + "pantau_CellBasedInput_BDTValue_1p1n_vs_1pXn",30,-1.,1.);
32 m_pantau_CellBasedInput_BDTValue_3p0n_vs_3pXn = Book1D("pantau_CellBasedInput_BDTValue_3p0n_vs_3pXn",m_sTauJetContainerName + "pantau_CellBasedInput_BDTValue_3p0n_vs_3pXn",30,-1.,1.);
33 m_pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts = Book1D("pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts",10.,-0.5,9.5);
34 m_pantau_CellBasedInput_BDTVar_Charged_JetMoment_EtDRxTotalEt = Book1D("pantau_CellBasedInput_BDTVar_Charged_JetMoment_EtDRxTotalEt",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Charged_JetMoment_EtDRxTotalEt", 30, 0.0, 4000.0);
35 m_pantau_CellBasedInput_BDTVar_Charged_StdDev_Et_WrtEtAllConsts = Book1D("pantau_CellBasedInput_BDTVar_Charged_StdDev_Et_WrtEtAllConsts",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Charged_StdDev_Et_WrtEtAllConsts",30,0.,0.6);
36 m_pantau_CellBasedInput_BDTVar_Charged_HLV_SumM = Book1D("pantau_CellBasedInput_BDTVar_Charged_HLV_SumM",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Charged_HLV_SumM", 30, 0.0, 4000.0);
37 m_pantau_CellBasedInput_BDTVar_Neutral_HLV_SumM = Book1D("pantau_CellBasedInput_BDTVar_Neutral_HLV_SumM",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_HLV_SumM", 30, 0.0, 4000.0);
38 m_pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_1 = Book1D("pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_1",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_1",30,-1.5,1.5);
39 m_pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_2 = Book1D("pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_2",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_2",30,-1.5,1.5);
40 m_pantau_CellBasedInput_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts = Book1D("pantau_CellBasedInput_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts",30,0.,1.);
41 m_pantau_CellBasedInput_BDTVar_Neutral_Ratio_EtOverEtAllConsts = Book1D("pantau_CellBasedInput_BDTVar_Neutral_Ratio_EtOverEtAllConsts",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_Ratio_EtOverEtAllConsts",30,-0.5,1.2);
42 m_pantau_CellBasedInput_BDTVar_Neutral_Shots_NPhotonsInSeed = Book1D("pantau_CellBasedInput_BDTVar_Neutral_Shots_NPhotonsInSeed",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_Shots_NPhotonsInSeed",10,-0.5,9.5);
43 m_pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged = Book1D("pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged",30,0.,0.6);
44
45 }
46
47 void TauParticleFlowPlots::fill(const xAOD::TauJet& thisTau, float weight) {
48
49 //Access Particle Flow Object
50
51 //Neutral Pions
52 const std::vector< ElementLink< xAOD::PFOContainer > >& cellBased_neutralPFO = thisTau.protoNeutralPFOLinks();
53 for(const auto& link : cellBased_neutralPFO) {
54 const xAOD::PFO* PFO = *link;
55 m_cellBased_neuPFO_Pt->Fill(PFO->pt(), weight);
56 m_cellBased_neuPFO_Eta->Fill(PFO->eta(), weight);
57 m_cellBased_neuPFO_Phi->Fill(PFO->phi(), weight);
58 m_cellBased_neuPFO_E->Fill(PFO->e(), weight);
59 m_cellBased_neuPFO_bdtPi0Score->Fill(PFO->bdtPi0Score(), weight);
60 }
61
62 int panTauInteger = 0;
63 float panTauFloat = 0.;
64
66 m_pantau_CellBasedInput_isPanTauCandidate->Fill(panTauInteger, weight);
67
69 m_pantau_CellBasedInput_DecayMode->Fill(panTauInteger, weight);
70
72 m_pantau_CellBasedInput_BDTValue_1p0n_vs_1p1n->Fill(panTauFloat, weight);
73
75 m_pantau_CellBasedInput_BDTValue_1p1n_vs_1pXn->Fill(panTauFloat, weight);
76
78 m_pantau_CellBasedInput_BDTValue_3p0n_vs_3pXn->Fill(panTauFloat, weight);
79
81 m_pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts->Fill(panTauInteger, weight);
82
85
88
90 m_pantau_CellBasedInput_BDTVar_Charged_HLV_SumM->Fill(panTauFloat, weight);
91
93 m_pantau_CellBasedInput_BDTVar_Neutral_HLV_SumM->Fill(panTauFloat, weight);
94
97
100
103
106
109
112
113 m_oTauKinematicPlots.fill(thisTau, weight);
114 }
115
116}
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
PlotBase(PlotBase *parent, const std::string &sDir)
Definition PlotBase.cxx:29
TauParticleFlowPlots(PlotBase *pParent, const std::string &sDir, const std::string &sTauJetContainerName)
TH1 * m_pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_2
TH1 * m_pantau_CellBasedInput_BDTVar_Neutral_Shots_NPhotonsInSeed
void fill(const xAOD::TauJet &tau, float weight)
TH1 * m_pantau_CellBasedInput_BDTVar_Charged_StdDev_Et_WrtEtAllConsts
TH1 * m_pantau_CellBasedInput_BDTVar_Charged_JetMoment_EtDRxTotalEt
TH1 * m_pantau_CellBasedInput_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts
TH1 * m_pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged
TH1 * m_pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_1
TH1 * m_pantau_CellBasedInput_BDTVar_Neutral_Ratio_EtOverEtAllConsts
Tau::TauKinematicPlots m_oTauKinematicPlots
bool panTauDetail(TauJetParameters::PanTauDetails panTauDetail, int &value) const
Get and set values of pantau details variables via enum.
const PFOLinks_t & protoNeutralPFOLinks() const
@ PanTau_BDTVar_Neutral_PID_BDTValues_BDTSort_2
Definition TauDefs.h:371
@ PanTau_BDTVar_Charged_JetMoment_EtDRxTotalEt
Definition TauDefs.h:367
@ PanTau_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts
Definition TauDefs.h:372
@ PanTau_BDTVar_Neutral_PID_BDTValues_BDTSort_1
Definition TauDefs.h:370
@ PanTau_BDTVar_Combined_DeltaR1stNeutralTo1stCharged
Definition TauDefs.h:375
@ PanTau_BDTVar_Neutral_Ratio_EtOverEtAllConsts
Definition TauDefs.h:373
@ PanTau_BDTVar_Charged_StdDev_Et_WrtEtAllConsts
Definition TauDefs.h:368
@ PanTau_BDTVar_Neutral_Shots_NPhotonsInSeed
Definition TauDefs.h:374
PFO_v1 PFO
Definition of the current "pfo version".
Definition PFO.h:17
TauJet_v3 TauJet
Definition of the current "tau version".