|
MUSIC unknown
Analysis for the MUSIC active-target ionization chamber
|
The main entry point is the pipeline. For each CoMPASS binary subfile it runs: binary → raw hits → multi-board timing alignment → GPU timestamp sort → event building → beam-energy calibration → trace creation.
It processes the dataset's files — selected by RUNS and N_CHUNKS in analysis/<dataset>/config/Constants.cpp — in parallel, logging to analysis/<dataset>/pipeline_fused.log.
These operate on the pipeline's output ROOT files, and are all in ./result/bin/ after nix build .#<dataset>:
Generated data — event ROOT files and plots — is written to MUSIC_RESULTS_DIR when that is set, and otherwise to the baked-in dataset directory. The pipeline log always goes to <dataset dir>/pipeline_fused.log.
Running from the dev shell points both MUSIC_DATASET_DIR and MUSIC_RESULTS_DIR at the in-repo analysis/<dataset>, which is writable. Override MUSIC_RESULTS_DIR to send output to a scratch drive instead.
strip-sum-scatter caches its scatters and trace reservoir to analysis/<dataset>/root_files/StripSumScatter_cache.root.
The cache carries a fingerprint of every configuration knob that changes its contents — filters, gates, strip spans, and so on — so editing any of them rebuilds the cache automatically on the next run. There is no cache-clearing step to remember.