38 std::map<std::string, std::string> scale2str( {
39 {
"JetEMScaleMomentum" ,
"EMScale" } ,
40 {
"JetConstitScaleMomentum" ,
"ConstitScale" } } );
43 TString prefixn = scaleTag;
44 if(prefixn !=
"") prefixn +=
"_";
48 TH1::AddDirectory(kFALSE);
49 m_pt =
bookHisto(
new TH1F(prefixn+
"pt" ,
"Jet P_{T};P_{T} (GeV);Entries", 100,0,200) );
50 m_eta =
bookHisto(
new TH1F(prefixn+
"eta" ,
"Jet #eta;#eta;Entries", 50,-6,6) );
51 m_phi =
bookHisto(
new TH1F(prefixn+
"phi" ,
"Jet #phi;#phi;Entries", 50,-3.3,3.3) );
54 m_pt_high =
bookHisto(
new TH1F(prefixn+
"pt_high" ,
"Jet P_{T} pT.gt.200 GeV;P_{T} (GeV);Entries", 100,0,4000) );
55 m_eta_high =
bookHisto(
new TH1F(prefixn+
"eta_high" ,
"Jet #eta pT.gt.200 GeV;#eta;Entries", 50,-6,6) );
59 m_m =
bookHisto(
new TH1F(prefixn+
"M" ,
"Jet Mass;Mass (GeV);Entries", 80,-5, 400) );
60 m_m_high =
bookHisto(
new TH1F(prefixn+
"M_high" ,
"Jet Mass pT.gt.200;Mass (GeV) pT.gt.200 GeV;Entries", 80,-5, 400) );
64 m_e =
bookHisto(
new TH1F(prefixn+
"E" ,
"Jet Energy;Energy (GeV);Entries", 100,1, 400) );
65 m_e_high =
bookHisto(
new TH1F(prefixn+
"E_high" ,
"Jet Energy pT.gt.200 GeV;Energy (GeV);Entries", 100,1, 2000) );
69 m_njet =
bookHisto(
new TH1F(prefixn+
"num" ,
"Jet multiplicity;Number of jets;Entries", 40,0,40) );
70 m_njet_passJVT =
bookHisto(
new TH1F(prefixn+
"num_passJVT" ,
"Jet multiplicity (passing JVT cut);Number of jets (passing JVT);Entries", 40,0,40) );
71 m_njet_failJVT =
bookHisto(
new TH1F(prefixn+
"num_failJVT" ,
"Jet multiplicity (failing JVT cut);Number of jets (failing JVT);Entries", 40,0,40) );
78 m_nConstit =
bookHisto(
new TH1F(prefixn+
"numconstit",
"Number of constituents;N;",100,0,100) );
79 m_nConstit_high =
bookHisto(
new TH1F(prefixn+
"numconstit_high",
"Number of constituents pT.gt.200 GeV;N;",100,0,200) );
81 TH1::AddDirectory(kTRUE);
88 TString
tags[] = { scaleTag};
89 for(
const auto& t :
tags ) {
if(qualif !=
"(") qualif+=
",";qualif += t; }
93 TString t = hdata.hist->GetTitle(); t+=
" "+qualif;
94 hdata.hist->SetTitle(t );
109 int counter_passJVT = 0;
110 int counter_failJVT = 0;
112 float JVT_cut = 0.50;
123 for(
const auto *
jet : cont){
125 if(JvtAcc(*
jet) > JVT_cut) counter_passJVT++;
126 else counter_failJVT++;
150 m_eta->Fill( p4.Eta(), weight );
151 m_phi->Fill( p4.Phi(), weight );
152 if (p4.Pt()*
toGeV > 200.0){
Helper class to provide constant type-safe access to aux data.
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
size_type size() const noexcept
Returns the number of elements in the collection.
bool empty() const noexcept
Returns true if the collection is empty.
std::vector< HistData > m_vBookedHistograms
The list of histos in this group.
T * bookHisto(T *h, Interval_t ityp=useToolInterval)
register the histo h in this group (if h!=NULL). The histo name is changed if m_prefixedHistoName==tr...
JetHistoBase(const std::string &t)
virtual int fillHistosFromContainer(const xAOD::JetContainer &cont, float weight)
JetKinematicHistos(const std::string &t)
virtual int buildHistos()
virtual int fillHistosFromJet(const xAOD::Jet &j, float weight)
virtual int fillHistosFromContainer(const xAOD::JetContainer &cont, float weight)
TProfile2D * m_averageE_EtaPhi
TProfile2D * m_averagePtEtaPhi
Helper class to provide constant type-safe access to aux data.
bool isAvailable(const ELT &e) const
Test to see if this variable exists in the store.
size_t numConstituents() const
Number of constituents in this jets (this is valid even when reading a file where the constituents ha...
JetFourMom_t jetP4() const
The full 4-momentum of the particle : internal jet type.
std::vector< std::string > tags
Jet_v1 Jet
Definition of the current "jet version".
JetContainer_v1 JetContainer
Definition of the current "jet container version".
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > JetFourMom_t
Base 4 Momentum type for Jet.