Analysis-Utilities 26.9.9
C++/ROOT utilities for nuclear measurement data analysis
Loading...
Searching...
No Matches
Analysis-Utilities

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.

Warning
Currently in active development; breaking changes are all but guaranteed.

Guides

API reference

Every public class and function is indexed under Classes and Files. The search box covers the whole reference.

AI-assisted development disclosure

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.