General interface to oscillation calculators. More...
#include "/cvmfs/nova-development.opensciencegrid.org/novasoft/releases/N21-01-21/CAFAna/Core/StanTypedefs.h"
Public Member Functions | |
virtual | ~_IOscCalc () |
virtual _IOscCalc * | Copy () const =0 |
virtual T | P (int flavBefore, int flavAfter, double E)=0 |
E in GeV; flavors as PDG codes (so, neg==>antinu) More... | |
virtual Eigen::Array< T, Eigen::Dynamic, 1 > | P (int flavBefore, int flavAfter, const std::vector< double > &E) |
virtual Eigen::Array< T, Eigen::Dynamic, 1 > | P (int flavBefore, int flavAfter, const Eigen::ArrayXd &E) |
virtual TMD5 * | GetParamsHash () const |
Use to check two calculators are in the same state. More... | |
General interface to oscillation calculators.
Definition at line 22 of file StanTypedefs.h.
|
inlinevirtual |
Definition at line 23 of file IOscCalc.h.
References osc::_IOscCalc< T >::Copy(), E, osc::_IOscCalc< T >::P(), and T.
|
pure virtual |
Implemented in osc::analytic::_OscCalc< T >, osc::OscCalcPMNSOptEigen, osc::OscCalcSterileTrivial, osc::_IOscCalcAdjustable< T >, osc::_IOscCalcAdjustable< double >, osc::OscCalcCPT, osc::_NoOscillations< T >, osc::_OscCalcDMP< T >, osc::OscCalcSterile, osc::_OscCalcPMNSOpt< T >, osc::OscCalcSterileBeam, osc::_OscCalcPMNS< T >, osc::OscCalcPMNS_NSI, osc::OscCalc, osc::OscCalcPMNS_CPT, osc::OscCalcGeneral, and osc::OscCalcDumb.
Referenced by GetCalculator(), ana::PredictionSyst3Flavor2020::PredictionSyst3Flavor2020(), ana::PredictionSystJoint2018::PredictionSystJoint2018(), ana::PredictionSystJointDemo::PredictionSystJointDemo(), ana::PredictionSystNue2017::PredictionSystNue2017(), ana::PredictionSystNumu2017::PredictionSystNumu2017(), ana::PredictionInterp::SetOscSeed(), and osc::_IOscCalc< T >::~_IOscCalc().
|
inlinevirtual |
Use to check two calculators are in the same state.
Reimplemented in osc::analytic::_OscCalc< T >, osc::OscCalcCPT, osc::OscCalcPMNSOptEigen, osc::_OscCalcDMP< T >, osc::OscCalc, osc::_NoOscillations< T >, osc::OscCalcSterile, osc::OscCalcPMNS_CPT, osc::OscCalcGeneral, osc::_OscCalcPMNSOpt< T >, osc::OscCalcSterileBeam, and osc::_OscCalcPMNS< T >.
Definition at line 39 of file IOscCalc.h.
Referenced by ana::OscillatableSpectrum::_Oscillated(), ana::PredictionInterp::_PredictComponentSyst(), and osc::OscCalcCPT::GetParamsHash().
|
pure virtual |
E in GeV; flavors as PDG codes (so, neg==>antinu)
Implemented in osc::analytic::_OscCalc< T >, osc::OscCalcSterileTrivial, osc::OscCalcPMNSOptEigen, osc::OscCalcCPT, osc::_NoOscillations< T >, osc::_OscCalcDMP< T >, osc::OscCalcGeneral, osc::OscCalcSterile, osc::_OscCalcPMNSOpt< T >, osc::_OscCalcPMNS< T >, osc::OscCalc, osc::OscCalcPMNS_NSI, osc::OscCalcPMNS_CPT, and osc::OscCalcDumb.
Referenced by BiprobEllipse_dCP(), osc::OscCalcDumb::Copy(), ana::T2KToyExperiment::GetReweightedSignal(), cmf::ShifterAndWeighter::OscillationWeightBinCenter(), cmf::ShifterAndWeighter::OscillationWeightTrueE(), osc::_IOscCalc< T >::P(), osc::OscCalcCPT::P(), TheoryEllipse_dCP(), TheoryLine_E(), ana::ToEigen(), and osc::_IOscCalc< T >::~_IOscCalc().
|
virtual |
Default implementation forwards to non-vector version using a simple loop. Override if your calculator has a more efficient implementation.
Reimplemented in osc::analytic::_OscCalc< T >, osc::OscCalcPMNSOptEigen, and osc::_OscCalcDMP< T >.
Definition at line 27 of file IOscCalc.cxx.
References MECModelEnuComparisons::i, osc::_IOscCalc< T >::P(), runNovaSAM::ret, and submit_hadd::u.
Referenced by osc::_IOscCalc< T >::P().
|
virtual |
Default implementation forawrds to vector<double> version. Override if your calculator has a more efficient implementation.
Reimplemented in osc::analytic::_OscCalc< T >.
Definition at line 37 of file IOscCalc.cxx.
References P.