ATLAS Offline Software
Loading...
Searching...
No Matches
JetSubStructureUtils::KtSplittingScale Class Reference

#include <KtSplittingScale.h>

Inheritance diagram for JetSubStructureUtils::KtSplittingScale:
Collaboration diagram for JetSubStructureUtils::KtSplittingScale:

Public Member Functions

 KtSplittingScale (unsigned int nSubJets)
virtual double result (const fastjet::PseudoJet &jet) const
virtual TOut result (const xAOD::Jet &jet) const

Private Attributes

unsigned int m_nSubJets

Detailed Description

Definition at line 11 of file KtSplittingScale.h.

Constructor & Destructor Documentation

◆ KtSplittingScale()

JetSubStructureUtils::KtSplittingScale::KtSplittingScale ( unsigned int nSubJets)
inline

Definition at line 13 of file KtSplittingScale.h.

13: m_nSubJets(nSubJets) {};

Member Function Documentation

◆ result() [1/2]

double KtSplittingScale::result ( const fastjet::PseudoJet & jet) const
virtual

Definition at line 12 of file KtSplittingScale.cxx.

13{
14 if(jet.constituents().empty()) return -1;
15
16 fastjet::JetDefinition jet_def = fastjet::JetDefinition(fastjet::kt_algorithm, 1.5,
17 fastjet::E_scheme, fastjet::Best);
18 fastjet::ClusterSequence kt_clust_seq(jet.constituents(), jet_def);
19 fastjet::PseudoJet kt_jet = fastjet::sorted_by_pt(kt_clust_seq.inclusive_jets()).front();
20 double split = 1.5*sqrt(kt_clust_seq.exclusive_subdmerge(kt_jet, m_nSubJets));
21 return split;
22}
std::vector< std::string > split(const std::string &s, const std::string &t=":")
Definition hcg.cxx:177

◆ result() [2/2]

virtual TOut JetSubStructureUtils::SubstructureCalculator< TOut >::result ( const xAOD::Jet & jet) const
inlinevirtual

Reimplemented from JetSubStructureUtils::SubstructureCalculator< double >.

Definition at line 25 of file SubstructureCalculator.h.

25 {
26 // PS 4/18 master developent
27 // std::vector<fastjet::PseudoJet> constit_pseudojets =
28 // jet::JetConstituentFiller::constituentPseudoJets(jet);
29
30 std::vector<fastjet::PseudoJet> constit_pseudojets;
31 std::transform(jet.getConstituents().begin(),
32 jet.getConstituents().end(),
33 std::back_inserter(constit_pseudojets),
34 [](const auto& c){
35 const xAOD::IParticle* ip = c->rawConstituent();
36 return
37 // fastjet::PseudoJet((c->rawConstituent())->p4());
38 fastjet::PseudoJet(ip->p4());
39 });
40
41 fastjet::PseudoJet pjet = fastjet::join(constit_pseudojets);
42
43 return result(pjet);
44 }
virtual double result(const fastjet::PseudoJet &jet) const
iterator begin() const
iterator on the first constituent
iterator end() const
iterator after the last constituent
JetConstituentVector getConstituents() const
Return a vector of consituents. The object behaves like vector<const IParticle*>. See JetConstituentV...
Definition Jet_v1.cxx:147

Member Data Documentation

◆ m_nSubJets

unsigned int JetSubStructureUtils::KtSplittingScale::m_nSubJets
private

Definition at line 19 of file KtSplittingScale.h.


The documentation for this class was generated from the following files: