ATLAS Offline Software
Loading...
Searching...
No Matches
RCJetSubstructureAug.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5// Author: G. Albouy (galbouy@lpsc.in2p3.fr)
6// This tool computes substructure variables for ReClustered jets
7// from LCTopo clusters ghost associated to RC jets
8// by constructing cluster jets
9
10#ifndef DERIVATIONFRAMEWORK_RCJetSubstructureAug_H
11#define DERIVATIONFRAMEWORK_RCJetSubstructureAug_H
12
13#include "fastjet/tools/Filter.hh"
14#include "fastjet/contrib/SoftDrop.hh"
15
21#include <string>
22#include <optional>
23
25
26namespace DerivationFramework {
28 class RCJetSubstructureAug : public extends<ExpressionParserUser<AthAlgTool, kNumJetParser>, IAugmentationTool> {
29 public:
30
31 using base_class::base_class;
32
33 virtual StatusCode initialize() override final;
34 virtual StatusCode addBranches(const EventContext& ctx) const override final;
35
36 private:
37
38 StringProperty m_streamName
39 { this, "StreamName", "", "Name of the stream" };
40 Gaudi::Property< std::vector<std::string> > m_ghostNames
41 { this, "GhostConstitNames", {"GhostLCTopo"}, "Names of the ghost constituents for substructure computation"};
42 StringProperty m_selectionString
43 { this, "SelectionString", "", "Selection to apply to jet"};
44 StringProperty m_grooming
45 { this, "Grooming", "", "Name of gromming technic to apply (Trimming or SofDrop)"};
46
47 Gaudi::Property<float> m_rclus
48 {this, "RClusTrim", 0.3 , "R for reclustering (0 for none)"};
49 Gaudi::Property<float> m_ptfrac
50 {this, "PtFracTrim", 0.03, "pT fraction for retaining subjets"};
51 Gaudi::Property<float> m_beta
52 {this, "BetaSoft", 1. , "How much to consider angular dependence"};
53 Gaudi::Property<float> m_zcut
54 {this, "ZcutSoft", 1. , "pT fraction for retaining subjets"};
55 Gaudi::Property<float> m_R0
56 {this, "R0Soft", 1. , "Normalization of angular distance, usually the characteristic jet radius (default R0 = 1)"};
57
59 { this, "JetContainerKey", ""};
60
62
64 WDHK m_dec_Qw { this, "dec_Qw", m_jetKey, "Qw_" };
65
67 WDHK m_dec_Tau1 { this, "dec_Tau1", m_jetKey, "Tau1_" };
68 WDHK m_dec_Tau2 { this, "dec_Tau2", m_jetKey, "Tau2_" };
69 WDHK m_dec_Tau3 { this, "dec_Tau3", m_jetKey, "Tau3_" };
70 WDHK m_dec_Tau4 { this, "dec_Tau4", m_jetKey, "Tau4_" };
71 WDHK m_dec_Tau21 { this, "dec_Tau21", m_jetKey, "Tau21_" };
72 WDHK m_dec_Tau32 { this, "dec_Tau32", m_jetKey, "Tau32_" };
73
75 WDHK m_dec_Split12 { this, "dec_Split12", m_jetKey, "Split12_" };
76 WDHK m_dec_Split23 { this, "dec_Split23", m_jetKey, "Split23_" };
77 WDHK m_dec_Split34 { this, "dec_Split34", m_jetKey, "Split34_" };
78
80 WDHK m_dec_ECF1 { this, "dec_ECF1", m_jetKey, "ECF1_" };
81 WDHK m_dec_ECF2 { this, "dec_ECF2", m_jetKey, "ECF2_" };
82 WDHK m_dec_ECF3 { this, "dec_ECF3", m_jetKey, "ECF3_" };
83 WDHK m_dec_ECF4 { this, "dec_ECF4", m_jetKey, "ECF4_" };
84 WDHK m_dec_C2 { this, "dec_C2", m_jetKey, "C2_" };
85 WDHK m_dec_D2 { this, "dec_D2", m_jetKey, "D2_" };
86
88 WDHK m_dec_pT { this, "dec_pT", m_jetKey, "pT_" };
89 WDHK m_dec_m { this, "dec_m", m_jetKey, "m_" };
90 WDHK m_dec_NConstits { this, "dec_NConstits", m_jetKey, "NConstits_" };
91 WDHK m_dec_eta { this, "dec_eta", m_jetKey, "eta_" };
92 WDHK m_dec_phi { this, "dec_phi", m_jetKey, "phi_" };
93
95 WDHK m_dec_timing { this, "dec_timing", m_jetKey, "timing_" };
96
97 // The filter object that will apply the grooming
98 std::optional<fastjet::Filter> m_trimmer;
99 std::optional<fastjet::contrib::SoftDrop> m_softdropper;
100 };
101
102}
103
104#endif // DERIVATIONFRAMEWORK_RCJetSubstructureAug_H
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
WDHK m_dec_ECF1
Energy correlation factors decorators.
SG::ReadHandleKey< xAOD::JetContainer > m_jetKey
SG::WriteDecorHandleKey< xAOD::JetContainer > WDHK
WDHK m_dec_pT
Reclustered jets information decorators.
virtual StatusCode addBranches(const EventContext &ctx) const override final
WDHK m_dec_Split12
KtSplittingScale decorators.
std::optional< fastjet::contrib::SoftDrop > m_softdropper
std::optional< fastjet::Filter > m_trimmer
virtual StatusCode initialize() override final
Gaudi::Property< std::vector< std::string > > m_ghostNames
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
THE reconstruction tool.