50 std::vector<const ISyst*>
systs;
51 systs.push_back(&kNusOscParamSysts);
66 std::vector<Spectrum> upsCalE, dnsCalE;
67 std::vector<Spectrum> upsNHit, dnsNHit;
71 upsCalE.reserve(systs.size());
72 dnsCalE.reserve(systs.size());
73 upsNHit.reserve(systs.size());
74 dnsNHit.reserve(systs.size());
77 for(
const ISyst* syst:systs)
89 TFile* rootF =
new TFile(
"NDDataMCSystBand.root",
"RECREATE");
91 TDirectory*
tmp = gDirectory;
92 TDirectory* saveDir = gDirectory;
95 saveDir = rootF->mkdir(
"sMCCalE");
97 saveDir = rootF->mkdir(
"sDtCalE");
99 saveDir = rootF->mkdir(
"dcCalE");
101 saveDir = rootF->mkdir(
"sMCNHit");
103 saveDir = rootF->mkdir(
"sDtNHit");
105 saveDir = rootF->mkdir(
"dcNHit");
110 for(
unsigned int i = 0,
n = systs.size();
i <
n; ++
i) {
111 specName =
"sUpCalE" + systs[
i]->ShortName();
112 saveDir = rootF->mkdir(specName.c_str());
113 upsCalE[
i].SaveTo(saveDir);
114 specName =
"sDnCalE" + systs[
i]->ShortName();
115 saveDir = rootF->mkdir(specName.c_str());
116 dnsCalE[
i].SaveTo(saveDir);
118 specName =
"sUpNHit" + systs[
i]->ShortName();
119 saveDir = rootF->mkdir(specName.c_str());
120 upsNHit[
i].SaveTo(saveDir);
121 specName =
"sDnNHit" + systs[
i]->ShortName();
122 saveDir = rootF->mkdir(specName.c_str());
123 dnsNHit[
i].SaveTo(saveDir);
void SaveTo(TDirectory *dir, const std::string &name) const override
Represent the binning of a Spectrum's x-axis.
Cuts and Vars for the 2020 FD DiF Study.
const NusSystFromHist kNusNDBirksSyst(kNusAna01SystFile,"ND","NDBirks","Birks C")
Simple record of shifts applied to systematic parameters.
const NusFlatSyst kNusNDContSyst("ndcont","ND Containment", 1.0, 0.6)
void SetSpillCut(const SpillCut &cut)
const NusSystFromHist kNusNDCalibSlopeYSyst(kNusAna01SystFile,"ND","NDCalSlopeY","Sloped Miscalibration, Y")
Encapsulate code to systematically shift a caf::SRProxy.
Representation of a spectrum in any variable, with associated POT.
const NusSystFromHist kNusNDNDRockSyst(kNusAna01SystFile,"ND","NDRock","ND Rock")
const NusSystFromHist kNusNDCalibSlopeXSyst(kNusAna01SystFile,"ND","NDCalSlopeX","Sloped Miscalibration, X")
const std::string fnamenear_concat
const std::string fnameneardata_concat
virtual void Go() override
Load all the registered spectra.
void SaveTo(TDirectory *dir, const std::string &name) const
const HistAxis kNCAxis("Calorimetric Energy (GeV)", kNCDisappearanceEnergyBinning, kCaloE)
Axes used in Ana01 analysis by nus group.
const NusFlatSyst kNusMCStatsSyst("mcstat","MC Stats", 2.0, 4.8)
const SystShifts kNoShift
const NusSystFromHist kNusNDGENIESmallSysts(kNusAna01SystFile,"ND","NDGENIESm","Summed small GENIE Systs")
Collaborates with Spectrum and OscillatableSpectrum to fill spectra from CAF files.
const NusFlatSyst kNusNormSyst("normNus","Normalization", 4.9, 4.9)
const SpillCut kStandardSpillCuts
Apply this unless you're doing something special.
const NusSystFromHist kNusNDNumuCCSyst(kNusAna01SystFile,"ND","NDNumuCC","#nu_{#mu} CC Background")
static Binning Simple(int n, double lo, double hi, const std::vector< std::string > &labels={})
Just return the ND truth spectra as the decomposition.
const NusSystFromHist kNusNDBeamSysts(kNusAna01SystFile,"ND","NDBeam","All Beam")
const NusSystFromHist kNusNDCalibFlatSyst(kNusAna01SystFile,"ND","NDCalFlat","Flat Miscalibration")
void NDDataMCSystBandLoad()
const NusSystFromHist kNusNDNueCCSyst(kNusAna01SystFile,"ND","NDNueCC","#nu_{e} CC Background")