155 LOG(error) <<
"CbmMvdSensorFindHitTask - Fatal: No Digits found in this event.";
163 for (Int_t k = 0; k < nDigis; k++) {
167 LOG(fatal) <<
"RefID of this digi is -1 this should not happend ";
171 Float_t curr_digi_charge = digi->
GetCharge();
173 short dth_current_digi_X = digi->
GetPixelX();
174 short dth_current_digi_Y = digi->
GetPixelY();
175 dth_coordArray.emplace_back(std::make_pair(dth_current_digi_X, dth_current_digi_Y));
179 dth_grid[dth_current_digi_X + 1][dth_current_digi_Y + 1] = curr_digi_charge;
188 auto& dth_current_digi_X = curr_coord.first;
189 auto& dth_current_digi_Y = curr_coord.second;
192 auto& root_digi_pos_charge =
dth_grid[dth_current_digi_X + 1][dth_current_digi_Y + 1];
205 xIndex0 = dth_current_digi_X - 1;
206 yIndex0 = dth_current_digi_Y - 1;
220 shape += TMath::Power(2, (4 * (dth_current_digi_Y - 1 -
yIndex0 + 3)) + (dth_current_digi_X - 1 -
xIndex0));
229 root_digi_pos_charge = 0;
237 auto checkNeighbour = [&](
short channelX,
short channelY) {
238 auto& curr_digi_pos_charge =
dth_grid[channelX + 1][channelY + 1];
240 if (curr_digi_pos_charge != 0) {
263 curr_digi_pos_charge = 0;
267 short channelX = index.first;
268 short channelY = index.second;
270 checkNeighbour(channelX + 1, channelY);
271 checkNeighbour(channelX - 1, channelY);
272 checkNeighbour(channelX, channelY + 1);
273 checkNeighbour(channelX, channelY - 1);
281 Double_t sigmaIn[3], sigmaOut[3], shiftIn[3], shiftOut[3];
304 sigmaIn[0] = 0.00053;
305 sigmaIn[1] = 0.00063;
307 shiftIn[0] = -0.00000;
308 shiftIn[1] = -0.00001;
313 sigmaIn[0] = 0.00035;
314 sigmaIn[1] = 0.00036;
316 shiftIn[0] = -0.00000;
317 shiftIn[1] = -0.00002;
322 sigmaIn[0] = 0.00028;
323 sigmaIn[1] = 0.00028;
325 shiftIn[0] = -0.00000;
326 shiftIn[1] = -0.00002;
331 sigmaIn[0] = 0.00028;
332 sigmaIn[1] = 0.00039;
334 shiftIn[0] = -0.00000;
335 shiftIn[1] = -0.00001;
340 sigmaIn[0] = 0.00024;
341 sigmaIn[1] = 0.00022;
343 shiftIn[0] = +0.00020;
344 shiftIn[1] = +0.00008;
349 sigmaIn[0] = 0.00024;
350 sigmaIn[1] = 0.00022;
352 shiftIn[0] = -0.00020;
353 shiftIn[1] = -0.00011;
358 sigmaIn[0] = 0.00024;
359 sigmaIn[1] = 0.00022;
361 shiftIn[0] = -0.00020;
362 shiftIn[1] = +0.00008;
367 sigmaIn[0] = 0.00024;
368 sigmaIn[1] = 0.00022;
370 shiftIn[0] = +0.00020;
371 shiftIn[1] = -0.00011;
376 sigmaIn[0] = 0.00027;
377 sigmaIn[1] = 0.00092;
379 shiftIn[0] = +0.00002;
380 shiftIn[1] = +0.00004;
385 sigmaIn[0] = 0.00036;
386 sigmaIn[1] = 0.00044;
388 shiftIn[0] = -0.00000;
389 shiftIn[1] = -0.00002;
398 TGeoHMatrix RotMatrix;
399 RotMatrix.SetRotation(RecoMatrix->GetRotationMatrix());
401 RotMatrix.LocalToMaster(sigmaIn, sigmaOut);
402 RotMatrix.LocalToMaster(shiftIn, shiftOut);
410 dpos.SetXYZ(TMath::Abs(sigmaOut[0]), TMath::Abs(sigmaOut[1]), TMath::Abs(sigmaOut[2]));
415 Int_t indexX, indexY;