ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Reconstruction
Jet
JetRecTools
JetRecTools
Puppi.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
#include "fastjet/internal/base.hh"
5
#include "fastjet/PseudoJet.hh"
6
7
#ifndef JETRECTOOLS_PUPPI_h
8
#define JETRECTOOLS_PUPPI_h
9
10
//This class can be used to pass in otherchi2 values for each PFO
11
class
PuppiUserInfo
:
public
fastjet::PseudoJet::UserInfoBase{
12
public
:
13
PuppiUserInfo
();
14
PuppiUserInfo
(
const
std::vector<double>&);
15
PuppiUserInfo
(
double
);
16
17
std::vector<double>
otherChi2Vec
;
18
};
19
20
//=================================================================================================================================
21
22
class
Puppi
{
23
24
public
:
25
Puppi
(
double
R0,
double
Rmin,
double
beta,
double
centralPTCutOffset,
double
centralPTCutSlope,
double
forwardPTCutOffset,
double
forwardPTCutSlope,
double
etaBoundary);
26
27
void
setParticles
(
const
std::vector<fastjet::PseudoJet>& chargedHS,
const
std::vector<fastjet::PseudoJet>& chargedPU,
const
std::vector<fastjet::PseudoJet>& neutral,
const
std::vector<fastjet::PseudoJet>& forward,
int
nPU);
28
29
// Returns the weight that would be applied to a particle (assuming it is neutral or forward)
30
double
getWeight
(
const
fastjet::PseudoJet& pfo);
31
32
// Returns the value of alpha for this particle
33
double
getAlpha
(
const
fastjet::PseudoJet& pfo);
34
35
double
getMedian
();
36
double
getRMS
();
37
38
private
:
39
40
double
getChi2
(
const
fastjet::PseudoJet& pfo);
41
42
void
findAlphaMedianAndRMS
();
43
44
std::vector<fastjet::PseudoJet>
m_chargedHS
;
45
std::vector<fastjet::PseudoJet>
m_chargedPU
;
46
std::vector<fastjet::PseudoJet>
m_neutral
;
47
std::vector<fastjet::PseudoJet>
m_forward
;
48
49
std::vector< std::vector< fastjet::PseudoJet >* >
m_allParticles
;
50
51
double
m_R0
{};
52
double
m_Rmin
{};
53
double
m_beta
{};
54
double
m_centralPTCutOffset
{};
55
double
m_centralPTCutSlope
{};
56
double
m_forwardPTCutOffset
{};
57
double
m_forwardPTCutSlope
{};
58
double
m_etaBoundary
{};
59
bool
m_includeCentralNeutralsInAlpha
{};
60
61
double
m_median
{};
62
double
m_rms
{};
63
64
double
m_nPV
{};
65
66
};
67
68
#endif
69
//FASTJET_END_NAMESPACE
PuppiUserInfo::otherChi2Vec
std::vector< double > otherChi2Vec
Definition
Puppi.h:17
PuppiUserInfo::PuppiUserInfo
PuppiUserInfo()
Definition
Puppi.cxx:13
Puppi::m_etaBoundary
double m_etaBoundary
Definition
Puppi.h:58
Puppi::m_chargedHS
std::vector< fastjet::PseudoJet > m_chargedHS
Definition
Puppi.h:44
Puppi::getMedian
double getMedian()
Definition
Puppi.cxx:163
Puppi::m_includeCentralNeutralsInAlpha
bool m_includeCentralNeutralsInAlpha
Definition
Puppi.h:59
Puppi::m_neutral
std::vector< fastjet::PseudoJet > m_neutral
Definition
Puppi.h:46
Puppi::m_centralPTCutSlope
double m_centralPTCutSlope
Definition
Puppi.h:55
Puppi::Puppi
Puppi(double R0, double Rmin, double beta, double centralPTCutOffset, double centralPTCutSlope, double forwardPTCutOffset, double forwardPTCutSlope, double etaBoundary)
Definition
Puppi.cxx:19
Puppi::findAlphaMedianAndRMS
void findAlphaMedianAndRMS()
Definition
Puppi.cxx:133
Puppi::m_allParticles
std::vector< std::vector< fastjet::PseudoJet > * > m_allParticles
Definition
Puppi.h:49
Puppi::setParticles
void setParticles(const std::vector< fastjet::PseudoJet > &chargedHS, const std::vector< fastjet::PseudoJet > &chargedPU, const std::vector< fastjet::PseudoJet > &neutral, const std::vector< fastjet::PseudoJet > &forward, int nPU)
Definition
Puppi.cxx:26
Puppi::getAlpha
double getAlpha(const fastjet::PseudoJet &pfo)
Definition
Puppi.cxx:83
Puppi::m_forward
std::vector< fastjet::PseudoJet > m_forward
Definition
Puppi.h:47
Puppi::m_centralPTCutOffset
double m_centralPTCutOffset
Definition
Puppi.h:54
Puppi::m_median
double m_median
Definition
Puppi.h:61
Puppi::m_nPV
double m_nPV
Definition
Puppi.h:64
Puppi::m_R0
double m_R0
Definition
Puppi.h:51
Puppi::m_chargedPU
std::vector< fastjet::PseudoJet > m_chargedPU
Definition
Puppi.h:45
Puppi::m_Rmin
double m_Rmin
Definition
Puppi.h:52
Puppi::m_rms
double m_rms
Definition
Puppi.h:62
Puppi::getWeight
double getWeight(const fastjet::PseudoJet &pfo)
Definition
Puppi.cxx:49
Puppi::getChi2
double getChi2(const fastjet::PseudoJet &pfo)
Definition
Puppi.cxx:42
Puppi::m_forwardPTCutOffset
double m_forwardPTCutOffset
Definition
Puppi.h:56
Puppi::getRMS
double getRMS()
Definition
Puppi.cxx:166
Puppi::m_forwardPTCutSlope
double m_forwardPTCutSlope
Definition
Puppi.h:57
Puppi::m_beta
double m_beta
Definition
Puppi.h:53
Generated on
for ATLAS Offline Software by
1.17.0