|
Analysis-Utilities 26.9.9
C++/ROOT utilities for nuclear measurement data analysis
|
C++ utilities for analysis of nuclear measurement data, built on ROOT, with a focus on ergonomics and performance.
Supports CAEN digitizers via CoMPASS and WaveDump acquisition software, plus SOL-format data from the SOLARIS DAQ. The RooFit-based photopeak fitting backend includes CUDA kernels for its custom PDFs and dispatches doEval to the GPU when the library is built with CUDA support. The flake also exposes a Python package: a bridge that makes the whole C++ API usable from PyROOT, and a loader for reading ROOT TTrees into numpy arrays and pandas DataFrames.
Every public class and function is indexed under Classes and Files. The search box covers the whole reference.
Parts of this codebase — primarily the interactive GUI editor, the API documentation, and routine boilerplate — were written with the help of Claude Code and/or son-of-anton.
That includes this site: both these narrative guides and the Doxygen comments behind the API reference. Those comments describe behaviour derived by reading the implementations rather than from a specification, so where the reference and the code disagree, the code is what runs.
All changes to the core analysis logic (fitting models, signal processing, result extraction) are human-reviewed and approved before being committed. Unlike son-of-anton, this project actually is for my day job, so a large part of the code base was directly written by me. The checks/REVIEW-*.md files in the repository are checklists (generated by son-of-anton) of exactly what was reviewed from each set of commits affecting these parts of the code.