Skip to content

Commit f65ed96

Browse files
authored
ITS/MFT digi: fix for late hits seen by the next ROF (#16011)
1 parent 3b1de27 commit f65ed96

2 files changed

Lines changed: 4 additions & 2 deletions

File tree

‎Detectors/ITSMFT/common/simulation/src/Digitizer.cxx‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -404,6 +404,7 @@ void Digitizer::processHit(const o2::itsmft::Hit& hit, uint32_t& maxFr, int evID
404404
// fire the pixels assuming Poisson(n_response_electrons)
405405
o2::MCCompLabel lbl(hit.GetTrackID(), evID, srcID, false);
406406
auto roFrameAbs = mNewROFrame + roFrameRel;
407+
auto timeInROFAbs = timeInROF - roFrameRel * mParams.getROFrameLengthInv(lay); // account for hit migration to next ROF with roFrameRel>0
407408
for (int irow = rowSpan; irow--;) {
408409
uint16_t rowIS = irow + rowS;
409410
for (int icol = colSpan; icol--;) {
@@ -424,7 +425,7 @@ void Digitizer::processHit(const o2::itsmft::Hit& hit, uint32_t& maxFr, int evID
424425
continue;
425426
}
426427
//
427-
registerDigits(chip, roFrameAbs, timeInROF, nFrames, rowIS, colIS, nEle, lbl, lay);
428+
registerDigits(chip, roFrameAbs, timeInROFAbs, nFrames, rowIS, colIS, nEle, lbl, lay);
428429
}
429430
}
430431
}

‎Detectors/Upgrades/ITS3/simulation/src/Digitizer.cxx‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -408,6 +408,7 @@ void Digitizer::processHit(const o2::itsmft::Hit& hit, uint32_t& maxFr, int evID
408408
// fire the pixels assuming Poisson(n_response_electrons)
409409
o2::MCCompLabel lbl(hit.GetTrackID(), evID, srcID, false);
410410
auto roFrameAbs = mNewROFrame + roFrameRel;
411+
auto timeInROFAbs = timeInROF - roFrameRel * mParams.getROFrameLengthInv(lay); // account for hit migration to next ROF with roFrameRel>0
411412
for (int irow = rowSpan; irow--;) {
412413
uint16_t rowIS = irow + rowS;
413414
for (int icol = colSpan; icol--;) {
@@ -421,7 +422,7 @@ void Digitizer::processHit(const o2::itsmft::Hit& hit, uint32_t& maxFr, int evID
421422
continue;
422423
}
423424
uint16_t colIS = icol + colS;
424-
registerDigits(chip, roFrameAbs, timeInROF, nFrames, rowIS, colIS, nEle, lbl, lay);
425+
registerDigits(chip, roFrameAbs, timeInROFAbs, nFrames, rowIS, colIS, nEle, lbl, lay);
425426
}
426427
}
427428
}

0 commit comments

Comments
 (0)