Definition at line 35 of file make_pid.C.
References ana::bins, om::cout, cut, allTimeWatchdog::endl, submit_syst::fout, ana::SpectrumLoaderBase::Go(), MECModelEnuComparisons::i, isFHC, calib::j, ana::kNoShift, kNPlots, kNSels, ana::kPPFXFluxCVWgt, ana::kStandardDQCuts, ana::kTightBeamQualityCuts, ana::kXSecCVWgt2017, label, demo0::loader, plots, ana::Spectrum::SaveTo(), ana::sels, ana::SpectrumLoaderBase::SetSpillCut(), string, and PandAna.Demos.tute_pid_validation::var.
37 "prod_decaf_R17-03-01-prod3reco.d_nd_numi_fhc_full_nue_or_numu_or_nus_contain_v1_goodruns" :
38 "prod_decaf_R17-03-01-prod3reco.l_nd_numi_rhc_full_nue_or_numu_or_nus_contain_v1_goodruns" ;
41 "prod_decaf_R17-03-01-prod3reco.d_nd_genie_nonswap_fhc_nova_v08_full_nue_or_numu_or_nus_contain_v1" :
42 "prod_decaf_R17-03-01-prod3reco.l_nd_genie_nonswap_rhc_nova_v08_full_nue_or_numu_or_nus_contain_v1" ;
78 TFile
fout((
"make_pid_output_"+cStr+
".root").c_str(),
"RECREATE");
const unsigned int kNSels
void SetSpillCut(const SpillCut &cut)
const unsigned int kNPlots
Representation of a spectrum in any variable, with associated POT.
const SpillCut kTightBeamQualityCuts([](const caf::SRSpillProxy *s){if(s->ismc) return true; if(s->trigger==2) return true;if(s->spilltimesec==0 &&s->deltaspilltimensec==0 &&s->widthx==0) return bool(s->isgoodspill);if(std::abs(s->deltaspilltimensec) > 0.5e9) return false;if(s->spillpot< 2e12) return false;if(s->hornI< -202|| s->hornI >-198) return false;if(s->posx< -2.00|| s->posx >+2.00) return false;if(s->posy< -2.00|| s->posy >+2.00) return false;return kBeamWidthCut(s);})
virtual void Go()=0
Load all the registered spectra.
const std::vector< Plot > plots
const SpillCut kStandardDQCuts([](const caf::SRSpillProxy *spill){if(spill->dcmedgematchfrac==0 &&spill->fracdcm3hits==0 &&spill->nmissingdcmslg==0) return bool(spill->isgoodspill); if(spill->det==caf::kNEARDET && (spill->fracdcm3hits > 0.45|| spill->nmissingdcms > 0)) return false; if(spill->eventincomplete) return false; if(spill->det==caf::kFARDET && spill->nmissingdcmslg > 0) return false; if(spill->det==caf::kFARDET && !spill->ismc && spill->dcmedgematchfrac<=0.2) return false;return true;})
Cut out events with a noisy detector or with parts missing.
void SaveTo(TDirectory *dir, const std::string &name) const
std::vector< float > Spectrum
const SystShifts kNoShift
Base class for the various types of spectrum loader.
Collaborates with Spectrum and OscillatableSpectrum to fill spectra from CAF files.