Skip to content

Commit

Permalink
Merge pull request #39443 from mmusich/doNotDropDuplicatesPhase2_12_5_X
Browse files Browse the repository at this point in the history
[12.5.X] do not drop pixel duplicates for phase-2 IT reconstruction
  • Loading branch information
cmsbuild committed Sep 21, 2022
2 parents 1275c74 + 5c6490c commit aa0302e
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 2 deletions.
Expand Up @@ -53,6 +53,7 @@ PixelThresholdClusterizer::PixelThresholdClusterizer(edm::ParameterSet const& co
theOffset_L1(conf.getParameter<int>("VCaltoElectronOffset_L1")),
theElectronPerADCGain(conf.getParameter<double>("ElectronPerADCGain")),
doPhase2Calibration(conf.getParameter<bool>("Phase2Calibration")),
dropDuplicates(conf.getParameter<bool>("DropDuplicates")),
thePhase2ReadoutMode(conf.getParameter<int>("Phase2ReadoutMode")),
thePhase2DigiBaseline(conf.getParameter<double>("Phase2DigiBaseline")),
thePhase2KinkADC(conf.getParameter<int>("Phase2KinkADC")),
Expand Down Expand Up @@ -82,6 +83,7 @@ void PixelThresholdClusterizer::fillPSetDescription(edm::ParameterSetDescription
desc.add<int>("ClusterThreshold_L1", 4000);
desc.add<int>("ClusterThreshold", 4000);
desc.add<double>("ElectronPerADCGain", 135.);
desc.add<bool>("DropDuplicates", true);
desc.add<bool>("Phase2Calibration", false);
desc.add<int>("Phase2ReadoutMode", -1);
desc.add<double>("Phase2DigiBaseline", 1200.);
Expand Down Expand Up @@ -296,8 +298,9 @@ void PixelThresholdClusterizer::copy_to_buffer(DigiIterator begin, DigiIterator
of view of the final cluster charge since these are typically >= 20000.
*/

thePixelOccurrence[theBuffer.index(row, col)]++; // increment the occurrence counter
uint8_t occurrence = thePixelOccurrence[theBuffer.index(row, col)]; // get the occurrence counter
thePixelOccurrence[theBuffer.index(row, col)]++; // increment the occurrence counter
uint8_t occurrence =
(!dropDuplicates) ? 1 : thePixelOccurrence[theBuffer.index(row, col)]; // get the occurrence counter

switch (occurrence) {
// the 1st occurrence (standard treatment)
Expand Down
Expand Up @@ -111,6 +111,7 @@ class dso_hidden PixelThresholdClusterizer : public PixelClusterizerBase {
const double theElectronPerADCGain; // ADC to electrons conversion

const bool doPhase2Calibration; // The ADC --> electrons calibration is for phase-2 tracker
const bool dropDuplicates; // Enabling dropping duplicate pixels
const int thePhase2ReadoutMode; // Readout mode of the phase-2 IT digitizer
const double thePhase2DigiBaseline; // Threshold above which digis are measured in the phase-2 IT
const int thePhase2KinkADC; // ADC count at which the kink in the dual slop kicks in
Expand Down
Expand Up @@ -33,6 +33,7 @@
from SimTracker.SiPhase2Digitizer.phase2TrackerDigitizer_cfi import PixelDigitizerAlgorithmCommon
phase2_tracker.toModify(siPixelClusters, # FIXME
src = 'simSiPixelDigis:Pixel',
DropDuplicates = False, # do not drop duplicates for phase-2 until the digitizer can handle them consistently
MissCalibrate = False,
Phase2Calibration = True,
Phase2ReadoutMode = PixelDigitizerAlgorithmCommon.Phase2ReadoutMode.value(), # Flag to decide Readout Mode : linear TDR (-1), dual slope with slope parameters (+1,+2,+3,+4 ...) with threshold subtraction
Expand Down

0 comments on commit aa0302e

Please sign in to comment.