38 theSync->setES(
setup);
53 if (!
layer->specificTopology().isWireValid(wireId.wire()))
55 LocalPoint locWirePos(
layer->specificTopology().wirePosition(wireId.wire()), 0, 0);
68 angle = atan(lDirLoc.
x() / -lDirLoc.
z());
82 if (!
layer->specificTopology().isWireValid(wireId.
wire()))
102 const float digiTime,
111 float driftTime = digiTime - theSync->offset(
layer, wireId, globPos);
114 if (
step == 1 && (driftTime < minTime || driftTime >
maxTime)) {
116 cout <<
"*** Drift time out of window for in-time hits " << driftTime << endl;
146 cout <<
"[DTParametrizedDriftAlgo]*** WARNING: call to parametrization failed" << endl;
156 bool variableSigma =
false;
174 reso = (sigma_l + sigma_r) / 2.;
180 }
else if (
wheel == 1) {
182 }
else if (
wheel == 2) {
186 }
else if (
step == 2) {
187 reso = (sigma_l + sigma_r) / 2.;
193 }
else if (
wheel == 1) {
195 }
else if (
wheel == 2) {
199 }
else if (
step == 3) {
200 reso = (sigma_l + sigma_r) / 2.;
206 }
else if (
wheel == 1) {
208 }
else if (
wheel == 2) {
213 float sXDelays = sTDelays * DX.
v_drift / 10.;
214 reso =
sqrt(reso * reso + sXDelays * sXDelays);
220 }
else if (
wheel == 1) {
222 }
else if (
wheel == 2) {
228 }
else if (
step == 2) {
232 }
else if (
wheel == 1) {
234 }
else if (
wheel == 2) {
240 }
else if (
step == 3) {
244 }
else if (
wheel == 1) {
246 }
else if (
wheel == 2) {
259 if (!
layer->specificTopology().isWireValid(wireId.
wire()))
268 int prevW =
cout.width();
269 cout << setiosflags(ios::showpoint |
ios::fixed) << setw(3) <<
"[DTParametrizedDriftAlgo]: step " <<
step << endl
270 <<
" Global Position " << globPos << endl
271 <<
" Local Position " <<
layer->toLocal(globPos)
274 <<
" Digi time " << digiTime
278 <<
" >Drif time " << driftTime << endl
279 <<
" >Angle " <<
angle * 180. /
M_PI << endl
280 <<
" <Drift distance " <<
drift << endl
281 <<
" <sigma_l " << sigma_l << endl
282 <<
" <sigma_r " << sigma_r << endl
283 <<
" reso " << reso << endl
284 <<
" leftPoint " << leftPoint << endl
285 <<
" rightPoint " << rightPoint << endl
286 <<
" error " <<
error << resetiosflags(ios::showpoint |
ios::fixed) << setw(prevW) << endl
296 const float digiTime,
307 switch (newHit1D.
lrSide()) {
324 throw cms::Exception(
"InvalidDTCellSide") <<
"[DTParametrizedDriftAlgo] Compute at Step " <<
step
325 <<
", Hit side " << newHit1D.
lrSide() <<
" is invalid!" << endl;