ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Reconstruction
eflowRec
src
eflowRingSubtractionManager.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 EFLOWREC_EFLOWCELLSUBTRACTIONMANAGER_H
6
#define EFLOWREC_EFLOWCELLSUBTRACTIONMANAGER_H
7
8
/********************************************************************
9
10
NAME: eflowRingSubtractionManager.h
11
PACKAGE: offline/Reconstruction/eflowRec
12
13
AUTHORS: M.Hodgkinson, R Duxfield (based on R.Duxfields Root package)
14
CREATED: 18th Aug, 2005
15
16
********************************************************************/
17
18
//C++ Headers
19
#include <vector>
20
#include <map>
21
#include "
eflowCaloRegions.h
"
22
23
class
eflowEEtaBinnedParameters
;
24
class
eflowFirstIntParameters
;
25
26
typedef
std::pair<eflowCaloENUM,short>
RingId
;
27
31
class
eflowRingSubtractionManager
{
32
33
public
:
34
35
eflowRingSubtractionManager
();
36
37
double
fudgeMean
()
const
{
return
m_fudgeMean
;}
38
double
fudgeStdDev
()
const
{
return
m_fudgeStdDev
;}
39
/* for eflowTauTool */
40
void
setFudgeMean
(
double
fudgeMean
) {
m_fudgeMean
=
fudgeMean
;}
41
void
setFudgeStdDev
(
double
fudgeStdDev
) {
m_fudgeStdDev
=
fudgeStdDev
;}
42
43
void
clear
() {
m_rankMap
.clear();}
44
std::map<double,RingId>::const_iterator
rankBegin
()
const
{
return
m_rankMap
.begin();}
45
std::map<double,RingId>::const_iterator
rankEnd
()
const
{
return
m_rankMap
.end();}
46
47
double
ringThickness
(
eflowCaloENUM
layer)
const
{
return
m_ringThickness
[layer];}
48
49
bool
getOrdering
(
const
eflowEEtaBinnedParameters
* binnedParameters,
double
e,
double
eta
,
eflowFirstIntENUM
j1st,
bool
useLegacyEnergyBinIndexing);
50
51
private
:
52
53
void
setParameters
(
const
eflowFirstIntParameters
& param,
const
std::vector<double>&
ringThickness
);
54
static
double
ringMeanRank
(
const
std::vector<double>& p,
double
rMin,
double
rMax) ;
55
static
std::vector<eflowCaloENUM>
orderedLayersByShowerParam
(
const
eflowFirstIntParameters
& param,
unsigned
int
whichParam=0);
56
57
private
:
58
59
std::map<double,RingId>
m_rankMap
;
60
std::vector<double>
m_ringThickness
;
61
double
m_fudgeMean
{};
62
double
m_fudgeStdDev
{};
63
64
static
constexpr
double
m_rMax
= 0.75;
65
static
constexpr
double
m_weightRange
= 1.0e6;
66
};
67
#endif
eta
Scalar eta() const
pseudorapidity method
Definition
AmgMatrixBasePlugin.h:83
eflowEEtaBinnedParameters
Inherits from eflowEEtaBinBase.
Definition
eflowEEtaBinnedParameters.h:56
eflowFirstIntParameters
Extends eflowFirstInt to include parameters of the fits to radial shower profiles.
Definition
eflowFirstIntParameters.h:27
eflowRingSubtractionManager::orderedLayersByShowerParam
static std::vector< eflowCaloENUM > orderedLayersByShowerParam(const eflowFirstIntParameters ¶m, unsigned int whichParam=0)
Definition
eflowRingSubtractionManager.cxx:39
eflowRingSubtractionManager::rankBegin
std::map< double, RingId >::const_iterator rankBegin() const
Definition
eflowRingSubtractionManager.h:44
eflowRingSubtractionManager::setFudgeStdDev
void setFudgeStdDev(double fudgeStdDev)
Definition
eflowRingSubtractionManager.h:41
eflowRingSubtractionManager::m_fudgeMean
double m_fudgeMean
Definition
eflowRingSubtractionManager.h:61
eflowRingSubtractionManager::m_weightRange
static constexpr double m_weightRange
Definition
eflowRingSubtractionManager.h:65
eflowRingSubtractionManager::ringMeanRank
static double ringMeanRank(const std::vector< double > &p, double rMin, double rMax)
Definition
eflowRingSubtractionManager.cxx:26
eflowRingSubtractionManager::rankEnd
std::map< double, RingId >::const_iterator rankEnd() const
Definition
eflowRingSubtractionManager.h:45
eflowRingSubtractionManager::getOrdering
bool getOrdering(const eflowEEtaBinnedParameters *binnedParameters, double e, double eta, eflowFirstIntENUM j1st, bool useLegacyEnergyBinIndexing)
Definition
eflowRingSubtractionManager.cxx:100
eflowRingSubtractionManager::m_ringThickness
std::vector< double > m_ringThickness
Definition
eflowRingSubtractionManager.h:60
eflowRingSubtractionManager::setFudgeMean
void setFudgeMean(double fudgeMean)
Definition
eflowRingSubtractionManager.h:40
eflowRingSubtractionManager::fudgeMean
double fudgeMean() const
Definition
eflowRingSubtractionManager.h:37
eflowRingSubtractionManager::ringThickness
double ringThickness(eflowCaloENUM layer) const
Definition
eflowRingSubtractionManager.h:47
eflowRingSubtractionManager::m_rankMap
std::map< double, RingId > m_rankMap
Definition
eflowRingSubtractionManager.h:59
eflowRingSubtractionManager::fudgeStdDev
double fudgeStdDev() const
Definition
eflowRingSubtractionManager.h:38
eflowRingSubtractionManager::m_fudgeStdDev
double m_fudgeStdDev
Definition
eflowRingSubtractionManager.h:62
eflowRingSubtractionManager::setParameters
void setParameters(const eflowFirstIntParameters ¶m, const std::vector< double > &ringThickness)
Definition
eflowRingSubtractionManager.cxx:72
eflowRingSubtractionManager::m_rMax
static constexpr double m_rMax
Definition
eflowRingSubtractionManager.h:64
eflowRingSubtractionManager::clear
void clear()
Definition
eflowRingSubtractionManager.h:43
eflowRingSubtractionManager::eflowRingSubtractionManager
eflowRingSubtractionManager()
Definition
eflowRingSubtractionManager.cxx:24
eflowCaloRegions.h
eflowCaloENUM
eflowCalo::LAYER eflowCaloENUM
Definition
eflowCaloRegions.h:49
eflowFirstIntENUM
eflowFirstIntRegions::J1STLAYER eflowFirstIntENUM
Definition
eflowCaloRegions.h:79
RingId
std::pair< eflowCaloENUM, short > RingId
Definition
eflowRingSubtractionManager.h:26
Generated on
for ATLAS Offline Software by
1.17.0