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

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

#include "/cvmfs/nova-development.opensciencegrid.org/novasoft/releases/N20-02-16/CAFAna/Prediction/NDPredictionSterile.h"

Inheritance diagram for ana::NDPredictionSterile:
ana::IPrediction

Public Member Functions

 NDPredictionSterile (NDExtrap *extrap)
 
virtual ~NDPredictionSterile ()
 
virtual Spectrum Predict (osc::IOscCalculator *calc) const override
 
virtual Spectrum PredictComponent (osc::IOscCalculator *calc, Flavors::Flavors_t flav, Current::Current_t curr, Sign::Sign_t sign) const override
 
virtual Spectrum FakeData (osc::IOscCalculator *calc, double POT)
 
virtual void SaveTo (TDirectory *dir) const override
 
 NDPredictionSterile ()=delete
 
virtual Spectrum PredictUnoscillated () const
 
virtual SpectrumStan Predict (osc::IOscCalculatorStan *calc) const
 
virtual Spectrum PredictSyst (osc::IOscCalculator *calc, const SystShifts &syst) const
 
virtual SpectrumStan PredictSyst (osc::IOscCalculatorStan *calc, const SystShifts &syst) const
 
virtual SpectrumStan PredictComponent (osc::IOscCalculatorStan *calc, Flavors::Flavors_t flav, Current::Current_t curr, Sign::Sign_t sign) const
 
virtual Spectrum PredictComponentSyst (osc::IOscCalculator *calc, const SystShifts &syst, Flavors::Flavors_t flav, Current::Current_t curr, Sign::Sign_t sign) const
 
virtual SpectrumStan PredictComponentSyst (osc::IOscCalculatorStan *calc, const SystShifts &syst, Flavors::Flavors_t flav, Current::Current_t curr, Sign::Sign_t sign) const
 
virtual void Derivative (osc::IOscCalculator *calc, const SystShifts &shift, double pot, std::unordered_map< const ISyst *, std::vector< double >> &dchi) 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< NDPredictionSterileLoadFrom (TDirectory *dir)
 

Protected Attributes

NDExtrapfNDExtrap
 

Detailed Description

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

Definition at line 18 of file NDPredictionSterile.h.

Constructor & Destructor Documentation

ana::NDPredictionSterile::NDPredictionSterile ( NDExtrap extrap)

Definition at line 21 of file NDPredictionSterile.cxx.

22  : fNDExtrap(extrap)
23  {
24  }
ana::NDPredictionSterile::~NDPredictionSterile ( )
virtual

Definition at line 27 of file NDPredictionSterile.cxx.

References fNDExtrap.

28  {
29  if (fNDExtrap) delete fNDExtrap;
30  }
ana::NDPredictionSterile::NDPredictionSterile ( )
delete

Referenced by LoadFrom().

Member Function Documentation

virtual OscillatableSpectrum ana::IPrediction::ComponentCC ( int  from,
int  to 
) const
inlinevirtualinherited
virtual Spectrum ana::IPrediction::ComponentNC ( ) const
inlinevirtualinherited

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

Definition at line 111 of file IPrediction.h.

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

Referenced by ana::PredictionAddRock::ComponentNC(), and ana::PredictionExtendToPeripheral::PredictionExtendToPeripheral().

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

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

Definition at line 113 of file IPrediction.h.

References om::cout, dir, allTimeWatchdog::endl, and ana::SaveTo().

Referenced by ana::PredictionAddRock::ComponentNCAnti(), and ana::PredictionExtendToPeripheral::PredictionExtendToPeripheral().

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

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

Definition at line 109 of file IPrediction.h.

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

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

110  {std::cout << "WARNING! ComponentNCTotal is unimplemented in IPrediction" << std::endl; abort();}
OStream cout
Definition: OStream.cxx:6
virtual void ana::IPrediction::Derivative ( osc::IOscCalculator calc,
const SystShifts shift,
double  pot,
std::unordered_map< const ISyst *, std::vector< double >> &  dchi 
) const
inlinevirtualinherited

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

Definition at line 92 of file IPrediction.h.

Referenced by ana::PredictionAddRock::Derivative(), and ana::SingleSampleExperiment::Derivative().

96  {
97  // Implementing this function is optional. If you don't implement it,
98  // this default implementation will be used, which signals to callers
99  // that your Prediction doesn't implement this feature.
100  dchi.clear();
101  }
Spectrum ana::NDPredictionSterile::FakeData ( osc::IOscCalculator calc,
double  POT 
)
virtual

Definition at line 180 of file NDPredictionSterile.cxx.

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

181  {
182  return Predict(calc).FakeData(POT);
183  }
virtual Spectrum Predict(osc::IOscCalculator *calc) const override
Spectrum FakeData(double pot) const
Fake data is a MC spectrum scaled to the POT expected in the data.
Definition: Spectrum.cxx:819
std::vector< double > POT
std::unique_ptr< NDPredictionSterile > ana::NDPredictionSterile::LoadFrom ( TDirectory *  dir)
static

Definition at line 196 of file NDPredictionSterile.cxx.

References NDPredictionSterile(), and runNovaSAM::release.

Referenced by ana::LoadFrom< IPrediction >(), ana::LoadMaps(), and LoadPrediction().

197  {
198  assert(dir->GetDirectory("ndextrap"));
199  NDExtrap* extrap = ana::LoadFrom<NDExtrap>(dir->GetDirectory("ndextrap")).release();
200  return std::unique_ptr<NDPredictionSterile>(new NDPredictionSterile(extrap));
201  }
TDirectory * dir
Definition: macro.C:5
Spectrum ana::NDPredictionSterile::Predict ( osc::IOscCalculator calc) const
overridevirtual

Implements ana::IPrediction.

Definition at line 33 of file NDPredictionSterile.cxx.

References ana::NDExtrap::AntiNueCCAppComponent(), ana::NDExtrap::AntiNueCCSurvComponent(), ana::NDExtrap::AntiNueNCComponent(), ana::NDExtrap::AntiNumuCCAppComponent(), ana::NDExtrap::AntiNumuCCSurvComponent(), ana::NDExtrap::AntiNumuNCComponent(), calc, osc::DowncastToSterile(), fNDExtrap, noosc, ana::NDExtrap::NueCCAppComponent(), ana::NDExtrap::NueCCSurvComponent(), ana::NDExtrap::NueNCComponent(), ana::NDExtrap::NumuCCAppComponent(), ana::NDExtrap::NumuCCSurvComponent(), ana::NDExtrap::NumuNCComponent(), ana::NDOscillatableSpectrum::Oscillated(), ana::Spectrum::POT(), runNovaSAM::ret, and APDHVSetting::temp.

Referenced by FakeData().

34  {
35 
37  if (noosc) {
38  Spectrum ret = fNDExtrap->NueCCSurvComponent().Oscillated(noosc, +12, +12);
39  ret += fNDExtrap->AntiNueCCSurvComponent() .Oscillated(noosc, -12, -12);
40  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->NumuCCAppComponent()).Oscillated(noosc, +12, +14);
41  if (temp.POT() > 0) ret += temp;
42  temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNumuCCAppComponent()).Oscillated(noosc, -12, -14);
43  if (temp.POT() > 0) ret += temp;
44  ret += fNDExtrap->NumuCCSurvComponent() .Oscillated(noosc, +14, +14);
45  ret += fNDExtrap->AntiNumuCCSurvComponent() .Oscillated(noosc, -14, -14);
46  temp = ((NDOscillatableSpectrum)fNDExtrap->NueCCAppComponent()).Oscillated(noosc, +14, +12);
47  if (temp.POT() > 0) ret += temp;
48  temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNueCCAppComponent()).Oscillated(noosc, -14, -12);
49  if (temp.POT() > 0) ret += temp;
50 
51  ret += fNDExtrap->NueNCComponent() .Oscillated(noosc, +12, 0);
52  ret += fNDExtrap->NumuNCComponent() .Oscillated(noosc, +14, 0);
53  ret += fNDExtrap->AntiNueNCComponent() .Oscillated(noosc, -12, 0);
54  ret += fNDExtrap->AntiNumuNCComponent().Oscillated(noosc, -14, 0);
55 
56  return ret;
57  }
58 
60 
61  Spectrum ret = fNDExtrap->NueCCSurvComponent().Oscillated(scalc, +12, +12);
62  ret += fNDExtrap->AntiNueCCSurvComponent() .Oscillated(scalc, -12, -12);
63 
64  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->NumuCCAppComponent()).Oscillated(scalc, +12, +14);
65  if (temp.POT() > 0) ret += temp;
66 
67  temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNumuCCAppComponent()).Oscillated(scalc, -12, -14);
68  if (temp.POT() > 0) ret += temp;
69 
70  ret += fNDExtrap->NumuCCSurvComponent() .Oscillated(scalc, +14, +14);
71  ret += fNDExtrap->AntiNumuCCSurvComponent() .Oscillated(scalc, -14, -14);
72 
73  temp = ((NDOscillatableSpectrum)fNDExtrap->NueCCAppComponent()).Oscillated(scalc, +14, +12);
74  if (temp.POT() > 0) ret += temp;
75 
76  temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNueCCAppComponent()).Oscillated(scalc, -14, -12);
77  if (temp.POT() > 0) ret += temp;
78 
79  ret += fNDExtrap->NueNCComponent() .Oscillated(scalc, +12, 0);
80  ret += fNDExtrap->NumuNCComponent() .Oscillated(scalc, +14, 0);
81  ret += fNDExtrap->AntiNueNCComponent() .Oscillated(scalc, -12, 0);
82  ret += fNDExtrap->AntiNumuNCComponent().Oscillated(scalc, -14, 0);
83 
84  return ret;
85  }
Pass neutrinos through unchanged.
NDOscillatableSpectrum AntiNueCCSurvComponent()
Definition: NDExtrap.cxx:78
osc::OscCalculatorDumb calc
NDOscillatableSpectrum NueCCSurvComponent()
Definition: NDExtrap.cxx:72
virtual Spectrum Oscillated(osc::IOscCalculator *calc, int from, int to) const
Adapt the PMNS_Sterile calculator to standard interface.
NDOscillatableSpectrum AntiNumuNCComponent()
Definition: NDExtrap.cxx:138
const OscCalculatorSterile * DowncastToSterile(const IOscCalculator *calc)
osc::NoOscillations noosc
Definition: NueSystFuncs.h:44
NDOscillatableSpectrum NueCCAppComponent()
Definition: NDExtrap.cxx:108
NDOscillatableSpectrum AntiNueNCComponent()
Definition: NDExtrap.cxx:132
NDOscillatableSpectrum AntiNumuCCSurvComponent()
Definition: NDExtrap.cxx:102
NDOscillatableSpectrum AntiNueCCAppComponent()
Definition: NDExtrap.cxx:114
NDOscillatableSpectrum NumuCCAppComponent()
Definition: NDExtrap.cxx:84
NDOscillatableSpectrum AntiNumuCCAppComponent()
Definition: NDExtrap.cxx:90
NDOscillatableSpectrum NumuCCSurvComponent()
Definition: NDExtrap.cxx:96
NDOscillatableSpectrum NueNCComponent()
Definition: NDExtrap.cxx:120
NDOscillatableSpectrum NumuNCComponent()
Definition: NDExtrap.cxx:126
SpectrumStan ana::IPrediction::Predict ( osc::IOscCalculatorStan calc) const
virtualinherited

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

Definition at line 92 of file IPrediction.cxx.

93  {
94  assert(0 && "This Prediction hasn't implemented a Stan-aware Predict()!");
95  }
Spectrum ana::NDPredictionSterile::PredictComponent ( osc::IOscCalculator calc,
Flavors::Flavors_t  flav,
Current::Current_t  curr,
Sign::Sign_t  sign 
) const
overridevirtual

Implements ana::IPrediction.

Definition at line 88 of file NDPredictionSterile.cxx.

