Custom class for CDF table in 2 dimensions.
More...
#include <JCDFTable2D.hh>
|
| JCDFTable2D () |
| Default constructor. More...
|
|
template<class JCDF_t , class JCDFMaplist_t , class JCDFDistance_t > |
| JCDFTable2D (const JCDFTable< JCDF_t, JCDFMaplist_t, JCDFDistance_t > &cdf, const int number_of_bins, const double safety_factor=2.0) |
| Constructor. More...
|
|
double | getNPE (const double D, const double cd) const |
| Get number of photo-electrons. More...
|
|
const JMultiFunction & | getMultiFunction () const |
| Get multidimensional function. More...
|
|
JMultiFunction & | getMultiFunction () |
| Get multidimensional function. More...
|
|
template<class JPDF_t , class JPDFMaplist_t , class JPDFDistance_t > |
void | insert (const JMultiFunction< JPDF_t, JPDFMaplist_t, JPDFDistance_t > &input) |
| Insert multidimensional input. More...
|
|
template<class JHistogram_t , class JHistogramMaplist_t , class JHistogramDistance_t > |
void | insert (const JMultiHistogram< JHistogram_t, JHistogramMaplist_t, JHistogramDistance_t > &input) |
| Insert multidimensional input. More...
|
|
void | compile () |
| Compilation. More...
|
|
void | setExceptionHandler (const supervisor_type &supervisor) |
| Set the supervisor for handling of exceptions. More...
|
|
result_type | operator() (const argument_type x,...) const |
| Multi-dimensional interpolation method call. More...
|
|
|
template<unsigned int N, class __JAbscissa_t , class __JContents_t , template< class, class, class > class __JMap_t, class __JDistance_t > |
void | insert (const JMultiKey< N, argument_type > &key, const JHistogramMap< __JAbscissa_t, __JContents_t, __JMap_t, __JDistance_t > &input) |
| Insert multidimensional histogram at multidimensional key. More...
|
|
template<class __JValue_t > |
void | insert (const JMultiKey< JMapLength< JMaplist_t >::value, argument_type > &key, const __JValue_t &input) |
| Convert one-dimensional histogram to PDF and insert result at given multidimensional key. More...
|
|
template<class JArgument_t, class JResult_t>
class JPHYSICS::JCDFTable2D< JArgument_t, JResult_t >
Custom class for CDF table in 2 dimensions.
This class provides an upper limit for the average number of photo-electrons as a function of the distance and the cosine of the emission angle.
Definition at line 39 of file JCDFTable2D.hh.
◆ argument_type
template<class JArgument_t , class JResult_t >
◆ result_type
template<class JArgument_t , class JResult_t >
◆ JElement2D_t
template<class JArgument_t , class JResult_t >
◆ JFunction1D_t
template<class JArgument_t , class JResult_t >
◆ JMaplist_t
template<class JArgument_t , class JResult_t >
◆ JFunction2D_t
template<class JArgument_t , class JResult_t >
◆ transformer_type
template<class JArgument_t , class JResult_t >
◆ multimap_type
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
◆ function_type
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
◆ value_type
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
◆ supervisor_type
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
◆ abscissa_type
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
◆ ordinate_type
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
◆ const_iterator
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
◆ const_reverse_iterator
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
◆ iterator
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
◆ reverse_iterator
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
◆ super_iterator
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
◆ super_const_iterator
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
◆ anonymous enum
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
◆ JCDFTable2D() [1/2]
template<class JArgument_t , class JResult_t >
◆ JCDFTable2D() [2/2]
template<class JArgument_t , class JResult_t >
template<class JCDF_t , class JCDFMaplist_t , class JCDFDistance_t >
Constructor.
- Parameters
-
cdf | CDF (5D table) |
number_of_bins | number of bins (2D table) |
safety_factor | safety factor |
Definition at line 71 of file JCDFTable2D.hh.
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;
◆ getNPE()
template<class JArgument_t , class JResult_t >
Get number of photo-electrons.
- Parameters
-
D | distance between EM shower and PMT [m] |
cd | cosine angle EM shower direction and EM shower - PMT position |
- Returns
- number of photo-electrons
Definition at line 133 of file JCDFTable2D.hh.
136 const double buffer[] = { D, cd };
138 const double y = this->evaluate(
buffer);
139 const double W = this->
transformer->getWeight(D, cd);
◆ getMultiFunction() [1/2]
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
Get multidimensional function.
- Returns
- this multidimensional function
Definition at line 99 of file JMultiFunction.hh.
101 return static_cast<const JMultiFunction&>(*
this);
◆ getMultiFunction() [2/2]
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
Get multidimensional function.
- Returns
- this multidimensional function
Definition at line 110 of file JMultiFunction.hh.
112 return static_cast<JMultiFunction&>(*
this);
◆ insert() [1/4]
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
template<class JPDF_t , class JPDFMaplist_t , class JPDFDistance_t >
Insert multidimensional input.
- Parameters
-
input | multidimensional function |
Definition at line 122 of file JMultiFunction.hh.
◆ insert() [2/4]
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
template<class JHistogram_t , class JHistogramMaplist_t , class JHistogramDistance_t >
Insert multidimensional input.
- Parameters
-
input | multidimensional histogram |
Definition at line 134 of file JMultiFunction.hh.
◆ insert() [3/4]
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
template<unsigned int N, class __JAbscissa_t , class __JContents_t , template< class, class, class > class __JMap_t, class __JDistance_t >
Insert multidimensional histogram at multidimensional key.
- Parameters
-
key | multidimensional key |
input | multidimensional histogram |
Definition at line 202 of file JMultiFunction.hh.
205 if (input.size() > 1) {
◆ insert() [4/4]
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
template<class __JValue_t >
Convert one-dimensional histogram to PDF and insert result at given multidimensional key.
- Parameters
-
key | multidimensional key |
input | histogram |
Definition at line 224 of file JMultiFunction.hh.
231 multimap_type::insert(key,
buffer);
◆ compile()
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
Compilation.
Definition at line 143 of file JMultiFunction.hh.
147 for (
super_iterator i = this->super_begin(); i != this->super_end(); ++i) {
148 (*i).getValue().compile();
◆ setExceptionHandler()
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
Set the supervisor for handling of exceptions.
- Parameters
-
Definition at line 158 of file JMultiFunction.hh.
162 for (
super_iterator i = this->super_begin(); i != this->super_end(); ++i) {
163 (*i).getValue().setExceptionHandler(supervisor);
◆ operator()()
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
Multi-dimensional interpolation method call.
- Parameters
-
x | comma seperated list of abscissa values |
- Returns
- function value
Definition at line 174 of file JMultiFunction.hh.
◆ transformer
template<class JArgument_t , class JResult_t >
◆ ap
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
|
mutableprotectedinherited |
◆ buffer
template<class JFunction_t, class JMaplist_t, class JDistance_t = JDistance<typename JFunction_t::argument_type>>
|
mutableprotectedinherited |
The documentation for this class was generated from the following file:
double getNPE(const argument_type x,...) const
Get number of photo-electrons.
JMultiQuantile_t intensity
JLANG::JSharedPointer< transformer_type > transformer
Data structure for direction in three dimensions.
JMultiFunction< JFunction1D_t, JMaplist_t > JFunction2D_t
Auxiliary classes and methods for 3D geometrical objects and operations.
JLANG::JSharedPointer< transformer_type > transformer
Direction set covering (part of) solid angle.