ATLAS Offline Software
Reconstruction
Jet
JetRec
JetRec
JetBottomUpSoftDrop.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
// JetBottomUpSoftDrop.h
6
7
#ifndef JetBottomUpSoftDrop_H
8
#define JetBottomUpSoftDrop_H
9
10
// Jennifer Roloff & Joe Taenzer
11
// October 2016
12
//
13
// Tool to groom jets with bottom up softdrop.
14
// SoftDrop is described in this paper: arXiv:1402.2657
15
// Bottom Up SoftDrop is described in this paper (under the name "Iterated SoftDrop": https://arxiv.org/pdf/1704.06266.pdf
16
// See also: https://fastjet.hepforge.org/trac/browser/contrib/contribs/RecursiveTools/tags/2.0.0-beta1/BottomUpSoftDrop.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/BottomUpSoftDrop.hh"
26
27
class
JetBottomUpSoftDrop
28
:
public
asg::AsgTool
,
29
virtual
public
IJetGroomer
{
30
ASG_TOOL_CLASS
(
JetBottomUpSoftDrop
,
IJetGroomer
)
31
32
public
:
33
34
// Ctor.
35
JetBottomUpSoftDrop
(
const
std::string&
name
);
36
37
// Dtor.
38
~JetBottomUpSoftDrop
();
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
// SoftDrop algorithm:
55
// z > zcut * (dR12/R0)^beta
56
// z = min(pT1, pT2)/(pT1+pT2)
57
// R0 = characteristic jet radius
58
float
m_zcut
;
// pT fraction for retaining subjets
59
float
m_beta
;
// How much to consider angular dependence
60
float
m_R0
;
// Normalization of angular distance, usually the characteristic jet radius (default R0 = 1)
61
ToolHandle<IJetFromPseudojet>
m_bld
;
// Tool to build jets.
62
63
};
64
65
#endif
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition:
AsgTool.h:47
JetBottomUpSoftDrop::JetBottomUpSoftDrop
JetBottomUpSoftDrop(const std::string &name)
Definition:
JetBottomUpSoftDrop.cxx:22
JetBottomUpSoftDrop::m_zcut
float m_zcut
Definition:
JetBottomUpSoftDrop.h:58
JetBottomUpSoftDrop::print
void print() const
Print the state of the tool.
Definition:
JetBottomUpSoftDrop.cxx:100
PseudoJetContainer
Definition:
PseudoJetContainer.h:48
IJetFromPseudojet.h
IJetGroomer.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
JetBottomUpSoftDrop::groom
int groom(const xAOD::Jet &jin, const PseudoJetContainer &, xAOD::JetContainer &jout) const
Transform jet.
Definition:
JetBottomUpSoftDrop.cxx:58
DataVector
Derived DataVector<T>.
Definition:
DataVector.h:794
JetBottomUpSoftDrop::m_bld
ToolHandle< IJetFromPseudojet > m_bld
Definition:
JetBottomUpSoftDrop.h:61
JetBottomUpSoftDrop::m_R0
float m_R0
Definition:
JetBottomUpSoftDrop.h:60
name
std::string name
Definition:
Control/AthContainers/Root/debug.cxx:228
JetBottomUpSoftDrop
Definition:
JetBottomUpSoftDrop.h:29
JetBottomUpSoftDrop::~JetBottomUpSoftDrop
~JetBottomUpSoftDrop()
xAOD::Jet_v1
Class describing a jet.
Definition:
Jet_v1.h:57
JetBottomUpSoftDrop::m_beta
float m_beta
Definition:
JetBottomUpSoftDrop.h:59
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition:
AsgToolMacros.h:68
IJetGroomer
Definition:
IJetGroomer.h:23
ToolHandle.h
AsgTool.h
JetBottomUpSoftDrop::initialize
StatusCode initialize()
Dummy implementation of the initialisation function.
Definition:
JetBottomUpSoftDrop.cxx:36
Generated on Sun Dec 22 2024 21:12:21 for ATLAS Offline Software by
1.8.18