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-12-03/NuXAna/Prediction/NDPredictionSterile.h"

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

Public Member Functions

 NDPredictionSterile (NDExtrap *extrap)
 
virtual ~NDPredictionSterile ()
 
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
 
 NDPredictionSterile ()=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< NDPredictionSterileLoadFrom (TDirectory *dir, const std::string &name)
 

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 24 of file NDPredictionSterile.cxx.

25  : fNDExtrap(extrap)
26  {
27  }
ana::NDPredictionSterile::~NDPredictionSterile ( )
virtual

Definition at line 30 of file NDPredictionSterile.cxx.

References fNDExtrap.

31  {
32  if (fNDExtrap) delete fNDExtrap;
33  }
ana::NDPredictionSterile::NDPredictionSterile ( )
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::NDPredictionSterile::FakeData ( osc::IOscCalc calc,
double  POT 
)
virtual

Definition at line 183 of file NDPredictionSterile.cxx.

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

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

Definition at line 206 of file NDPredictionSterile.cxx.

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

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

207  {
208  dir = dir->GetDirectory(name.c_str()); // switch to subdir
209  assert(dir);
210 
211  NDExtrap* extrap = ana::LoadFrom<NDExtrap>(dir, "ndextrap").release();
212 
213  delete dir;
214 
215  return std::unique_ptr<NDPredictionSterile>(new NDPredictionSterile(extrap));
216  }
const XML_Char * name
Definition: expat.h:151
TDirectory * dir
Definition: macro.C:5
assert(nhit_max >=nhit_nbins)
Spectrum ana::NDPredictionSterile::Predict ( osc::IOscCalc calc) const
overridevirtual

Implements ana::IPrediction.

Definition at line 36 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().

37  {
38 
40  if (noosc) {
41  Spectrum ret = fNDExtrap->NueCCSurvComponent().Oscillated(noosc, +12, +12);
42  ret += fNDExtrap->AntiNueCCSurvComponent() .Oscillated(noosc, -12, -12);
43  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->NumuCCAppComponent()).Oscillated(noosc, +12, +14);
44  if (temp.POT() > 0) ret += temp;
45  temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNumuCCAppComponent()).Oscillated(noosc, -12, -14);
46  if (temp.POT() > 0) ret += temp;
47  ret += fNDExtrap->NumuCCSurvComponent() .Oscillated(noosc, +14, +14);
48  ret += fNDExtrap->AntiNumuCCSurvComponent() .Oscillated(noosc, -14, -14);
49  temp = ((NDOscillatableSpectrum)fNDExtrap->NueCCAppComponent()).Oscillated(noosc, +14, +12);
50  if (temp.POT() > 0) ret += temp;
51  temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNueCCAppComponent()).Oscillated(noosc, -14, -12);
52  if (temp.POT() > 0) ret += temp;
53 
54  ret += fNDExtrap->NueNCComponent() .Oscillated(noosc, +12, 0);
55  ret += fNDExtrap->NumuNCComponent() .Oscillated(noosc, +14, 0);
56  ret += fNDExtrap->AntiNueNCComponent() .Oscillated(noosc, -12, 0);
57  ret += fNDExtrap->AntiNumuNCComponent().Oscillated(noosc, -14, 0);
58 
59  return ret;
60  }
61 
63 
64  Spectrum ret = fNDExtrap->NueCCSurvComponent().Oscillated(scalc, +12, +12);
65  ret += fNDExtrap->AntiNueCCSurvComponent() .Oscillated(scalc, -12, -12);
66 
67  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->NumuCCAppComponent()).Oscillated(scalc, +12, +14);
68  if (temp.POT() > 0) ret += temp;
69 
70  temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNumuCCAppComponent()).Oscillated(scalc, -12, -14);
71  if (temp.POT() > 0) ret += temp;
72 
73  ret += fNDExtrap->NumuCCSurvComponent() .Oscillated(scalc, +14, +14);
74  ret += fNDExtrap->AntiNumuCCSurvComponent() .Oscillated(scalc, -14, -14);
75 
76  temp = ((NDOscillatableSpectrum)fNDExtrap->NueCCAppComponent()).Oscillated(scalc, +14, +12);
77  if (temp.POT() > 0) ret += temp;
78 
79  temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNueCCAppComponent()).Oscillated(scalc, -14, -12);
80  if (temp.POT() > 0) ret += temp;
81 
82  ret += fNDExtrap->NueNCComponent() .Oscillated(scalc, +12, 0);
83  ret += fNDExtrap->NumuNCComponent() .Oscillated(scalc, +14, 0);
84  ret += fNDExtrap->AntiNueNCComponent() .Oscillated(scalc, -12, 0);
85  ret += fNDExtrap->AntiNumuNCComponent().Oscillated(scalc, -14, 0);
86 
87  return ret;
88  }
Pass neutrinos through unchanged.
Definition: IOscCalc.h:45
NDOscillatableSpectrum AntiNueCCSurvComponent()
Definition: NDExtrap.cxx:80
NDOscillatableSpectrum NueCCSurvComponent()
Definition: NDExtrap.cxx:74
Adapt the PMNS_Sterile calculator to standard interface.
NDOscillatableSpectrum AntiNumuNCComponent()
Definition: NDExtrap.cxx:140
osc::OscCalcDumb calc
Spectrum Oscillated(osc::IOscCalc *calc, int from, int to) const
osc::NoOscillations noosc
Definition: NueSystFuncs.h:44
std::vector< float > Spectrum
Definition: Constants.h:610
NDOscillatableSpectrum NueCCAppComponent()
Definition: NDExtrap.cxx:110
NDOscillatableSpectrum AntiNueNCComponent()
Definition: NDExtrap.cxx:134
NDOscillatableSpectrum AntiNumuCCSurvComponent()
Definition: NDExtrap.cxx:104
const OscCalcSterile * DowncastToSterile(const IOscCalc *calc)
NDOscillatableSpectrum AntiNueCCAppComponent()
Definition: NDExtrap.cxx:116
NDOscillatableSpectrum NumuCCAppComponent()
Definition: NDExtrap.cxx:86
NDOscillatableSpectrum AntiNumuCCAppComponent()
Definition: NDExtrap.cxx:92
NDOscillatableSpectrum NumuCCSurvComponent()
Definition: NDExtrap.cxx:98
NDOscillatableSpectrum NueNCComponent()
Definition: NDExtrap.cxx:122
NDOscillatableSpectrum NumuNCComponent()
Definition: NDExtrap.cxx:128
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::NDPredictionSterile::PredictComponent ( osc::IOscCalc calc,
Flavors::Flavors_t  flav,
Current::Current_t  curr,
Sign::Sign_t  sign 
) const
overridevirtual

