Skip to content

Removing default/invalid (-999 ns) HCAL rechit timings from HCAL PF cluster time calculation#50910

Open
gk199 wants to merge 3 commits into
cms-sw:masterfrom
gk199:PF_ClusterTime
Open

Removing default/invalid (-999 ns) HCAL rechit timings from HCAL PF cluster time calculation#50910
gk199 wants to merge 3 commits into
cms-sw:masterfrom
gk199:PF_ClusterTime

Conversation

@gk199
Copy link
Copy Markdown
Contributor

@gk199 gk199 commented May 8, 2026

PR description:

All HCAL PF rechits are currently considered in the computation of the HCAL PF cluster time, even when those rechits have an "invalid" time (from the MAHI fit) of -999 reported. The PF cluster time is computed as an energy weighted time average of all associated rechits, and ends up reporting non-physical values such as -300ns due to averaging in the default -999ns hit times. This PR excludes those rechits with reported times of -999, such that the cluster time is only computed with valid rechit times. If no rechits associated to the cluster have a valid time, then the cluster time is also reported as -999ns.

This removes the long tail of cluster times between -999ns and about -20ns. This doesn't change anything about the PF algorithm, just reports the HCAL PF cluster time as a more meaningful quantity instead of a smeared / contaminated average value.

PR validation:

  • Ran a re-reco on single pion gun MC sample and produced validation plots (in CMSSW_15_0_6). The HCAL cluster time now agrees with the energy weighted mean of valid rechit time, and the tail of negative times above -999 is removed. The total number of PF rechits per cluster and fraction of rechits with timing = -999 is the same before and after the change (the PF algorithm is not impacted). See plots in slides: PF_timing_validation.pdf
  • Ran runTheMatrix.py -l limited -i all --ibeos (some failed to execute due to missing "lumi_ranges.txt")
  • Code checks and format checks run

If this PR is a backport please specify the original PR and why you need to backport that PR. If this PR will be backported please specify to which release cycle the backport is meant for:

Not a backport.

cc: @ahinzmann

@cmsbuild
Copy link
Copy Markdown
Contributor

cmsbuild commented May 8, 2026

cms-bot internal usage

@cmsbuild
Copy link
Copy Markdown
Contributor

cmsbuild commented May 8, 2026

-code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-50910/49272

Code check has found code style and quality issues which could be resolved by applying following patch(s)

@cmsbuild
Copy link
Copy Markdown
Contributor

cmsbuild commented May 8, 2026

@cmsbuild
Copy link
Copy Markdown
Contributor

cmsbuild commented May 8, 2026

A new Pull Request was created by @gk199 for master.

It involves the following packages:

  • RecoParticleFlow/PFClusterProducer (reconstruction)

@Moanwar, @cmsbuild, @jfernan2, @mandrenguyen, @srimanob can you please review it and eventually sign? Thanks.
@felicepantaleo, @hatakeyamak, @lgray, @mmarionncern, @rovere, @sameasy, @seemasharmafnal this is something you requested to watch as well.
@ftenchini, @mandrenguyen, @sextonkennedy you are the release manager for this.

cms-bot commands are listed here

@Moanwar
Copy link
Copy Markdown
Contributor

Moanwar commented May 8, 2026

type pf

@cmsbuild cmsbuild added the pf label May 8, 2026
@Moanwar
Copy link
Copy Markdown
Contributor

Moanwar commented May 8, 2026

@cmsbuild please test

@cmsbuild
Copy link
Copy Markdown
Contributor

cmsbuild commented May 8, 2026

+1

Size: This PR adds an extra 24KB to repository
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-57b6d7/53158/summary.html
COMMIT: 7ddff00
CMSSW: CMSSW_17_0_X_2026-05-08-1100/el8_amd64_gcc13
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmssw/50910/53158/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • You potentially added 1 lines to the logs
  • ROOTFileChecks: Some differences in event products or their sizes found
  • Reco comparison results: 51 differences found in the comparisons
  • DQMHistoTests: Total files compared: 53
  • DQMHistoTests: Total histograms compared: 4187168
  • DQMHistoTests: Total failures: 6
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 4187142
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 52 files compared)
  • Checked 227 log files, 197 edm output root files, 53 DQM output files
  • TriggerResults: no differences found

@Moanwar
Copy link
Copy Markdown
Contributor

Moanwar commented May 10, 2026

Thanks @gk199 for the PR. I was wondering whether you could provide validation plots using physics samples with reasonably good statistics, rather than only particle-gun samples. Also, wouldn’t this need to be backported for data taking?

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.

3 participants