1 #ifndef __JSIRENE__JCDFTABLE1D__
2 #define __JSIRENE__JCDFTABLE1D__
20 namespace JPP {
using namespace JPHYSICS; }
37 template<
class JArgument_t,
class JResult_t>
66 template<
class JCDF_t,
class JCDFMaplist_t,
class JCDFDistance_t>
68 const int number_of_bins,
69 const double safety_factor = 2.0)
71 using namespace JTOOLS;
72 using namespace JGEOMETRY3D;
80 const JPDFTransformer_t&
object =
dynamic_cast<const JPDFTransformer_t&
>(*(cdf.
transformer));
84 catch(
const std::exception& error) {
97 const double R =
j->getX();
102 for (JOmega3D::const_iterator dir = omega.begin(); dir != omega.end(); ++dir) {
103 y += cdf.
getNPE(R, dir->getTheta(), fabs(dir->getPhi()));
108 j->getY() = safety_factor * y / W;
123 const double buffer[] = { R };
125 const double y = this->
evaluate(buffer);
Multi-dimensional CDF table for arrival time of Cherenkov light.
double getNPE(const Args &...args) const
Get number of photo-electrons.
JLANG::JSharedPointer< transformer_type > transformer
Data structure for direction in three dimensions.
JLANG::JSharedPointer< transformer_type > transformer
Direction set covering (part of) solid angle.
Various implementations of functional maps.
JMultiMapTransformer< 1, argument_type > transformer_type
JPolintFunction1D< 1, JElement2D_t, JGridCollection > JFunction1D_t
The template JSharedPointer class can be used to share a pointer to an object.
JElement2D< argument_type, result_type > JElement2D_t
JCDFTable1D()
Default constructor.
then usage $script[distance] fi case set_variable R
then for FUNCTION in pdf npe cdf
Custom class for CDF table in 1 dimension.
JArgument_t argument_type
JMultiQuantile_t intensity
double getNPE(const double R) const
Get number of photo-electrons.
JCDFTable1D(const JCDFTable< JCDF_t, JCDFMaplist_t, JCDFDistance_t > &cdf, const int number_of_bins, const double safety_factor=2.0)
Constructor.