19 1.47078, 1.47078, 1.47078, 1.47078, 1.47078, 1.47078};
21 1.67078, 1.67078, 1.67078, 1.67078, 1.67078, 1.67078};
65 std::pair<float, float> element;
66 std::pair<float, float>
errors;
69 throw cms::Exception(
"PixelCPEGenericDBErrorParametrization::getError") <<
"Non-pixel detector type !!!";
71 element = std::pair<float, float>(
index(1, sizex, alpha, beta, bigInX),
72 index(0, sizey, alpha, beta, bigInY));
74 element = std::pair<float, float>(
index(3, sizex, alpha, beta, bigInX),
75 index(2, sizey, alpha, beta, bigInY));
78 if (bigInX && sizex == 1)
79 errors.first = element.first;
81 errors.first = parmErrors->
errors()[(
int)element.first].sigma;
82 if (bigInY && sizey == 1)
83 errors.second = element.second;
85 errors.second = parmErrors->
errors()[(
int)element.second].sigma;
93 std::pair<float, float> element;
94 std::pair<float, float>
errors;
97 throw cms::Exception(
"PixelCPEGenericDBErrorParametrization::getError") <<
"Non-pixel detector type !!!";
99 element = std::pair<float, float>(
index(1, sizex, alpha, beta, bigInX),
100 index(0, sizey, alpha, beta, bigInY));
102 element = std::pair<float, float>(
index(3, sizex, alpha, beta, bigInX),
103 index(2, sizey, alpha, beta, bigInY));
106 if (bigInX && sizex == 1)
107 errors.first = element.first;
110 if (bigInY && sizey == 1)
111 errors.second = element.second;
120 if (big && size == 1)
125 float alpha_rad = -999.9;
126 float betap_rad = -999.9;
131 float binw_a = -999.9;
132 float binw_b = -999.9;
136 betap_rad = fabs(
math_pi / 2.0 - beta);
138 if (ind_subpart == 3)
139 alpha_rad = fabs(
math_pi / 2.0 - alpha);
141 alpha_rad = fabs(alpha);
144 if (ind_subpart == 0 || ind_subpart == 2) {
145 binw_a = (
a_max[ind_subpart][ind_size] -
a_min[ind_subpart][ind_size]) / 2.0;
146 binw_b = (
b_max[ind_subpart][ind_size] -
b_min[ind_subpart][ind_size]) / 8.0;
150 binw_a = (
a_max[ind_subpart][ind_size] -
a_min[ind_subpart][ind_size]) / 8.0;
151 binw_b = (
b_max[ind_subpart][ind_size] -
b_min[ind_subpart][ind_size]) / 2.0;
157 if (alpha_rad <
a_min[ind_subpart][ind_size])
159 else if (alpha_rad >=
a_max[ind_subpart][ind_size])
160 ind_alpha = maxbin_a;
162 ind_alpha = 1 + (
int)((alpha_rad -
a_min[ind_subpart][ind_size]) / binw_a);
165 if (ind_subpart == 1) {
166 if (betap_rad <= 0.7)
168 else if (0.7 < betap_rad && betap_rad <= 1.0)
170 else if (1.0 < betap_rad && betap_rad <= 1.2)
172 else if (1.2 <= betap_rad)
174 }
else if (betap_rad <
b_min[ind_subpart][ind_size])
176 else if (betap_rad >=
b_max[ind_subpart][ind_size])
179 ind_beta = 1 + (
int)((betap_rad -
b_min[ind_subpart][ind_size]) / binw_b);
static const int beta_bin_size[4]
static const float by_a_min[6]
static const float bx_a_max[3]
static const float fy_b_max[2]
static const int size_max[4]
bool isBarrel(GeomDetEnumerators::SubDetector m)
SiPixelCPEGenericDBErrorParametrization()
static const float errors_big_pix[4]
std::pair< float, float > getError(const SiPixelCPEGenericErrorParm *parmErrors, GeomDetType::SubDetector pixelPart, int sizex, int sizey, float alpha, float beta, bool bigInX=false, bool bigInY=false)
static const float by_a_max[6]
static const float fx_a_max[2]
void setDBAccess(const edm::EventSetup &es)
static const float * b_min[4]
static const float by_b_min[6]
static const int size_bin_size[4]
static const float fx_b_min[2]
static const float * a_min[4]
~SiPixelCPEGenericDBErrorParametrization()
float index(int ind_subpart, int size, float alpha, float beta, bool big)
static const float bx_a_min[3]
static const int part_bin_size[4]
DbVector & errors()
Accessors for the vectors – non-const version.
static const float fx_a_min[2]
static const float fy_a_min[2]
static const int alpha_bin_size[4]
static const float * b_max[4]
static const float fy_b_min[2]
alpha
zGenParticlesMatch = cms.InputTag(""),
static const float * a_max[4]
static const float by_b_max[6]
edm::ESHandle< SiPixelCPEGenericErrorParm > errorsH
static const float fx_b_max[2]
static const float fy_a_max[2]
bool isTrackerPixel(GeomDetEnumerators::SubDetector m)