#ifndef __JAANET__JFLUXATMOSPHERICNEUTRINO__ #define __JAANET__JFLUXATMOSPHERICNEUTRINO__ #include "flux/Flux.hh" #include "JAAnet/JEvtWeightFactorFunction.hh" #include "JAAnet/JOscFlux.hh" #include "JOscProb/JOscProbFunction.hh" /** * \author bjung */ namespace JAANET { using JOSCPROB::make_oscProbFunction; /** * Implementation of atmospheric neutrino flux using official KM3NeT atmospheric flux function. * */ struct JFluxAtmosphericNeutrino : public JOscFlux { /** * Constructor. * * The template argument refers to an oscillation probability function object or pointer. * For this, the copy constructor needs to be defined */ template JFluxAtmosphericNeutrino(const JOscProbFunction_t& oscProbFunction) : JOscFlux(make_diffuseFluxFunction(Flux_Atmospheric()), make_oscProbFunction (oscProbFunction)) {} }; } #endif