References ana::NDExtrap::AntiNueCCAppComponent(), ana::NDExtrap::AntiNueCCSurvComponent(), ana::NDExtrap::AntiNueNCComponent(), ana::NDExtrap::AntiNumuCCAppComponent(), ana::NDExtrap::AntiNumuCCSurvComponent(), ana::NDExtrap::AntiNumuNCComponent(), calc, om::cerr, ana::Spectrum::Clear(), osc::DowncastToSterile(), allTimeWatchdog::endl, fNDExtrap, ana::Sign::kAntiNu, ana::Current::kCC, ana::Current::kNC, ana::Sign::kNu, ana::Flavors::kNuEToNuE, ana::Flavors::kNuEToNuMu, ana::Flavors::kNuMuToNuE, ana::Flavors::kNuMuToNuMu, ana::NDExtrap::NCComponent(), noosc, ana::NDExtrap::NueCCAppComponent(), ana::NDExtrap::NueCCSurvComponent(), ana::NDExtrap::NueNCComponent(), ana::NDExtrap::NumuCCAppComponent(), ana::NDExtrap::NumuCCSurvComponent(), ana::NDExtrap::NumuNCComponent(), ana::NDOscillatableSpectrum::Oscillated(), ana::Spectrum::POT(), runNovaSAM::ret, and APDHVSetting::temp.

92  {
93 
94  Spectrum ret = fNDExtrap->NCComponent();
95  ret.Clear();
96 
98  if (noosc) {
99  if(curr & Current::kCC){
100  if(flav & Flavors::kNuEToNuE && sign & Sign::kNu) ret += fNDExtrap->NueCCSurvComponent() .Oscillated(noosc, +12, +12);
101  if(flav & Flavors::kNuEToNuE && sign & Sign::kAntiNu) ret += fNDExtrap->AntiNueCCSurvComponent() .Oscillated(noosc, -12, -12);
102 
103  if(flav & Flavors::kNuEToNuMu && sign & Sign::kNu) {
104  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->NumuCCAppComponent()).Oscillated(noosc, +12, +14);
105  if (temp.POT() > 0) ret += temp;
106  }
107  if(flav & Flavors::kNuEToNuMu && sign & Sign::kAntiNu) {
108  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNumuCCAppComponent()).Oscillated(noosc, -12, -14);
109  if (temp.POT() > 0) ret += temp;
110  }
111 
112  if(flav & Flavors::kNuMuToNuE && sign & Sign::kNu) {
113  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->NueCCAppComponent()).Oscillated(noosc, +14, +12);
114  if (temp.POT() > 0) ret += temp;
115  }
116  if(flav & Flavors::kNuMuToNuE && sign & Sign::kAntiNu) {
117  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNueCCAppComponent()).Oscillated(noosc, -14, -12);
118  if (temp.POT() > 0) ret += temp;
119  }
120 
121  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kNu) ret += fNDExtrap->NumuCCSurvComponent() .Oscillated(noosc, +14, +14);
122  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kAntiNu) ret += fNDExtrap->AntiNumuCCSurvComponent().Oscillated(noosc, -14, -14);
123  }
124 
125  if(curr & Current::kNC) {
126  ret += fNDExtrap->NueNCComponent() .Oscillated(noosc, +12, 0);
127  ret += fNDExtrap->AntiNueNCComponent() .Oscillated(noosc, -12, 0);
128  ret += fNDExtrap->NumuNCComponent() .Oscillated(noosc, +14, 0);
129  ret += fNDExtrap->AntiNumuNCComponent().Oscillated(noosc, -14, 0);
130  }
131  return ret;
132  }
133 
135  if(scalc) {
136  if(curr & Current::kCC){
137 
138  if(flav & Flavors::kNuEToNuE && sign & Sign::kNu) ret += fNDExtrap->NueCCSurvComponent() .Oscillated(scalc, +12, +12);
139  if(flav & Flavors::kNuEToNuE && sign & Sign::kAntiNu) ret += fNDExtrap->AntiNueCCSurvComponent() .Oscillated(scalc, -12, -12);
140 
141  if(flav & Flavors::kNuEToNuMu && sign & Sign::kNu) {
142  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->NumuCCAppComponent()).Oscillated(scalc, +12, +14);
143  if (temp.POT() > 0) ret += temp;
144  }
145  if(flav & Flavors::kNuEToNuMu && sign & Sign::kAntiNu) {
146  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNumuCCAppComponent()).Oscillated(scalc, -12, -14);
147  if (temp.POT() > 0) ret += temp;
148  }
149 
150  if(flav & Flavors::kNuMuToNuE && sign & Sign::kNu) {
151  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->NueCCAppComponent()).Oscillated(scalc, +14, +12);
152  if (temp.POT() > 0) ret += temp;
153  }
154  if(flav & Flavors::kNuMuToNuE && sign & Sign::kAntiNu) {
155  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNueCCAppComponent()).Oscillated(scalc, -14, -12);
156  if (temp.POT() > 0) ret += temp;
157  }
158 
159  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kNu) ret += fNDExtrap->NumuCCSurvComponent() .Oscillated(scalc, +14, +14);
160  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kAntiNu) ret += fNDExtrap->AntiNumuCCSurvComponent() .Oscillated(scalc, -14, -14);
161  }
162 
163  if(curr & Current::kNC) {
164 
165  if(flav & Flavors::kNuEToNuE && sign & Sign::kNu) ret += fNDExtrap->NueNCComponent() .Oscillated(scalc, +12, 0);
166  if(flav & Flavors::kNuEToNuE && sign & Sign::kAntiNu) ret += fNDExtrap->AntiNueNCComponent() .Oscillated(scalc, -12, 0);
167 
168  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kNu) ret += fNDExtrap->NumuNCComponent() .Oscillated(scalc, +14, 0);
169  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kAntiNu) ret += fNDExtrap->AntiNumuNCComponent().Oscillated(scalc, -14, 0);
170  }
171  }
172  else {
173  std::cerr << "NDPredExtrap: Input calculator was not of type OscCalculatorSterile." << std::endl;
174  }
175 
176  return ret;
177  }
Pass neutrinos through unchanged.
NDOscillatableSpectrum AntiNueCCSurvComponent()
Definition: NDExtrap.cxx:78
osc::OscCalculatorDumb calc
NDOscillatableSpectrum NueCCSurvComponent()
Definition: NDExtrap.cxx:72
Antineutrinos-only.
Definition: IPrediction.h:50
virtual Spectrum Oscillated(osc::IOscCalculator *calc, int from, int to) const
Adapt the PMNS_Sterile calculator to standard interface.
(&#39; appearance&#39;)
Definition: IPrediction.h:18
(&#39;beam &#39;)
Definition: IPrediction.h:15
OStream cerr
Definition: OStream.cxx:7
void Clear()
Definition: Spectrum.cxx:878
NDOscillatableSpectrum AntiNumuNCComponent()
Definition: NDExtrap.cxx:138
Spectrum NCComponent()
Definition: NDExtrap.cxx:66
Charged-current interactions.
Definition: IPrediction.h:39
const OscCalculatorSterile * DowncastToSterile(const IOscCalculator *calc)
osc::NoOscillations noosc
Definition: NueSystFuncs.h:44
NDOscillatableSpectrum NueCCAppComponent()
Definition: NDExtrap.cxx:108
NDOscillatableSpectrum AntiNueNCComponent()
Definition: NDExtrap.cxx:132
NDOscillatableSpectrum AntiNumuCCSurvComponent()
Definition: NDExtrap.cxx:102
Neutrinos-only.
Definition: IPrediction.h:49
def sign(x)
Definition: canMan.py:204
(&#39; survival&#39;)
Definition: IPrediction.h:19
NDOscillatableSpectrum AntiNueCCAppComponent()
Definition: NDExtrap.cxx:114
Neutral-current interactions.
Definition: IPrediction.h:40
NDOscillatableSpectrum NumuCCAppComponent()
Definition: NDExtrap.cxx:84
NDOscillatableSpectrum AntiNumuCCAppComponent()
Definition: NDExtrap.cxx:90
NDOscillatableSpectrum NumuCCSurvComponent()
Definition: NDExtrap.cxx:96
(&#39; appearance&#39;)
Definition: IPrediction.h:16
NDOscillatableSpectrum NueNCComponent()
Definition: NDExtrap.cxx:120
NDOscillatableSpectrum NumuNCComponent()
Definition: NDExtrap.cxx:126
SpectrumStan ana::IPrediction::PredictComponent ( osc::IOscCalculatorStan calc,
Flavors::Flavors_t  flav,
Current::Current_t  curr,
Sign::Sign_t  sign 
) const
virtualinherited

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

Definition at line 119 of file IPrediction.cxx.

123  {
124  assert(0 && "This Prediction hasn't implemented a Stan-aware PredictComponent()!");
125  }
Spectrum ana::IPrediction::PredictComponentSyst ( osc::IOscCalculator calc,
const SystShifts syst,
Flavors::Flavors_t  flav,
Current::Current_t  curr,
Sign::Sign_t  sign 
) const
virtualinherited

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

Definition at line 128 of file IPrediction.cxx.

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

Referenced by PlotSysts(), ana::PredictionAddRock::PredictComponentSyst(), ana::PredictionCombinePeriods::PredictComponentSyst(), ana::PredictionNumuFAHadE::PredictComponentSyst(), systematics_extrap_comp_from_pred_interp(), systematics_summary_from_pred_interp(), and systematics_table_from_pred_interp().

133  {
134  assert(syst.IsNominal() && "This Prediction doesn't support PredictSyst(). Did you just mean Predict()?");
135 
136  // Default implementation: no treatment of systematics
137  return PredictComponent(calc, flav, curr, sign);
138  }
virtual Spectrum PredictComponent(osc::IOscCalculator *calc, Flavors::Flavors_t flav, Current::Current_t curr, Sign::Sign_t sign) const =0
def sign(x)
Definition: canMan.py:204
string syst
Definition: plotSysts.py:176
SpectrumStan ana::IPrediction::PredictComponentSyst ( osc::IOscCalculatorStan calc,
const SystShifts syst,
Flavors::Flavors_t  flav,
Current::Current_t  curr,
Sign::Sign_t  sign 
) const
virtualinherited

Reimplemented in ana::PredictionInterp.

Definition at line 142 of file IPrediction.cxx.

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

147  {
148  assert(syst.IsNominal() && "This Prediction doesn't support PredictSyst(). Did you just mean Predict()?");
149 
150  // Default implementation: no treatment of systematics
151  return PredictComponent(calc, flav, curr, sign);
152  }
virtual Spectrum PredictComponent(osc::IOscCalculator *calc, Flavors::Flavors_t flav, Current::Current_t curr, Sign::Sign_t sign) const =0
def sign(x)
Definition: canMan.py:204
string syst
Definition: plotSysts.py:176
Spectrum ana::IPrediction::PredictSyst ( osc::IOscCalculator calc,
const SystShifts syst 
) const
virtualinherited
SpectrumStan ana::IPrediction::PredictSyst ( osc::IOscCalculatorStan calc,
const SystShifts syst 
) const
virtualinherited

Reimplemented in ana::PredictionInterp.

Definition at line 108 of file IPrediction.cxx.

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

110  {
111  assert(syst.IsNominal() && "This Prediction doesn't support PredictSyst(). Did you just mean Predict()?");
112 
113  // Default implementation: no treatment of systematics
114  return Predict(calc);
115  }
virtual Spectrum Predict(osc::IOscCalculator *calc) const =0
string syst
Definition: plotSysts.py:176
Spectrum ana::IPrediction::PredictUnoscillated ( ) const
virtualinherited

Reimplemented in ana::PredictionSterile.

Definition at line 82 of file IPrediction.cxx.

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

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

83  {
84  // Default implementation
86  return Predict(&noosc);
87  }
Pass neutrinos through unchanged.
virtual Spectrum Predict(osc::IOscCalculator *calc) const =0
osc::NoOscillations noosc
Definition: NueSystFuncs.h:44
void ana::NDPredictionSterile::SaveTo ( TDirectory *  dir) const
overridevirtual

Reimplemented from ana::IPrediction.

Definition at line 186 of file NDPredictionSterile.cxx.

References fNDExtrap, ana::NDExtrap::SaveTo(), and tmp.

Referenced by MakeNus18CovarSim().

187  {
188  TDirectory* tmp = gDirectory;
189  dir->cd();
190  TObjString("NDPredictionSterile").Write("type");
191  fNDExtrap->SaveTo(dir->mkdir("ndextrap"));
192  tmp->cd();
193  }
Float_t tmp
Definition: plot.C:36
virtual void SaveTo(TDirectory *dir) const
Definition: NDExtrap.cxx:170
TDirectory * dir
Definition: macro.C:5

Member Data Documentation

NDExtrap* ana::NDPredictionSterile::fNDExtrap
protected

Definition at line 46 of file NDPredictionSterile.h.

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


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