Repository navigation
Update to using KPP_reco conditions and commissioning geometry - #27
Merged
Merged
Conversation
bonventre
commented
Oct 29, 2026
Contributor
- Turns on KPP_reco purpose
- Switches to commissioning geometry
- Turns on calocluster in KKLine
- Updates tracker calibrations for newest combined runs
oksuzian
approved these changes
Oct 29, 2026
oksuzian
left a comment
Contributor
There was a problem hiding this comment.
PR Review Summary — #27
Reviewed at head 3dd061d2af693db7d8fdd97bd1f618f17b870fc8. First pass.
Decision
- 🟢 approve. On run 125472 this is a clear improvement. The tracker reconstruction goes from no tracks at all on
mainto 51KKLinefits in 200 events, and the calorimeter is attached when a cluster is in time. Please look at finding 1 before running pass 1 widely.Combined_Pass1stops on run 125470, one of the newest combined runs, becauseCalTimeCalibcovers only run 125472. The configs also no longer run on the older combined runs. Both are database coverage, not code.
Scope understood
Combined_Pass1.fclandTracker/TrkRecoFromDigi.fcl(and through itTrkRecoFromFragments,TrkSHDFromDigiandTrkSHDFromFragments) switch fromCRV_COMMISSIONINGv1_0 andTRACKER_VSTv2_0 plus text-file tables to theKPP_recopurpose, latest version, with no text files.Combined_Pass1.fclalso moves togeom_common_commissioning_v02.txt, turns on the calorimeter inKKLineandLineFinder, and readseventTimingfrom the database.TrkReco_epilog.fcldeweights and widens the calo matching.makeSDswitches tobyMnid.trackercalibrations.fclgets new straw-response values.- No production campaign uses a PassN config, so this affects hand-run pass-1 processing only.
Findings
- 🟡 [S2]
Combined_Pass1stops on run 125470, and both configs stop on the combined runs before it.KPP_recov1_2 has IOVs for 125470-125483, exceptCalTimeCalib, which covers run 125472 only.nearestMatchfalls back only to an earlier IOV (OfflineDbTables/src/DbSet.cc:30-46), andTrkRecoFromDigi.fcldoes not set it.- Demonstration, with the nightly Offline build and raw files read in place:
- Run 125470 (
raw.mu2e.cosmics.kpp.125470_000001-001.art, one of 27 files of that run):Combined_Pass1stops on the first event withDBENGINE_UPDATE_FAILEDfor tid 30 (CalTimeCalib), run 125470:1. - Run 125438 (
_000001): onmain,Combined_Pass1and the tracker job both run. At this head both stop on the first event withDBENGINE_UPDATE_FAILED:Combined_Pass1on tid 25 (CRVTime), the tracker job on tid 32 (TrkPanelMap).
- Run 125470 (
- The
kppraw dataset has 125470 and four earlier combined runs (125402, 125404, 125406, 125438) that these configs cannot process now. The failure is loud, which is right. - Suggested fix: extend the
CalTimeCalibIOV to 125470-125483 like the other tables, and add IOVs for the earlier runs if they still need pass 1. - The tracker-only configs have no
nearestMatch, so a run after 125483 will also stop there, whileCombined_Pass1reuses the 125470-125483 constants. If that difference is intended, a comment would say so.
- 🟡 [S2]
version : ""means "latest", and nothing records which version was used.""parses to -1 for major, minor and extension (OfflineDbTables/inc/DbVersion.hh:21-40), which is the same as the defaultv*_*_*. So the same job gives different results once v1_3 is committed.- With the default
verbose : 0,DbServiceprints nothing about the version it resolved. The only related log line is thenearestMatchwarning. - Suggestion: pin
v1_2and bump it with each new set, or log the resolved version.
- ⚪ [S3] The tracker-only configs keep the extracted geometry while
Combined_Pass1moves to the commissioning one.geom_common_commissioning_v02.txtputs the tracker attracker.z0 = 22935against 24171 ingeom_common_extracted_v04.txt, and the calorimeter front at 25598 against 25843.- On run 125472, the
KKLinefits fromCombined_Pass1and from the tracker job have identical parameters, but different numbers of segments and intersections. Both use the sameKPP_recoalignment. - If tracker-only outputs are compared with combined ones, the geometry should probably match. Is the difference intended?
- ⚪ [S3] Small points.
LineFinder.AddCaloClusters : trueonly stores a clusterPtrin theCosmicTrackSeed(CosmicReco/src/LineFinder_module.cc:372-397). Nothing reads it:KinematicLineFithas that use commented out (Mu2eKinKal/src/KinematicLineFit_module.cc:291).KKLineadds the calorimeter throughUseCaloClusterin its extension instead.Tracker/trackercalibrations.txtis no longer read by any config. It could go.Combined_Pass1.fcl:89leaves a commented-outtextFileline, and:90has a typo, "calibraitons".- The new values in
trackercalibrations.fclhave no comment saying which runs and which procedure they come from.
Checked, no action needed
- 🟢
KPP_recov1_2 has every table the dropped text files provided: the 11 tracker tables intrackercalibrations.txt,TrkPanelMap,CalEnergyCalib,CalTimeCalib, the three CRV tables andDAQTiming. - 🟢 The
byMnidchange fixes the missing straw digis. Onmain, withbyLink, 200 events of run 125472 give no line seeds and no fits. With onlybyMnidchanged they give 67 seeds and 40 fits, and at this head 74 seeds and 51 fits. The share of fits with consistency above 0.01 goes from 17% to 41%. - 🟢 The calorimeter in
KKLineworks. On 3000 events of run 125472, 7 of 879 fits have a calo cluster attached. Only 28 events had both a track and a cluster, and 10 of their tracks had a cluster within 15.4 ns.CaloClusterMakerruns beforeLineFinderonRecoPath, andLineFinderthrows if the collection is missing. - 🟢 Resolved configs:
fhicl-dumpof all six affected configs atmainand at this head. Only the intended keys change. InTrkRecoFromDigiMC.fclthe calo settings change too, butUseCaloClusterstaysfalsethere. - 🟢 The PR merges cleanly onto current
main(#25 and #26 touch none of these files).
Validation check
- Environment: the nightly Offline build (
museCIBuild/main/78517a34_5e3c66c6_a664b74b, p109), with PassNmain(62ab2df7) or this head. Inputs wereraw.mu2e.cosmics.kpp.125472_000077-001.artandraw.mu2e.cosmics.kpp.125438_000001-001.art, read in place from dCache, 200 events per job unless noted. - Database reads used
dbTool, read only. - Not checked: the
CRV,STMandCalopass-1 configs, which this PR does not touch, and whether the new straw-response values are better than the old ones beyond the fit counts above.
Contributor
|
Follow-up to the review above, after Mu2e/Offline#2082 merged today:
Otherwise |
Offline#2082 renamed geom_common_commissioning_v02.txt to
geom_common_extracted_v06.txt with the same content, so the old name fails
on Offline builds from a9ddd0638 on ("Can't find file"). Checked on the CI
build of Offline 807d948f: 100 events of run 125472 run with the new name.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014osFTVFtXjUZ6SdxpwLCHo
rlcee
approved these changes
Oct 30, 2026
oksuzian
approved these changes
Oct 30, 2026
oksuzian
left a comment
Contributor
There was a problem hiding this comment.
PR Review Summary — #27
Reviewed at head df8ea035814f10f48504a3519ee73631be1290df. Re-review of 3dd061d.
Decision
- 🟢 approve. The new commit fixes the geometry file name that Mu2e/Offline#2082 changed, and
Combined_Pass1runs again on current Offline builds with results identical to the first pass. The database coverage points from my first review are still open, and they are database work, not code in this PR.
Scope understood
- The increment is one new commit on top of 3dd061d (not a rebase). It changes two lines in
Combined_Pass1.fcl: the geometry is nowgeom_common_extracted_v06.txt, the new name ofgeom_common_commissioning_v02.txt.
Prior findings
- 🟢 [was the follow-up comment, point 1] The geometry file name. FIXED in df8ea03, verified.
- Offline#2082 (
a9ddd0638) renamed the file. The only content change besides comments is that it now includesgeom_common_extracted_v04.txtdirectly instead of throughgeom_common_extracted.txt, which included v04 at the time. So the geometry is the same. fhicl-dumpofCombined_Pass1.fclat this head differs from the 3dd061d dump only inGeometryService.inputFile. The five tracker configs resolve identically.- With the Offline CI build
807d948f(which no longer has the old file), 200 events of run 125472 (raw.mu2e.cosmics.kpp.125472_000077-001.art) run to exit 0 and opengeom_common_extracted_v06.txt. They give 74 line seeds and 51KKLinefits, as in the first pass. The printed seeds and fits are identical to the first-pass job, apart from timing and file paths.
- Offline#2082 (
- 🟡 [S2]
Combined_Pass1stops on run 125470 and on the combined runs before it. Carried over, still open.KPP_recois still at v1_2.dbTool print-runfor v1_2 today still givesCalTimeCalibonly for run 125472, with no IOV for 125470 or 125483, and no IOV for any table on run 125438. The suggested fix is unchanged: extend theCalTimeCalibIOV to 125470-125483, and add IOVs for earlier runs if they still need pass 1. - 🟡 [S2] The tracker-only configs stop on the tracker VST runs (from my follow-up comment). Carried over, still open. Run 124155 still has no
KPP_recov1_2 IOV for any table, includingTrkPanelMap. The fix is either to keepTRACKER_VSTin the tracker-only configs or to addKPP_recoIOVs for those runs. - 🟡 [S2]
version : ""means "latest", and nothing records which version was used. Carried over, still open (Combined_Pass1.fcl:88,Tracker/TrkRecoFromDigi.fcl:21). It changes nothing today, since v1_2 is still the newest version. - 🟢 [was S3] The tracker-only configs used a different geometry from
Combined_Pass1. This is now resolved, by Offline#2082 rather than by this PR.geom_common_extracted.txt, which the tracker configs load, now includesgeom_common_extracted_v06.txt, so both sets of configs use the same tracker and calorimeter positions. One difference remains:Combined_Pass1names v06 directly, while the tracker configs follow the default. They will diverge again if the default moves to a newer file. If that is not intended, both could name the same file. - ⚪ [S3] Small points. Carried over; the new commit does not touch these lines. The commented-out
textFileline (Combined_Pass1.fcl:89), the typo "calibraitons" (:90), the unusedTracker/trackercalibrations.txt, and the missing source comment for the new straw-response values intrackercalibrations.fcl.
Validation check
- Environment: the Offline CI build
807d948f_94a4d81f_2b90c646(p109), PassN at this head, input read in place from dCache. Database reads useddbTool, read only. PassNmainis still62ab2df7, so the base has not moved since the first pass. - No production campaign uses a PassN config, so this affects hand-run pass-1 processing only.
- Not run: the tracker-only jobs and the VST and older combined runs at this head. Their configs resolve identically to the first pass, and the database is unchanged, so the first-pass results still apply.
This was referenced Oct 30, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.