ATLAS Offline Software
Loading...
Searching...
No Matches
PixelChargeInterpolationParameters.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
6// PixelOfflineCalibData.h, (c) ATLAS Detector software
8
9#ifndef PIXELCHARGEINTERPOLATIONPARAMETERS_H
10#define PIXELCHARGEINTERPOLATIONPARAMETERS_H
11
13#include <string>
14#include <vector>
15
23
24namespace PixelCalib {
25
27
28 public:
32
33 // get/set version number
34 int getVersion() const;
35 void setVersion(int version);
36
37
40
41 float getDeltaXbarrel(int nRows, float angle, int ilayer=0) const;
42 float getDeltaYbarrel(int nCol, float eta, int ilayer=0) const;
43 float getDeltaXIBL(int nRows, float angle) const;
44 float getDeltaYIBL(int nCol, float eta) const;
45
46 static float getDeltaXendcap() ;
47 static float getDeltaYendcap() ;
48
51 float getDeltaX(int iangle, int iclustersize, int ilayer) const;
52 float getDeltaY(int ieta, int iclustersize, int ilayer) const;
53 int setDeltaX(int iangle, int iclustersize, int ilayer, float value);
54 int setDeltaY(int ieta, int iclustersize, int ilayer, float value);
55
58 float getErrDeltaX(int iangle, int iclustersize, int ilayer) const;
59 float getErrDeltaY(int ieta, int iclustersize, int ilayer) const;
60 int setErrDeltaX(int iangle, int iclustersize, int ilayer, float value);
61 int setErrDeltaY(int ieta, int iclustersize, int ilayer, float value);
62
67 float getDeltaX(int i) const;
68 float getDeltaY(int i) const;
69 int setDeltaX(int i, float value);
70 int setDeltaY(int i, float value);
71
76 float getErrDeltaX(int i) const;
77 float getErrDeltaY(int i) const;
78 int setErrDeltaX(int i, float value);
79 int setErrDeltaY(int i, float value);
80
81 int getNumberOfXbins() const;
82 int getNumberOfYbins() const;
83
84 const std::vector<float>& getEtaBins() const{return m_etabins;}
85 const std::vector<float>& getAngleBins() const{return m_phibins;}
86 const std::vector<float>& getClusterSizeXBins() const{return m_csx;}
87 const std::vector<float>& getClusterSizeYBins() const{return m_csy;}
88
89 void setParameters(const int ncsx, const int ncsy, const int neta,
90 const int nalpha, int offset, const std::vector<float> & constants);
91
92 void Print(const std::string& filename) const;
93 void Load(const std::string& filename);
94
95 // IBL
96 const std::vector<float>& getIBLEtaBins() const{return m_ibletabins;}
97 const std::vector<float>& getIBLAngleBins() const{return m_iblphibins;}
98 int getIBLcsxbins() const {return m_csxbinsibl;}
99 int getIBLcsybins() const {return m_csybinsibl;}
100 int getIBLetabins() const {return m_etaibl;}
101 int getIBLphibins() const {return m_alphaibl;}
102 void setIBLcsxbins(int icsx){m_csxbinsibl = icsx;}
103 void setIBLcsybins(int icsy){m_csybinsibl = icsy;}
104 void setIBLetabins(int ieta){m_etaibl = ieta;}
105 void setIBLphibins(int ialpha){m_alphaibl = ialpha;}
106 //
107
108 private:
109
112 int getBarrelBinX(int iclustersize, float angle, int ilayer) const;
113 int getBarrelBinY(int iclustersize, float eta, int ilayer) const;
114
115
118 int getBarrelBinX(int iclustersize, int iangle, int ilayer) const;
119 int getBarrelBinY(int iclustersize, int ieta, int ilayer) const;
120
121
122 // Parametrization bins
124 int m_nlayerbins; // number of layers
125 std::vector<float> m_etabins;
126 std::vector<float> m_phibins;
127 std::vector<float> m_csx;
128 std::vector<float> m_csy;
129 // parametrization values
130 std::vector<float> m_deltax;
131 std::vector<float> m_deltay;
132 // error on parametrization values
133 std::vector<float> m_errdeltax;
134 std::vector<float> m_errdeltay;
135 // IBL
136 int m_csxbinsibl; // IBL csx bins
137 int m_csybinsibl; // IBL csy bins
138 int m_etaibl; // IBL eta bins
139 int m_alphaibl; // IBL phi bins
140 std::vector<float> m_ibletabins;
141 std::vector<float> m_iblphibins;
142
143};
144
145}
146
147#endif
Scalar eta() const
pseudorapidity method
macros to associate a CLID to a type
double angle(const GeoTrf::Vector2D &a, const GeoTrf::Vector2D &b)
float getDeltaY(int ieta, int iclustersize, int ilayer) const
float getErrDeltaY(int ieta, int iclustersize, int ilayer) const
int setDeltaX(int iangle, int iclustersize, int ilayer, float value)
void setParameters(const int ncsx, const int ncsy, const int neta, const int nalpha, int offset, const std::vector< float > &constants)
float getDeltaXIBL(int nRows, float angle) const
float getDeltaYIBL(int nCol, float eta) const
float getDeltaX(int iangle, int iclustersize, int ilayer) const
methods to get/set the calibration data as a function of the bin index for the various variables sepa...
int setErrDeltaY(int ieta, int iclustersize, int ilayer, float value)
float getDeltaYbarrel(int nCol, float eta, int ilayer=0) const
int setErrDeltaX(int iangle, int iclustersize, int ilayer, float value)
int setDeltaY(int ieta, int iclustersize, int ilayer, float value)
float getDeltaXbarrel(int nRows, float angle, int ilayer=0) const
Methods to access the calibration data as a function of the cluster size, angle/pseudorapidity,...
float getErrDeltaX(int iangle, int iclustersize, int ilayer) const
methods to get/set the calibration data as a function of the bin index for the various variables sepa...
int getBarrelBinX(int iclustersize, float angle, int ilayer) const
Get the global bin index as a function of the value of the variables of the parametrization.
PixelChargeInterpolationParameters(const PixelChargeInterpolationParameters &)=delete
int getBarrelBinY(int iclustersize, float eta, int ilayer) const