ATLAS Offline Software
HTcalculator.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef INDETTRT_HTCALCULATOR
5 #define INDETTRT_HTCALCULATOR
6 
8 // HTcalculater.h, (c) ATLAS Detector software
10 
11 /****************************************************************************************\
12 
13  This class is instantiated in TRTHTCondAlg and put on CondStore
14 
15  Original creator: Simon Heisterkamp (simon.heisterkamp@cern.ch)
16  Author: Troels Petersen (petersen@nbi.dk)
17  Peter Hansen (phansen@nbi.dk)
18 
19 \****************************************************************************************/
20 #include "AthenaKernel/CLASS_DEF.h"
21 #include "AthenaKernel/CondCont.h"
23 #include "GaudiKernel/StatusCode.h"
26 
27 class HTcalculator {
28  public:
29  HTcalculator() = default;
30  virtual ~HTcalculator() = default;
31 
33  // no-op
34  }
35  static float Limit(float prob);
36  // set constants to hard coded defaults
38 
39  StatusCode ReadVectorDB(const CondAttrListVec* channel_values);
40 
41  float getProbHT(float pTrk, Trk::ParticleHypothesis hypothesis, int TrtPart,
42  int GasType, int StrawLayer, float ZR, float rTrkAnode,
43  float Occupancy, bool hasTrackPars) const;
44 
45  float pHTvsPGOG(int TrtPart, int GasType, float p, float mass,
46  float occ) const;
47 
48  private:
49  static constexpr int N_GAS = 3;
50  static constexpr int N_DET = 3;
51  static constexpr int N_PAR2 = 10;
53  m_par_pHTvsPGOG_new[N_GAS][N_DET]; // New approach (useOccupancy = true)
54 
55  // Store in a compact way all the corrections
58 
61 
64 
67 
68  static constexpr int SIZE_OF_HEADER = sizeof(float) * 4;
69  static constexpr int SIZE_OF_BLOB = sizeof(float) * ((N_PAR2 * N_DET));
70 };
71 
72 CLASS_DEF(HTcalculator, 241669896, 1)
74 #endif
HTcalculator::m_CpHT_B_Zee_TW_new
StorePIDinfo m_CpHT_B_Zee_TW_new[N_GAS][N_DET]
Definition: HTcalculator.h:62
HTcalculator::setDefaultCalibrationConstants
void setDefaultCalibrationConstants()
Definition: HTcalculator.cxx:535
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
CondCont.h
Hold mappings of ranges to condition objects.
HTcalculator::~HTcalculator
virtual ~HTcalculator()=default
HTcalculator::m_CpHT_B_Zee_ZR_new
StorePIDinfo m_CpHT_B_Zee_ZR_new[N_GAS][N_DET]
Definition: HTcalculator.h:59
HTcalculator::m_CpHT_B_Zee_OR_new
StorePIDinfo m_CpHT_B_Zee_OR_new[N_GAS][N_DET]
Definition: HTcalculator.h:65
HTcalculator::N_PAR2
static constexpr int N_PAR2
Definition: HTcalculator.h:51
HTcalculator::m_CpHT_B_Zmm_SL_new
StorePIDinfo m_CpHT_B_Zmm_SL_new[N_GAS][N_DET]
Definition: HTcalculator.h:57
HTcalculator::Limit
static float Limit(float prob)
Definition: HTcalculator.cxx:12
covarianceTool.prob
prob
Definition: covarianceTool.py:678
dqt_zlumi_pandas.mass
mass
Definition: dqt_zlumi_pandas.py:170
Trk::ParticleHypothesis
ParticleHypothesis
Definition: ParticleHypothesis.h:25
HTcalculator::checkInitialization
void checkInitialization()
Definition: HTcalculator.h:32
HTcalculator
Definition: HTcalculator.h:27
CondAttrListVec.h
A CondAttrListVec is an Athena DataObject holding a vector of CORAL AttributeLists,...
HTcalculator::m_par_pHTvsPGOG_new
StorePIDinfo m_par_pHTvsPGOG_new[N_GAS][N_DET]
Definition: HTcalculator.h:53
CondAttrListVec
Definition: CondAttrListVec.h:31
StorePIDinfo
Definition: StorePIDinfo.h:13
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
HTcalculator::m_CpHT_B_Zee_SL_new
StorePIDinfo m_CpHT_B_Zee_SL_new[N_GAS][N_DET]
Definition: HTcalculator.h:56
HTcalculator::HTcalculator
HTcalculator()=default
StorePIDinfo.h
HTcalculator::N_GAS
static constexpr int N_GAS
Definition: HTcalculator.h:49
ParticleHypothesis.h
HTcalculator::N_DET
static constexpr int N_DET
Definition: HTcalculator.h:50
HTcalculator::m_CpHT_B_Zmm_ZR_new
StorePIDinfo m_CpHT_B_Zmm_ZR_new[N_GAS][N_DET]
Definition: HTcalculator.h:60
HTcalculator::m_CpHT_B_Zmm_OR_new
StorePIDinfo m_CpHT_B_Zmm_OR_new[N_GAS][N_DET]
Definition: HTcalculator.h:66
HTcalculator::m_CpHT_B_Zmm_TW_new
StorePIDinfo m_CpHT_B_Zmm_TW_new[N_GAS][N_DET]
Definition: HTcalculator.h:63
HTcalculator::pHTvsPGOG
float pHTvsPGOG(int TrtPart, int GasType, float p, float mass, float occ) const
Definition: HTcalculator.cxx:101
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition: Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:64
HTcalculator::SIZE_OF_BLOB
static constexpr int SIZE_OF_BLOB
Definition: HTcalculator.h:69
HTcalculator::ReadVectorDB
StatusCode ReadVectorDB(const CondAttrListVec *channel_values)
Definition: HTcalculator.cxx:155
CLASS_DEF.h
macros to associate a CLID to a type
readCCLHist.float
float
Definition: readCCLHist.py:83
HTcalculator::getProbHT
float getProbHT(float pTrk, Trk::ParticleHypothesis hypothesis, int TrtPart, int GasType, int StrawLayer, float ZR, float rTrkAnode, float Occupancy, bool hasTrackPars) const
Definition: HTcalculator.cxx:27
CONDCONT_DEF
CONDCONT_DEF(HTcalculator, 124823640)
HTcalculator::SIZE_OF_HEADER
static constexpr int SIZE_OF_HEADER
Definition: HTcalculator.h:68