Project
Loading...
Searching...
No Matches
ChamberResponseParams.cxx
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11
16
21
23
24namespace o2
25{
26namespace mid
27{
28
29//______________________________________________________________________________
30double ChamberResponseParams::getParA(double hv) const
31{
34 return mParA[1] * hv + mParA[0];
35}
36
37//______________________________________________________________________________
38double ChamberResponseParams::getParC(double hv) const
39{
42 return mParC[1] * hv + mParC[0];
43}
44
45//______________________________________________________________________________
46double ChamberResponseParams::getParB(int cathode, int deId) const
47{
51 return mParB[72 * cathode + deId];
52}
53
54//______________________________________________________________________________
55void ChamberResponseParams::setParA(double a0, double a1)
56{
58 mParA[0] = a0;
59 mParA[1] = a1;
60}
61
62//______________________________________________________________________________
63void ChamberResponseParams::setParC(double c0, double c1)
64{
66 mParC[0] = c0;
67 mParC[1] = c1;
68}
69
70//______________________________________________________________________________
71void ChamberResponseParams::setParB(int cathode, int deId, double val)
72{
74 mParB[72 * cathode + deId] = val;
75}
76
78{
81 params.setParA(-52.70, 6.089 / 1000.); // par1 in 1/V
82 params.setParC(-0.5e-3, 8.3e-4 / 1000.); // par1 in 1/V
83
84 // if (isStreamer) {
85 // mParB.fill(2.966);
86 // return;
87 // }
88
89 // BP
90 // MT11R
91 params.setParB(0, 0, 2.97);
92 params.setParB(0, 1, 2.47);
93 params.setParB(0, 2, 2.47);
94 params.setParB(0, 3, 1.97);
95 params.setParB(0, 4, 1.97);
96 params.setParB(0, 5, 2.47);
97 params.setParB(0, 6, 2.47);
98 params.setParB(0, 7, 2.47);
99 params.setParB(0, 8, 2.97);
100 // MT12R
101 params.setParB(0, 9, 2.97);
102 params.setParB(0, 10, 1.97);
103 params.setParB(0, 11, 1.97);
104 params.setParB(0, 12, 1.97);
105 params.setParB(0, 13, 2.22);
106 params.setParB(0, 14, 2.22);
107 params.setParB(0, 15, 1.97);
108 params.setParB(0, 16, 2.47);
109 params.setParB(0, 17, 2.97);
110 // MT21R
111 params.setParB(0, 18, 2.97);
112 params.setParB(0, 19, 1.97);
113 params.setParB(0, 20, 1.97);
114 params.setParB(0, 21, 1.97);
115 params.setParB(0, 22, 2.22);
116 params.setParB(0, 23, 2.22);
117 params.setParB(0, 24, 2.47);
118 params.setParB(0, 25, 2.47);
119 params.setParB(0, 26, 2.97);
120 // MT22R
121 params.setParB(0, 27, 2.97);
122 params.setParB(0, 28, 1.97);
123 params.setParB(0, 29, 1.97);
124 params.setParB(0, 30, 1.97);
125 params.setParB(0, 31, 1.97);
126 params.setParB(0, 32, 1.97);
127 params.setParB(0, 33, 2.97);
128 params.setParB(0, 34, 2.97);
129 params.setParB(0, 35, 2.97);
130 // MT11L
131 params.setParB(0, 36, 2.97);
132 params.setParB(0, 37, 1.97);
133 params.setParB(0, 38, 2.47);
134 params.setParB(0, 39, 1.97);
135 params.setParB(0, 40, 2.22);
136 params.setParB(0, 41, 1.97);
137 params.setParB(0, 42, 2.47);
138 params.setParB(0, 43, 2.47);
139 params.setParB(0, 44, 2.97);
140 // MT12L
141 params.setParB(0, 45, 2.97);
142 params.setParB(0, 46, 1.97);
143 params.setParB(0, 47, 2.47);
144 params.setParB(0, 48, 1.97);
145 params.setParB(0, 49, 1.97);
146 params.setParB(0, 50, 1.97);
147 params.setParB(0, 51, 2.47);
148 params.setParB(0, 52, 1.97);
149 params.setParB(0, 53, 2.97);
150 // MT21L
151 params.setParB(0, 54, 2.97);
152 params.setParB(0, 55, 1.97);
153 params.setParB(0, 56, 2.47);
154 params.setParB(0, 57, 1.97);
155 params.setParB(0, 58, 1.97);
156 params.setParB(0, 59, 2.22);
157 params.setParB(0, 60, 2.47);
158 params.setParB(0, 61, 2.47);
159 params.setParB(0, 62, 2.97);
160 // MT22L
161 params.setParB(0, 63, 2.97);
162 params.setParB(0, 64, 2.22);
163 params.setParB(0, 65, 2.47);
164 params.setParB(0, 66, 1.72);
165 params.setParB(0, 67, 1.97);
166 params.setParB(0, 68, 1.97);
167 params.setParB(0, 69, 1.97);
168 params.setParB(0, 70, 2.47);
169 params.setParB(0, 71, 2.97);
170
171 // NBP
172 // MT11R
173 params.setParB(1, 0, 2.97);
174 params.setParB(1, 1, 2.97);
175 params.setParB(1, 2, 1.97);
176 params.setParB(1, 3, 1.72);
177 params.setParB(1, 4, 1.97);
178 params.setParB(1, 5, 2.47);
179 params.setParB(1, 6, 2.47);
180 params.setParB(1, 7, 2.97);
181 params.setParB(1, 8, 2.97);
182 // MT12R
183 params.setParB(1, 9, 2.97);
184 params.setParB(1, 10, 2.97);
185 params.setParB(1, 11, 1.97);
186 params.setParB(1, 12, 1.97);
187 params.setParB(1, 13, 2.47);
188 params.setParB(1, 14, 1.97);
189 params.setParB(1, 15, 2.22);
190 params.setParB(1, 16, 2.97);
191 params.setParB(1, 17, 2.97);
192 // MT21R
193 params.setParB(1, 18, 2.97);
194 params.setParB(1, 19, 2.47);
195 params.setParB(1, 20, 1.97);
196 params.setParB(1, 21, 1.97);
197 params.setParB(1, 22, 1.97);
198 params.setParB(1, 23, 2.47);
199 params.setParB(1, 24, 2.47);
200 params.setParB(1, 25, 2.97);
201 params.setParB(1, 26, 2.97);
202 // MT22R
203 params.setParB(1, 27, 2.97);
204 params.setParB(1, 28, 1.97);
205 params.setParB(1, 29, 1.97);
206 params.setParB(1, 30, 1.97);
207 params.setParB(1, 31, 1.72);
208 params.setParB(1, 32, 1.97);
209 params.setParB(1, 33, 2.97);
210 params.setParB(1, 34, 2.97);
211 params.setParB(1, 35, 2.97);
212 // MT11L
213 params.setParB(1, 36, 2.97);
214 params.setParB(1, 37, 2.97);
215 params.setParB(1, 38, 2.47);
216 params.setParB(1, 39, 2.22);
217 params.setParB(1, 40, 1.97);
218 params.setParB(1, 41, 1.97);
219 params.setParB(1, 42, 2.47);
220 params.setParB(1, 43, 2.97);
221 params.setParB(1, 44, 2.97);
222 // MT12L
223 params.setParB(1, 45, 2.97);
224 params.setParB(1, 46, 2.97);
225 params.setParB(1, 47, 2.97);
226 params.setParB(1, 48, 1.97);
227 params.setParB(1, 49, 1.97);
228 params.setParB(1, 50, 1.97);
229 params.setParB(1, 51, 2.97);
230 params.setParB(1, 52, 2.47);
231 params.setParB(1, 53, 2.97);
232 // MT21L
233 params.setParB(1, 54, 2.97);
234 params.setParB(1, 55, 2.97);
235 params.setParB(1, 56, 2.47);
236 params.setParB(1, 57, 2.22);
237 params.setParB(1, 58, 1.97);
238 params.setParB(1, 59, 2.22);
239 params.setParB(1, 60, 2.47);
240 params.setParB(1, 61, 2.97);
241 params.setParB(1, 62, 2.97);
242 // MT22L
243 params.setParB(1, 63, 2.47);
244 params.setParB(1, 64, 2.97);
245 params.setParB(1, 65, 2.47);
246 params.setParB(1, 66, 1.97);
247 params.setParB(1, 67, 2.22);
248 params.setParB(1, 68, 1.72);
249 params.setParB(1, 69, 1.97);
250 params.setParB(1, 70, 2.97);
251 params.setParB(1, 71, 2.97);
252
253 return std::move(params);
254}
255
256} // namespace mid
257} // namespace o2
Parameters for MID RPC response.
void setParB(int cathode, int deId, double val)
double getParB(int cathode, int deId) const
void setParA(double a0, double a1)
void setParC(double c0, double c1)
GLenum const GLfloat * params
Definition glcorearb.h:272
GLuint GLfloat * val
Definition glcorearb.h:1582
ChamberResponseParams createDefaultChamberResponseParams()
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...