-
Notifications
You must be signed in to change notification settings - Fork 4.2k
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
improved position measurement for 2D clusters in HGCAL silicon sensors #25411
Conversation
The code-checks are being triggered in jenkins. |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-25411/7453 |
A new Pull Request was created by @amartelli for master. It involves the following packages: RecoLocalCalo/HGCalRecAlgos @perrotta, @cmsbuild, @kpedro88, @slava77 can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
please test |
The tests are being triggered in jenkins. |
Comparison job queued. |
VerbosityLevel the_verbosity = pERROR) : vecDeltas_(vecDeltas_in), kappa_(kappa_in), | ||
VerbosityLevel the_verbosity = pERROR) : | ||
W0threshold_(W0threshold_in), | ||
positionDeltaRho_c_(positionDeltaRho_c_in), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
inconsistent indentation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok. I also fixed the indentation for other few lines in the same constructor
float rhEnergy = v[idx].data.weight; | ||
if(total_weight == 0. || rhEnergy == 0.) continue; | ||
float W0_ = W0threshold_[thick]; | ||
Wi = (W0_ + log(rhEnergy/total_weight)) > 0 ? (W0_ + log(rhEnergy/total_weight)) : 0.; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wi = std::max(W0_ + log(rhEnergy/total_weight), 0.);
total_weight_log += Wi; | ||
} | ||
total_weight = total_weight_log; | ||
x = x_log; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for silicon, why bother computing x and y values in the earlier loop that fills innerIndices
if the values will get overwritten here?
please test |
The tests are being triggered in jenkins. |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
+1
|
@amartelli : since you did not want to integrate it here, I think that an adjustment that should be applied to all HGCal code in CMSSW (as soon as this PR gets merged) is to retrieve lastLayerEE and lastLayerFH from the geometry via RecHitTools. As far as I can see, up to now only in |
@perrotta. Yes agreed that replacing "magic numbers" with quantities retrieved from the geometry via RecHitTools has to be done everywhere and indeed there were already threads about this. |
+upgrade |
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) |
I opened #25472 to track the hardcoded layer number issue |
+1 |
Improved position for 2D clusters, with focus on electromagnetic showers thus concerning 2Dcl centered in the Silicon sensors.
Main changes:
In support of this, see slides attached to the DPG agenda
https://indico.cern.ch/event/776790/contributions/3230583/attachments/1761511/2865143/positionResolutionFor2DClusters_amartell_29Nov.pdf
Further position optimisation will follow a global restyle with optimised parameters of the Imaging algorithm. In the specific for the position: