HighLAND
psyche
psycheSystematics
v3r12
src
FluxWeightSystematics.hxx
1
#ifndef FluxWeightSystematics_h
2
#define FluxWeightSystematics_h
3
4
#include "EventWeightBase.hxx"
5
#include "BinnedParams.hxx"
6
#include "FluxWeighting.hxx"
7
8
/// This is a normalization systematic. It takes into account the uncertainty on the neutrino flux
9
10
class
FluxWeightSystematics
:
public
EventWeightBase
,
public
BinnedParams
{
11
public
:
12
13
FluxWeightSystematics
(
const
std::string& name);
14
virtual
~
FluxWeightSystematics
() {}
15
16
/// Apply this systematic
17
using
EventWeightBase::ComputeWeight
;
18
Weight_h
ComputeWeight
(
const
ToyExperiment
& toy,
const
AnaEventC
& event,
const
ToyBoxB
& box);
19
virtual
bool
IsCorrectRunPeriod(
int
runPeriod)=0;
///Bit of a hack right now; hopefully future will have the beam polarity as a variable
20
21
protected
:
22
/// Access to the flux weighting.
23
FluxWeighting
*
_flux
;
24
25
26
};
27
28
//We don't have 3D systematics, so fake it with two 2D class; also allows neutrino or anti-neutrino
29
//only analysis
30
31
class
FluxWeightSystematicsNeutrino
:
public
FluxWeightSystematics
{
32
public
:
33
34
FluxWeightSystematicsNeutrino
();
35
virtual
~
FluxWeightSystematicsNeutrino
() {}
36
bool
IsCorrectRunPeriod(
int
runPeriod);
37
38
};
39
40
class
FluxWeightSystematicsAntiNeutrino
:
public
FluxWeightSystematics
{
41
public
:
42
43
FluxWeightSystematicsAntiNeutrino
();
44
virtual
~
FluxWeightSystematicsAntiNeutrino
() {}
45
bool
IsCorrectRunPeriod(
int
runPeriod);
46
47
48
};
49
50
51
52
#endif
ToyBoxB
Definition:
ToyBoxB.hxx:13
FluxWeightSystematicsNeutrino
Definition:
FluxWeightSystematics.hxx:31
AnaEventC
Definition:
CoreDataClasses.hxx:226
FluxWeightSystematics::_flux
FluxWeighting * _flux
Bit of a hack right now; hopefully future will have the beam polarity as a variable.
Definition:
FluxWeightSystematics.hxx:23
WeightType
Definition:
WeightType.hxx:6
EventWeightBase::ComputeWeight
virtual Weight_h ComputeWeight(const ToyExperiment &toy, const AnaEventC &event, const ToyBoxB &box, const SelectionBase &sel)
This is now the actual method called by SystematicManager, which allows further selection tunning of ...
Definition:
EventWeightBase.hxx:35
EventWeightBase
Definition:
EventWeightBase.hxx:12
ToyExperiment
Definition:
ToyExperiment.hxx:14
FluxWeightSystematics
This is a normalization systematic. It takes into account the uncertainty on the neutrino flux...
Definition:
FluxWeightSystematics.hxx:10
FluxWeightSystematics::ComputeWeight
Weight_h ComputeWeight(const ToyExperiment &toy, const AnaEventC &event, const ToyBoxB &box)
Definition:
FluxWeightSystematics.cxx:20
FluxWeighting
Definition:
FluxWeighting.hxx:36
FluxWeightSystematicsAntiNeutrino
Definition:
FluxWeightSystematics.hxx:40
BinnedParams
Definition:
BinnedParams.hxx:250
Generated by
1.8.13