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