1 #ifndef __JOSCPROB__JOSCPROBINTERPOLATOR8D__
2 #define __JOSCPROB__JOSCPROBINTERPOLATOR8D__
21 namespace JOSCPROB {};
22 namespace JPP {
using namespace JOSCPROB; }
43 template<
class JDistance_t = JTOOLS::JDistance<
typename JOscProbTable8D_t::JFunction2D_t::argument_type> >
83 const double costh)
const
100 return probabilities[index];
105 THROW(
JValueOutOfRange,
"JOscProbInterpolator8D::operator(): Invalid oscillation channel " << channel << endl);
107 THROW(
JValueOutOfRange,
"JOscProbInterpolator8D::operator(): Invalid oscillation parameters " << static_cast<const JOscParameters&>(*
this) << endl);
Neutrino oscillation channel.
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance.
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
Explicit template specialization for 8D interpolation table in: .
Data structure for oscillation parameters.
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
table_type::data_type data_type
double sinsqTh23
Squared sine of the PMNS mixing angle between the second and third neutrino mass eigenstates [-]...
double deltaCP
PMNS phase angle [pi * rad].
const table_type * pTable
Pointer to 8D oscillation probability table.
double dM31sq
Squared mass difference between the first and third neutrino mass eigenstates [eV2].
double sinsqTh12
Squared sine of the PMNS mixing angle between the first and second neutrino mass eigenstates [-]...
Exception for null pointer operation.
JOscProbTable8D< JDistance_t > table_type
static const JOscChannel getOscChannel[]
Declare group of neutrino oscillation channels.
virtual double operator()(const JOscChannel &channel, const double log10E, const double costh) const
Get oscillation probability for given oscillation channel.
double dM21sq
Squared mass difference between the first and second neutrino mass eigenstates [eV2].
General purpose messaging.
JOscProbInterpolator8D(const table_type *pTable, const JOscParameters ¶meters)
Constructor.
bool is_valid() const
Check validity of oscillation parameters.
JOscProbInterpolator8D()
Default constructor.
Exception for accessing a value in a collection that is outside of its range.
Auxiliary class for interpolating an oscillation probability table in 8 dimensions in terms of: ...
static const int NUMBER_OF_OSCCHANNELS
Number of neutrino oscillation channels.
double sinsqTh13
Squared sine of the PMNS mixing angle between the first and third neutrino mass eigenstates [-]...