Reco_Tree - DUNE/dune-tms GitHub Wiki
Reco_Tree
TTree
The Reco_Tree
contains reconstructed track-level and hit-level information produced from the TMS detector simulation and reconstruction chain. It is indexed entry-by-entry with Truth_Info
and Line_Candidates
.
This tree is the primary output for analysis of:
- Reconstructed muon tracks
- Hit distributions and clusters
- Kalman-based fit positions
- Energy and length estimates
⚠️Important note - Length is actually areal density, which is density times distance traveled, in g/cm^2.
🗂️ Event and Slice Metadata
Branch | Description |
---|---|
EventNo |
Global event number |
SpillNo |
Beam spill identifier |
SliceNo |
Index of the reconstructed time slice within the spill |
TimeSliceStartTime |
Start time (ns) of the slice |
TimeSliceEndTime |
End time of the slice |
🚶 Reconstructed Tracks
Each entry in this tree corresponds to one reconstructed slice, which may contain multiple tracks.
Branch | Description |
---|---|
nTracks |
Number of reconstructed tracks in this slice |
nHits[nTracks] |
Number of hits assigned to each track |
Length[nTracks] |
Reconstructed projected track areal density |
Length_3D[nTracks] |
Reconstructed 3D track areal density |
Charge[nTracks] |
Reconstructed track charge (sign) |
Momentum[nTracks] |
Momentum estimate (MeV) |
EnergyRange[nTracks] |
Energy estimated from range |
EnergyDeposit[nTracks] |
Total energy deposited along the track |
🧭 Track Geometry and Direction
Branch | Description |
---|---|
StartPos[nTracks][3] |
Reconstructed start position (X, Y, Z) |
EndPos[nTracks][3] |
Reconstructed end position |
StartDirection[nTracks][3] |
Unit vector of initial direction |
Direction[nTracks][3] |
Average or global direction vector |
EndDirection[nTracks][3] |
Unit vector of final direction |
📍 Hit Information
Branch | Description |
---|---|
TrackHitPos[nTracks][200][3] |
Position (X, Y, Z) of each hit in the track |
TrackHitEnergies[nTracks][200] |
Energy deposited at each hit point |
🔁 Kalman Filter Track Fit
Kalman filtering is used to iteratively refine track fits across planes and modules.
Branch | Description |
---|---|
nKalmanNodes[nTracks] |
Number of Kalman fit nodes for the track |
KalmanPos[nTracks][200][3] |
Kalman-smoothed position estimates (X, Y, Z) |
KalmanTruePos[nTracks][200][3] |
If available: matched truth positions at Kalman nodes (for validation) |
🧱 Track-Plane Mapping
These branches store bar/view/plane associations for track start, end, and all Kalman nodes.
Each [3]
corresponds to bar, view, and plane.
Branch | Description |
---|---|
RecoTrackKalmanFirstPlaneBarView[nTracks][3] |
Bar/view/plane of first Kalman node |
RecoTrackKalmanLastPlaneBarView[nTracks][3] |
Same for last Kalman node |
RecoTrackKalmanPlaneBarView[nTracks][200][3] |
Bar/view/plane at each Kalman node |
RecoTrackKalmanFirstPlaneBarViewTrue[nTracks][3] |
Truth-matched first Kalman bar/view/plane |
RecoTrackKalmanLastPlaneBarViewTrue[nTracks][3] |
Truth-matched last Kalman node |
RecoTrackKalmanPlaneBarViewTrue[nTracks][200][3] |
Truth-matched values per node (for debugging/truth comparison) |
📌 Notes
- Use in conjunction with
Truth_Info
to evaluate track truth-matching, energy reconstruction, and pileup rejection.