Dependencies

Major project dependencies are as follows:

Uproot

Uproot provides Python-native I/O for ROOT objects. In particular we rely on reading the input ntuple files that constitute processed MicroBooNE data.

Awkward Array

Handles multi-dimensional arrays with ragged dimensions. Essential for an array where the outermost dimension corresponds to an event and inner dimensions can correspond to the number of truth-level particles, reconstructed objects, etc.

Matplotlib

The de-facto plotting library for Python.

Hist

Provides helpful objects to handle histogramming analysis values. Simplifies a lot of boilerplate code that might be needed for histogramming.

Tabulate

Pretty looking tables printed on the command-line. Allows for outputting in multiple formats including Markdown and LaTeX.

For those wishing to use multi-variate analysis tools:

ROOT

A Framework tailored towards the treatment of particle physics data. Includes a multi-variate analysis toolkit (TMVA) which is used for BDT-dependent cuts in this framework’s prime analysis.