1 #ifndef __JAANET__JOSCFLUX__
2 #define __JAANET__JOSCFLUX__
87 const double costh = -neutrino.
dir.
z;
91 if (interactionType == (
int) JInteractionTypeGENIE_t::WEAK_CHARGED_CURRENT) {
97 const int inType = ((int) channel.
Cparity) * ((int) channel.
in);
98 const int outType = ((int) channel.
Cparity) * ((int) channel.
out);
100 if (outType == neutrino.
type) {
103 P.
getP (channel, neutrino.
E, costh) );
107 }
else if (interactionType == (
int) JInteractionTypeGENIE_t::WEAK_NEUTRAL_CURRENT) {
148 std::istream&
read(std::istream& in)
override final
187 template<
class JOscFlux_t>
Definition of GENIE neutrino interaction types.
Definition of particle types.
Utility class to parse parameter values.
Simple data structure to support I/O of equations (see class JLANG::JEquation).
virtual JProperties getProperties(const JEquationParameters &equation=JOscParametersInterface_t::getEquationParameters())=0
Get properties of this class.
bool is_valid() const
Check validity of oscillation parameters.
Low-level interface for oscillation probability calculators.
Extensions to Evt data format.
const Trk & get_neutrino(const Evt &evt)
Get incoming neutrino.
static const JOscChannel getOscChannel[]
Declare group of neutrino oscillation channels.
static const unsigned int NUMBER_OF_OSCCHANNELS
Number of neutrino oscillation channels.
JChargeParity_t getChargeParity(const int pdgType)
Auxiliary function for retrieving the charge-parity of a given PDG type.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
The Evt class respresent a Monte Carlo (MC) event as well as an offline event.
Helper class for diffuse flux factor.
double getFlux(const int type, const double log10E, const double costh) const
Get flux for given particle PDG-identifier, energy and zenith-angle.
JProperties getProperties(const JEquationParameters &eqpars=JEvtWeightFactor::getEquationParameters())
Get properties of this class.
bool is_valid() const
Check whether this event-weight factor is valid.
static JEquationParameters & getEquationParameters()
Get equation parameters.
Auxiliary class for I/O of oscillated flux.
JOscFluxHelper(JOscFlux_t &oscflux, const JEquationParameters &eqpars)
Constructor.
Implementation of oscillated neutrino flux.
bool is_valid() const override final
Check whether this oscillated neutrino flux object is valid.
JOscFlux(const JDiffuseFluxHelper &diffuseFlux, const JOscProbHelper &oscProb)
Constructor.
std::istream & read(std::istream &in) override final
Stream input.
double getFactor(const Evt &evt) const override final
Get flux for given event.
JProperties getProperties(const JEquationParameters &eqpars=JEvtWeightFactor::getEquationParameters()) override final
Get properties of this class.
JProperties getProperties(const JEquationParameters &eqpars=JEvtWeightFactor::getEquationParameters()) const override final
Get properties of this class.
Template class for object cloning.
Neutrino oscillation channel.
JChargeParity_t Cparity
Charge-parity.
JFlavour_t in
Incoming flavour.
JFlavour_t out
Outcoming flavour.
Helper class for oscillation probabilities.
JOscParameterReferences_t & getParameters() const
Get reference to oscillation parameters interface.
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...
The Trk class represents a Monte Carlo (MC) particle as well as a reconstructed track/shower.
int type
MC: particle type in PDG encoding.
double E
Energy [GeV] (either MC truth or reconstructed)
static const int W2LIST_GSEAGEN_CC
Charged current interaction flag.