34 #include "Utilities/func/MathUtil.h" 65 SpectrumLoader lNDData(
"defname: prod_sumdecaf_R19-11-18-prod5reco.d.f.h.l_nd_numi_fhc_full_v1_goodruns_nue2020");
66 SpectrumLoader lNDMC(
"defname: prod_sumdecaf_R19-11-18-prod5reco.d.h.l_nd_genie_N1810j0211a_nonswap_fhc_nova_v08_full_v1_nue2020");
113 TFile*
file =
new TFile(
"nue_dcmp.root",
"recreate");
114 TDirectory*
d = file->mkdir(
"nue_decomps");
116 michelDCMP->
SaveTo(d,
"michelcheatDCMP");
117 michelbenDCMP->
SaveTo(d,
"michelbenDCMP");
118 propDCMP->
SaveTo(d,
"propDCMP");
119 benDCMPFix->
SaveTo(d,
"benDCMPFix");
120 benDCMP->
SaveTo(d,
"benDCMP");
121 michelpropDCMP->
SaveTo(d,
"michelpropDCMP");
Cuts and Vars for the 2020 FD DiF Study.
void SetSpillCut(const SpillCut &cut)
const Binning kNue2020Binning
const HistAxis kNue2020Axis("NuE Energy / Analysis Bin", kNue2020Binning, kNue2020AnaBin)
Use this Axis for Ana2020, official Axis.
void SaveTo(TDirectory *dir, const std::string &name) const override
virtual void Go() override
Load all the registered spectra.
const SystShifts kNoShift
void SaveTo(TDirectory *dir, const std::string &name) const override
Splits Data proportionally according to MC.
Collaborates with Spectrum and OscillatableSpectrum to fill spectra from CAF files.
const Var kNue2020AnaBin([](const caf::SRProxy *sr){int selBin=kNue2020SelectionBin(sr);float nuE=kNueEnergy2020(sr);int nuEBin=nuE/0.5;assert(nuEBin<=8 &&"An event with nuE > 4.5 should never happen");int anaBin=9 *selBin+nuEBin;return anaBin;})
Use this Analysis Binning for Ana2020, official Binning.
Standard interface to all decomposition techniques.
const SpillCut kStandardSpillCuts
Apply this unless you're doing something special.
virtual void SaveTo(TDirectory *dir, const std::string &name) const =0
static Binning Simple(int n, double lo, double hi, const std::vector< std::string > &labels={})
Just return the ND truth spectra as the decomposition.