Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
ana::FDPredictionSterile Class Reference

Take the output of an extrapolation and oscillate it as required. More...

#include "/cvmfs/nova-development.opensciencegrid.org/novasoft/releases/N20-12-02/NuXAna/Prediction/FDPredictionSterile.h"

Inheritance diagram for ana::FDPredictionSterile:
ana::IPrediction

Public Member Functions

 FDPredictionSterile (FDExtrap *extrap)
 
virtual ~FDPredictionSterile ()
 
virtual Spectrum Predict (osc::IOscCalc *calc) const override
 
virtual Spectrum PredictComponent (osc::IOscCalc *calc, Flavors::Flavors_t flav, Current::Current_t curr, Sign::Sign_t sign) const override
 
virtual Spectrum FakeData (osc::IOscCalc *calc, double POT)
 
virtual void SaveTo (TDirectory *dir, const std::string &name) const override
 
 FDPredictionSterile ()=delete
 
virtual Spectrum PredictUnoscillated () const
 
virtual Spectrum Predict (osc::IOscCalcStan *calc) const
 
virtual Spectrum PredictSyst (osc::IOscCalc *calc, const SystShifts &syst) const
 
virtual Spectrum PredictSyst (osc::IOscCalcStan *calc, const SystShifts &syst) const
 
virtual Spectrum PredictComponent (osc::IOscCalcStan *calc, Flavors::Flavors_t flav, Current::Current_t curr, Sign::Sign_t sign) const
 
virtual Spectrum PredictComponentSyst (osc::IOscCalc *calc, const SystShifts &syst, Flavors::Flavors_t flav, Current::Current_t curr, Sign::Sign_t sign) const
 
virtual Spectrum PredictComponentSyst (osc::IOscCalcStan *calc, const SystShifts &syst, Flavors::Flavors_t flav, Current::Current_t curr, Sign::Sign_t sign) const
 
virtual OscillatableSpectrum ComponentCC (int from, int to) const
 
virtual Spectrum ComponentNCTotal () const
 
virtual Spectrum ComponentNC () const
 
virtual Spectrum ComponentNCAnti () const
 

Static Public Member Functions

static std::unique_ptr< FDPredictionSterileLoadFrom (TDirectory *dir, const std::string &name)
 

Protected Attributes

FDExtrapfFDExtrap
 

Detailed Description

Take the output of an extrapolation and oscillate it as required.

Definition at line 13 of file FDPredictionSterile.h.

Constructor & Destructor Documentation

ana::FDPredictionSterile::FDPredictionSterile ( FDExtrap extrap)

Definition at line 24 of file FDPredictionSterile.cxx.

25  : fFDExtrap(extrap)
26  {
27  }
ana::FDPredictionSterile::~FDPredictionSterile ( )
virtual

Definition at line 30 of file FDPredictionSterile.cxx.

References fFDExtrap.

31  {
32  if (fFDExtrap) delete fFDExtrap;
33  }
ana::FDPredictionSterile::FDPredictionSterile ( )
delete

Referenced by LoadFrom().

Member Function Documentation

OscillatableSpectrum ana::IPrediction::ComponentCC ( int  from,
int  to 
) const
virtualinherited

Reimplemented in ana::PredictionExtendToPeripheral, ana::PredictionAddRock, ana::PredictionCombinePeriods, ana::PredictionExtrapSum, and ana::PredictionExtrap.

Definition at line 105 of file IPrediction.cxx.

References om::cout, and allTimeWatchdog::endl.

Referenced by ana::PredictionCombinePeriods::ComponentCC(), ana::PredictionAddRock::ComponentCC(), and ND_DataMC().

106  {
107  std::cout << "WARNING! ComponentCC is unimplemented in IPrediction" << std::endl; abort();
108  }
OStream cout
Definition: OStream.cxx:6
Spectrum ana::IPrediction::ComponentNC ( ) const
virtualinherited

Reimplemented in ana::PredictionExtendToPeripheral, ana::PredictionAddRock, ana::PredictionCombinePeriods, ana::PredictionExtrapSum, and ana::PredictionExtrap.

Definition at line 115 of file IPrediction.cxx.

References om::cout, and allTimeWatchdog::endl.

Referenced by ana::PredictionAddRock::ComponentNC().

116  {
117  std::cout << "WARNING! ComponentNC is unimplemented in IPrediction" << std::endl; abort();
118  }
OStream cout
Definition: OStream.cxx:6
Spectrum ana::IPrediction::ComponentNCAnti ( ) const
virtualinherited

Reimplemented in ana::PredictionExtendToPeripheral, ana::PredictionAddRock, ana::PredictionCombinePeriods, ana::PredictionExtrapSum, and ana::PredictionExtrap.

Definition at line 120 of file IPrediction.cxx.

References om::cout, and allTimeWatchdog::endl.

Referenced by ana::PredictionAddRock::ComponentNCAnti().

121  {
122  std::cout << "WARNING! ComponentNCAnti is unimplemented in IPrediction" << std::endl; abort();
123  }
OStream cout
Definition: OStream.cxx:6
Spectrum ana::IPrediction::ComponentNCTotal ( ) const
virtualinherited

Reimplemented in ana::PredictionExtendToPeripheral, ana::PredictionAddRock, ana::PredictionCombinePeriods, ana::PredictionExtrapSum, and ana::PredictionExtrap.

Definition at line 110 of file IPrediction.cxx.

References om::cout, and allTimeWatchdog::endl.

Referenced by ana::PredictionAddRock::ComponentNCTotal(), and ND_DataMC().

111  {
112  std::cout << "WARNING! ComponentNCTotal is unimplemented in IPrediction" << std::endl; abort();
113  }
OStream cout
Definition: OStream.cxx:6
Spectrum ana::FDPredictionSterile::FakeData ( osc::IOscCalc calc,
double  POT 
)
virtual

Definition at line 170 of file FDPredictionSterile.cxx.

References ana::Spectrum::FakeData(), and Predict().

171  {
172  return Predict(calc).FakeData(POT);
173  }
Spectrum FakeData(double pot) const
Synonymous with AsimovData(). Retained for compatibility.
Definition: Spectrum.cxx:349
std::vector< double > POT
virtual Spectrum Predict(osc::IOscCalc *calc) const override
std::unique_ptr< FDPredictionSterile > ana::FDPredictionSterile::LoadFrom ( TDirectory *  dir,
const std::string name 
)
static

Definition at line 193 of file FDPredictionSterile.cxx.

References ana::assert(), dir, FDPredictionSterile(), and runNovaSAM::release.

Referenced by ana::SystMakerShiftSigma::LoadFrom(), ana::SystMaker::LoadFrom(), ana::LoadMaps(), and LoadPrediction().

194  {
195  dir = dir->GetDirectory(name.c_str()); // switch to subdir
196  assert(dir);
197 
198  FDExtrap* extrap = ana::LoadFrom<FDExtrap>(dir, "fdextrap").release();
199 
200  delete dir;
201 
202  return std::unique_ptr<FDPredictionSterile>(new FDPredictionSterile(extrap));
203  }
const XML_Char * name
Definition: expat.h:151
TDirectory * dir
Definition: macro.C:5
assert(nhit_max >=nhit_nbins)
Spectrum ana::FDPredictionSterile::Predict ( osc::IOscCalc calc) const
overridevirtual

Implements ana::IPrediction.

Definition at line 36 of file FDPredictionSterile.cxx.

References ana::FDExtrap::AntiNueCCAppComponent(), ana::FDExtrap::AntiNueCCSurvComponent(), ana::FDExtrap::AntiNueNCComponent(), ana::FDExtrap::AntiNumuCCAppComponent(), ana::FDExtrap::AntiNumuCCSurvComponent(), ana::FDExtrap::AntiNumuNCComponent(), ana::FDExtrap::AntiTauCCAppComponent(), ana::FDExtrap::AntiTauNCComponent(), calc, osc::DowncastToSterile(), ana::FDExtrap::EAntiTauCCAppComponent(), ana::FDExtrap::ETauCCAppComponent(), fFDExtrap, noosc, ana::FDExtrap::NueCCAppComponent(), ana::FDExtrap::NueCCSurvComponent(), ana::FDExtrap::NueNCComponent(), ana::FDExtrap::NumuCCAppComponent(), ana::FDExtrap::NumuCCSurvComponent(), ana::FDExtrap::NumuNCComponent(), ana::OscillatableSpectrum::Oscillated(), runNovaSAM::ret, ana::FDExtrap::TauCCAppComponent(), and ana::FDExtrap::TauNCComponent().

