![]() |
MaCh3
2.4.2
Reference Guide
|
Interface between NuOscillator and MaCh3, meant to compute oscillation weights for events/bin. More...
#include <Samples/OscillationHandler.h>
Public Member Functions | |
| OscillationHandler (const std::string &ConfigFile, bool EqualBinningPerChannel, std::vector< const double * > OscParams_, const int SubChannels) | |
| Constructor. More... | |
| virtual | ~OscillationHandler () |
| Destructor. More... | |
| void | AddSample (const std::string &NuOscillatorConfigFile, const int SubChannels) |
| Add different oscillator for sample. More... | |
| bool | isEqualBinningPerOscChannel () |
| check if same binning is used for multiple oscillation channels More... | |
| void | Evaluate () |
| DB Evaluate oscillation weights for each defined event/bin. More... | |
| const M3::float_t * | GetNuOscillatorPointers (const int Sample, const int Channel, const int InitFlav, const int FinalFlav, const FLOAT_T TrueEnu, const FLOAT_T TrueCosZenith=-999) |
| Get pointer to oscillation weight. More... | |
| void | SetOscillatorBinning (const int Sample, const int Channel, const std::vector< M3::float_t > &EnergyArray, const std::vector< M3::float_t > &CosineZArray) |
| Setup binning, arrays correspond to events and their energy bins. More... | |
| unsigned int | GetOscParamsSize () const |
| return size of oscillation parameter pointer vector More... | |
Private Attributes | |
| bool | EqualBinningPerOscChannel |
| flag used to define whether all oscillation channels have a probability calculated using the same binning More... | |
| std::vector< std::vector< std::unique_ptr< OscillatorBase > > > | NuOscProbCalcers |
| DB Variables required for oscillation. More... | |
| std::vector< const double * > | OscParams |
| pointer to osc params, since not all params affect every sample, we perform some operations before hand for speed More... | |
Interface between NuOscillator and MaCh3, meant to compute oscillation weights for events/bin.
Definition at line 11 of file OscillationHandler.h.
| _MaCh3_Safe_Include_Start_ _MaCh3_Safe_Include_End_ OscillationHandler::OscillationHandler | ( | const std::string & | ConfigFile, |
| bool | EqualBinningPerChannel, | ||
| std::vector< const double * > | OscParams_, | ||
| const int | SubChannels | ||
| ) |
Constructor.
| ConfigFile | name/path to NuOscillator Config |
| EqualBinningPerChannel | whether to use same binning per each oscillation channel |
| OscParams_ | Pointers to values of oscillation parameters |
| SubChannels | Number of oscillation channels |
EqualBinningPerChannel is true then argument SubChannels makes no difference Definition at line 9 of file OscillationHandler.cpp.
|
virtual |
Destructor.
Definition at line 52 of file OscillationHandler.cpp.
| void OscillationHandler::AddSample | ( | const std::string & | NuOscillatorConfigFile, |
| const int | SubChannels | ||
| ) |
Add different oscillator for sample.
Definition at line 57 of file OscillationHandler.cpp.
| void OscillationHandler::Evaluate | ( | ) |
DB Evaluate oscillation weights for each defined event/bin.
Definition at line 81 of file OscillationHandler.cpp.
| const M3::float_t * OscillationHandler::GetNuOscillatorPointers | ( | const int | Sample, |
| const int | Channel, | ||
| const int | InitFlav, | ||
| const int | FinalFlav, | ||
| const FLOAT_T | TrueEnu, | ||
| const FLOAT_T | TrueCosZenith = -999 |
||
| ) |
Get pointer to oscillation weight.
Definition at line 104 of file OscillationHandler.cpp.
|
inline |
return size of oscillation parameter pointer vector
Definition at line 41 of file OscillationHandler.h.
|
inline |
check if same binning is used for multiple oscillation channels
Definition at line 29 of file OscillationHandler.h.
| void OscillationHandler::SetOscillatorBinning | ( | const int | Sample, |
| const int | Channel, | ||
| const std::vector< M3::float_t > & | EnergyArray, | ||
| const std::vector< M3::float_t > & | CosineZArray | ||
| ) |
Setup binning, arrays correspond to events and their energy bins.
Definition at line 123 of file OscillationHandler.cpp.
|
private |
flag used to define whether all oscillation channels have a probability calculated using the same binning
Definition at line 44 of file OscillationHandler.h.
|
private |
DB Variables required for oscillation.
Definition at line 47 of file OscillationHandler.h.
|
private |
pointer to osc params, since not all params affect every sample, we perform some operations before hand for speed
Definition at line 50 of file OscillationHandler.h.