1 #ifndef __JAANET__JOSCFLUX__
2 #define __JAANET__JOSCFLUX__
7 #include "flux/Flux.hh"
27 namespace JPP {
using namespace JAANET; }
85 const double costh = -neutrino.dir.z / neutrino.dir.len();
91 const int inType = ((int) channel.Cparity) * ((int) channel.in);
92 const int outType = ((int) channel.Cparity) * ((int) channel.out);
94 if (outType == neutrino.type) {
113 return (static_cast<const JDiffuseFluxHelper&>(
object) == static_cast<const JDiffuseFluxHelper&>(*
this) &&
114 static_cast<const JOscProbHelper&>(
object) == static_cast<const JOscProbHelper&> (*
this));
bool equals(const JOscFlux &object) const
Check if this flux is equal to given flux.
Implementation of oscillated neutrino flux.
double getP(const JOscChannel &channel, const double energy, const double costh) const
Get oscillation probability corresponding to given oscillation channel, neutrino energy and zenith an...
static const unsigned int NUMBER_OF_OSCCHANNELS
Number of neutrino oscillation channels.
Low-level interface for oscillation probability calculators.
Helper class for oscillation probabilities.
void configure(const JOscProbInterface &oscProb)
Configure oscillation probability function.
JOscFlux()
Default constructor.
void configure(const JDiffuseFlux &diffuseFlux)
Configure oscillation probability function.
JOscFlux(const JDiffuseFlux &diffuseFlux, const JOscProbInterface &oscProb)
Constructor.
set_variable E_E log10(E_{fit}/E_{#mu})"
static const JOscChannel getOscChannel[]
Declare group of neutrino oscillation channels.
Template definition of auxiliary base class for comparison of data structures.
Explicit emplate specialization of event-weight factor helper for diffuse flux objects.
Template class for object cloning.
double getFactor(const Evt &evt) const override
Get event-weight factor for given event.
Low-level interface for diffuse fluxes.
double operator()(const Evt &evt) const
Get flux for given event.
double getFactor(const int type, const double log10E, const double costh) const
Get diffuse flux corresponding to given neutrino type, energy and zenith angle.
const Trk & get_neutrino(const Evt &evt)
Get incoming neutrino.
The Trk class represents a Monte Carlo (MC) particle as well as a reconstructed track/shower.
The Evt class respresent a Monte Carlo (MC) event as well as an offline event.