Referenced by FakeData().

37  {
38 
40  if (noosc) {
41  Spectrum ret = fFDExtrap->NueCCSurvComponent() .Oscillated(noosc, +12, +12);
42  ret += fFDExtrap->AntiNueCCSurvComponent() .Oscillated(noosc, -12, -12);
43  ret += fFDExtrap->NumuCCAppComponent() .Oscillated(noosc, +12, +14);
44  ret += fFDExtrap->AntiNumuCCAppComponent() .Oscillated(noosc, -12, -14);
45  ret += fFDExtrap->NumuCCSurvComponent() .Oscillated(noosc, +14, +14);
46  ret += fFDExtrap->AntiNumuCCSurvComponent().Oscillated(noosc, -14, -14);
47  ret += fFDExtrap->NueCCAppComponent() .Oscillated(noosc, +14, +12);
48  ret += fFDExtrap->AntiNueCCAppComponent() .Oscillated(noosc, -14, -12);
49  ret += fFDExtrap->TauCCAppComponent() .Oscillated(noosc, +14, +16);
50  ret += fFDExtrap->AntiTauCCAppComponent() .Oscillated(noosc, -14, -16);
51  ret += fFDExtrap->ETauCCAppComponent() .Oscillated(noosc, +12, +16);
52  ret += fFDExtrap->EAntiTauCCAppComponent() .Oscillated(noosc, -12, -16);
53  ret += fFDExtrap->NueNCComponent() .Oscillated(noosc, +12, 0);
54  ret += fFDExtrap->NumuNCComponent() .Oscillated(noosc, +14, 0);
55  ret += fFDExtrap->TauNCComponent() .Oscillated(noosc, +16, 0);
56  ret += fFDExtrap->AntiNueNCComponent() .Oscillated(noosc, -12, 0);
57  ret += fFDExtrap->AntiNumuNCComponent() .Oscillated(noosc, -14, 0);
58  ret += fFDExtrap->AntiTauNCComponent() .Oscillated(noosc, -16, 0);
59 
60  return ret;
61  }
62 
64 
65  Spectrum ret = fFDExtrap->NueCCSurvComponent() .Oscillated(scalc, +12, +12);
66  ret += fFDExtrap->AntiNueCCSurvComponent() .Oscillated(scalc, -12, -12);
67  ret += fFDExtrap->NumuCCAppComponent() .Oscillated(scalc, +12, +14);
68  ret += fFDExtrap->AntiNumuCCAppComponent() .Oscillated(scalc, -12, -14);
69  ret += fFDExtrap->NumuCCSurvComponent() .Oscillated(scalc, +14, +14);
70  ret += fFDExtrap->AntiNumuCCSurvComponent().Oscillated(scalc, -14, -14);
71  ret += fFDExtrap->NueCCAppComponent() .Oscillated(scalc, +14, +12);
72  ret += fFDExtrap->AntiNueCCAppComponent() .Oscillated(scalc, -14, -12);
73  ret += fFDExtrap->TauCCAppComponent() .Oscillated(scalc, +14, +16);
74  ret += fFDExtrap->AntiTauCCAppComponent() .Oscillated(scalc, -14, -16);
75  ret += fFDExtrap->ETauCCAppComponent() .Oscillated(scalc, +12, +16);
76  ret += fFDExtrap->EAntiTauCCAppComponent() .Oscillated(scalc, -12, -16);
77  ret += fFDExtrap->NueNCComponent() .Oscillated(scalc, +12, 0);
78  ret += fFDExtrap->NumuNCComponent() .Oscillated(scalc, +14, 0);
79  ret += fFDExtrap->TauNCComponent() .Oscillated(scalc, +16, 0);
80  ret += fFDExtrap->AntiNueNCComponent() .Oscillated(scalc, -12, 0);
81  ret += fFDExtrap->AntiNumuNCComponent() .Oscillated(scalc, -14, 0);
82  ret += fFDExtrap->AntiTauNCComponent() .Oscillated(scalc, -16, 0);
83 
84  return ret;
85  }
Pass neutrinos through unchanged.
Definition: IOscCalc.h:45
OscillatableSpectrum TauNCComponent()
Definition: FDExtrap.cxx:141
OscillatableSpectrum AntiTauCCAppComponent()
Definition: FDExtrap.cxx:111
OscillatableSpectrum NueCCSurvComponent()
Definition: FDExtrap.cxx:65
OscillatableSpectrum AntiNumuCCAppComponent()
Definition: FDExtrap.cxx:83
OscillatableSpectrum EAntiTauCCAppComponent()
Definition: FDExtrap.cxx:121
Adapt the PMNS_Sterile calculator to standard interface.
OscillatableSpectrum AntiNumuCCSurvComponent()
Definition: FDExtrap.cxx:95
osc::OscCalcDumb calc
OscillatableSpectrum AntiNumuNCComponent()
Definition: FDExtrap.cxx:151
OscillatableSpectrum NumuCCSurvComponent()
Definition: FDExtrap.cxx:89
OscillatableSpectrum TauCCAppComponent()
Definition: FDExtrap.cxx:106
OscillatableSpectrum NumuCCAppComponent()
Definition: FDExtrap.cxx:77
OscillatableSpectrum AntiNueNCComponent()
Definition: FDExtrap.cxx:146
OscillatableSpectrum AntiNueCCSurvComponent()
Definition: FDExtrap.cxx:71
osc::NoOscillations noosc
Definition: NueSystFuncs.h:44
std::vector< float > Spectrum
Definition: Constants.h:610
OscillatableSpectrum NueNCComponent()
Definition: FDExtrap.cxx:131
const OscCalcSterile * DowncastToSterile(const IOscCalc *calc)
Spectrum Oscillated(osc::IOscCalc *calc, int from, int to) const
OscillatableSpectrum ETauCCAppComponent()
Definition: FDExtrap.cxx:116
OscillatableSpectrum AntiNueCCAppComponent()
Definition: FDExtrap.cxx:126
OscillatableSpectrum NueCCAppComponent()
Definition: FDExtrap.cxx:101
OscillatableSpectrum NumuNCComponent()
Definition: FDExtrap.cxx:136
OscillatableSpectrum AntiTauNCComponent()
Definition: FDExtrap.cxx:156
Spectrum ana::IPrediction::Predict ( osc::IOscCalcStan calc) const
virtualinherited

Reimplemented in ana::PredictionInterp, ana::PredictionExtendToPeripheral, ana::PredictionNoOsc, ana::PredictionExtrapSum, ana::PredictionExtrap, and ana::PredictionAddRock.

Definition at line 43 of file IPrediction.cxx.

References ana::assert().

44  {
45  assert(0 && "This Prediction hasn't implemented a Stan-aware Predict()!");
46  }
assert(nhit_max >=nhit_nbins)
Spectrum ana::FDPredictionSterile::PredictComponent ( osc::IOscCalc calc,
Flavors::Flavors_t  flav,
Current::Current_t  curr,
Sign::Sign_t  sign 
) const
overridevirtual

Implements ana::IPrediction.

Definition at line 88 of file FDPredictionSterile.cxx.

References ana::FDExtrap::AntiNueCCAppComponent(), ana::FDExtrap::AntiNueCCSurvComponent(), ana::FDExtrap::AntiNueNCComponent(), ana::FDExtrap::AntiNumuCCAppComponent(), ana::FDExtrap::AntiNumuCCSurvComponent(), ana::FDExtrap::AntiNumuNCComponent(), ana::FDExtrap::AntiTauCCAppComponent(), ana::FDExtrap::AntiTauNCComponent(), calc, om::cerr, ana::Spectrum::Clear(), osc::DowncastToSterile(), ana::FDExtrap::EAntiTauCCAppComponent(), allTimeWatchdog::endl, ana::FDExtrap::ETauCCAppComponent(), fFDExtrap, ana::Flavors::kAllNuTau, ana::Sign::kAntiNu, ana::Current::kCC, ana::Current::kNC, ana::Sign::kNu, ana::Flavors::kNuEToNuE, ana::Flavors::kNuEToNuMu, ana::Flavors::kNuEToNuTau, ana::Flavors::kNuMuToNuE, ana::Flavors::kNuMuToNuMu, ana::Flavors::kNuMuToNuTau, ana::FDExtrap::NCComponent(), noosc, ana::FDExtrap::NueCCAppComponent(), ana::FDExtrap::NueCCSurvComponent(), ana::FDExtrap::NueNCComponent(), ana::FDExtrap::NumuCCAppComponent(), ana::FDExtrap::NumuCCSurvComponent(), ana::FDExtrap::NumuNCComponent(), ana::OscillatableSpectrum::Oscillated(), runNovaSAM::ret, ana::FDExtrap::TauCCAppComponent(), and ana::FDExtrap::TauNCComponent().

