Skip to content

KinKal truth-seeded track extrapolation#1869

Open
RobMina wants to merge 7 commits into
Mu2e:mainfrom
RobMina:kinkal-truthseed-diag
Open

KinKal truth-seeded track extrapolation#1869
RobMina wants to merge 7 commits into
Mu2e:mainfrom
RobMina:kinkal-truthseed-diag

Conversation

@RobMina

@RobMina RobMina commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

... for MC. Helps to disentangle fit uncertainty from extrapolation bias/resolution. Turned off by default, comments in prolog.fcl show how to enable it.

This is independent of the material definition PR.

@FNALbuild

Copy link
Copy Markdown
Collaborator

Hi @RobMina,
You have proposed changes to files in these packages:

  • Mu2eKinKal

which require these tests: build.

@Mu2e/fnalbuild-users, @Mu2e/write have access to CI actions on main.

📝 The author of this pull request is not a member of the Mu2e github organisation.

About FNALbuild. Code review on Mu2e/Offline.

@brownd1978 brownd1978 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Hi Rob, this is a nice addition to our functionality.
I'm uncomfortable adding MC-specific code to reconstruction modules intended nominally to run on real data, as that adds an otherwise unnecessary dependency. Eventually we will need to split MC-specific codes out of Offline, and this coupling will make that harder.
An alternative is to write a dedicated module that produces a KKTrack based purely on MC information. If you need to associate that with the reco KKTrack you could do that via the KalSeedMC. What do you think?

@RobMina

RobMina commented Jul 5, 2026

Copy link
Copy Markdown
Contributor Author

Thanks Dave! I've implemented the new modules as you suggested, splitting the MC-specific code out of the two reco fit modules.

@brownd1978 brownd1978 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Hi Rob, thanks for splitting out the truth track, it's much cleaner this way. I hope it wasn't hard to change your analysis to work through the assns.

I see very little (any?) explicit dependence on trajectory type in this code, which begs the question whether you could unify these modules under a templated base class. That would also extend to the implementation to LoopHelix. You would need a runtime check to make sure the KalSeeds were of the expected type, and a switch to turn off domains, but otherwise it looks like the implementation is common. What do you think?

@RobMina

RobMina commented Jul 6, 2026

Copy link
Copy Markdown
Contributor Author

Hi Dave, that's a great idea! Re-implemented using a single module with templated base class, and validated for both CentralHelix and KinematicLine.

@brownd1978

Copy link
Copy Markdown
Collaborator

@FNALbuild run build test

@FNALbuild

Copy link
Copy Markdown
Collaborator

⌛ The following tests have been triggered for 5d907f4: build (Build queue - API unavailable)

@FNALbuild

Copy link
Copy Markdown
Collaborator

☔ The build tests failed for 5d907f4.

Test Result Details
test with Command did not list any other PRs to include
merge Merged 5d907f4 at 3d84f93
build (prof) Log file. Build time: 09 min 14 sec
ceSimReco Log file.
g4test_03MT Log file.
transportOnly Log file.
POT Log file.
g4study Log file.
cosmicSimReco Log file.
cosmicOffSpill Log file.
ceSteps Log file.
ceDigi Log file.
muDauSteps Log file.
ceMix Log file.
rootOverlaps Log file.
g4surfaceCheck Log file.
trigger Log file.
check_cmake Log file. Return Code 1.
FIXME, TODO TODO (0) FIXME (0) in 1 files
clang-tidy ➡️ 2 errors 15 warnings
whitespace check no whitespace errors found

N.B. These results were obtained from a build of this Pull Request at 5d907f4 after being merged into the base branch at 3d84f93.

For more information, please check the job page here.
Build artifacts are deleted after 5 days. If this is not desired, select Keep this build forever on the job page.

@brownd1978 brownd1978 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks Rob, this looks great! I still have a few minor quibbles, nothing that would block approval.

Comment thread Mu2eKinKal/src/KKTruthSeed_module.cc Outdated
Comment thread Mu2eKinKal/src/KKTruthSeed_module.cc Outdated
Comment thread Mu2eKinKal/src/KKTruthSeed_module.cc Outdated
@brownd1978

Copy link
Copy Markdown
Collaborator

I have an immediate use case for truth extrapolation of LoopHelix (testing accuracy of reflection extrapolation). If you'd prefer not to add that I can easily make a follow-on PR, but since you did all the work you could also just add it. I understand that you might not be able to test it beyond compilation, that's fine.

@FNALbuild

Copy link
Copy Markdown
Collaborator

📝 The HEAD of main has changed to 704459c. Tests are now out of date.

@RobMina

RobMina commented Jul 6, 2026

Copy link
Copy Markdown
Contributor Author

Hi Dave, I added the LoopHelix and verified that it builds correctly. Also, I addressed the other earlier comments.

@oksuzian

oksuzian commented Jul 7, 2026

Copy link
Copy Markdown
Collaborator

@FNALbuild run build test

@FNALbuild

Copy link
Copy Markdown
Collaborator

⌛ The following tests have been triggered for 38068b4: build (Build queue - API unavailable)

@FNALbuild

Copy link
Copy Markdown
Collaborator

☀️ The build tests passed at 38068b4.

Test Result Details
test with Command did not list any other PRs to include
merge Merged 38068b4 at 704459c
build (prof) Log file. Build time: 04 min 18 sec
ceSimReco Log file.
g4test_03MT Log file.
transportOnly Log file.
POT Log file.
g4study Log file.
cosmicSimReco Log file.
cosmicOffSpill Log file.
ceSteps Log file.
ceDigi Log file.
muDauSteps Log file.
ceMix Log file.
rootOverlaps Log file.
g4surfaceCheck Log file.
trigger Log file.
check_cmake Log file.
FIXME, TODO TODO (0) FIXME (0) in 1 files
clang-tidy ➡️ 2 errors 15 warnings
whitespace check no whitespace errors found

N.B. These results were obtained from a build of this Pull Request at 38068b4 after being merged into the base branch at 704459c.

For more information, please check the job page here.
Build artifacts are deleted after 5 days. If this is not desired, select Keep this build forever on the job page.

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants