1 #ifndef __JAANET__JOSCFLUX__
2 #define __JAANET__JOSCFLUX__
7 #include "flux/Flux.hh"
81 const double log10E =
log10(neutrino.
E);
82 const double costh = -neutrino.
dir.
z / neutrino.
dir.
len();
94 if (channel.
out == flavour && channel.
Cparity == Cparity) {
JFlavour_t
Neutrino flavours.
Low-level interface for retrieving the oscillation probability corresponding to a given oscillation c...
JChargeParity_t
Charge parities.
static JChargeParity_t getChargeParity(const int Cparity)
Get charge-parity of given neutrino.
Neutrino oscillation channel.
Implementation of oscillated neutrino flux.
Helper class for oscillation probabilities.
double E
Energy [GeV] (either MC truth or reconstructed)
double len() const
Get length.
JOscFlux(const JDiffuseFlux &diffuseFlux, const JOscProb &oscProb)
Constructor.
JOscFlux()
Default constructor.
static int getIncomingNeutrinoType(const JOscChannel &channel)
Auxiliary function to retrieve incoming neutrino PDG type.
void configure(const JDiffuseFlux &diffuseFlux)
Configure oscillation probability function.
set_variable E_E log10(E_{fit}/E_{#mu})"
static const JOscChannel getOscChannel[]
Declare group of neutrino oscillation channels.
JChargeParity_t Cparity
Charge-parity.
Explicit emplate specialization of event-weight factor helper for diffuse flux objects.
Template class for object cloning.
static JFlavour_t getFlavour(const int pdgID)
Get flavour of neutrino.
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.
int type
MC: particle type in PDG encoding.
virtual double getOscProb(const JOscChannel &oscChannel, const double log10E, const double costh) const
Get oscillation probability corresponding to given oscillation channel, neutrino energy and zenith an...
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.
virtual void configure(const JOscProb &oscProb)
Configure oscillation probability function.
JFlavour_t out
Outcoming flavour.
static const int NUMBER_OF_OSCCHANNELS
Number of neutrino oscillation channels.
The Evt class respresent a Monte Carlo (MC) event as well as an offline event.