Skip to content

fix: real data seed qa#1295

Merged
osbornjd merged 2 commits intosPHENIX-Collaboration:masterfrom
osbornjd:fix_qa
Feb 18, 2026
Merged

fix: real data seed qa#1295
osbornjd merged 2 commits intosPHENIX-Collaboration:masterfrom
osbornjd:fix_qa

Conversation

@osbornjd
Copy link
Copy Markdown
Contributor

@osbornjd osbornjd commented Feb 18, 2026

The real data seed qa was silently running on the output of the track fitting instead of on the track seed containers, leading to misleading results. This PR fixes that and makes the seed QA run on the raw seed containers

Motivation / Context

The seed QA modules were mistakenly operating on the output of track fitting rather than on raw seed containers, producing misleading diagnostics of seeding performance. This PR changes the QA flow to run on the actual seed containers so QA reflects true seed information.

Key Changes

  • Replace direct seed QA on fitted tracks with a per-detector seed pipeline:
    • Add TrackSeedTrackMapConverter for Silicon: converts SiliconTrackSeedContainer → SiliconSvtxTrackMap (field map assigned, verbosity 0); register in QA chain.
    • Run PHSimpleVertexFinder for Silicon after conversion with tighter cuts (DCA ~0.1, pT ~0.1 GeV/c), MVTX required; register its outputs.
    • Register SiliconSeedsQA to analyze the Silicon Svtx track/vertex maps.
    • Add TrackSeedTrackMapConverter for TPC: converts TpcTrackSeedContainer → TpcSvtxTrackMap (field map assigned, verbosity 0); register.
    • Run PHSimpleVertexFinder for TPC with looser cuts (DCA ~1, pT ~0.2 GeV/c), MVTX not required; register its outputs.
    • Register TpcSeedsQA configured for TPC Svtx maps and RUNSEGMENT context.
  • Preserve existing TpcSiliconQA and TrackFittingQA registrations after seed QA.
  • No public API/signature changes; changes are instantiations and registrations within the QA assembly.

Potential Risk Areas

  • Reconstruction behavior: Introducing seed→svtx conversion and vertex finding into the QA path changes the processing before QA and may mask or alter seed failure modes that were visible when QA ran on fitted tracks.
  • Output/IO differences: QA histograms and diagnostics will now reflect raw-seed-derived Svtx tracks and vertices instead of fitted-track outputs; historical comparisons must be revalidated.
  • Performance: Additional converter and vertex-finder modules increase runtime and memory use in the QA path; profiling recommended.
  • Thread-safety / concurrency: Introducing extra modules into the QA chain could surface thread-safety issues if modules share state; verify each module is safe under the intended execution model.
  • Parameter sensitivity: Detector-specific vertex-finder cuts (tight for Silicon, loose for TPC) may bias QA comparisons; ensure cut choices are appropriate for seed validation.

Possible Future Improvements

  • Expose vertex-finder and converter parameters (DCA, pT, MVTX requirement, verbosity) as configurable flags rather than hardcoded values.
  • Add dedicated QA that compares raw-seed QA results to fitted-track QA to help validate and quantify differences introduced by the new pipeline.
  • Benchmark and optimize performance of the added converter + vertex-finder stages.
  • Document expected changes in QA outputs vs. previous releases to guide validation and automated checks.

Note: This summary was AI-assisted; please verify the exact container names and cut/parameter values against the implementation, as AI may make errors.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Feb 18, 2026

No actionable comments were generated in the recent review. 🎉


📝 Walkthrough

Walkthrough

Replaces direct seed QA registrations with per-system pipelines in the Fun4All reconstruction macro: for Silicon and TPC each pipeline now runs seed-to-track conversion, a system-specific PHSimpleVertexFinder, then system-specific seed QA; existing TpcSiliconQA and TrackFittingQA registrations remain unchanged.

Changes

Cohort / File(s) Summary
Seed pipeline refactor
TrackingProduction/Fun4All_PRDFReconstruction.C
Replaces direct SiliconSeedsQA/TpcSeedsQA registrations with per-system sequences: TrackSeedTrackMapConverter (seed→SvtxTrackMap), PHSimpleVertexFinder (system-specific cuts and MVTX settings), and reconfigured per-system SeedsQA; preserves TpcSiliconQA and TrackFittingQA registrations.

Possibly related PRs


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@sphenix-jenkins-ci
Copy link
Copy Markdown

For repository maintainers, please start the CI check manually (feedback)

This is an automatic message to assist manually starting CI check for this pull request, commit 6f2468f484a2e61948a646dad1755f843b648084. macros pull request require a manual start for CI checks, in particular selecting which coresoftware and calibrations versions to check against this macros pull request.

sPHENIX software maintainers: please make your input here and start the Build:

build

Note:

  1. if needed, fill in the pull request ID for the coresoftware pull request, e.g. origin/pr/1697/merge for PR#1697 in sha_coresoftware. Default is to check with the master branch.
  2. click Build button at the end of the long web page to start the test

Automatically generated by sPHENIX Jenkins continuous integration
sPHENIX             jenkins.io

@sphenix-jenkins-ci
Copy link
Copy Markdown

For repository maintainers, please start the CI check manually (feedback)

This is an automatic message to assist manually starting CI check for this pull request, commit f9868948c6e567021cb226b3fc4fc89b3067e364. macros pull request require a manual start for CI checks, in particular selecting which coresoftware and calibrations versions to check against this macros pull request.

sPHENIX software maintainers: please make your input here and start the Build:

build

Note:

  1. if needed, fill in the pull request ID for the coresoftware pull request, e.g. origin/pr/1697/merge for PR#1697 in sha_coresoftware. Default is to check with the master branch.
  2. click Build button at the end of the long web page to start the test

Automatically generated by sPHENIX Jenkins continuous integration
sPHENIX             jenkins.io

@osbornjd osbornjd merged commit 44f50f5 into sPHENIX-Collaboration:master Feb 18, 2026
18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant