Skip to content

Save track fiducial sigma for all tracks, not just vetoed tracks#296

Open
lnestor wants to merge 4 commits intomasterfrom
track-fiducial-sigma
Open

Save track fiducial sigma for all tracks, not just vetoed tracks#296
lnestor wants to merge 4 commits intomasterfrom
track-fiducial-sigma

Conversation

@lnestor
Copy link
Copy Markdown
Contributor

@lnestor lnestor commented Mar 9, 2026

Description

The framework has 2 variables for every track that aren't currently being calculated: maxSigmaForFiducialElectronTrack and maxSigmaForFiducialMuonTrack. These variables are supposed get the worst performing inefficiency sigma in a detector region around the track. This can be useful for determining where to place a fiducial cut or for debugging purposes.

However, these values currently are only stored on tracks that get vetoed by the fiducial cut. For all other tracks, this gets set to 0. That is not ideal for two reasons:

  • We can't see the sigma distribution for tracks that don't get vetoed
  • Most of the time we apply a fiducial cut, so this value is just 0 for all surviving tracks

This change saves these variables properly for all tracks regardless of if they get vetoed or not.

Related DisappTrks PR: OSU-CMS/DisappTrks#127

Implementation Details

It was necessary to change how we handle the fiducial map. Previously, OSUGenericTrackProducer would go calculate the fiducial map and then save a list of all hot spots. The hot spots were given to TrackBase, which would then compare if they were close to any given hot spot.

This changes it so the entire fiducial map TH2D gets sent to TrackBase, not just the hot spots. Then TrackBase indexes into the histogram based on its own eta and phi coordinate.

Visualization

Here is a plot that shows what this change gets us. In the previous version of the code, all tracks with a max sigma < 2.0 would be assigned a max sigma of 0, so we wouldn't see the entire distribution.

image

Verification

I verified that no regression was made using 20,000 events for a 2024C ROOT file with the ElectronTagPt55 selection. The cutflow plots matched (indicating the veto logic is the same), and the sigma distribution showed no events above the 2.0 threshold.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant