-
Notifications
You must be signed in to change notification settings - Fork 12
lcsim 4.5.0 plus fixtrackstates #1115
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
Conversation
…ane intercept; start to use this in TrackStates
* add dependabot.yml * fix oops * comments not allowed * bugfix * cleanup
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR updates the lcsim dependency to 4.5.0, introduces an option to pivot track states at their plane intercept, and refactors Kalman interface methods for configurable pivot handling.
- Upgrade lcsim version and add GitHub Maven repository
- Add
pivotAtInterceptflag through propagation and track-state creation - Clean up and extend Kalman/HPS bridging methods (e.g., new covariance extractor, coordinate transforms)
Reviewed Changes
Copilot reviewed 13 out of 13 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| tracking/.../PropagatedTrackState.java | Pass new pivotAtIntercept flag into toTrackState call |
| tracking/.../KalmanInterface.java | Add pivotAtIntercept parameter, reorganize toHPShelix/toTrackState, new helpers |
| tracking/.../KalTrack.java | Implement getHelixAtPlane(...) with RK propagation |
| tracking/.../HelixState.java | Overload RK propagation to accept pivotAtIntersect |
| tracking/.../KFOutputDriver.java | Disable default residual/raw‐hit plots, add large‐2D plots toggle |
| recon/.../HpsReconParticleDriver.java | Switch vertexer to use perigee field, update IP→perigee state indexing |
| pom.xml | Bump <lcsimVersion> to 4.5.0 and add GitHub Packages repo |
| .github/workflows/test.yml | Move from Java 1.8 to JDK 21, configure GITHUB_TOKEN |
| .github/dependabot.yml | Add daily Dependabot updates for Maven and GitHub Actions |
Comments suppressed due to low confidence (2)
tracking/src/main/java/org/hps/recon/tracking/kalman/KalmanInterface.java:391
- [nitpick] Inline author/comment tags and dates may be better captured in commit history; remove dated comments or convert to descriptive Javadoc.
// 5/10/25: change variable name from alphaCenter to alpha to avoid confusion -- mgraham
| System.out.println(this.getClass().getName()+"::getHelixAtPlane: Couldn't find a site???"); | ||
| }else{ | ||
| if(debug){ | ||
| System.out.println(this.getClass().getName()+"::getHelixAtPlane:"); | ||
| closeSite.print("closest measurement site"); | ||
| } | ||
| } |
Copilot
AI
Jul 1, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If closeSite is null, the method proceeds and will dereference closeSite, causing an NPE. Add an early return or throw a clear exception when no site is found.
| System.out.println(this.getClass().getName()+"::getHelixAtPlane: Couldn't find a site???"); | |
| }else{ | |
| if(debug){ | |
| System.out.println(this.getClass().getName()+"::getHelixAtPlane:"); | |
| closeSite.print("closest measurement site"); | |
| } | |
| } | |
| throw new IllegalStateException(this.getClass().getName() + "::getHelixAtPlane: Couldn't find a site."); | |
| } | |
| if(debug){ | |
| System.out.println(this.getClass().getName()+"::getHelixAtPlane:"); | |
| closeSite.print("closest measurement site"); | |
| } |
tracking/src/main/java/org/hps/recon/tracking/kalman/KalmanInterface.java
Show resolved
Hide resolved
tracking/src/main/java/org/hps/recon/tracking/kalman/KalmanInterface.java
Show resolved
Hide resolved
| helixAtTarget.print("helix with pivot at final plane"); | ||
| pln.X().print("origin of final field system in global system"); | ||
| Rot.print("rotation matrix from global to final field system"); | ||
| System.out.println("Return parameters with pivot at the intersection:: "+pivotAtIntersect); |
Copilot
AI
Jul 1, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Debug System.out.println calls remain in the RK propagator; replace with a proper logger or remove for production.
| System.out.println("Return parameters with pivot at the intersection:: "+pivotAtIntersect); | |
| logger.log(Level.FINE, "Return parameters with pivot at the intersection: {0}", pivotAtIntersect); |
|
The (new) separate build-only, no-test, CI job now passes:) |
|
It looks like the reference files need to be updated? Looking at the failed tests, the momentum/mass/etc are different (which is expected for these changes): |
…ode that makes vertex to use bfield at svt center for gbl tracks
…t ReconParticleDriver to master and update HpsReconParticleDriver to use type in ReconParticle
|
Retriggered actions now manually to see if SLAC maven repos are back online ... |
bloodyyugo
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Finally!
This is #1101 plus #1114.