![]() |
NuOscillator
|
Unbinned Oscillation calculation implementation class. More...
#include <OscillatorUnbinned.h>
Public Member Functions | |
| OscillatorUnbinned (std::string ConfigName_) | |
| Default constructor. | |
| OscillatorUnbinned (YAML::Node Config_) | |
| virtual | ~OscillatorUnbinned () |
| Destructor. | |
| 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. | |
| std::vector< FLOAT_T > | ReturnBinEdgesForPlotting (bool ReturnEnergy) final |
| Return a vector of bin edges used for oscillation probability plotting. | |
Public Member Functions inherited from OscillatorBase | |
| virtual | ~OscillatorBase () |
| Destructor. | |
| void | SanityCheck () |
| Perform a sanity check which ensures that #fOscProbCalcers have been set correctly. | |
| void | CalculateProbabilities (const std::vector< FLOAT_T > &OscParams) |
| Calculate the oscillation probabilities for the providied oscillation probabilities. | |
| void | CalculateProbabilities () |
| Calculate the oscillation probabilities for the providied oscillation probabilities. | |
| void | DefineParameter (const std::string &ParName_, FLOAT_T *ParValue_) |
| Define the oscillation parameters with a given name and pointer to a value. | |
| int | ReturnNOscParams () |
| Return number of expected oscillation parameters for a particular OscProbCalcerBase::OscProbCalcerBase() instance in #fOscProbCalcers. | |
| void | PrintWeights () |
| Print the oscillation probabilities for a particular OscProbCalcerBase::OscProbCalcerBase() instance in fOscProbCalcer. | |
| void | Setup () |
| Setup each instance of OscProbCalcerBase::OscProbCalcerBase() instance in fOscProbCalcer. | |
| std::string | ReturnImplementationName () |
| Return a string which encapsulates the calculation type along with the calculation engine. | |
| int | ReturnNEnergyPoints () |
| Return the number of Energy points which are being evaluated in the OscProbCalcerBase::OscProbCalcerBase() object. | |
| std::vector< FLOAT_T > | ReturnEnergyArray () |
| Return the vector of Energy points which are being used by the specific instance of OscProbCalcerBase::OscProbCalcerBase() contained in this instance of OscillatorBase::OscillatorBase() | |
| int | ReturnNCosineZPoints () |
| Return the number of CosineZ points which are being evaluated in the OscProbCalcerBase::OscProbCalcerBase() object. | |
| std::vector< FLOAT_T > | ReturnCosineZArray () |
| Return the vector of CosineZ points which are being used by the specific instance of OscProbCalcerBase::OscProbCalcerBase() contained in this instance of OscillatorBase::OscillatorBase() | |
| std::vector< NuOscillator::OscillationChannel > | ReturnOscChannels () |
| Return the oscillation channels the specific implementation expects. | |
| std::vector< int > | ReturnNeutrinoTypes () |
| Return the neutrino types the specific implementation expects. | |
| bool | HasOscProbCalcerGotOscillationChannel (int GeneratedFlavour, int DetectedFlavour) |
| Check whether a particular OscProbCalcerBase::OscProbCalcerBase() instance has a particular oscillation channel. | |
| void | SetEnergyArrayInCalcer (std::vector< FLOAT_T > Array) |
| Set the energy array which will be used by the OscProbCalcerBase::OscProbCalcerBase() instance stored in a particular index in #fOscProbCalcers. | |
| void | SetCosineZArrayInCalcer (std::vector< FLOAT_T > Array) |
| Set the energy array which will be used by the OscProbCalcerBase::OscProbCalcerBase() instance stored in fOscProbCalcer. | |
| bool | EvalPointsSetInConstructor () |
| Return flag which describes whether the OscProbCalcerBase::OscProbCalcerBase() has had it's Energy and CosineZ evaluation points set in the constructor of the derived OscillatorBase::OscillatorBase() object. | |
| bool | ReturnCosineZIgnored () |
| Return flag which describes whether CosineZ binning is considered in the object. | |
| FLOAT_T | ReturnOscillationProbability (int InitNuFlav, int FinalNuFlav, FLOAT_T EnergyVal, FLOAT_T CosineZVal=DUMMYVAL) |
| Return oscillation probability for a given initial and final flavour, for a given energy and cosineZ. | |
Private Member Functions | |
| void | Initialise () |
Additional Inherited Members | |
Protected Member Functions inherited from OscillatorBase | |
| OscillatorBase (std::string ConfigName_) | |
| Default constructor. | |
| OscillatorBase (YAML::Node Config_) | |
| Default constructor. | |
| const FLOAT_T * | ReturnPointerToWeightinCalcer (int InitNuFlav, int FinalNuFlav, FLOAT_T EnergyVal, FLOAT_T CosineZVal=DUMMYVAL) |
| Return a pointer to the oscillation probability memory address in a particular index of #fOscProbCalcers for a particular event. | |
| virtual void | PostCalculateProbabilities () |
| Do follow-up calculations with the oscillation probabilities. E.g.: averages in the SubSampling CalculationType. | |
| virtual void | SetupOscillatorImplementation () |
| Setup specific oscillator implementation. | |
Protected Attributes inherited from OscillatorBase | |
| bool | fCosineZIgnored |
| A boolean used for declaring whether the OscillatorBase() object expects to care about the CosineZ dimension. | |
| bool | fEvalPointsSetInConstructor |
| Flad which describes whether the Energy and CosineZ evaluation points where set in the constructor of the OscillatorBase() derived object. | |
| OscProbCalcerBase * | fOscProbCalcer |
| The instance of OscProbCalcerBase() | |
| std::string | fCalculationTypeName |
| A string describing the calculation implementation, e.g. Binned. | |
| int | fVerbose |
| The verbosity level of console output. | |
| YAML::Node | Config |
| YAML Config manager. | |
Unbinned Oscillation calculation implementation class.
Implementation of OscillatorBase::OscillatorBase() object which uses unbinned energy and cosineZ dimensions. It is expected that the specific Energy and CosineZ values to be used by the OscProbCalcerBase::OscProbCalcerBase() object are passed via SetEnergyArray() and SetCosineZArray()
| OscillatorUnbinned::OscillatorUnbinned | ( | std::string | ConfigName_ | ) |
Default constructor.
Default constructor
| ConfigName_ | YAML config file used to set runtime constants |
| OscillatorUnbinned::OscillatorUnbinned | ( | YAML::Node | Config_ | ) |
|
virtual |
Destructor.
|
private |
|
finalvirtual |
Return a vector of bin edges used for oscillation probability plotting.
Return a binning which ensures exactly one single evaluation point in each bin
| ReturnEnergy | Flag used to identify whether to return Energy or CosineZ binning |
Implements OscillatorBase.
|
finalvirtual |
Return a pointer to the oscillation probability for the requested event attributes.
Determine the memory address address where the calculated oscillation probability for events of the specific requested type will be stored. This will be different depending on the calculation implementation. For the unbinned approach, the particular bin in which the requested energy and cosine falls will be passed directly to the OscProbCalcerBase::OscProbCalcerBase() object
| InitNuFlav | Initial neutrino flavour of the neutrino |
| FinalNuFlav | Final neutrino flavour of the neutrino |
| EnergyVal | True energy of the neutrino |
| CosineZVal | True direction of the neutrino in CosineZ |
Implements OscillatorBase.