Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions Tracking/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -44,3 +44,6 @@ setup_library(module Tracking
sources ${SRC_FILES})

setup_python(package_name LDMX/Tracking)

# Install data files (e.g. DAQ maps) to install/data/Tracking.
setup_data(module Tracking)
57 changes: 57 additions & 0 deletions Tracking/data/daqmap_esa25_slice_test.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
{
"_comment": [
"Tracker DAQ map for the ESA slice test (Detectors/data/ldmx-reduced-v3).",
"Maps (feb_id, hybrid_id) -> Acts surface id + strip transform. All four",
"hybrids are serviced by a single FEB (0). Layer ordering, per hardware:",
" station 1 = hybrid 0 (stereo) + hybrid 1 (axial)",
" station 2 = hybrid 3 (stereo) + hybrid 2 (axial)",
"In each station the stereo sensor sits upstream (more negative z) and the",
"axial sensor downstream.",
"layer_id is the Acts surface id, keyed as vol*1000 + layer*100 + sensor",
"(TrackingGeometry.cxx:327); recoil volume = 3. The sensor suffix (00/01)",
"follows z-order, so the upstream stereo sensor is xx00 and the downstream",
"axial one is xx01."
],
"sensors": [
{
"feb": 0,
"hybrid": 0,
"station": 1,
"orientation": "stereo",
"layer_id": 3100,
"n_strips": 640,
"first_strip": 0,
"reversed": false
},
{
"feb": 0,
"hybrid": 1,
"station": 1,
"orientation": "axial",
"layer_id": 3101,
"n_strips": 640,
"first_strip": 0,
"reversed": false
},
{
"feb": 0,
"hybrid": 2,
"station": 2,
"orientation": "axial",
"layer_id": 3201,
"n_strips": 640,
"first_strip": 0,
"reversed": false
},
{
"feb": 0,
"hybrid": 3,
"station": 2,
"orientation": "stereo",
"layer_id": 3200,
"n_strips": 640,
"first_strip": 0,
"reversed": false
}
]
}
3 changes: 2 additions & 1 deletion Tracking/exampleConfigs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,10 +78,11 @@ Step 2 — decode → subtract → build waveforms (per physics run)
--------------------------------------------------------------

```bash
just fire Tracking/exampleConfigs/decode_to_waveforms.py -- \
just fire Tracking/exampleConfigs/raw_to_measurements.py -- \
--dat /sdf/data/hps/users/mgignac/hardware/data/LDMX/Run_182_20251213_174649.dat \
--pedestal-file pedestals.json \
--max-events 5 \
--stop-at fit \
--output tracker_waveforms_run182.root
# → [TrackerPedestalProvider] Loaded 2560 channel pedestals from 'pedestals.json'
# → [SiStripWaveformBuilder] Built N waveforms (>=4 samples @5s, streak>=5 @3s) from 25800 hits
Expand Down
8 changes: 4 additions & 4 deletions Tracking/exampleConfigs/compute_pedestals.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

This is step 1 of the real-data tracker waveform chain:

1. compute_pedestals.py (this script) -> pedestals.json
2. decode_to_waveforms.py -> <output>.root (TrackerWaveforms)
3. plot_waveforms.py -> PNG figures
1. compute_pedestals.py (this script) -> pedestals.json
2. raw_to_measurements.py --stop-at fit -> <output>.root (TrackerWaveforms)
3. plot_waveforms.py -> PNG figures

Runs SingleSubsystemUnpacker -> RawTrackerDecoder -> PedestalCalculator on a
baseline (pedestal) run, computing per-channel, per-sample mean and RMS noise,
and writes them to a JSON file. Pass that JSON to decode_to_waveforms.py for
and writes them to a JSON file. Pass that JSON to raw_to_measurements.py for
physics runs.

Usage
Expand Down
143 changes: 0 additions & 143 deletions Tracking/exampleConfigs/decode_to_waveforms.py

This file was deleted.

Loading