1 #ifndef __JAANET__JEVTWEIGHTTOOLKIT__
2 #define __JAANET__JEVTWEIGHTTOOLKIT__
41 namespace JPP {
using namespace JAANET; }
78 for (const_iterator
i = this->begin();
i != this->end(); ++
i) {
80 if ((*i)->check(header)) {
108 void put(
const int identifier)
114 identifiers.push_back(identifier);
130 return identifiers.size();
141 return identifiers.cbegin();
152 return identifiers.cend();
165 for (
int identifier; in >> identifier; ) {
166 collection.
put(identifier);
240 multiFlux.insert(*
i, atmFluxFunction);
254 return getMultiParticleFlux();
296 template<
class JFluxMap_t>
friend std::istream & operator>>(std::istream &in, JFluxMap &fluxMap)
Stream input.
static JProperties getProperties(JFluxMap_t &object)
Get properties of this class.
JEvtWeighter getEventWeighter
Function object for mapping header to event weighter.
JNeutrinoTypeCollection()
Default constructor.
bool read(const JEquation &equation)
Read equation.
void insert(const int type, const JEvtWeightFactor_t &factor)
Insert pair of particle code and event-weight factor.
Implementation of event weighing for DAQ data.
JFluxMap()
Default constructor.
friend std::istream & operator>>(std::istream &in, JNeutrinoTypeCollection &collection)
Stream input.
std::vector< int >::const_iterator cbegin() const noexcept
Get constant iterator to the first element of the collection.
JFluxMultiParticle getMultiParticleFlux() const
Get multiparticle flux function.
JProperties & getProperties(T &object, const JEquationParameters ¶meters=JEquationParameters(), const int debug=1)
Get properties of a given object.
std::vector< int > identifiers
Container for identifiers.
friend std::ostream & operator<<(std::ostream &out, const JNeutrinoTypeCollection &collection)
Stream output.
#define gmake_property(A)
macros to convert (template) parameter to JPropertiesElement object
Low-level interface for oscillation probability calculators.
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
JEvtWeightFactorMultiParticle< JFlux > JFluxMultiParticle
Type-definition of multi-particle event-weight factor for fluxes.
Utility class to parse parameter values.
Implementation of event-weight factor interface.
Helper class for oscillation probabilities.
Implementation of event weighing for miscellaneous data such as a merged offline file containing neut...
Auxiliary class for parsing a vector of neutrino PDG identifiers.
JEvtWeightFactorFunction< JFunction_t, JFlux > make_fluxFunction(const JFunction_t &flux)
Auxiliary method for creating an interface to a flux function.
std::map< int, JPowerLawFlux > powerLawFluxes
Power-law flux functions.
std::vector< int >::const_iterator cend() const noexcept
Get constant iterator to the last element of the collection.
Utility class to parse parameter values.
std::ostream & write(std::ostream &out) const
Write the current parameter values.
Abstract base class for event weighing.
Implementation of atmospheric neutrino flux using official KM3NeT atmospheric flux function...
Implementation of event-weight factor for multiple particle types.
friend std::ostream & operator<<(std::ostream &out, const JFluxMap &fluxMap)
Stream output.
Implementation of event weighting for GSeaGen data.
size_t size() const
Get size of this collection.
Auxiliary class for parsing multiparticle fluxes.
JNeutrinoTypeCollection atmosphericFluxes
Atmospheric neutrino flux functions.
Implementation of event weighting for KM3BUU data.
std::map< int, JFlatFlux > flatFluxes
Uniform flux functions.
Implementation of event weighing for MUPAGE data.
Look-up table for event weighters.
JEvtWeighter()
Constructor.
Definition of particle types.
Implementation of event weighting for Corsika data.
Exception for accessing a value in a collection that is outside of its range.
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
void put(const int identifier)
Add identifier.
const JEvtWeight & operator()(const JHead &header) const
Get event weighter corresponding to given header.