2 #include "CAFAna/Core/Binning.h" 6 #include "CAFAna/Core/Binning.h" 30 const TString cutname;
31 const TString varname;
34 std::vector <GenDef>
gens;
37 for(
int selIdx = 0; selIdx <
kNumSels; ++selIdx){
38 for(
int varIdx=0; varIdx <
kNumVars; ++varIdx){
65 predictions.push_back(gen.gen->Generate(loaders).release());
70 TFile*
file =
new TFile((
"fhc_preds_all_epochs_fdnue_cuts_" + suffix +
".root").c_str(),
"recreate");
72 for (
int i = 0 ;
i < (
int)gens.size(); ++
i){
73 auto dir = file->GetDirectory(gens[
i].cutname);
74 if(!
dir)
dir = file->mkdir(gens[
i].cutname);
75 predictions[
i]->SaveTo(
dir, gens[
i].varname);
For nominal spectra and reweighting systs (xsec/flux)
Cuts and Vars for the 2020 FD DiF Study.
const Cut kNue2017NDCVNSsb
void Go()
Call Go() on all the loaders.
void SetSpillCut(const SpillCut &cut)
void get_fdmc_spectra(std::string suffix="full", bool extrapolate=false)
const HistDef defs[kNumVars]
const HistAxis kNumuCCOptimisedAxis("Reconstructed Neutrino Energy (GeV)", kNumuCCEOptimisedBinning, kCCE)
HistAxis that implements optimised numuCCE from L. Vinton. See docdb 16332. This was close to 'custC'...
const SystShifts kNoShift
const SpillCut kStandardSpillCuts
Apply this unless you're doing something special.
Given loaders and an MC shift, Generate() generates an IPrediction.
const std::string selNames[kNumSels]
const HistAxis kNue2017AxisMergedPeripheral("NuE Energy / Analysis Bin", kNue2017BinningMergedPeripheral, kNue2017AnaBinMergedPeripheral)