Implements ana::IPrediction.

Definition at line 91 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.

95  {
96 
98  ret.Clear();
99 
101  if (noosc) {
102  if(curr & Current::kCC){
103  if(flav & Flavors::kNuEToNuE && sign & Sign::kNu) ret += fNDExtrap->NueCCSurvComponent() .Oscillated(noosc, +12, +12);
104  if(flav & Flavors::kNuEToNuE && sign & Sign::kAntiNu) ret += fNDExtrap->AntiNueCCSurvComponent() .Oscillated(noosc, -12, -12);
105 
106  if(flav & Flavors::kNuEToNuMu && sign & Sign::kNu) {
107  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->NumuCCAppComponent()).Oscillated(noosc, +12, +14);
108  if (temp.POT() > 0) ret += temp;
109  }
110  if(flav & Flavors::kNuEToNuMu && sign & Sign::kAntiNu) {
111  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNumuCCAppComponent()).Oscillated(noosc, -12, -14);
112  if (temp.POT() > 0) ret += temp;
113  }
114 
115  if(flav & Flavors::kNuMuToNuE && sign & Sign::kNu) {
116  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->NueCCAppComponent()).Oscillated(noosc, +14, +12);
117  if (temp.POT() > 0) ret += temp;
118  }
119  if(flav & Flavors::kNuMuToNuE && sign & Sign::kAntiNu) {
120  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNueCCAppComponent()).Oscillated(noosc, -14, -12);
121  if (temp.POT() > 0) ret += temp;
122  }
123 
124  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kNu) ret += fNDExtrap->NumuCCSurvComponent() .Oscillated(noosc, +14, +14);
125  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kAntiNu) ret += fNDExtrap->AntiNumuCCSurvComponent().Oscillated(noosc, -14, -14);
126  }
127 
128  if(curr & Current::kNC) {
129  ret += fNDExtrap->NueNCComponent() .Oscillated(noosc, +12, 0);
130  ret += fNDExtrap->AntiNueNCComponent() .Oscillated(noosc, -12, 0);
131  ret += fNDExtrap->NumuNCComponent() .Oscillated(noosc, +14, 0);
132  ret += fNDExtrap->AntiNumuNCComponent().Oscillated(noosc, -14, 0);
133  }
134  return ret;
135  }
136 
138  if(scalc) {
139  if(curr & Current::kCC){
140 
141  if(flav & Flavors::kNuEToNuE && sign & Sign::kNu) ret += fNDExtrap->NueCCSurvComponent() .Oscillated(scalc, +12, +12);
142  if(flav & Flavors::kNuEToNuE && sign & Sign::kAntiNu) ret += fNDExtrap->AntiNueCCSurvComponent() .Oscillated(scalc, -12, -12);
143 
144  if(flav & Flavors::kNuEToNuMu && sign & Sign::kNu) {
145  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->NumuCCAppComponent()).Oscillated(scalc, +12, +14);
146  if (temp.POT() > 0) ret += temp;
147  }
148  if(flav & Flavors::kNuEToNuMu && sign & Sign::kAntiNu) {
149  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNumuCCAppComponent()).Oscillated(scalc, -12, -14);
150  if (temp.POT() > 0) ret += temp;
151  }
152 
153  if(flav & Flavors::kNuMuToNuE && sign & Sign::kNu) {
154  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->NueCCAppComponent()).Oscillated(scalc, +14, +12);
155  if (temp.POT() > 0) ret += temp;
156  }
157  if(flav & Flavors::kNuMuToNuE && sign & Sign::kAntiNu) {
158  Spectrum temp = ((NDOscillatableSpectrum)fNDExtrap->AntiNueCCAppComponent()).Oscillated(scalc, -14, -12);
159  if (temp.POT() > 0) ret += temp;
160  }
161 
162  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kNu) ret += fNDExtrap->NumuCCSurvComponent() .Oscillated(scalc, +14, +14);
163  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kAntiNu) ret += fNDExtrap->AntiNumuCCSurvComponent() .Oscillated(scalc, -14, -14);
164  }
165 
166  if(curr & Current::kNC) {
167 
168  if(flav & Flavors::kNuEToNuE && sign & Sign::kNu) ret += fNDExtrap->NueNCComponent() .Oscillated(scalc, +12, 0);
169  if(flav & Flavors::kNuEToNuE && sign & Sign::kAntiNu) ret += fNDExtrap->AntiNueNCComponent() .Oscillated(scalc, -12, 0);
170 
171  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kNu) ret += fNDExtrap->NumuNCComponent() .Oscillated(scalc, +14, 0);
172  if(flav & Flavors::kNuMuToNuMu && sign & Sign::kAntiNu) ret += fNDExtrap->AntiNumuNCComponent().Oscillated(scalc, -14, 0);
173  }
174  }
175  else {
176  std::cerr << "NDPredExtrap: Input calculator was not of type OscCalcSterile." << std::endl;
177  }
178 
179  return ret;
180  }
Pass neutrinos through unchanged.
Definition: IOscCalc.h:45
NDOscillatableSpectrum AntiNueCCSurvComponent()
Definition: NDExtrap.cxx:80
NDOscillatableSpectrum NueCCSurvComponent()
Definition: NDExtrap.cxx:74
Antineutrinos-only.
Definition: IPrediction.h:50
(&#39; appearance&#39;)
Definition: IPrediction.h:18
(&#39;beam &#39;)
Definition: IPrediction.h:15
Adapt the PMNS_Sterile calculator to standard interface.
OStream cerr
Definition: OStream.cxx:7
void Clear()
Definition: Spectrum.cxx:361
NDOscillatableSpectrum AntiNumuNCComponent()
Definition: NDExtrap.cxx:140
Spectrum NCComponent()
Definition: NDExtrap.cxx:68
osc::OscCalcDumb calc
Spectrum Oscillated(osc::IOscCalc *calc, int from, int to) const
Charged-current interactions.
Definition: IPrediction.h:39
osc::NoOscillations noosc
Definition: NueSystFuncs.h:44
std::vector< float > Spectrum
Definition: Constants.h:610
NDOscillatableSpectrum NueCCAppComponent()
Definition: NDExtrap.cxx:110
NDOscillatableSpectrum AntiNueNCComponent()
Definition: NDExtrap.cxx:134
NDOscillatableSpectrum AntiNumuCCSurvComponent()
Definition: NDExtrap.cxx:104
Neutrinos-only.
Definition: IPrediction.h:49
const OscCalcSterile * DowncastToSterile(const IOscCalc *calc)
(&#39; survival&#39;)
Definition: IPrediction.h:19
NDOscillatableSpectrum AntiNueCCAppComponent()
Definition: NDExtrap.cxx:116
Neutral-current interactions.
Definition: IPrediction.h:40
NDOscillatableSpectrum NumuCCAppComponent()
Definition: NDExtrap.cxx:86
NDOscillatableSpectrum AntiNumuCCAppComponent()
Definition: NDExtrap.cxx:92
NDOscillatableSpectrum NumuCCSurvComponent()
Definition: NDExtrap.cxx:98
(&#39; appearance&#39;)
Definition: IPrediction.h:16
NDOscillatableSpectrum NueNCComponent()
Definition: NDExtrap.cxx:122
NDOscillatableSpectrum NumuNCComponent()
Definition: NDExtrap.cxx:128
def sign(x)
Definition: canMan.py:197
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::NDPredictionSterile::SaveTo ( TDirectory *  dir,
const std::string name 
) const
overridevirtual

Reimplemented from ana::IPrediction.

Definition at line 189 of file NDPredictionSterile.cxx.

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

Referenced by MakeNus18CovarSim().

190  {
191  TDirectory* tmp = gDirectory;
192 
193  dir = dir->mkdir(name.c_str()); // switch to subdir
194  dir->cd();
195 
196  TObjString("NDPredictionSterile").Write("type");
197  fNDExtrap->SaveTo(dir, "ndextrap");
198 
199  dir->Write();
200  delete dir;
201 
202  tmp->cd();
203  }
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: NDExtrap.cxx:172
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: