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: and fix truth seeding #1897

Merged
merged 15 commits into from
Feb 28, 2023

Conversation

andiwand
Copy link
Contributor

truth seeding seems to be quite broken at the moment

  1. you could end up with less sees than particles which will crash the kalman filter downstream
  2. the proto tracks given by the seeding seem to only contain the seeded hits which is no good for the kalman filter

with this PR I tried to improve things by splitting the truth seeding out of TrackParamsEstimationAlgorithm and restore its original purpose. I added TruthSeedingAlgorithm which now also does TruthTrackFinder in order to keep seeded particles and track params aligned

@andiwand andiwand added the Component - Examples Affects the Examples module label Feb 24, 2023
@andiwand andiwand added this to the next milestone Feb 24, 2023
@codecov
Copy link

codecov bot commented Feb 24, 2023

Codecov Report

Merging #1897 (d74905f) into main (208290d) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main    #1897   +/-   ##
=======================================
  Coverage   49.44%   49.44%           
=======================================
  Files         408      408           
  Lines       22704    22704           
  Branches    10371    10371           
=======================================
  Hits        11226    11226           
  Misses       4266     4266           
  Partials     7212     7212           

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

@github-actions
Copy link

github-actions bot commented Feb 24, 2023

📊 Physics performance monitoring for d74905f

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

@asalzburger asalzburger self-requested a review February 24, 2023 19:42
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.

Really nice changes, I also always had the impression that thisTrackParamEstimationAlgorithm served way to many purposes! I just have one minor comment about naming.

@benjaminhuth
Copy link
Member

I think we should try to make this refactoring in a way that the hashes stay the same, right? Currently quite a lot of hash checks still fail.

@andiwand
Copy link
Contributor Author

will try to do that. physmon looks also kind of sketchy. but I wonder if we also did 3 hit fitting in the tests

@benjaminhuth
Copy link
Member

If we do 3 hit fitting, maybe change that in a follow-up PR? that way we can be sure that we have no change in behaviour in this refactoring...

@andiwand
Copy link
Contributor Author

andiwand commented Feb 27, 2023

almost done - looks like we had two reference files which only took the seed proto tracks as an input but should have taken the full track actually it is the other way around. the seeding performance output was writing the full track but should write only the seeded hits

I may remove the proto tracks from the seeds in a follow up PR

now it should be down to physmon which is picking on the truth estimated seeding efficiency. I believe we measured this in a wrong way which resulted in a 100% efficiency but it is actually a little lower than that because we apply some cuts in the truth seeding

@andiwand andiwand added the 🚧 WIP Work-in-progress label Feb 27, 2023
@andiwand
Copy link
Contributor Author

this should be ready now @benjaminhuth @asalzburger

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.

Very nice refactoring, let's get it in!

@benjaminhuth benjaminhuth added Improvement Changes to an existing feature and removed 🚧 WIP Work-in-progress labels Feb 28, 2023
Copy link
Contributor

@asalzburger asalzburger left a comment

Choose a reason for hiding this comment

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

As discussed, makes perfect sense.

@kodiakhq kodiakhq bot merged commit efa2ec6 into acts-project:main Feb 28, 2023
@andiwand andiwand deleted the refactor-fix-truth-seeding branch February 28, 2023 14:16
@paulgessinger paulgessinger modified the milestones: next, v23.5.0 Mar 10, 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 Improvement Changes to an existing feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants