From 531a7b3b1b0a50d105fc79c41e2ef96713df3641 Mon Sep 17 00:00:00 2001 From: yugotra Date: Thu, 12 Nov 2026 11:02:00 -0500 Subject: [PATCH] Fix DC straight-track NDF reporting The straight fitter records ordinary NDF but leaves NDFDAF unset. The bank writer then substitutes 999 for TBTracks.ndf, which is propagated to REC::Track.NDF and makes downstream reduced-chi2 cuts too loose. Populate the shared output field from the straight fitter's ordinary NDF. Keep the field-on weighted-NDF assignment unchanged. --- .../dc/src/main/java/org/jlab/service/dc/DCTBEngine.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/reconstruction/dc/src/main/java/org/jlab/service/dc/DCTBEngine.java b/reconstruction/dc/src/main/java/org/jlab/service/dc/DCTBEngine.java index 4bf0281c17..5a3e1a5a70 100644 --- a/reconstruction/dc/src/main/java/org/jlab/service/dc/DCTBEngine.java +++ b/reconstruction/dc/src/main/java/org/jlab/service/dc/DCTBEngine.java @@ -275,6 +275,8 @@ public boolean processDataEventUser(DataEvent event) { TrackArray1.set_FitChi2(kFZRef.chi2); TrackArray1.set_FitNDF(kFZRef.NDF); + // Non-DAF straight fit: publish ordinary NDF through the shared output field. + TrackArray1.set_NDFDAF(kFZRef.NDF); TrackArray1.set_FitConvergenceStatus(kFZRef.ConvStatus); if (TrackArray1.get_Vtx0().toVector3D().mag() > 500) { continue;