1#ifndef __OSCILLATOR_SUBSAMPLING_BASE_H__
2#define __OSCILLATOR_SUBSAMPLING_BASE_H__
float FLOAT_T
Definition OscillatorConstants.h:16
#define DUMMYVAL
Definition OscillatorConstants.h:4
Oscillation calculation (binned, unbinned, etc.) implementation agnostic base class.
Definition OscillatorBase.h:20
SubSampling Oscillation calculation implementation class.
Definition OscillatorSubSampling.h:16
std::vector< FLOAT_T > FineEnergyAxisBinEdges
A vector of Energy axis fine bin edges.
Definition OscillatorSubSampling.h:206
std::vector< FLOAT_T > FineCosineZAxisBinEdges
A vector of CosineZ axis fine bin edges.
Definition OscillatorSubSampling.h:216
std::vector< FLOAT_T > CoarseEnergyAxisBinEdges
A vector of Energy axis coarse bin edges.
Definition OscillatorSubSampling.h:201
std::string CoarseEnergyAxisHistName
The name of the histogram which contains the Energy axis coarse binning.
Definition OscillatorSubSampling.h:181
std::vector< int > NeutrinoTypes
Vector of indices for the neutrino types.
Definition OscillatorSubSampling.h:163
const FLOAT_T * ReturnWeightPointer(int InitNuFlav, int FinalNuFlav, FLOAT_T EnergyVal, FLOAT_T CosineZVal=DUMMYVAL) final
Return a pointer to the oscillation probability for the requested event attributes.
Definition OscillatorSubSampling.cpp:163
std::string FileName
The FileName which the binning is read from.
Definition OscillatorSubSampling.h:176
std::string FineCosineZAxisHistName
The name of the histogram which contains the CosineZ axis fine binning.
Definition OscillatorSubSampling.h:196
std::vector< FLOAT_T > CoarseCosineZAxisBinEdges
A vector of CosineZ axis coarse bin edges.
Definition OscillatorSubSampling.h:211
virtual ~OscillatorSubSampling()
Destructor.
Definition OscillatorSubSampling.cpp:75
size_t nNeutrinoTypes
Number of neutrino types.
Definition OscillatorSubSampling.h:168
OscillatorSubSampling(std::string ConfigName_)
Default constructor.
Definition OscillatorSubSampling.cpp:8
void Initialise()
Initialise Oscillator instance: read energies and cosineZs, set them in Calcer.
Definition OscillatorSubSampling.cpp:16
size_t nCoarseCosineZBins
Number of Coarse CosineZ Bins.
Definition OscillatorSubSampling.h:133
size_t nFineCosineZBins
Number of Fine CosineZ Bins.
Definition OscillatorSubSampling.h:143
std::vector< FLOAT_T > ReturnBinEdgesForPlotting(bool ReturnEnergy) final
Return a vector of bin edges used for oscillation probability plotting.
Definition OscillatorSubSampling.cpp:219
std::string CoarseCosineZAxisHistName
The name of the histogram which contains the CosineZ axis coarse binning.
Definition OscillatorSubSampling.h:191
std::vector< FLOAT_T > FineCosineZAxisBinCenters
A vector of CosineZ axis fine bin centers.
Definition OscillatorSubSampling.h:226
void PostCalculateProbabilities() final
Calculated coarse bin probabilities, defined as the average over the fine bin probabilities inside a ...
Definition OscillatorSubSampling.cpp:199
std::string FineEnergyAxisHistName
The name of the histogram which contains the Energy axis fine binning.
Definition OscillatorSubSampling.h:186
std::vector< FLOAT_T > AveragedOscillationProbabilities
Vector holding averaged Probabilities [length = nBins].
Definition OscillatorSubSampling.h:118
std::vector< FLOAT_T > FineEnergyAxisBinCenters
A vector of Energy axis fine bin centers.
Definition OscillatorSubSampling.h:221
void SetupOscillatorImplementation() final
Setup the oscillator.
Definition OscillatorSubSampling.cpp:78
size_t nOscillationChannels
Number of oscillation channels.
Definition OscillatorSubSampling.h:158
size_t nCoarseEnergyBins
Number of Coarse Energy Bins.
Definition OscillatorSubSampling.h:128
size_t nFineEnergyBins
Number of Fine Energy Bins.
Definition OscillatorSubSampling.h:138
size_t TotalCoarseBins
Number of Total Coarse Bins.
Definition OscillatorSubSampling.h:148
std::vector< std::vector< const FLOAT_T * > > OscillationProbabilitiesToAverage
Vector holding the pointers to the fine oscillation probabilities to average across [length = nBins][...
Definition OscillatorSubSampling.h:123
int FindBinIndexFromEdges(FLOAT_T Val, std::vector< FLOAT_T > BinEdges)
Return the index of the bin in which a given value would be.
Definition OscillatorSubSampling.cpp:143
std::vector< NuOscillator::OscillationChannel > OscillationChannels
Oscillation channels in NuOscillator::OscillationChannel format.
Definition OscillatorSubSampling.h:153