30 const std::vector<std::string>
GENIEStr = {
"All" };
const unsigned int nGENIE = 1;
39 std::vector<std::string>
QuantNames = {
"AllQuant",
"Quant1",
"Quant2",
"Quant3",
"Quant4" };
const unsigned int nQuantNames = 5;
42 std::vector<std::string>
HCNames = {
"fhc",
"rhc"};
const unsigned int nHC = 2;
45 std::vector<std::string>
DetNames = {
"ND",
"FD"};
255 gStyle->SetOptStat(0);
256 gROOT->SetStyle(
"novaStyle");
261 for (
unsigned int HC=0; HC<
nHC; ++HC) {
266 std::string FDName =
"SpectrumFiles_FD_"+
HCNames[HC]+
"_Full_finerbinning.root"; TFile *FDFile = TFile::Open( FDName.c_str() );
267 std::string NDName =
"SpectrumFiles_ND_"+
HCNames[HC]+
"_Full_finerbinning.root"; TFile *NDFile = TFile::Open( NDName.c_str() );
268 std::vector<TFile*>
files = {FDFile, NDFile};
273 for (
unsigned int gen=0; gen<
nGENIE; ++gen) {
275 for (
unsigned int quant=0; quant<
nQuantNames; ++quant) {
282 sp.
NNeut_FD[gen][
cut][quant][HC] =
SpecToHist(FDFile,
"NumOfNeut"+Comb, POT,
";Num. Neutrons;Events");
283 sp.
NProt_FD[gen][
cut][quant][HC] =
SpecToHist(FDFile,
"NumOfProt"+Comb, POT,
";Num. Protons;Events" );
348 Spec2DtoHist(FDFile,
"MuonEFracvsTrueE" +Comb, POT,
";True #nu E (GeV);Muon E/true #nu E" );
350 Spec2DtoHist(FDFile,
"NeutronEFracvsTrueE" +Comb, POT,
";True #nu E (GeV);Neutron E/true #nu E" );
352 Spec2DtoHist(FDFile,
"ProtonEFracvsTrueE" +Comb, POT,
";True #nu E (GeV);Proton E/true #nu E" );
354 Spec2DtoHist(FDFile,
"PionEFracvsTrueE" +Comb, POT,
";True #nu E (GeV);Pion E/true #nu E" );
356 Spec2DtoHist(FDFile,
"Pi0EFracvsTrueE" +Comb, POT,
";True #nu E (GeV);Pi0 E/true #nu E" );
358 Spec2DtoHist(FDFile,
"PhotonEFracvsTrueE" +Comb, POT,
";True #nu E (GeV);Photon E/true #nu E" );
360 Spec2DtoHist(FDFile,
"KaonEFracvsTrueE" +Comb, POT,
";True #nu E (GeV);Kaon E/true #nu E" );
362 Spec2DtoHist(FDFile,
"ElectronEFracvsTrueE"+Comb, POT,
";True #nu E (GeV);Electron E/true #nu E");
366 Spec2DtoHist(FDFile,
"UncontMuonEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Muon uncont. E/total uncont. E" );
368 Spec2DtoHist(FDFile,
"UncontNeutEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Neutron uncont. E/total uncont. E");
370 Spec2DtoHist(FDFile,
"UncontProtEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Proton uncont. E/total uncont. E" );
372 Spec2DtoHist(FDFile,
"UncontPionEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Pion uncont. E/total uncont. E" );
374 Spec2DtoHist(FDFile,
"UncontPi0sEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Pi0 uncont. E/total uncont. E" );
376 Spec2DtoHist(FDFile,
"UncontPhotEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Photon uncont. E/total uncont. E" );
378 Spec2DtoHist(FDFile,
"UncontKaonEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Kaon uncont. E/total uncont. E" );
380 Spec2DtoHist(FDFile,
"UncontElecEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Electron uncont. E/total uncont. E");
384 Spec2DtoHist(FDFile,
"UncontTotEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Total uncont. E/true #nu E" );
386 Spec2DtoHist(FDFile,
"UncontMuonEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Muon uncont. E/true #nu E" );
388 Spec2DtoHist(FDFile,
"UncontNeutEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Neutron uncont. E/true #nu E" );
390 Spec2DtoHist(FDFile,
"UncontProtEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Proton uncont. E/true #nu E" );
392 Spec2DtoHist(FDFile,
"UncontPionEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Pion uncont. E/true #nu E" );
394 Spec2DtoHist(FDFile,
"UncontPi0sEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Pi0 uncont. E/true #nu E" );
396 Spec2DtoHist(FDFile,
"UncontPhotEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Photon uncont. E/true #nu E" );
398 Spec2DtoHist(FDFile,
"UncontKaonEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Kaon uncont. E/true #nu E" );
400 Spec2DtoHist(FDFile,
"UncontElecEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Electron uncont. E/true #nu E");
410 sp.
NNeut_ND[gen][
cut][quant][HC] =
SpecToHist(NDFile,
"NumOfNeut"+Comb, POT,
";Num. Neutrons;Events");
411 sp.
NProt_ND[gen][
cut][quant][HC] =
SpecToHist(NDFile,
"NumOfProt"+Comb, POT,
";Num. Protons;Events" );
476 Spec2DtoHist(NDFile,
"MuonEFracvsTrueE" +Comb, POT,
";True #nu E (GeV);Muon E/true #nu E" );
478 Spec2DtoHist(NDFile,
"NeutronEFracvsTrueE" +Comb, POT,
";True #nu E (GeV);Neutron E/true #nu E" );
480 Spec2DtoHist(NDFile,
"ProtonEFracvsTrueE" +Comb, POT,
";True #nu E (GeV);Proton E/true #nu E" );
482 Spec2DtoHist(NDFile,
"PionEFracvsTrueE" +Comb, POT,
";True #nu E (GeV);Pion E/true #nu E" );
484 Spec2DtoHist(NDFile,
"Pi0EFracvsTrueE" +Comb, POT,
";True #nu E (GeV);Pi0 E/true #nu E" );
486 Spec2DtoHist(NDFile,
"PhotonEFracvsTrueE" +Comb, POT,
";True #nu E (GeV);Photon E/true #nu E" );
488 Spec2DtoHist(NDFile,
"KaonEFracvsTrueE" +Comb, POT,
";True #nu E (GeV);Kaon E/true #nu E" );
490 Spec2DtoHist(NDFile,
"ElectronEFracvsTrueE"+Comb, POT,
";True #nu E (GeV);Electron E/true #nu E");
494 Spec2DtoHist(NDFile,
"UncontMuonEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Muon uncont. E/total uncont. E" );
496 Spec2DtoHist(NDFile,
"UncontNeutEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Neutron uncont. E/total uncont. E");
498 Spec2DtoHist(NDFile,
"UncontProtEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Proton uncont. E/total uncont. E" );
500 Spec2DtoHist(NDFile,
"UncontPionEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Pion uncont. E/total uncont. E" );
502 Spec2DtoHist(NDFile,
"UncontPi0sEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Pi0 uncont. E/total uncont. E" );
504 Spec2DtoHist(NDFile,
"UncontPhotEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Photon uncont. E/total uncont. E" );
506 Spec2DtoHist(NDFile,
"UncontKaonEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Kaon uncont. E/total uncont. E" );
508 Spec2DtoHist(NDFile,
"UncontElecEFvsTrueE"+Comb, POT,
";True #nu E (GeV);Electron uncont. E/total uncont. E");
512 Spec2DtoHist(NDFile,
"UncontTotEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Total uncont. E/true #nu E" );
514 Spec2DtoHist(NDFile,
"UncontMuonEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Muon uncont. E/true #nu E" );
516 Spec2DtoHist(NDFile,
"UncontNeutEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Neutron uncont. E/true #nu E" );
518 Spec2DtoHist(NDFile,
"UncontProtEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Proton uncont. E/true #nu E" );
520 Spec2DtoHist(NDFile,
"UncontPionEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Pion uncont. E/true #nu E" );
522 Spec2DtoHist(NDFile,
"UncontPi0sEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Pi0 uncont. E/true #nu E" );
524 Spec2DtoHist(NDFile,
"UncontPhotEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Photon uncont. E/true #nu E" );
526 Spec2DtoHist(NDFile,
"UncontKaonEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Kaon uncont. E/true #nu E" );
528 Spec2DtoHist(NDFile,
"UncontElecEFTvsTrueE"+Comb, POT,
";True #nu E (GeV);Electron uncont. E/true #nu E");
536 for (
unsigned int HC=0; HC<
nHC; ++HC){
537 for (
unsigned int gen=0; gen<
nGENIE; ++gen) {
538 for (
unsigned int quant=0; quant<
nQuantNames; ++quant) {
766 for(
unsigned int gen=0; gen<
nGENIE; ++gen) {
767 for (
unsigned int quant=0; quant<
nQuantNames; ++quant) {
878 TH1D* MyHist = TempSpec -> ToTH1( POT );
883 MyHist->SetBinContent(1, 0);
886 MyHist->SetMinimum( 0 );
887 MyHist->SetMaximum( MyHist->GetMaximum()*1.1 );
888 MyHist->SetTitle ( AxisTitle.c_str() );
912 TH2* MyHist = TempSpec ->
ToTH2( POT );
914 MyHist->SetMinimum( 0 );
915 MyHist->SetMaximum( MyHist->GetMaximum()*1.1 );
916 MyHist->SetTitle ( AxisTitle.c_str() );
920 unsigned int NXbins = 0.0;
921 unsigned int NYbins = 0.0;
924 NXbins = MyHist->GetNbinsX();
925 NYbins = MyHist->GetNbinsY();
927 for(
unsigned int i = 0;
i <= NXbins+1; ++
i) {
929 for(
unsigned int j = 2;
j <= NYbins; ++
j)
930 integral += MyHist->GetBinContent(
i,
j);
931 if(integral == 0.0)
continue;
932 for(
unsigned int j = 0;
j <= NYbins+1; ++
j)
933 MyHist->SetBinContent(
i,
j,MyHist->GetBinContent(
i,
j)/
integral);
937 MyHist->GetYaxis()->SetRange(2,NYbins);
940 MyHist->GetZaxis()->SetRangeUser(0.0, 1.0);
947 TCanvas* ThisCan =
new TCanvas( PlotName.c_str(), PlotName.c_str() );
949 double HistLeg_X1 = 0.57, HistLeg_Y1 = 0.65, HistLeg_X2 = 0.88, HistLeg_Y2 = 0.88;
950 TLegend* Leg =
new TLegend(HistLeg_X1, HistLeg_Y1, HistLeg_X2, HistLeg_Y2 );
961 else TheHists[
hist] ->
Draw(
"hist same");
962 Leg ->
AddEntry( TheHists[
hist], Labels[hist].c_str() );
969 TheHists[0]->SetMaximum(max*1.1);
972 if ( PlotName.find(
"CompareUncontainEnergies") != std::string::npos) {
979 ThisCan ->
SaveAs( TString(
"Plots/")+TString(ThisCan->GetName())+TString(
".pdf") );
980 ThisCan ->
SaveAs( TString(
"Plots/")+TString(ThisCan->GetName())+TString(
".png") );
991 TCanvas* ThisCan =
new TCanvas( PlotName.c_str(), PlotName.c_str() );
993 ThisCan ->
SaveAs( TString(
"Plots/")+TString(ThisCan->GetName())+TString(
".pdf") );
994 ThisCan ->
SaveAs( TString(
"Plots/")+TString(ThisCan->GetName())+TString(
".png") );
1003 double nevts0 = hist->GetBinContent(1);
1004 double nevtsTot = 0;
1006 for(
int i = 1;
i < hist->GetNbinsX();
i++) {
1007 nevtsTot += hist->GetBinContent(
i);
1010 std::cout<<PlotName<<
" | nevts0bin/nevtsTotal " << nevts0<<
"/"<<nevtsTot<<
"="<<nevts0/nevtsTot <<
std::endl;
1022 int bins = hist->GetNbinsX();
1023 double entriesnot0bin = hist->GetEntries()-hist->GetBinContent(1);
1024 double currentEntries = 0.0;
1031 currentEntries += hist->GetBinContent(
i);
1033 if(currentEntries/entriesnot0bin >= 0.90) {
1034 pop90 = hist->GetXaxis()->GetBinCenter(
i);
1038 else if(currentEntries/entriesnot0bin >=50){
1039 pop50 = hist->GetXaxis()->GetBinCenter(
i);
1043 else if(currentEntries/entriesnot0bin>10){
1044 pop10 = hist->GetXaxis()->GetBinCenter(
i);
TH2 * UncontProtEFTvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * UncontElecEFvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
const unsigned int nND_CutNames
TH1D * MiscEnergy_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * UncontNeutEFvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * UncontPionEF_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * NNeut_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontPionEFT_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * UncontMuonEFvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontProtEFT_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
void GetPercentages(TH1 *hist, std::string PlotName)
TH2 * PhotonEFracvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
Cuts and Vars for the 2020 FD DiF Study.
TH1D * UncontNeutEF_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontTotEvsX_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * ProtonEFracvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * UncontPhotEFvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * PionEFracvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontPhotEFTvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * UncontMuonEF_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * NProt_ND[nGENIE][nFD_CutNames][nQuantNames][nHC]
std::vector< std::string > FD_CutNames
correl_xv GetYaxis() -> SetDecimals()
TH1D * MuonEnergy_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * Pi0Energy_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * NeutronEFracvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontNeutEFTvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * MuonEFracvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * ElectronEnergy_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontPhotEFT_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontPhotEFvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontProtEF_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * UncontProtEF_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * Pi0Energy_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * PionEnergy_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontPi0sEFvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
std::vector< std::string > DetNames
TH1D * NeutronEnergy_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontTotEvsY_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * KaonUncontain_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * ElecUncontain_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontPionEFT_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * UncontElecEF_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
void Print0binFrac(TH1 *hist, std::string PlotName)
TH1D * ElectronEnergy_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * ElectronEFrac_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontPhotEF_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * PhotonEFrac_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * PionUncontain_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
void CenterTitles(TH1 *histo)
TH1D * UncontPionEF_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * ElecUncontain_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * ProtUncontain_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * NeutrinoEnergy_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
ntuple SetFillStyle(1001)
TH1D * NeutUncontain_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontNeutEFT_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
const double kAna2018RHCPOT
std::vector< std::string > QuantNames
TH1D * MiscUncontain_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * PionEFrac_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontPhotEFT_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * KaonEnergy_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontPionEFTvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * Pi0EFrac_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
const unsigned int nFD_CutNames
TH1D * UncontPi0sEF_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * MuonUncontain_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * ProtonEFrac_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * KaonEnergy_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * PhotonEnergy_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * KaonUncontain_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * UncontTotEvsX_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * PionEnergy_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontProtEFT_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * UncontElecEFTvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * UncontNeutEFTvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
static std::unique_ptr< Spectrum > LoadFrom(TDirectory *dir, const std::string &name)
const unsigned int nGENIE
TH1D * PionUncontain_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * NeutrinoEnergy_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
const unsigned int nQuantNames
TH2 * UncontElecEFTvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * AllUncontain_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * MuonUncontain_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
leg AddEntry(GRdata,"data","p")
TH2 * UncontMuonEFvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontPhotEFTvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * PhotonEnergy_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontPionEFvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * ProtonEFrac_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * NPi0s_ND[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * UncontTotEFTvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * UncontKaonEF_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * NeutronEFrac_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * NProt_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
std::vector< std::string > ND_CutNames
TH1D * NeutUncontain_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontKaonEFTvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontNeutEFvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * PhotonEFrac_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * UncontProtEFTvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * UncontKaonEFT_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
void Print2D(TH2 *hist, std::string PlotName)
TH2 * UncontMuonEFTvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * MuonEnergy_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * NPion_ND[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * UncontPi0sEFvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontProtEFvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontPi0sEFT_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontTotEFT_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * ElectronEFracvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * UncontPhotEF_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * PionEFrac_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * ProtonEnergy_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * KaonEFrac_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
std::vector< double > POT
TH2 * ElectronEFracvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * ProtonEFracvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontPi0sEFTvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * MiscEnergy_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * ProtUncontain_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * Spec2DtoHist(TFile *MyF, std::string SpecName, double POT, std::string AxisTitle)
TH2 * KaonEFracvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontPionEFTvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * Pi0sUncontain_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * UncontNeutEF_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * PhotUncontain_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * NPi0s_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontElecEFT_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontProtEFvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * MuonEFracvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * Pi0sUncontain_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * NeutronEFrac_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontPionEFvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontKaonEF_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * ElectronEFrac_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * Pi0EFracvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * KaonEFracvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * UncontElecEFvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontMuonEFT_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * UncontPi0sEFT_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
const std::vector< std::string > GENIEStr
TH2 * Pi0EFracvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * UncontNeutEFT_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * KaonEFrac_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontElecEFT_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * NeutronEnergy_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * UncontKaonEFvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontMuonEFT_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * MuonEFrac_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
const double kAna2018FHCPOT
TH1D * UncontPi0sEF_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * AllUncontain_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontTotEvsY_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
cosmicTree SaveAs("cosmicTree.root")
TH2 * UncontKaonEFTvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * NeutronEFracvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * Pi0EFrac_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontKaonEFvsTrueE_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
T max(sqlite3 *const db, std::string const &table_name, std::string const &column_name)
TH1D * MuonEFrac_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * UncontPi0sEFTvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * UncontMuonEFTvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontKaonEFT_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * MiscUncontain_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * ToTH2(const Spectrum &s, double exposure, ana::EExposureType expotype, const Binning &binsx, const Binning &binsy, ana::EBinType bintype)
For use with Var2D.
TH1D * NPion_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontElecEF_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH2 * UncontTotEFTvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * ProtonEnergy_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * NNeut_ND[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH2 * PionEFracvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
void MakeComparisonPlots(std::vector< TH1D * > TheHists, std::string PlotName, std::vector< std::string > Labels)
std::vector< std::string > HCNames
TH2 * PhotonEFracvsTrueE_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * SpecToHist(TFile *MyF, std::string SpecName, double POT, std::string AxisTitle)
TH1D * UncontMuonEF_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]
TH1D * UncontTotEFT_ND[nGENIE][nND_CutNames][nQuantNames][nHC]
TH1D * PhotUncontain_FD[nGENIE][nFD_CutNames][nQuantNames][nHC]