You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ALICE3-TRK: adapting to recent changes in the ML/OT geometry and to the new type definition o2::trk::Hit (AliceO2Group#14831)
* ALICE3-TRK: adapting to new segmentation in chips in ML/OT and using o2::trk::Hit instead of o2::itsmft::Hit
* ALICE3-TRK: using o2::trk::Hit instead of o2::itsmft::Hit
* ALICE3-TRK: correct shift of VD chips to match the APTS response coordinate system + fix comment
mSimRespVDShift = -mChipSimRespVD->getDepthMax(); // the curved, rescaled, sensors have a width from 0 to -45. Must add 10 um (= max depth) to match the APTS response.
76
+
mSimRespVDShift = mChipSimRespVD->getDepthMax(); // the curved, rescaled, sensors have a width from 0 to -45. Must add 10 um (= max depth) to match the APTS response.
mSimRespMLOTShift = mChipSimRespMLOT->getDepthMax() - thicknessMLOT / 2.f; // the shift should be done considering the rescaling done to adapt to the wrong silicon thickness. TODO: remove the scaling factor for the depth when the silicon thickness match the simulated response
@@ -115,8 +115,8 @@ void Digitizer::process(const std::vector<Hit>* hits, int evID, int srcID)
voidDigitizer::processHit(const o2::itsmft::Hit& hit, uint32_t& maxFr, int evID, int srcID)
255
+
voidDigitizer::processHit(const o2::trk::Hit& hit, uint32_t& maxFr, int evID, int srcID)
256
256
{
257
257
int chipID = hit.GetDetectorID(); //// the chip ID at the moment is not referred to the chip but to a wider detector element (e.g. quarter of layer or disk in VD, stave in ML, half stave in OT)
for (int irow = rowSpan; irow--;) { // irow ranging from 4 to 0
477
474
uint16_t rowIS = irow + rowS; // row distant irow from the row of the hit start
478
475
for (int icol = colSpan; icol--;) { // icol ranging from 4 to 0
479
476
float nEleResp = respMatrix[irow][icol]; // value of the probability of the response in this pixel
480
477
if (nEleResp <= 1.e-36) {
481
478
continue;
482
479
}
483
-
LOG(debug) << "nEleResp: value " << nEleResp << " for pixel " << irow << "" << icol << std::endl;
480
+
LOG(debug) << "nEleResp: value " << nEleResp << " for pixel " << irow << "" << icol;
484
481
int nEle = gRandom->Poisson(nElectrons * nEleResp); // total charge in given pixel = number of electrons generated in the hit multiplied by the probability of being detected in their position
485
-
LOG(debug) << "Charge detected in the pixel: " << nEle << " for pixel " << irow << "" << icol << std::endl;
482
+
LOG(debug) << "Charge detected in the pixel: " << nEle << " for pixel " << irow << "" << icol;
486
483
// ignore charge which have no chance to fire the pixel
487
484
if (nEle < mParams.getMinChargeToAccount()) { /// TODO: substitute with the threshold?
488
485
LOG(debug) << "Ignoring pixel with nEle = " << nEle << " < min charge to account "
0 commit comments