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

feat: Add support for passing clusters to calibrator #2078

Merged
merged 5 commits into from
May 3, 2023

Conversation

gagnonlg
Copy link
Contributor

@gagnonlg gagnonlg commented May 2, 2023

Currently, the measurement calibrators in TrackFittingAlgorithm do not have access to cluster-level information. One widely-used pattern in the real world is to apply different calibrations depending on the cluster dimensions for instance, so this information is useful. This PR adds an optional input to the TrackFittingAlgorithm which is handed down through the MeasurementCalibrator interface. The reference to the cluster collection is boxed in a std::optional<std::reference_wrapper> to simplify the interface.

Ping @benjaminhuth for comments

@gagnonlg gagnonlg requested a review from benjaminhuth May 2, 2023 09:50
@gagnonlg gagnonlg added this to the next milestone May 2, 2023
@gagnonlg gagnonlg added Component - Examples Affects the Examples module Feature Development to integrate a new feature labels May 2, 2023
Copy link
Member

@benjaminhuth benjaminhuth left a comment

Choose a reason for hiding this comment

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

Just a comment: For me there is not real semantical advantage of an std::optional<std::reference_wrapper<const T>> to a const T*.

I think I would actually go for const T* in such a case, because it is less verbose. But of course this is only my opinion, feel free to ignore it :)

@codecov
Copy link

codecov bot commented May 2, 2023

Codecov Report

Merging #2078 (d8d4372) into main (37bc755) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main    #2078   +/-   ##
=======================================
  Coverage   49.31%   49.31%           
=======================================
  Files         427      427           
  Lines       24828    24828           
  Branches    11444    11444           
=======================================
  Hits        12245    12245           
  Misses       4514     4514           
  Partials     8069     8069           

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@github-actions
Copy link

github-actions bot commented May 2, 2023

📊 Physics performance monitoring for d8d4372

Full report
Seeding: seeded, truth estimated, orthogonal
CKF: seeded, truth smeared, truth estimated, orthogonal
IVF: seeded, truth smeared, truth estimated, orthogonal
Ambiguity resolution: seeded, orthogonal
Truth tracking
Truth tracking (GSF)

Vertexing

Vertexing vs. mu
IVF seeded

IVF truth_smeared

IVF truth_estimated

IVF orthogonal

Seeding

Seeding seeded

Seeding truth_estimated

Seeding orthogonal

CKF

CKF seeded

CKF truth_smeared

CKF truth_estimated

CKF orthogonal

Ambiguity resolution

seeded

Truth tracking (Kalman Filter)

Truth tracking

Truth tracking (GSF)

Truth tracking

@gagnonlg
Copy link
Contributor Author

gagnonlg commented May 2, 2023

@benjaminhuth I think you're right -- I actually considered it but of course I couldn't miss an opportunity to over-engineer the thing! I'll update the PR.

EDIT: now done, thanks.

@kodiakhq kodiakhq bot merged commit a461ae2 into acts-project:main May 3, 2023
38 checks passed
@github-actions github-actions bot removed the automerge label May 3, 2023
@paulgessinger paulgessinger modified the milestones: next, v26.0.0 May 22, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component - Examples Affects the Examples module Feature Development to integrate a new feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants