ATLAS Offline Software
Reconstruction
egamma
egammaPerformance
src
MonitorTnPAlgorithm.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3
4
Author : B. Laforge (laforge@lpnhe.in2p3.fr)
5
4 May 2020
6
*/
7
8
9
#ifndef MonitorTnPAlgorithm_H
10
#define MonitorTnPAlgorithm_H
11
12
#include "
AthenaMonitoring/AthMonitorAlgorithm.h
"
13
#include "
StoreGate/ReadDecorHandleKeyArray.h
"
14
#include "
AthenaMonitoringKernel/Monitored.h
"
15
16
#include "
xAODEgamma/Electron.h
"
17
#include "
xAODEgamma/ElectronContainer.h
"
18
#include "
xAODEgamma/ElectronxAODHelpers.h
"
19
#include "
TruthUtils/ParticleConstants.h
"
20
21
#include <string>
22
23
class
MonitorTnPAlgorithm
:
public
AthMonitorAlgorithm
{
24
public
:
25
MonitorTnPAlgorithm
(
const
std::string&
name
, ISvcLocator* pSvcLocator );
26
virtual
~MonitorTnPAlgorithm
() =
default
;
27
virtual
StatusCode
initialize
()
override
;
28
StatusCode
fillHistograms
(
const
EventContext& ctx )
const override
;
29
StatusCode
fillElectronProbe
(
const
xAOD::Electron
*
el
,
const
bool
isleading,
const
EventContext& ctx)
const
;
30
enum
Regions
:
int
{
BARREL
=0,
CRACK
,
ENDCAP
,
FORWARD
,
NREGIONS
};
31
32
private
:
33
34
SG::ReadHandleKey<xAOD::ElectronContainer>
m_ParticleContainerKey
{
this
,
"ParticleContainerName"
,
"Electrons"
,
"Name of electron container"
};
35
SG::ReadDecorHandleKeyArray<xAOD::ElectronContainer>
m_ElectronIsolationKey
{
this
,
"ElectronIsolationKey"
, {
"Electrons.ptcone20"
,
"Electrons.topoetcone40"
} };
36
Gaudi::Property<std::string>
m_ParticlePrefix
{
this
,
"ParticlePrefix"
,
"electron"
,
"Name of the particle prefix to be used to define hists"
};
37
Gaudi::Property<std::string>
m_RecoName
{
this
,
"RecoName"
,
"LHLoose"
,
"Name of particle flavor in egamma reco"
};
38
Gaudi::Property<std::string>
m_TnPType
{
this
,
"TnPType"
,
"Z"
,
"Variable to describe what is the TnP resonance name"
};
39
40
Gaudi::Property<Float_t>
m_MassPeak
{
this
,
"MassPeak"
,
ParticleConstants::ZMassInMeV
,
"Resonance peak position"
};
41
Gaudi::Property<Float_t>
m_ElectronEtCut
{
this
,
"ElectronEtCut"
, 15000,
"Et cut for electron"
};
42
Gaudi::Property<Float_t>
m_MassLowerCut
{
this
,
"MassLowerCut"
, 70000,
"Lower Mass cut"
};
43
Gaudi::Property<Float_t>
m_MassUpperCut
{
this
,
"MassUpperCut"
, 110000,
"Upper Mass Cut"
};
44
45
Regions
GetRegion
(Float_t
eta
)
const
{
46
Float_t aeta = fabs(
eta
);
47
// check if object is in barrel
48
if
( aeta < 1.37 )
return
MonitorTnPAlgorithm::BARREL
;
49
// check if object is in end-caps
50
if
( aeta > 1.52 && aeta < 2.47 )
return
MonitorTnPAlgorithm::ENDCAP
;
51
// check if object is in crack region
52
if
( aeta > 1.37 && aeta < 1.52 )
return
MonitorTnPAlgorithm::CRACK
;
53
return
MonitorTnPAlgorithm::NREGIONS
;
// out of acceptance
54
}
55
56
};
57
#endif
MonitorTnPAlgorithm::fillElectronProbe
StatusCode fillElectronProbe(const xAOD::Electron *el, const bool isleading, const EventContext &ctx) const
Definition:
MonitorTnPAlgorithm.cxx:154
MonitorTnPAlgorithm::fillHistograms
StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
Definition:
MonitorTnPAlgorithm.cxx:22
MonitorTnPAlgorithm::GetRegion
Regions GetRegion(Float_t eta) const
Definition:
MonitorTnPAlgorithm.h:45
MonitorTnPAlgorithm::m_MassLowerCut
Gaudi::Property< Float_t > m_MassLowerCut
Definition:
MonitorTnPAlgorithm.h:42
ParticleConstants::PDG2011::ZMassInMeV
constexpr double ZMassInMeV
the mass of the Z0 boson (in MeV)
Definition:
ParticleConstants.h:35
MonitorTnPAlgorithm::MonitorTnPAlgorithm
MonitorTnPAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Definition:
MonitorTnPAlgorithm.cxx:10
eta
Scalar eta() const
pseudorapidity method
Definition:
AmgMatrixBasePlugin.h:83
ElectronxAODHelpers.h
SG::HandleKeyArray
Definition:
StoreGate/StoreGate/HandleKeyArray.h:38
SG::ReadHandleKey< xAOD::ElectronContainer >
MonitorTnPAlgorithm::FORWARD
@ FORWARD
Definition:
MonitorTnPAlgorithm.h:30
AthMonitorAlgorithm
Base class for Athena Monitoring Algorithms.
Definition:
AthMonitorAlgorithm.h:36
MonitorTnPAlgorithm::Regions
Regions
Definition:
MonitorTnPAlgorithm.h:30
MonitorTnPAlgorithm::BARREL
@ BARREL
Definition:
MonitorTnPAlgorithm.h:30
MonitorTnPAlgorithm::initialize
virtual StatusCode initialize() override
initialize
Definition:
MonitorTnPAlgorithm.cxx:14
ElectronContainer.h
ParticleConstants.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthMonitorAlgorithm.h
plotIsoValidation.el
el
Definition:
plotIsoValidation.py:197
MonitorTnPAlgorithm::NREGIONS
@ NREGIONS
Definition:
MonitorTnPAlgorithm.h:30
MonitorTnPAlgorithm::CRACK
@ CRACK
Definition:
MonitorTnPAlgorithm.h:30
Monitored.h
Header file to be included by clients of the Monitored infrastructure.
MonitorTnPAlgorithm::m_ElectronIsolationKey
SG::ReadDecorHandleKeyArray< xAOD::ElectronContainer > m_ElectronIsolationKey
Definition:
MonitorTnPAlgorithm.h:35
MonitorTnPAlgorithm::ENDCAP
@ ENDCAP
Definition:
MonitorTnPAlgorithm.h:30
name
std::string name
Definition:
Control/AthContainers/Root/debug.cxx:240
MonitorTnPAlgorithm::~MonitorTnPAlgorithm
virtual ~MonitorTnPAlgorithm()=default
xAOD::Electron_v1
Definition:
Electron_v1.h:34
MonitorTnPAlgorithm::m_ParticlePrefix
Gaudi::Property< std::string > m_ParticlePrefix
Definition:
MonitorTnPAlgorithm.h:36
MonitorTnPAlgorithm::m_ParticleContainerKey
SG::ReadHandleKey< xAOD::ElectronContainer > m_ParticleContainerKey
Definition:
MonitorTnPAlgorithm.h:34
Electron.h
MonitorTnPAlgorithm
Definition:
MonitorTnPAlgorithm.h:23
MonitorTnPAlgorithm::m_ElectronEtCut
Gaudi::Property< Float_t > m_ElectronEtCut
Definition:
MonitorTnPAlgorithm.h:41
ReadDecorHandleKeyArray.h
MonitorTnPAlgorithm::m_RecoName
Gaudi::Property< std::string > m_RecoName
Definition:
MonitorTnPAlgorithm.h:37
MonitorTnPAlgorithm::m_MassPeak
Gaudi::Property< Float_t > m_MassPeak
Definition:
MonitorTnPAlgorithm.h:40
MonitorTnPAlgorithm::m_MassUpperCut
Gaudi::Property< Float_t > m_MassUpperCut
Definition:
MonitorTnPAlgorithm.h:43
MonitorTnPAlgorithm::m_TnPType
Gaudi::Property< std::string > m_TnPType
Definition:
MonitorTnPAlgorithm.h:38
Generated on Fri Sep 5 2025 21:14:56 for ATLAS Offline Software by
1.8.18