Go to the documentation of this file. 1 #ifndef __JSIRENE__JCDFTABLE2D__
2 #define __JSIRENE__JCDFTABLE2D__
38 template<
class JArgument_t,
class JResult_t>
40 public JMultiFunction<JPolintFunction1D<1, JElement2D<JArgument_t,JResult_t>, JGridCollection>,
41 JMapList<JPolint1FunctionalGridMap> >
70 template<
class JCDF_t,
class JCDFMaplist_t,
class JCDFDistance_t>
72 const int number_of_bins,
73 const double safety_factor = 2.0) :
85 const JPDFTransformer_t&
object = dynamic_cast<const JPDFTransformer_t&>(*(cdf.
transformer));
89 catch(
const std::exception& error) {
102 i->getY().configure(
make_grid(number_of_bins, -1.0, +1.0));
106 const double D = i->getX();
107 const double cd =
j->getX();
112 for (JOmega3D::const_iterator dir = omega.begin(); dir != omega.end(); ++dir) {
113 y += cdf.
getNPE(D, cd, dir->getTheta(), fabs(dir->getPhi()));
118 j->getY() = safety_factor * y / W;
134 const double cd)
const
136 const double buffer[] = { D, cd };
138 const double y = this->evaluate(
buffer);
139 const double W = this->
transformer->getWeight(D, cd);
JArgument_t argument_type
Multi-dimensional CDF table for arrival time of Cherenkov light.
double getNPE(const double D, const double cd) const
Get number of photo-electrons.
JMultiMapTransformer< 2, argument_type > transformer_type
double getNPE(const argument_type x,...) const
Get number of photo-electrons.
JMultiQuantile_t intensity
Auxiliary classes and methods for calculation of PDF and muon energy loss.
JLANG::JSharedPointer< transformer_type > transformer
Data structure for direction in three dimensions.
JCDFTable2D()
Default constructor.
Custom class for CDF table in 2 dimensions.
JMultiFunction< JFunction1D_t, JMaplist_t > JFunction2D_t
JPolintFunction1D< 1, JElement2D_t, JGridCollection > JFunction1D_t
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
JMapList< JPolint1FunctionalGridMap > JMaplist_t
JCDFTable2D(const JCDFTable< JCDF_t, JCDFMaplist_t, JCDFDistance_t > &cdf, const int number_of_bins, const double safety_factor=2.0)
Constructor.
Auxiliary classes and methods for 3D geometrical objects and operations.
JLANG::JSharedPointer< transformer_type > transformer
JElement2D< argument_type, result_type > JElement2D_t
Direction set covering (part of) solid angle.
The template JSharedPointer class can be used to share a pointer to an object.