92  {
93 
95  ret.Clear();
96 
98  if (noosc) {
99  if(curr & Current::kCC){
100  if(flav & Flavors::kNuEToNuE && sign & Sign::kNu) ret += fFDExtrap->NueCCSurvComponent() .Oscillated(noosc, +12, +12);
101  if(flav & Flavors::kNuEToNuE && sign & Sign::kAntiNu) ret += fFDExtrap->AntiNueCCSurvComponent() .Oscillated(noosc, -12, -12);
102 
103  if(flav & Flavors::kNuEToNuMu && sign & Sign::kNu) ret += fFDExtrap->NumuCCAppComponent() .Oscillated(noosc, +12, +14);
104  if(flav & Flavors::kNuEToNuMu && sign & Sign::kAntiNu) ret += fFDExtrap->AntiNumuCCAppComponent() .Oscillated(noosc, -12, -14);
105 
106  if(flav & Flavors::kNuMuToNuE && sign & Sign::kNu) ret += fFDExtrap->NueCCAppComponent() .Oscillated(noosc, +14, +12);
107  if(flav & Flavors::kNuMuToNuE && sign & Sign::kAntiNu) ret += fFDExtrap->AntiNueCCAppComponent() .Oscillated(noosc, -14, -12);
108 
109  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kNu) ret += fFDExtrap->NumuCCSurvComponent() .Oscillated(noosc, +14, +14);
110  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kAntiNu) ret += fFDExtrap->AntiNumuCCSurvComponent().Oscillated(noosc, -14, -14);
111 
112  if(flav & Flavors::kNuMuToNuTau && sign & Sign::kNu) ret += fFDExtrap->TauCCAppComponent() .Oscillated(noosc, +14, +16);
113  if(flav & Flavors::kNuMuToNuTau && sign & Sign::kAntiNu) ret += fFDExtrap->AntiTauCCAppComponent() .Oscillated(noosc, -14, -16);
114 
115  if(flav & Flavors::kNuEToNuTau && sign & Sign::kNu) ret += fFDExtrap->ETauCCAppComponent() .Oscillated(noosc, +12, +16);
116  if(flav & Flavors::kNuEToNuTau && sign & Sign::kAntiNu) ret += fFDExtrap->EAntiTauCCAppComponent() .Oscillated(noosc, -12, -16);
117  }
118 
119  if(curr & Current::kNC) {
120  ret += fFDExtrap->NueNCComponent() .Oscillated(noosc, +12, 0);
121  ret += fFDExtrap->AntiNueNCComponent() .Oscillated(noosc, -12, 0);
122  ret += fFDExtrap->NumuNCComponent() .Oscillated(noosc, +14, 0);
123  ret += fFDExtrap->AntiNumuNCComponent().Oscillated(noosc, -14, 0);
124  ret += fFDExtrap->TauNCComponent() .Oscillated(noosc, +16, 0);
125  ret += fFDExtrap->AntiTauNCComponent() .Oscillated(noosc, -16, 0);
126  }
127  return ret;
128  }
129 
131  if(scalc) {
132  if(curr & Current::kCC){
133  if(flav & Flavors::kNuEToNuE && sign & Sign::kNu) ret += fFDExtrap->NueCCSurvComponent() .Oscillated(scalc, +12, +12);
134  if(flav & Flavors::kNuEToNuE && sign & Sign::kAntiNu) ret += fFDExtrap->AntiNueCCSurvComponent() .Oscillated(scalc, -12, -12);
135 
136  if(flav & Flavors::kNuEToNuMu && sign & Sign::kNu) ret += fFDExtrap->NumuCCAppComponent() .Oscillated(scalc, +12, +14);
137  if(flav & Flavors::kNuEToNuMu && sign & Sign::kAntiNu) ret += fFDExtrap->AntiNumuCCAppComponent() .Oscillated(scalc, -12, -14);
138 
139  if(flav & Flavors::kNuMuToNuE && sign & Sign::kNu) ret += fFDExtrap->NueCCAppComponent() .Oscillated(scalc, +14, +12);
140  if(flav & Flavors::kNuMuToNuE && sign & Sign::kAntiNu) ret += fFDExtrap->AntiNueCCAppComponent() .Oscillated(scalc, -14, -12);
141 
142  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kNu) ret += fFDExtrap->NumuCCSurvComponent() .Oscillated(scalc, +14, +14);
143  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kAntiNu) ret += fFDExtrap->AntiNumuCCSurvComponent().Oscillated(scalc, -14, -14);
144 
145  if(flav & Flavors::kNuEToNuTau && sign & Sign::kNu) ret += fFDExtrap->ETauCCAppComponent() .Oscillated(scalc, +12, +16);
146  if(flav & Flavors::kNuEToNuTau && sign & Sign::kAntiNu) ret += fFDExtrap->EAntiTauCCAppComponent() .Oscillated(scalc, -12, -16);
147 
148  if(flav & Flavors::kNuMuToNuTau && sign & Sign::kNu) ret += fFDExtrap->TauCCAppComponent() .Oscillated(scalc, +14, +16);
149  if(flav & Flavors::kNuMuToNuTau && sign & Sign::kAntiNu) ret += fFDExtrap->AntiTauCCAppComponent() .Oscillated(scalc, -14, -16);
150  }
151 
152  if(curr & Current::kNC) {
153  if(flav & Flavors::kNuEToNuE && sign & Sign::kNu) ret += fFDExtrap->NueNCComponent() .Oscillated(scalc, +12, 0);
154  if(flav & Flavors::kNuEToNuE && sign & Sign::kAntiNu) ret += fFDExtrap->AntiNueNCComponent() .Oscillated(scalc, -12, 0);
155  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kNu) ret += fFDExtrap->NumuNCComponent() .Oscillated(scalc, +14, 0);
156  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kAntiNu) ret += fFDExtrap->AntiNumuNCComponent().Oscillated(scalc, -14, 0);
157  if(flav & Flavors::kAllNuTau && sign & Sign::kNu) ret += fFDExtrap->TauNCComponent() .Oscillated(scalc, +16, 0);
158  if(flav & Flavors::kAllNuTau && sign & Sign::kAntiNu) ret += fFDExtrap->AntiTauNCComponent() .Oscillated(scalc, -16, 0);
159  }
160  }
161  else {
162  std::cerr << "NDPredExtrap: Input calculator was not of type OscCalcSterile." << std::endl;
163 
164  }
165 
166  return ret;
167  }
Pass neutrinos through unchanged.
Definition: IOscCalc.h:45
OscillatableSpectrum TauNCComponent()
Definition: FDExtrap.cxx:141
Spectrum NCComponent()
Definition: FDExtrap.cxx:59
Antineutrinos-only.
Definition: IPrediction.h:50
OscillatableSpectrum AntiTauCCAppComponent()
Definition: FDExtrap.cxx:111
(&#39; appearance&#39;)
Definition: IPrediction.h:18
OscillatableSpectrum NueCCSurvComponent()
Definition: FDExtrap.cxx:65
OscillatableSpectrum AntiNumuCCAppComponent()
Definition: FDExtrap.cxx:83
(&#39;beam &#39;)
Definition: IPrediction.h:15
OscillatableSpectrum EAntiTauCCAppComponent()
Definition: FDExtrap.cxx:121
Adapt the PMNS_Sterile calculator to standard interface.
OStream cerr
Definition: OStream.cxx:7
void Clear()
Definition: Spectrum.cxx:361
OscillatableSpectrum AntiNumuCCSurvComponent()
Definition: FDExtrap.cxx:95
osc::OscCalcDumb calc
OscillatableSpectrum AntiNumuNCComponent()
Definition: FDExtrap.cxx:151
Charged-current interactions.
Definition: IPrediction.h:39
OscillatableSpectrum NumuCCSurvComponent()
Definition: FDExtrap.cxx:89
OscillatableSpectrum TauCCAppComponent()
Definition: FDExtrap.cxx:106
OscillatableSpectrum NumuCCAppComponent()
Definition: FDExtrap.cxx:77
OscillatableSpectrum AntiNueNCComponent()
Definition: FDExtrap.cxx:146
OscillatableSpectrum AntiNueCCSurvComponent()
Definition: FDExtrap.cxx:71
osc::NoOscillations noosc
Definition: NueSystFuncs.h:44
std::vector< float > Spectrum
Definition: Constants.h:610
OscillatableSpectrum NueNCComponent()
Definition: FDExtrap.cxx:131
Neutrinos-only.
Definition: IPrediction.h:49
const OscCalcSterile * DowncastToSterile(const IOscCalc *calc)
(&#39; survival&#39;)
Definition: IPrediction.h:19
Spectrum Oscillated(osc::IOscCalc *calc, int from, int to) const
OscillatableSpectrum ETauCCAppComponent()
Definition: FDExtrap.cxx:116
OscillatableSpectrum AntiNueCCAppComponent()
Definition: FDExtrap.cxx:126
Neutral-current interactions.
Definition: IPrediction.h:40
OscillatableSpectrum NueCCAppComponent()
Definition: FDExtrap.cxx:101
(&#39; appearance&#39;)
Definition: IPrediction.h:16
OscillatableSpectrum NumuNCComponent()
Definition: FDExtrap.cxx:136
def sign(x)
Definition: canMan.py:197
OscillatableSpectrum AntiTauNCComponent()
Definition: FDExtrap.cxx:156
Spectrum ana::IPrediction::PredictComponent ( osc::IOscCalcStan calc,
Flavors::Flavors_t  flav,
Current::Current_t  curr,
Sign::Sign_t  sign 
) const
virtualinherited

Reimplemented in ana::PredictionInterp, ana::PredictionNoOsc, ana::PredictionExtendToPeripheral, ana::PredictionExtrapSum, ana::PredictionAddRock, and ana::PredictionExtrap.

Definition at line 70 of file IPrediction.cxx.

References ana::assert().

74  {
75  assert(0 && "This Prediction hasn't implemented a Stan-aware PredictComponent()!");
76  }
assert(nhit_max >=nhit_nbins)
Spectrum ana::IPrediction::PredictComponentSyst ( osc::IOscCalc calc,
const SystShifts syst,
Flavors::Flavors_t  flav,
Current::Current_t  curr,
Sign::Sign_t  sign 
) const
virtualinherited

Reimplemented in ana::PredictionInterp, ana::PredictionCombinePeriods, and ana::PredictionAddRock.

Definition at line 79 of file IPrediction.cxx.

References ana::assert(), ana::SystShifts::IsNominal(), and ana::IPrediction::PredictComponent().

Referenced by ana::PredictionAddRock::_PredictComponentSyst(), ana::CovMxManager::AddSystematic(), ana::GetBFSystBands(), ana::GetSystBands(), PlotSysts(), ana::PredictionCombinePeriods::PredictComponentSyst(), systematics_extrap_comp_from_pred_interp(), systematics_summary_from_pred_interp(), and systematics_table_from_pred_interp().

84  {
85  assert(syst.IsNominal() && "This Prediction doesn't support PredictSyst(). Did you just mean Predict()?");
86 
87  // Default implementation: no treatment of systematics
88  return PredictComponent(calc, flav, curr, sign);
89  }
virtual Spectrum PredictComponent(osc::IOscCalc *calc, Flavors::Flavors_t flav, Current::Current_t curr, Sign::Sign_t sign) const =0
assert(nhit_max >=nhit_nbins)
def sign(x)
Definition: canMan.py:197
Spectrum ana::IPrediction::PredictComponentSyst ( osc::IOscCalcStan calc,
const SystShifts syst,
Flavors::Flavors_t  flav,
Current::Current_t  curr,
Sign::Sign_t  sign 
) const
virtualinherited

Reimplemented in ana::PredictionInterp, and ana::PredictionAddRock.

Definition at line 93 of file IPrediction.cxx.

References ana::assert(), ana::SystShifts::IsNominal(), and ana::IPrediction::PredictComponent().

98  {
99  assert(syst.IsNominal() && "This Prediction doesn't support PredictSyst(). Did you just mean Predict()?");
100 
101  // Default implementation: no treatment of systematics
102  return PredictComponent(calc, flav, curr, sign);
103  }
virtual Spectrum PredictComponent(osc::IOscCalc *calc, Flavors::Flavors_t flav, Current::Current_t curr, Sign::Sign_t sign) const =0
assert(nhit_max >=nhit_nbins)
def sign(x)
Definition: canMan.py:197
Spectrum ana::IPrediction::PredictSyst ( osc::IOscCalc calc,
const SystShifts syst 
) const
virtualinherited

Reimplemented in ana::PredictionInterp, ana::PredictionScaleComp, ana::PredictionCombinePeriods, and ana::PredictionAddRock.

Definition at line 49 of file IPrediction.cxx.

References ana::assert(), ana::SystShifts::IsNominal(), and ana::IPrediction::Predict().

Referenced by BicountEllipse_dCP(), ana::CountingExperiment::ChiSq(), ana::DataMCComparison(), demo_nueNumuSysts(), DrawBins(), DrawPulls(), fill_col(), joint_fit_2017_make_fc_slice(), joint_fit_2017_make_fc_surf(), MakeFakeData(), ana::PlotWithAreaSystErrorBand(), ana::PlotWithSystErrorBand(), ana::PlotWithSystErrorBand_Quant(), ana::SingleSampleExperiment::PredHistIncCosmics(), and ana::PredictionScaleComp::~PredictionScaleComp().

51  {
52  assert(syst.IsNominal() && "This Prediction doesn't support PredictSyst(). Did you just mean Predict()?");
53 
54  // Default implementation: no treatment of systematics
55  return Predict(calc);
56  }
virtual Spectrum Predict(osc::IOscCalc *calc) const =0
assert(nhit_max >=nhit_nbins)
Spectrum ana::IPrediction::PredictSyst ( osc::IOscCalcStan calc,
const SystShifts syst 
) const
virtualinherited

Reimplemented in ana::PredictionInterp, and ana::PredictionAddRock.

Definition at line 59 of file IPrediction.cxx.

References ana::assert(), ana::SystShifts::IsNominal(), and ana::IPrediction::Predict().

61  {
62  assert(syst.IsNominal() && "This Prediction doesn't support PredictSyst(). Did you just mean Predict()?");
63 
64  // Default implementation: no treatment of systematics
65  return Predict(calc);
66  }
virtual Spectrum Predict(osc::IOscCalc *calc) const =0
assert(nhit_max >=nhit_nbins)
Spectrum ana::IPrediction::PredictUnoscillated ( ) const
virtualinherited

Reimplemented in ana::PredictionSterile.

Definition at line 33 of file IPrediction.cxx.

References noosc, and ana::IPrediction::Predict().

Referenced by cc(), demo5(), demo::DrawUpDownRatioCanvas(), efficiency(), efficiencySA(), plot_nd_data_mc(), template_basic(), and test_ana().

34  {
35  // Default implementation
37  return Predict(&noosc);
38  }
Pass neutrinos through unchanged.
Definition: IOscCalc.h:45
virtual Spectrum Predict(osc::IOscCalc *calc) const =0
osc::NoOscillations noosc
Definition: NueSystFuncs.h:44
void ana::FDPredictionSterile::SaveTo ( TDirectory *  dir,
const std::string name 
) const
overridevirtual

Reimplemented from ana::IPrediction.

Definition at line 176 of file FDPredictionSterile.cxx.

References dir, fFDExtrap, ana::FDExtrap::SaveTo(), and tmp.

Referenced by MakeNus18CovarSim().

177  {
178  TDirectory* tmp = gDirectory;
179 
180  dir = dir->mkdir(name.c_str()); // switch to subdir
181  dir->cd();
182 
183  TObjString("FDPredictionSterile").Write("type");
184  fFDExtrap->SaveTo(dir, "fdextrap");
185 
186  dir->Write();
187  delete dir;
188 
189  tmp->cd();
190  }
const XML_Char * name
Definition: expat.h:151
Float_t tmp
Definition: plot.C:36
virtual void SaveTo(TDirectory *dir, const std::string &name) const
Definition: FDExtrap.cxx:196
TDirectory * dir
Definition: macro.C:5

Member Data Documentation

FDExtrap* ana::FDPredictionSterile::fFDExtrap
protected

Definition at line 41 of file FDPredictionSterile.h.

Referenced by Predict(), PredictComponent(), SaveTo(), and ~FDPredictionSterile().


The documentation for this class was generated from the following files: