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
17
18 m_cellBased_neuPFO_Pt = Book1D("cellBased_PFO_n_Pt",m_sTauJetContainerName + " Neutral PFO pt; pt; # PFO",200,0.,200000.);
19 m_cellBased_neuPFO_Eta = Book1D("cellBased_PFO_n_Eta",m_sTauJetContainerName + " Neutral PFO eta; eta; # PFO",128,-3.2,3.2);
20 m_cellBased_neuPFO_Phi = Book1D("cellBased_PFO_n_Phi",m_sTauJetContainerName + " Neutral PFO phi; phi; # PFO",64,-3.2,3.2);
21 m_cellBased_neuPFO_E = Book1D("cellBased_PFO_n_E",m_sTauJetContainerName + " Neutral PFO E; E; # PFO",200,0.,200000.);
22 m_cellBased_neuPFO_bdtPi0Score = Book1D("cellBased_PFO_n_bdtPi0Score",m_sTauJetContainerName + " Neutral PFO BDT Pi0 Score; Score; # PFO",60,-1.0,1.0);
23
24 m_pantau_CellBasedInput_isPanTauCandidate = Book1D("pantau_CellBasedInput_isPanTauCandidate",m_sTauJetContainerName +"pantau_CellBasedInput_isPanTauCandidate", 2 ,0 ,2);
25 m_pantau_CellBasedInput_DecayMode = Book1D("pantau_CellBasedInput_DecayMode",m_sTauJetContainerName +"pantau_CellBasedInput_DecayMode", 6, -0.5, 5.5);
26 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.);
27 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.);
28 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.);
29 m_pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts = Book1D("pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts",10.,-0.5,9.5);
30 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);
31 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);
32 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);
33 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);
34 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);
35 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);
36 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.);
37 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);
38 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);
39 m_pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged = Book1D("pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged",30,0.,0.6);
40
41 }
42
43 void TauParticleFlowPlots::fill(const xAOD::TauJet& thisTau, float weight) {
44
45 //Access Particle Flow Object
46
47 //Neutral Pions
48 const std::vector< ElementLink< xAOD::PFOContainer > >& cellBased_neutralPFO = thisTau.protoNeutralPFOLinks();
49 for(const auto& link : cellBased_neutralPFO) {
50 const xAOD::PFO* PFO = *link;
51 m_cellBased_neuPFO_Pt->Fill(PFO->pt(), weight);
52 m_cellBased_neuPFO_Eta->Fill(PFO->eta(), weight);
53 m_cellBased_neuPFO_Phi->Fill(PFO->phi(), weight);
54 m_cellBased_neuPFO_E->Fill(PFO->e(), weight);
55 m_cellBased_neuPFO_bdtPi0Score->Fill(PFO->bdtPi0Score(), weight);
56 }
57
58 int panTauInteger = 0;
59 float panTauFloat = 0.;
60
62 m_pantau_CellBasedInput_isPanTauCandidate->Fill(panTauInteger, weight);
63
65 m_pantau_CellBasedInput_DecayMode->Fill(panTauInteger, weight);
66
68 m_pantau_CellBasedInput_BDTValue_1p0n_vs_1p1n->Fill(panTauFloat, weight);
69
71 m_pantau_CellBasedInput_BDTValue_1p1n_vs_1pXn->Fill(panTauFloat, weight);
72
74 m_pantau_CellBasedInput_BDTValue_3p0n_vs_3pXn->Fill(panTauFloat, weight);
75
77 m_pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts->Fill(panTauInteger, weight);
78
81
84
86 m_pantau_CellBasedInput_BDTVar_Charged_HLV_SumM->Fill(panTauFloat, weight);
87
89 m_pantau_CellBasedInput_BDTVar_Neutral_HLV_SumM->Fill(panTauFloat, weight);
90
93
96
99
102
105
108
109 m_oTauKinematicPlots.fill(thisTau, weight);
110 }
111
112}
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".