ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Reconstruction
Jet
JetRec
JetRec
JetRecursiveSoftDrop.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
// JetRecursiveSoftDrop.h
6
7
#ifndef JetRecursiveSoftDrop_H
8
#define JetRecursiveSoftDrop_H
9
10
// Jennifer Roloff & Joe Taenzer
11
// August 2017
12
//
13
// Tool to groom jets with recursive softdrop.
14
// SoftDrop is described in this paper: arXiv:1402.2657
15
// Recursive SoftDrop is described in this Boost2017 contribution: https://indico.cern.ch/event/579660/contributions/2582124/
16
// See also: https://fastjet.hepforge.org/trac/browser/contrib/contribs/RecursiveTools/tags/2.0.0-beta1/RecursiveSoftDrop.hh
17
18
#include "
AsgTools/AsgTool.h
"
19
#include "
JetInterface/IJetGroomer.h
"
20
#include "
JetInterface/IJetFromPseudojet.h
"
21
#include "
AsgTools/ToolHandle.h
"
22
23
#include "fastjet/ClusterSequence.hh"
24
#include "fastjet/contrib/RecursiveSymmetryCutBase.hh"
25
#include "fastjet/contrib/RecursiveSoftDrop.hh"
26
27
class
JetRecursiveSoftDrop
28
:
public
asg::AsgTool
,
29
virtual
public
IJetGroomer
{
30
ASG_TOOL_CLASS
(
JetRecursiveSoftDrop
,
IJetGroomer
)
31
32
public
:
33
34
// Ctor.
35
JetRecursiveSoftDrop
(
const
std::string& name);
36
37
// Dtor.
38
~JetRecursiveSoftDrop
();
39
40
// Initilization.
41
StatusCode
initialize
();
42
43
// Groom a jet and add result to a container.
44
int
groom
(
const
xAOD::Jet
& jin,
45
const
PseudoJetContainer
&,
46
xAOD::JetContainer
& jout)
const
;
47
48
// Dump to log.
49
void
print
()
const
;
50
51
private
:
// data
52
53
// Job options.
54
// Recursive SoftDrop algorithm:
55
// z > zcut * (dR12/R0)^beta
56
// z = min(pT1, pT2)/(pT1+pT2)
57
// R0 = characteristic jet radius
58
// N : algorithm terminates after passing SoftDrop condition N times
59
// (Standard SoftDrop terminates after passing it once)
60
float
m_zcut
;
// pT fraction for retaining subjets
61
float
m_beta
;
// How much to consider angular dependence
62
int
m_N
;
// Number of layers (-1 <> infinite)
63
float
m_R0
;
// Normalization of angular distance, usually the characteristic jet radius (default R0 = 1)
64
ToolHandle<IJetFromPseudojet>
m_bld
;
// Tool to build jets.
65
66
};
67
68
#endif
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition
AsgToolMacros.h:68
AsgTool.h
IJetFromPseudojet.h
IJetGroomer.h
ToolHandle.h
IJetGroomer::IJetGroomer
IJetGroomer()
Ctor.
Definition
IJetGroomer.cxx:11
JetRecursiveSoftDrop::m_beta
float m_beta
Definition
JetRecursiveSoftDrop.h:61
JetRecursiveSoftDrop::m_bld
ToolHandle< IJetFromPseudojet > m_bld
Definition
JetRecursiveSoftDrop.h:64
JetRecursiveSoftDrop::m_zcut
float m_zcut
Definition
JetRecursiveSoftDrop.h:60
JetRecursiveSoftDrop::~JetRecursiveSoftDrop
~JetRecursiveSoftDrop()
JetRecursiveSoftDrop::JetRecursiveSoftDrop
JetRecursiveSoftDrop(const std::string &name)
Definition
JetRecursiveSoftDrop.cxx:19
JetRecursiveSoftDrop::initialize
StatusCode initialize()
Dummy implementation of the initialisation function.
Definition
JetRecursiveSoftDrop.cxx:34
JetRecursiveSoftDrop::print
void print() const
Print the state of the tool.
Definition
JetRecursiveSoftDrop.cxx:103
JetRecursiveSoftDrop::m_N
int m_N
Definition
JetRecursiveSoftDrop.h:62
JetRecursiveSoftDrop::m_R0
float m_R0
Definition
JetRecursiveSoftDrop.h:63
JetRecursiveSoftDrop::groom
int groom(const xAOD::Jet &jin, const PseudoJetContainer &, xAOD::JetContainer &jout) const
Transform jet.
Definition
JetRecursiveSoftDrop.cxx:60
PseudoJetContainer
Definition
PseudoJetContainer.h:48
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition
AsgTool.h:47
xAOD::Jet
Jet_v1 Jet
Definition of the current "jet version".
Definition
Event/xAOD/xAODJet/xAODJet/Jet.h:17
xAOD::JetContainer
JetContainer_v1 JetContainer
Definition of the current "jet container version".
Definition
JetContainer.h:17
Generated on
for ATLAS Offline Software by
1.17.0