Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bugfix in pixel detector's cluster charge re-weighting #23583

Merged

Conversation

schuetzepaul
Copy link
Contributor

Following up on #22911 :
A bug in the re-weighting algorithm of the pixel digitizer was discovered causing the removal of a significant number of clusters.
Technically spoken: If no matching 2D template was found for a cluster, it was removed (all charges set to 0) due to a missing return of the re-weighting function. This happens mainly for low pt tracks, since they have a higher possibility for very large incidence angles, not covered by the templates.

Solution: The re-weighting function returns with an error in case no matching template was found. This pulls the flag reweighted to false, causing the signal to be digitized without re-weighting (see here). Therefore the signal is not fully correct in terms of radiation damage, but it's not lost.

As noted in #22911 the feature of charge re-weighting is still turned of by default. It can be used with the following lines in the configuration (switching on the Re-weighting and loading the templates via the GT candidate):

from SimGeneral.MixingModule.pixelDigitizer_cfi import *
process.mix.digitizers.pixel.UseReweighting = cms.bool(True)

from Configuration.AlCa.GlobalTag import GlobalTag
process.GlobalTag = GlobalTag(process.GlobalTag, '102X_upgrade2018_realistic_Candidate_2018_06_10_00_16_33', '')

The validation of the simulated data with this fix is ongoing.

Interested users: @tvami @tsusa @veszpv @pmaksim1

In case no matching template is found, the cluster is stored without re-weighting (was removed before)
@cmsbuild
Copy link
Contributor

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @schuetzepaul (Paul Schuetze) for master.

It involves the following packages:

SimTracker/SiPixelDigitizer

@cmsbuild, @civanch, @mdhildreth can you please review it and eventually sign? Thanks.
@makortel, @GiacomoSguazzoni, @rovere, @VinInn, @dkotlins, @ebrondol, @threus, @dgulhan this is something you requested to watch as well.
@davidlange6, @slava77, @fabiocos you are the release manager for this.

cms-bot commands are listed here

@civanch
Copy link
Contributor

civanch commented Jun 14, 2018

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Jun 14, 2018

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/28688/console Started: 2018/06/14 11:50

@civanch
Copy link
Contributor

civanch commented Jun 14, 2018

@schuetzepaul , a minor comment: if you are using LogDebug it is equivalent to #ifdef, #ifdef may be useful if you keep LogInfo

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

Comparison job queued.

@cmsbuild
Copy link
Contributor

Comparison is ready
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-23583/28688/summary.html

Comparison Summary:

  • No significant changes to the logs found
  • Reco comparison results: 4 differences found in the comparisons
  • DQMHistoTests: Total files compared: 31
  • DQMHistoTests: Total histograms compared: 2902004
  • DQMHistoTests: Total failures: 2
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 2901812
  • DQMHistoTests: Total skipped: 190
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 30 files compared)
  • Checked 128 log files, 14 edm output root files, 31 DQM output files

@civanch
Copy link
Contributor

civanch commented Jun 14, 2018

+1

@cmsbuild
Copy link
Contributor

This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @davidlange6, @slava77, @smuzaffar, @fabiocos (and backports should be raised in the release meeting by the corresponding L2)

@pmaksim1
Copy link
Contributor

@civanch Thanks for the quick integration!

For my own education, would you mind explaining your comment about #ifdef and LogInfo vs LogDebug? I have some amount of debugging/verbose output in the upcoming FastSim code, and I'd like to know what's the best way to deal with it. Thanks!

@fabiocos
Copy link
Contributor

@pmaksim1 just check https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideMessageLogger#LogDebug LogDebug is by default disabled, and is enabled with a proper modification of the MessageLogger options, and defining a flag for the compiler.

@fabiocos
Copy link
Contributor

+1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants