1 #ifndef __JOSCPROB__JOSCILLOGRAM__
2 #define __JOSCPROB__JOSCILLOGRAM__
22 namespace JPP {
using namespace JOSCPROB; }
95 pInterpolator(pInterpolator)
97 if (pInterpolator == NULL) {
122 pInterpolator(pInterpolator)
124 if (pInterpolator == NULL) {
156 return result.second;
167 double getP(
const int i,
const int j)
const
170 const double& costh =
getCosth (i, j);
197 if (i != ix || j != iy) {
210 result.second = sqrt((1 + y) * (1 - y));
213 result.second = baselineCalculator.getCosth(y);
227 result.first = (x > 0.0 ? baselineCalculator.getBaseline(
result.second) / x : 0.0);
double getCosth(const int i, const int j) const
Get cosine zenith angle corrresponding to the given bin indices.
JOscillogram(const JOscillogramAxis &abscissa, const JOscillogramAxis &ordinate, const JOscChannel &channel, const JOscProbInterpolatorInterface *pInterpolator)
Constructor.
const JOscProbInterpolatorInterface * pInterpolator
Pointer to oscillation probability interpolator.
double getEnergy(const int i, const int j) const
Get energy corrresponding to the given bin indices.
JOscillogram(const std::string &abscissaName, const JGrid< double > abscissaBinning, const std::string &ordinateName, const JGrid< double > ordinateBinning, const JOscChannel &channel, const JOscProbInterpolatorInterface *pInterpolator)
Constructor.
Neutrino oscillation channel.
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
virtual const JBaselineCalculator & getBaselineCalculator() const =0
Get baseline calculator associated with this interpolation table.
Auxiliary data structure for storing and calculating baselines.
Low-level interface for oscillation probability tables.
JOscillogramAxis ordinate
Ordinate axis.
std::pair< int, std::string > const & getType(CLBCommonHeader const &header)
Exception for null pointer operation.
JOscChannel channel
Oscillation channel.
JOscillogramAxis abscissa
Abscissa axis.
T pow(const T &x, const double y)
Power .
double getP(const int i, const int j) const
Get oscillation probability for given bin indices.
then for APP in event gandalf start energy
std::pair< double, double > getTransformation(const int i, const int j) const
Get energy and cosine zenith angle corresponding to the given bin indices.
then usage $script< input file >[option[primary[working directory]]] nWhere option can be N
JOscillogramAxis(const int type, const int N, const double min, const double max)
Constructor.
Exception for accessing a value in a collection that is outside of its range.
JOscillogramAxis(const int type, const JGrid_t binning)
Constructor.
Auxiliary class for defining an oscillogram axis.
Auxiliary class for creating oscillograms.
Auxiliary data structure to hold oscillation variable names.