ATLAS Offline Software
NSubjettinessTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
19 #ifndef jetsubstructuremomenttools_nsubjetinesstool_header
20 #define jetsubstructuremomenttools_nsubjetinesstool_header
21 
24 
27 
31 
32  public:
33  // Constructor and destructor
34  NSubjettinessTool(const std::string& name);
35 
36  StatusCode initialize() override;
37 
38  StatusCode modify(xAOD::JetContainer& jets) const override;
39 
40  private:
41  Gaudi::Property<std::string> m_jetContainerName{
42  this, "JetContainer", "", "SG key for the input jet container"};
43 
52  struct moments_t{
55  std::string prefix;
56 
58  std::string suffix;
59 
61  float alpha;
62 
63  moments_t (float Alpha, const std::string& Prefix)
64  : prefix (Prefix),
65  suffix (GetAlphaSuffix(Alpha)),
66  alpha (Alpha) {}
67  };
68 
70  float m_Alpha;
71  std::vector<float> m_rawAlphaVals;
73 
75  std::vector<std::pair< float, moments_t >> m_moments;
76 
78  this, "Tau1_Keys", {}};
80  this, "Tau2_Keys", {}};
82  this, "Tau3_Keys", {}};
84  this, "Tau4_Keys", {}};
85 
87  this, "Tau2_ungroomed_Keys", {}};
89  this, "Tau3_ungroomed_Keys", {}};
91  this, "Tau4_ungroomed_Keys", {}};
92 
94  this, "Tau1_wta_Keys", {}};
96  this, "Tau2_wta_Keys", {}};
98  this, "Tau3_wta_Keys", {}};
100  this, "Tau4_wta_Keys", {}};
101 
103  this, "Tau2_wta_ungroomed_Keys", {}};
105  this, "Tau3_wta_ungroomed_Keys", {}};
107  this, "Tau4_wta_ungroomed_Keys", {}};
108 
109 };
110 
111 #endif
WriteDecorHandleKeyArray.h
NSubjettinessTool::modify
StatusCode modify(xAOD::JetContainer &jets) const override
Loop over calls to modifyJet.
Definition: NSubjettinessTool.cxx:123
NSubjettinessTool::m_Tau1_Keys
SG::WriteDecorHandleKeyArray< xAOD::JetContainer > m_Tau1_Keys
Definition: NSubjettinessTool.h:77
NSubjettinessTool::m_Tau4_ungroomed_Keys
SG::WriteDecorHandleKeyArray< xAOD::JetContainer > m_Tau4_ungroomed_Keys
Definition: NSubjettinessTool.h:90
PropertyWrapper.h
NSubjettinessTool::m_Tau2_ungroomed_Keys
SG::WriteDecorHandleKeyArray< xAOD::JetContainer > m_Tau2_ungroomed_Keys
Definition: NSubjettinessTool.h:86
NSubjettinessTool::moments_t::moments_t
moments_t(float Alpha, const std::string &Prefix)
Definition: NSubjettinessTool.h:63
GetAlphaSuffix
std::string GetAlphaSuffix(float alpha)
Definition: NSubjettinessHelper.cxx:10
NSubjettinessTool::m_Tau2_wta_ungroomed_Keys
SG::WriteDecorHandleKeyArray< xAOD::JetContainer > m_Tau2_wta_ungroomed_Keys
Definition: NSubjettinessTool.h:102
defineDB.jets
jets
Definition: JetTagCalibration/share/defineDB.py:24
NSubjettinessTool::m_Tau2_Keys
SG::WriteDecorHandleKeyArray< xAOD::JetContainer > m_Tau2_Keys
Definition: NSubjettinessTool.h:79
SG::HandleKeyArray
Definition: StoreGate/StoreGate/HandleKeyArray.h:38
NSubjettinessTool::m_Tau3_Keys
SG::WriteDecorHandleKeyArray< xAOD::JetContainer > m_Tau3_Keys
Definition: NSubjettinessTool.h:81
NSubjettinessTool::m_Tau3_wta_ungroomed_Keys
SG::WriteDecorHandleKeyArray< xAOD::JetContainer > m_Tau3_wta_ungroomed_Keys
Definition: NSubjettinessTool.h:104
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
JetSubStructureMomentToolsBase.h
NSubjettinessTool::m_Tau1_wta_Keys
SG::WriteDecorHandleKeyArray< xAOD::JetContainer > m_Tau1_wta_Keys
Definition: NSubjettinessTool.h:93
NSubjettinessTool::m_rawAlphaVals
std::vector< float > m_rawAlphaVals
Definition: NSubjettinessTool.h:71
NSubjettinessTool::initialize
StatusCode initialize() override
Dummy implementation of the initialisation function.
Definition: NSubjettinessTool.cxx:22
NSubjettinessTool::m_Tau4_Keys
SG::WriteDecorHandleKeyArray< xAOD::JetContainer > m_Tau4_Keys
Definition: NSubjettinessTool.h:83
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
NSubjettinessTool::m_Tau4_wta_Keys
SG::WriteDecorHandleKeyArray< xAOD::JetContainer > m_Tau4_wta_Keys
Definition: NSubjettinessTool.h:99
NSubjettinessTool::moments_t::suffix
std::string suffix
Suffix for decorations.
Definition: NSubjettinessTool.h:58
NSubjettinessTool::m_Alpha
float m_Alpha
Configurable as properties.
Definition: NSubjettinessTool.h:70
NSubjettinessTool::m_jetContainerName
Gaudi::Property< std::string > m_jetContainerName
Definition: NSubjettinessTool.h:41
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
NSubjettinessTool::m_Tau4_wta_ungroomed_Keys
SG::WriteDecorHandleKeyArray< xAOD::JetContainer > m_Tau4_wta_ungroomed_Keys
Definition: NSubjettinessTool.h:106
NSubjettinessTool::NSubjettinessTool
NSubjettinessTool(const std::string &name)
Definition: NSubjettinessTool.cxx:14
NSubjettinessTool::m_moments
std::vector< std::pair< float, moments_t > > m_moments
Map of decorators using alpha as the key.
Definition: NSubjettinessTool.h:75
NSubjettinessTool::m_Tau2_wta_Keys
SG::WriteDecorHandleKeyArray< xAOD::JetContainer > m_Tau2_wta_Keys
Definition: NSubjettinessTool.h:95
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
NSubjettinessTool::moments_t::prefix
std::string prefix
Prefix for decorations.
Definition: NSubjettinessTool.h:55
NSubjettinessTool::m_Tau3_ungroomed_Keys
SG::WriteDecorHandleKeyArray< xAOD::JetContainer > m_Tau3_ungroomed_Keys
Definition: NSubjettinessTool.h:88
JetSubStructureMomentToolsBase
Definition: JetSubStructureMomentToolsBase.h:18
NSubjettinessTool::moments_t::alpha
float alpha
Alpha value for calculations.
Definition: NSubjettinessTool.h:61
NSubjettinessTool::m_Tau3_wta_Keys
SG::WriteDecorHandleKeyArray< xAOD::JetContainer > m_Tau3_wta_Keys
Definition: NSubjettinessTool.h:97
NSubjettinessTool::m_doDichroic
bool m_doDichroic
Vector of input values before cleaning.
Definition: NSubjettinessTool.h:72
NSubjettinessTool
Definition: NSubjettinessTool.h:29
IJetModifier
IJetModifier is a dual-use tool interface for a tool that modifies a jet collection.
Definition: IJetModifier.h:20
NSubjettinessHelper.h