Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
  • M MooreAnalysis
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 14
    • Issues 14
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
  • Merge requests 2
    • Merge requests 2
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Issue
    • Repository
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • LHCb
  • MooreAnalysis
  • Merge requests
  • !61

Don't attempt to access the LHCbIDs of neutrals when TOS matching in HltEfficiencyChecker

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Ross John Hunter requested to merge rjhunter-TOS-ignore-neutrals into master Nov 15, 2021
  • Overview 20
  • Commits 3
  • Pipelines 2
  • Changes 1

FYI @mireboll

As titled. As described by #21, the TOS algorithm will attempt to access LHCbIDs of any particle, and these don't exist for a neutral -> seg fault. This MR improves that behaviour by removing the seg fault, returning 0 for TOS efficiencies with respect to neutrals (or composites containing a neutral), and otherwise being successful such that you can still access the DEC efficiencies.

How does it work

  1. Throws a warning instead of attempting to access the LHCbIDs e.g.:
MCDecayTreeTuple.MCTupleToolTOSHLT2 WARNING Particle with ID LHCb.ParticleID(22) is neutral, so has no track. Adding empty container of LHCbIDs to this candidate for this track.

and 2) appends an empty vector to the container of LHCbIDs/track.

The algorithm then proceeds, and when it attempts to match the neutral's track, it will hit the empty container, and the algorithm will return false, meaning unmatched. This will mean that TOS efficiencies with respect to neutrals (or composites containing a neutral) will be zero.

Follow ups

The algorithm should later be improved to be able to match neutral objects via e.g. calo clusters.

Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: rjhunter-TOS-ignore-neutrals