8 #include "CAFAna/Core/Binning.h" 9 #include "CAFAna/Core/Cut.h" 10 #include "CAFAna/Core/HistAxis.h" 48 const unsigned int nQuants = 3;
59 const TString cutname;
60 const TString varname;
63 std::vector <GenDef>
gens;
67 sample.c_str(),
"nueAxis_NoExtrap"});
70 for (
unsigned int quant = 0; quant < nQuants; ++quant ){
77 sample.c_str(), Form(
"nueAxis_NueSignalExtrap_Quant%i", quant+1)});
81 predictions.push_back(gen.gen->Generate(loaders).release());
86 TFile*
file =
new TFile(outfilename.c_str(),
"RECREATE");
87 for (
int i = 0 ;
i < (
int)gens.size(); ++
i){
88 auto dir = file->GetDirectory(gens[
i].cutname);
89 if(!
dir)
dir = file->mkdir(gens[
i].cutname);
90 predictions[
i]->SaveTo(
dir, gens[
i].varname);
Near Detector underground.
Far Detector at Ash River.
Cuts and Vars for the 2020 FD DiF Study.
const HistAxis kNumuCCOptimisedAxis2020("Reconstructed Neutrino Energy (GeV)", kNumuCCEOptimisedBinning, kNumuE2020)
void Go()
Call Go() on all the loaders.
void SetSpillCut(const SpillCut &cut)
string outfilename
knobs that need extra care
For nominal spectra and reweighting systs (xsec/flux)
const HistAxis kNue2020Axis("NuE Energy / Analysis Bin", kNue2020Binning, kNue2020AnaBin)
Use this Axis for Ana2020, official Axis.
std::vector< Cut > GetNueQuantCuts2020(const bool isRHC, const caf::Det_t det, const unsigned int nquants, const ExtrapVar var)
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 Cut kNue2020FDAllSamples