ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigT1
TrigGepPerf
src
EratioMaker.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2002-2026 CERN
3
* for the benefit of the ATLAS collaboration
4
*/
5
6
#ifndef TRIGGEPPERF_ERATIO_H
7
#define TRIGGEPPERF_ERATIO_H
8
9
#include <vector>
10
#include <utility>
11
#include <cmath>
12
#include "
xAODTrigger/eFexEMRoIContainer.h
"
13
#include "
TrigGepPerf/GepCellMap.h
"
14
#include "Math/Vector4D.h"
15
16
namespace
Gep
{
17
18
// Auxiliary structure for Eratio result, and init values to 0.
19
struct
EratioObj
{
20
double
seedEta
{0.};
21
double
seedPhi
{0.};
22
double
E1
{0.};
23
double
E2
{0.};
24
double
Eratio
{0.};
25
};
26
27
class
EratioMaker
{
28
public
:
29
30
// Constructor
31
EratioMaker
(
const
GepCellMap
& caloCellsMap,
32
unsigned
int
etaWindowHalfSize = 8,
// leads to 17 cells in eta
33
unsigned
int
phiWindowHalfSize = 1);
// leads to 3 cells in phi
34
35
// Main method to get Eratio for each seed
36
const
EratioObj
makeEratio
(
const
ROOT::Math::PtEtaPhiEVector obj)
const
;
37
38
private
:
39
// Auxiliary methods - intermediate steps
40
std::vector<std::vector<GepCaloCell>>
makeWindow
(
const
ROOT::Math::PtEtaPhiEVector &obj)
const
;
41
std::pair<double, double>
findLocalMaxima
(
const
std::vector<std::vector<GepCaloCell>>& window)
const
;
42
double
computeEratio
(
double
E1,
double
E2)
const
;
43
44
// Attributes
45
const
GepCellMap
&
m_caloCellsMap
;
46
const
unsigned
int
m_etaWindowHalfSize
;
47
const
unsigned
int
m_phiWindowHalfSize
;
48
};
49
50
}
// namespace Gep
51
52
#endif
// TRIGGEPPERF_ERATIO_H
GepCellMap.h
Gep::EratioMaker::m_phiWindowHalfSize
const unsigned int m_phiWindowHalfSize
Definition
EratioMaker.h:47
Gep::EratioMaker::findLocalMaxima
std::pair< double, double > findLocalMaxima(const std::vector< std::vector< GepCaloCell > > &window) const
Definition
EratioMaker.cxx:103
Gep::EratioMaker::computeEratio
double computeEratio(double E1, double E2) const
Definition
EratioMaker.cxx:158
Gep::EratioMaker::makeEratio
const EratioObj makeEratio(const ROOT::Math::PtEtaPhiEVector obj) const
Definition
EratioMaker.cxx:167
Gep::EratioMaker::EratioMaker
EratioMaker(const GepCellMap &caloCellsMap, unsigned int etaWindowHalfSize=8, unsigned int phiWindowHalfSize=1)
Definition
EratioMaker.cxx:15
Gep::EratioMaker::m_etaWindowHalfSize
const unsigned int m_etaWindowHalfSize
Definition
EratioMaker.h:46
Gep::EratioMaker::makeWindow
std::vector< std::vector< GepCaloCell > > makeWindow(const ROOT::Math::PtEtaPhiEVector &obj) const
Definition
EratioMaker.cxx:31
Gep::EratioMaker::m_caloCellsMap
const GepCellMap & m_caloCellsMap
Definition
EratioMaker.h:45
Gep::GepCellMap
Definition
GepCellMap.h:17
eFexEMRoIContainer.h
Gep
Definition
BasicGepClusterMaker.h:13
Gep::EratioObj
Definition
EratioMaker.h:19
Gep::EratioObj::Eratio
double Eratio
Definition
EratioMaker.h:24
Gep::EratioObj::E1
double E1
Definition
EratioMaker.h:22
Gep::EratioObj::E2
double E2
Definition
EratioMaker.h:23
Gep::EratioObj::seedPhi
double seedPhi
Definition
EratioMaker.h:21
Gep::EratioObj::seedEta
double seedEta
Definition
EratioMaker.h:20
Generated on
for ATLAS Offline Software by
1.17.0