ATLAS Offline Software
PixelRadiationDamageFluenceMapData.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
11 #ifndef PIXELRADIATIONDAMAGEFLUENCEMAPDATA_H
12 #define PIXELRADIATIONDAMAGEFLUENCEMAPDATA_H
13 
14 #include "AthenaKernel/CLASS_DEF.h"
15 
16 
17 #include "AthenaKernel/CondCont.h"
19 #include "TH1.h"
20 #include "TH2.h"
21 #include "TH3.h"
22 #include <map>
23 #include <vector>
24 
26  public:
29 
30  // Map for radiation damage simulation
31  void setFluenceLayer(std::vector<double> fluenceLayer);
32  double getFluenceLayer(int layer) const;
33 
34  void setLorentzMap_e(std::vector<PixelHistoConverter> lorentzMap_e);
35  void setLorentzMap_h(std::vector<PixelHistoConverter> lorentzMap_h);
36  void setDistanceMap_e(std::vector<PixelHistoConverter> distanceMap_e);
37  void setDistanceMap_h(std::vector<PixelHistoConverter> distanceMap_h);
38  void setRamoPotentialMap(std::vector<PixelHistoConverter> ramoPotentialMap);
39 
40  const PixelHistoConverter& getLorentzMap_e(int layer) const;
41  const PixelHistoConverter& getLorentzMap_h(int layer) const;
42  const PixelHistoConverter& getDistanceMap_e(int layer) const;
43  const PixelHistoConverter& getDistanceMap_h(int layer) const;
45 
46  // Map for radiation damage simulation for 3D sensor
47  // The implementation for 3D radiation damage is different from the one for planar sensor.
48  // Thus, define separately. In future, coherent treatment is preferrable.
49  void setFluenceLayer3D(std::vector<double> fluenceLayer);
50  double getFluenceLayer3D(int layer) const;
51 
52  void setRamoPotentialMap3D(std::vector<PixelHistoConverter> ramoPotentialMap3D);
53  void setEFieldMap3D(std::vector<PixelHistoConverter> eFieldMap3D);
54  void setXPositionMap3D_e(std::vector<PixelHistoConverter> xPositionMap3D_e);
55  void setXPositionMap3D_h(std::vector<PixelHistoConverter> xPositionMap3D_h);
56  void setYPositionMap3D_e(std::vector<PixelHistoConverter> yPositionMap3D_e);
57  void setYPositionMap3D_h(std::vector<PixelHistoConverter> yPositionMap3D_h);
58  void setTimeMap3D_e(std::vector<PixelHistoConverter> timeMap3D_e);
59  void setTimeMap3D_h(std::vector<PixelHistoConverter> timeMap3D_h);
60  void setAvgChargeMap3D_e(const PixelHistoConverter& avgChargeMap3D_e);
61  void setAvgChargeMap3D_h(const PixelHistoConverter& avgChargeMap3D_h);
62 
64  const PixelHistoConverter& getEFieldMap3D(int layer) const;
69  const PixelHistoConverter& getTimeMap3D_e(int layer) const;
70  const PixelHistoConverter& getTimeMap3D_h(int layer) const;
73 
74  void clear();
75 
76  private:
77  std::vector<double> m_fluenceLayer;
78  std::vector<PixelHistoConverter> m_lorentzMap_e;
79  std::vector<PixelHistoConverter> m_lorentzMap_h;
80  std::vector<PixelHistoConverter> m_distanceMap_e;
81  std::vector<PixelHistoConverter> m_distanceMap_h;
82  std::vector<PixelHistoConverter> m_ramoPotentialMap;
83 
84  std::vector<double> m_fluenceLayer3D;
85  std::vector<PixelHistoConverter> m_ramoPotentialMap3D;
86  std::vector<PixelHistoConverter> m_eFieldMap3D;
87  std::vector<PixelHistoConverter> m_xPositionMap3D_e;
88  std::vector<PixelHistoConverter> m_xPositionMap3D_h;
89  std::vector<PixelHistoConverter> m_yPositionMap3D_e;
90  std::vector<PixelHistoConverter> m_yPositionMap3D_h;
91  std::vector<PixelHistoConverter> m_timeMap3D_e;
92  std::vector<PixelHistoConverter> m_timeMap3D_h;
95 };
96 
98 
100 
101 #endif
PixelRadiationDamageFluenceMapData::m_xPositionMap3D_h
std::vector< PixelHistoConverter > m_xPositionMap3D_h
Definition: PixelRadiationDamageFluenceMapData.h:88
PixelRadiationDamageFluenceMapData::setXPositionMap3D_e
void setXPositionMap3D_e(std::vector< PixelHistoConverter > xPositionMap3D_e)
Definition: PixelRadiationDamageFluenceMapData.cxx:50
CONDCONT_DEF
CONDCONT_DEF(PixelRadiationDamageFluenceMapData, 71948393)
CondCont.h
Hold mappings of ranges to condition objects.
PixelRadiationDamageFluenceMapData::setEFieldMap3D
void setEFieldMap3D(std::vector< PixelHistoConverter > eFieldMap3D)
Definition: PixelRadiationDamageFluenceMapData.cxx:49
PixelRadiationDamageFluenceMapData::clear
void clear()
Definition: PixelRadiationDamageFluenceMapData.cxx:70
PixelRadiationDamageFluenceMapData::m_lorentzMap_h
std::vector< PixelHistoConverter > m_lorentzMap_h
Definition: PixelRadiationDamageFluenceMapData.h:79
PixelRadiationDamageFluenceMapData::m_fluenceLayer
std::vector< double > m_fluenceLayer
Definition: PixelRadiationDamageFluenceMapData.h:77
PixelRadiationDamageFluenceMapData::setLorentzMap_e
void setLorentzMap_e(std::vector< PixelHistoConverter > lorentzMap_e)
Definition: PixelRadiationDamageFluenceMapData.cxx:32
PixelRadiationDamageFluenceMapData::setFluenceLayer
void setFluenceLayer(std::vector< double > fluenceLayer)
Definition: PixelRadiationDamageFluenceMapData.cxx:29
PixelRadiationDamageFluenceMapData::setXPositionMap3D_h
void setXPositionMap3D_h(std::vector< PixelHistoConverter > xPositionMap3D_h)
Definition: PixelRadiationDamageFluenceMapData.cxx:51
PixelRadiationDamageFluenceMapData::m_fluenceLayer3D
std::vector< double > m_fluenceLayer3D
Definition: PixelRadiationDamageFluenceMapData.h:84
PixelRadiationDamageFluenceMapData::getTimeMap3D_e
const PixelHistoConverter & getTimeMap3D_e(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:65
PixelRadiationDamageFluenceMapData::getEFieldMap3D
const PixelHistoConverter & getEFieldMap3D(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:60
PixelRadiationDamageFluenceMapData::setTimeMap3D_e
void setTimeMap3D_e(std::vector< PixelHistoConverter > timeMap3D_e)
Definition: PixelRadiationDamageFluenceMapData.cxx:54
PixelRadiationDamageFluenceMapData::getLorentzMap_e
const PixelHistoConverter & getLorentzMap_e(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:38
PixelRadiationDamageFluenceMapData::~PixelRadiationDamageFluenceMapData
virtual ~PixelRadiationDamageFluenceMapData()
PixelRadiationDamageFluenceMapData::setYPositionMap3D_h
void setYPositionMap3D_h(std::vector< PixelHistoConverter > yPositionMap3D_h)
Definition: PixelRadiationDamageFluenceMapData.cxx:53
PixelRadiationDamageFluenceMapData::m_timeMap3D_h
std::vector< PixelHistoConverter > m_timeMap3D_h
Definition: PixelRadiationDamageFluenceMapData.h:92
PixelRadiationDamageFluenceMapData::getYPositionMap3D_e
const PixelHistoConverter & getYPositionMap3D_e(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:63
PixelRadiationDamageFluenceMapData::m_eFieldMap3D
std::vector< PixelHistoConverter > m_eFieldMap3D
Definition: PixelRadiationDamageFluenceMapData.h:86
PixelHistoConverter.h
PixelRadiationDamageFluenceMapData::m_yPositionMap3D_e
std::vector< PixelHistoConverter > m_yPositionMap3D_e
Definition: PixelRadiationDamageFluenceMapData.h:89
PixelHistoConverter
Definition: PixelHistoConverter.h:25
PixelRadiationDamageFluenceMapData::m_yPositionMap3D_h
std::vector< PixelHistoConverter > m_yPositionMap3D_h
Definition: PixelRadiationDamageFluenceMapData.h:90
PixelRadiationDamageFluenceMapData
Definition: PixelRadiationDamageFluenceMapData.h:25
PixelRadiationDamageFluenceMapData::getLorentzMap_h
const PixelHistoConverter & getLorentzMap_h(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:39
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
PixelRadiationDamageFluenceMapData::m_lorentzMap_e
std::vector< PixelHistoConverter > m_lorentzMap_e
Definition: PixelRadiationDamageFluenceMapData.h:78
PixelRadiationDamageFluenceMapData::setFluenceLayer3D
void setFluenceLayer3D(std::vector< double > fluenceLayer)
Definition: PixelRadiationDamageFluenceMapData.cxx:45
PixelRadiationDamageFluenceMapData::m_xPositionMap3D_e
std::vector< PixelHistoConverter > m_xPositionMap3D_e
Definition: PixelRadiationDamageFluenceMapData.h:87
PixelRadiationDamageFluenceMapData::setRamoPotentialMap3D
void setRamoPotentialMap3D(std::vector< PixelHistoConverter > ramoPotentialMap3D)
Definition: PixelRadiationDamageFluenceMapData.cxx:48
PixelRadiationDamageFluenceMapData::m_distanceMap_h
std::vector< PixelHistoConverter > m_distanceMap_h
Definition: PixelRadiationDamageFluenceMapData.h:81
PixelRadiationDamageFluenceMapData::setAvgChargeMap3D_h
void setAvgChargeMap3D_h(const PixelHistoConverter &avgChargeMap3D_h)
Definition: PixelRadiationDamageFluenceMapData.cxx:57
PixelRadiationDamageFluenceMapData::PixelRadiationDamageFluenceMapData
PixelRadiationDamageFluenceMapData()
Definition: PixelRadiationDamageFluenceMapData.cxx:8
PixelRadiationDamageFluenceMapData::m_timeMap3D_e
std::vector< PixelHistoConverter > m_timeMap3D_e
Definition: PixelRadiationDamageFluenceMapData.h:91
PixelRadiationDamageFluenceMapData::getFluenceLayer3D
double getFluenceLayer3D(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:46
PixelRadiationDamageFluenceMapData::getXPositionMap3D_h
const PixelHistoConverter & getXPositionMap3D_h(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:62
PixelRadiationDamageFluenceMapData::getDistanceMap_e
const PixelHistoConverter & getDistanceMap_e(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:40
PixelRadiationDamageFluenceMapData::setYPositionMap3D_e
void setYPositionMap3D_e(std::vector< PixelHistoConverter > yPositionMap3D_e)
Definition: PixelRadiationDamageFluenceMapData.cxx:52
PixelRadiationDamageFluenceMapData::m_distanceMap_e
std::vector< PixelHistoConverter > m_distanceMap_e
Definition: PixelRadiationDamageFluenceMapData.h:80
PixelRadiationDamageFluenceMapData::getTimeMap3D_h
const PixelHistoConverter & getTimeMap3D_h(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:66
PixelRadiationDamageFluenceMapData::getYPositionMap3D_h
const PixelHistoConverter & getYPositionMap3D_h(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:64
PixelRadiationDamageFluenceMapData::m_ramoPotentialMap
std::vector< PixelHistoConverter > m_ramoPotentialMap
Definition: PixelRadiationDamageFluenceMapData.h:82
PixelRadiationDamageFluenceMapData::getFluenceLayer
double getFluenceLayer(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:30
PixelRadiationDamageFluenceMapData::getAvgChargeMap3D_h
const PixelHistoConverter & getAvgChargeMap3D_h() const
Definition: PixelRadiationDamageFluenceMapData.cxx:68
PixelRadiationDamageFluenceMapData::getDistanceMap_h
const PixelHistoConverter & getDistanceMap_h(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:41
PixelRadiationDamageFluenceMapData::setAvgChargeMap3D_e
void setAvgChargeMap3D_e(const PixelHistoConverter &avgChargeMap3D_e)
Definition: PixelRadiationDamageFluenceMapData.cxx:56
PixelRadiationDamageFluenceMapData::getAvgChargeMap3D_e
const PixelHistoConverter & getAvgChargeMap3D_e() const
Definition: PixelRadiationDamageFluenceMapData.cxx:67
PixelRadiationDamageFluenceMapData::m_avgChargeMap3D_h
PixelHistoConverter m_avgChargeMap3D_h
Definition: PixelRadiationDamageFluenceMapData.h:94
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
PixelRadiationDamageFluenceMapData::m_ramoPotentialMap3D
std::vector< PixelHistoConverter > m_ramoPotentialMap3D
Definition: PixelRadiationDamageFluenceMapData.h:85
PixelRadiationDamageFluenceMapData::setDistanceMap_h
void setDistanceMap_h(std::vector< PixelHistoConverter > distanceMap_h)
Definition: PixelRadiationDamageFluenceMapData.cxx:35
PixelRadiationDamageFluenceMapData::setLorentzMap_h
void setLorentzMap_h(std::vector< PixelHistoConverter > lorentzMap_h)
Definition: PixelRadiationDamageFluenceMapData.cxx:33
PixelRadiationDamageFluenceMapData::setRamoPotentialMap
void setRamoPotentialMap(std::vector< PixelHistoConverter > ramoPotentialMap)
Definition: PixelRadiationDamageFluenceMapData.cxx:36
PixelRadiationDamageFluenceMapData::setDistanceMap_e
void setDistanceMap_e(std::vector< PixelHistoConverter > distanceMap_e)
Definition: PixelRadiationDamageFluenceMapData.cxx:34
PixelRadiationDamageFluenceMapData::setTimeMap3D_h
void setTimeMap3D_h(std::vector< PixelHistoConverter > timeMap3D_h)
Definition: PixelRadiationDamageFluenceMapData.cxx:55
PixelRadiationDamageFluenceMapData::getRamoPotentialMap3D
const PixelHistoConverter & getRamoPotentialMap3D(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:59
CLASS_DEF.h
macros to associate a CLID to a type
PixelRadiationDamageFluenceMapData::getRamoPotentialMap
const PixelHistoConverter & getRamoPotentialMap(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:42
PixelRadiationDamageFluenceMapData::m_avgChargeMap3D_e
PixelHistoConverter m_avgChargeMap3D_e
Definition: PixelRadiationDamageFluenceMapData.h:93
PixelRadiationDamageFluenceMapData::getXPositionMap3D_e
const PixelHistoConverter & getXPositionMap3D_e(int layer) const
Definition: PixelRadiationDamageFluenceMapData.cxx:61