TrivialExtrap.h
Go to the documentation of this file.
1 #pragma once
2 
4 
5 namespace ana
6 {
7  class Loaders;
8 
9  /// "Extrapolation" that simply returns the FD MC prediction
10  class TrivialExtrap: public IExtrap
11  {
12  public:
15  const Binning& bins,
16  const Var& var,
17  const Cut& cut,
18  const SystShifts& shift = kNoShift,
19  const Var& wei = kUnweighted);
20 
21  TrivialExtrap(Loaders& loaders,
22  const HistAxis& axis,
23  const Cut& cut,
24  const SystShifts& shift = kNoShift,
25  const Var& wei = kUnweighted);
26 
29  SpectrumLoaderBase& loaderTau,
30  const HistAxis& axis,
31  const Cut& cut,
32  const SystShifts& shift,
33  const Var& wei);
34 
36  SpectrumLoaderBase& loaderSwap,
37  SpectrumLoaderBase& loaderTau,
38  std::string label,
39  const Binning& bins,
40  const Var& var,
41  const Cut& cut,
42  const SystShifts& shift = kNoShift,
43  const Var& wei = kUnweighted);
44 
46  SpectrumLoaderBase& loaderSwap,
47  std::string label,
48  const Binning& bins,
49  const Var& var,
50  const Cut& cut,
51  const SystShifts& shift = kNoShift,
52  const Var& wei = kUnweighted);
53 
54  virtual OscillatableSpectrum NueSurvComponent() override {return fNueSurv;}
56 
57  virtual OscillatableSpectrum NumuSurvComponent() override {return fNumuSurv;}
59 
60  virtual OscillatableSpectrum NueAppComponent() override {return fNueApp;}
62 
63  virtual OscillatableSpectrum NumuAppComponent() override {return fNumuApp;}
65 
66  virtual OscillatableSpectrum TauFromEComponent() override {return fTauFromE;}
68 
69  virtual OscillatableSpectrum TauFromMuComponent() override {return fTauFromMu;}
71 
72  virtual Spectrum NCTotalComponent() override {return fNCTot;}
73  virtual Spectrum NCComponent() override {return fNC;}
74  virtual Spectrum NCAntiComponent() override {return fNCAnti;}
75 
76  virtual void SaveTo(TDirectory* dir, const std::string& name) const override;
77  static std::unique_ptr<TrivialExtrap> LoadFrom(TDirectory* dir, const std::string& name);
78 
79  protected:
81  : fNueApp(OscillatableSpectrum::Uninitialized()), fNueAppAnti(OscillatableSpectrum::Uninitialized()),
82  fNumuSurv(OscillatableSpectrum::Uninitialized()), fNumuSurvAnti(OscillatableSpectrum::Uninitialized()),
83  fNumuApp(OscillatableSpectrum::Uninitialized()), fNumuAppAnti(OscillatableSpectrum::Uninitialized()),
84  fNueSurv(OscillatableSpectrum::Uninitialized()), fNueSurvAnti(OscillatableSpectrum::Uninitialized()),
85  fTauFromE(OscillatableSpectrum::Uninitialized()), fTauFromEAnti(OscillatableSpectrum::Uninitialized()),
86  fTauFromMu(OscillatableSpectrum::Uninitialized()), fTauFromMuAnti(OscillatableSpectrum::Uninitialized()),
87  fNCTot(Spectrum::Uninitialized()),
88  fNC(Spectrum::Uninitialized()), fNCAnti(Spectrum::Uninitialized())
89  {}
90 
99  };
100 }
const XML_Char * name
Definition: expat.h:151
OscillatableSpectrum fTauFromMuAnti
Definition: TrivialExtrap.h:96
OscillatableSpectrum fNueAppAnti
Definition: TrivialExtrap.h:91
OscillatableSpectrum fNueSurvAnti
Definition: TrivialExtrap.h:94
Represent the binning of a Spectrum&#39;s x-axis.
Definition: Binning.h:16
Cuts and Vars for the 2020 FD DiF Study.
Definition: vars.h:6
virtual OscillatableSpectrum NumuAppComponent() override
Charged current muon neutrino appearance ( )
Definition: TrivialExtrap.h:63
Simple record of shifts applied to systematic parameters.
Definition: SystShifts.h:20
OscillatableSpectrum fTauFromE
Definition: TrivialExtrap.h:95
Collection of SpectrumLoaders for many configurations.
Definition: Loaders.h:23
virtual OscillatableSpectrum AntiNumuAppComponent() override
Charged current muon antineutrino appearance ( )
Definition: TrivialExtrap.h:64
OscillatableSpectrum fNueApp
Definition: TrivialExtrap.h:91
virtual OscillatableSpectrum AntiNumuSurvComponent() override
Charged current muon antineutrino survival ( )
Definition: TrivialExtrap.h:58
virtual OscillatableSpectrum AntiTauFromMuComponent() override
Charged current tau antineutrino appearance from muon antineutrino ( )
Definition: TrivialExtrap.h:70
OscillatableSpectrum fNumuAppAnti
Definition: TrivialExtrap.h:93
OscillatableSpectrum fNumuSurvAnti
Definition: TrivialExtrap.h:92
virtual OscillatableSpectrum NueSurvComponent() override
Charged current electron neutrino survival ( )
Definition: TrivialExtrap.h:54
Representation of a spectrum in any variable, with associated POT.
Definition: Spectrum.h:40
"Extrapolation" that simply returns the FD MC prediction
Definition: TrivialExtrap.h:10
const char * label
virtual Spectrum NCTotalComponent() override
Neutral currents.
Definition: TrivialExtrap.h:72
virtual OscillatableSpectrum TauFromEComponent() override
Charged current tau neutrino appearance from electron neutrino ( )
Definition: TrivialExtrap.h:66
virtual OscillatableSpectrum NumuSurvComponent() override
Charged current muon neutrino survival ( )
Definition: TrivialExtrap.h:57
virtual OscillatableSpectrum AntiNueAppComponent() override
Charged current electron antineutrino appearance ( )
Definition: TrivialExtrap.h:61
OscillatableSpectrum fTauFromMu
Definition: TrivialExtrap.h:96
virtual Spectrum NCAntiComponent() override
Definition: TrivialExtrap.h:74
OscillatableSpectrum fNueSurv
Definition: TrivialExtrap.h:94
virtual OscillatableSpectrum TauFromMuComponent() override
Charged current tau neutrino appearance from muon neutrino ( )
Definition: TrivialExtrap.h:69
OscillatableSpectrum fNumuApp
Definition: TrivialExtrap.h:93
virtual void SaveTo(TDirectory *dir, const std::string &name) const override
OscillatableSpectrum fTauFromEAnti
Definition: TrivialExtrap.h:95
loader
Definition: demo0.py:10
const SystShifts kNoShift
Definition: SystShifts.cxx:21
virtual OscillatableSpectrum AntiTauFromEComponent() override
Charged current tau antineutrino appearance from electron antineutrino ( )
Definition: TrivialExtrap.h:67
Base class for the various types of spectrum loader.
const Binning bins
Definition: NumuCC_CPiBin.h:8
const Cut cut
Definition: exporter_fd.C:30
OscillatableSpectrum fNumuSurv
Definition: TrivialExtrap.h:92
Interface to extrapolation procedures.
Definition: IExtrap.h:8
TDirectory * dir
Definition: macro.C:5
virtual OscillatableSpectrum NueAppComponent() override
Charged current electron neutrino appearance ( )
Definition: TrivialExtrap.h:60
std::vector< Loaders * > loaders
Definition: syst_header.h:386
virtual Spectrum NCComponent() override
Definition: TrivialExtrap.h:73
loaderSwap
Definition: demo4.py:9
Spectrum with true energy information, allowing it to be oscillated
static std::unique_ptr< TrivialExtrap > LoadFrom(TDirectory *dir, const std::string &name)
virtual OscillatableSpectrum AntiNueSurvComponent() override
Charged current electron antineutrino survival ( )
Definition: TrivialExtrap.h:55
const Var kUnweighted
The simplest possible Var, always 1. Used as a default weight.
Definition: Var.h:96
enum BeamMode string