Lots to document here ...

Code Structure

The code is divided into two parts: one that only has a connection to GENIE and the other that knows about ART.

nutools / GENIE interface

The nutools rwgt::GENIEReweight class wraps the GENIE genie::rew::GReWeight.

ART interface

The ReweightAna_module shows how one would find the MCTruth and GTruth structures in the ART record and calculate new weights. It uses a rwgt::NuReweight object to reconstitute a GENIE GHEP record from the ART products MCTruth and GTruth.


Older Documentation

Nathan Mayer (former NOvA collaborator) wrote most of this code that interfaces from ART to GENIE. Here are some of his talks on the subject: