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

refactor: Central truth matching for tracks in Examples #2904

Merged
merged 62 commits into from
Mar 19, 2024

Conversation

andiwand
Copy link
Contributor

@andiwand andiwand commented Jan 26, 2024

An attempt to move to a central truth matching in the Examples framework. Currently all our writers have a separate truth matching implementation with some amount of common code. I propose to move the truth matching to its own algorithm and then use the output as an input for the writers.

This also allows for simple truth matching in case of truth tracking to be specialized and for a common mechanism for how we infer the truth information. E.g. some algorithms right now expect particles and tracks in a 1:1 correspondence in the input containers which is not achievable with CKF tracking.

blocked by

@andiwand andiwand added the 🚧 WIP Work-in-progress label Jan 26, 2024
@andiwand andiwand added this to the next milestone Jan 26, 2024
@github-actions github-actions bot added Component - Examples Affects the Examples module Event Data Model labels Jan 26, 2024
Copy link

codecov bot commented Jan 26, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 48.83%. Comparing base (4599bca) to head (a6e415f).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2904   +/-   ##
=======================================
  Coverage   48.83%   48.83%           
=======================================
  Files         491      491           
  Lines       28886    28886           
  Branches    13708    13708           
=======================================
  Hits        14107    14107           
  Misses       4954     4954           
  Partials     9825     9825           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@andiwand andiwand changed the title refactor: Central truth matching in Examples refactor: Central truth matching for tracks in Examples Feb 8, 2024
kodiakhq bot pushed a commit that referenced this pull request Feb 20, 2024
…2964)

This came to my attention while working on #2904. I do not see this used anywhere and too specific for a general purpose tracking performance writer.

If we want to classify duplicated tracks we should do that before writing the performance in a specific deduplication algorithm (like the ambiguity resolution https://github.com/acts-project/acts/blob/84c039fd8bd7cf3a7a18d5d66b1e662aa5e2e9f3/Examples/Algorithms/AmbiguityResolution/include/ActsExamples/AmbiguityResolution/GreedyAmbiguityResolutionAlgorithm.hpp#L36).
@paulgessinger
Copy link
Member

Do we have any idea why this affects physmon so much?

@andiwand andiwand removed the 🛑 blocked This item is blocked by another item label Feb 23, 2024
@github-actions github-actions bot added Infrastructure Changes to build tools, continous integration, ... Changes Performance labels Mar 18, 2024
Copy link
Contributor

@niermann999 niermann999 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A number of people have looked over this and the CI is green, approving

@kodiakhq kodiakhq bot merged commit 69f7217 into acts-project:main Mar 19, 2024
56 checks passed
@andiwand andiwand deleted the central-truth-matching branch March 19, 2024 14:49
@acts-project-service acts-project-service added the Breaks Athena build This PR breaks the Athena build label Mar 19, 2024
@CarloVarni CarloVarni removed the Breaks Athena build This PR breaks the Athena build label Mar 20, 2024
kodiakhq bot pushed a commit that referenced this pull request Mar 22, 2024
Currently truth vertices are not well defined. This is improved here by modifying the existing but unused truth vertex EDM and wiring it to the event generators and relevant performance writers.

blocked by
- #2904
@paulgessinger paulgessinger modified the milestones: next, v33.1.0 Mar 26, 2024
EleniXoch pushed a commit to EleniXoch/acts that referenced this pull request May 6, 2024
…cts-project#2964)

This came to my attention while working on acts-project#2904. I do not see this used anywhere and too specific for a general purpose tracking performance writer.

If we want to classify duplicated tracks we should do that before writing the performance in a specific deduplication algorithm (like the ambiguity resolution https://github.com/acts-project/acts/blob/84c039fd8bd7cf3a7a18d5d66b1e662aa5e2e9f3/Examples/Algorithms/AmbiguityResolution/include/ActsExamples/AmbiguityResolution/GreedyAmbiguityResolutionAlgorithm.hpp#L36).
EleniXoch pushed a commit to EleniXoch/acts that referenced this pull request May 6, 2024
…#2904)

An attempt to move to a central truth matching in the Examples framework. Currently all our writers have a separate truth matching implementation with some amount of common code. I propose to move the truth matching to its own algorithm and then use the output as an input for the writers.

This also allows for simple truth matching in case of truth tracking to be specialized and for a common mechanism for how we infer the truth information. E.g. some algorithms right now expect particles and tracks in a 1:1 correspondence in the input containers which is not achievable with CKF tracking.

blocked by
- acts-project#2964
EleniXoch pushed a commit to EleniXoch/acts that referenced this pull request May 6, 2024
Currently truth vertices are not well defined. This is improved here by modifying the existing but unused truth vertex EDM and wiring it to the event generators and relevant performance writers.

blocked by
- acts-project#2904
asalzburger pushed a commit to asalzburger/acts that referenced this pull request May 21, 2024
…cts-project#2964)

This came to my attention while working on acts-project#2904. I do not see this used anywhere and too specific for a general purpose tracking performance writer.

If we want to classify duplicated tracks we should do that before writing the performance in a specific deduplication algorithm (like the ambiguity resolution https://github.com/acts-project/acts/blob/84c039fd8bd7cf3a7a18d5d66b1e662aa5e2e9f3/Examples/Algorithms/AmbiguityResolution/include/ActsExamples/AmbiguityResolution/GreedyAmbiguityResolutionAlgorithm.hpp#L36).
asalzburger pushed a commit to asalzburger/acts that referenced this pull request May 21, 2024
…#2904)

An attempt to move to a central truth matching in the Examples framework. Currently all our writers have a separate truth matching implementation with some amount of common code. I propose to move the truth matching to its own algorithm and then use the output as an input for the writers.

This also allows for simple truth matching in case of truth tracking to be specialized and for a common mechanism for how we infer the truth information. E.g. some algorithms right now expect particles and tracks in a 1:1 correspondence in the input containers which is not achievable with CKF tracking.

blocked by
- acts-project#2964
asalzburger pushed a commit to asalzburger/acts that referenced this pull request May 21, 2024
Currently truth vertices are not well defined. This is improved here by modifying the existing but unused truth vertex EDM and wiring it to the event generators and relevant performance writers.

blocked by
- acts-project#2904
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Changes Performance Component - Examples Affects the Examples module Event Data Model Infrastructure Changes to build tools, continous integration, ... Track Fitting
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants