Jpp
|
Multi-dimensional CDF table for arrival time of Cherenkov light. More...
#include <JCDFTable.hh>
Public Types | |
enum | { NUMBER_OF_DIMENSIONS = transformablemultifunction_t::NUMBER_OF_DIMENSIONS } |
typedef JFunction1D_t::argument_type | argument_type |
typedef JFunction1D_t::result_type | result_type |
typedef JFunction1D_t::value_type | value_type |
typedef JTransformableMultiFunction< JFunction1D_t, JMaplist_t, JDistance_t > | transformablemultifunction_t |
typedef transformablemultifunction_t::multimap_type | multimap_type |
typedef transformablemultifunction_t::transformer_type | transformer_type |
typedef JMultiKey< NUMBER_OF_DIMENSIONS - 1, argument_type > | multikey_t |
typedef JTOOLS::JConstantFunction1D< double, argument_type > | JConstantFunction1D_t |
typedef JTOOLS::JMultiFunction< JConstantFunction1D_t, JMaplist_t, JDistance_t > | JMultiQuantile_t |
typedef JTOOLS::JMultiFunction< JFunction1D_t, JMaplist_t, JDistance_t > | JMultiFunction_t |
typedef JFunctional< argument_type, result_type > | functional_type |
typedef JSupervisor | supervisor_type |
Public Member Functions | |
JCDFTable () | |
Default constructor. More... | |
template<class JPDF_t , class JPDFMaplist_t , class JPDFDistance_t > | |
JCDFTable (const JTransformableMultiFunction< JPDF_t, JPDFMaplist_t, JPDFDistance_t > &input, const typename JPDF_t::ordinate_type eps=JMATH::zero) | |
Constructor. More... | |
template<class JHistogram1D_t , class JHistogramMap_t , class JHistogramDistance_t > | |
JCDFTable (const JTransformableMultiHistogram< JHistogram1D_t, JHistogramMap_t, JHistogramDistance_t > &input, const typename JHistogram1D_t::ordinate_type eps=JMATH::zero) | |
Constructor. More... | |
template<class JFunctionTransformer_t > | |
void | transform (const JFunctionTransformer_t &transformer) |
Application of weight function. More... | |
double | getNPE (const argument_type x,...) const |
Get number of photo-electrons. More... | |
double | getTime (const argument_type x,...) const |
Generate arrival time. More... | |
JReader & | read (JReader &in) |
Read CDF from input. More... | |
virtual JWriter & | write (JWriter &out) const |
Write CDF to output. More... | |
void | load (const char *file_name) |
Load from input file. More... | |
void | store (const char *file_name) const |
Store to output file. More... | |
virtual result_type | evaluate (const argument_type *pX) const =0 |
Recursive function value evaluation. More... | |
JSupervisor | getSupervisor () const |
Get supervisor. More... | |
const JExceptionHandler & | getExceptionHandler () const |
Get exception handler. More... | |
void | setExceptionHandler (const JSupervisor &supervisor) |
Set the supervisor for handling of exceptions. More... | |
Static Public Member Functions | |
static result_type | getValue (const JFunctional &function, const argument_type *pX) |
Recursive function value evaluation. More... | |
static JClass< result_type >::argument_type | getValue (typename JClass< result_type >::argument_type value, const argument_type *pX) |
Termination of recursive function value evaluation. More... | |
Public Attributes | |
JMultiQuantile_t | intensity |
JMultiFunction_t | function |
JLANG::JSharedPointer< transformer_type > | transformer |
Protected Member Functions | |
virtual void | do_compile () |
Function compilation. More... | |
template<class JPDF_t > | |
void | insert (const multikey_t &key, const JPDF_t &value, const typename JPDF_t::ordinate_type eps) |
Insert value at given multidimensional key. More... | |
template<unsigned int N, class JKey_t , class JValue_t , class JHistogramMaplist_t , class JHistogramDistance_t > | |
void | insert (const JMultiKey< N, JKey_t > &key, const JMultiMap< JKey_t, JValue_t, JHistogramMaplist_t, JHistogramDistance_t > &histogram, const typename JValue_t::contents_type eps) |
Insert multi-dimensional histogram at multi-dimensional key. More... | |
Protected Attributes | |
va_list | ap |
JTOOLS::JArray< NUMBER_OF_DIMENSIONS, argument_type > | buffer |
JSupervisor | supervisor |
Multi-dimensional CDF table for arrival time of Cherenkov light.
This class can be used to determine the number of photo-electrons as a function of the values of the leading parameter values and to generate random photon arrival times.
N.B. The transformation of the PDF is assumed to be linear.
Definition at line 51 of file JCDFTable.hh.
typedef JFunction1D_t::argument_type JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::argument_type |
Definition at line 58 of file JCDFTable.hh.
typedef JFunction1D_t::result_type JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::result_type |
Definition at line 59 of file JCDFTable.hh.
typedef JFunction1D_t::value_type JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::value_type |
Definition at line 60 of file JCDFTable.hh.
typedef JTransformableMultiFunction<JFunction1D_t, JMaplist_t, JDistance_t> JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::transformablemultifunction_t |
Definition at line 62 of file JCDFTable.hh.
typedef transformablemultifunction_t::multimap_type JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::multimap_type |
Definition at line 64 of file JCDFTable.hh.
typedef transformablemultifunction_t::transformer_type JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::transformer_type |
Definition at line 65 of file JCDFTable.hh.
typedef JMultiKey<NUMBER_OF_DIMENSIONS - 1, argument_type> JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::multikey_t |
Definition at line 69 of file JCDFTable.hh.
typedef JTOOLS::JConstantFunction1D<double, argument_type> JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::JConstantFunction1D_t |
Definition at line 71 of file JCDFTable.hh.
typedef JTOOLS::JMultiFunction<JConstantFunction1D_t, JMaplist_t, JDistance_t> JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::JMultiQuantile_t |
Definition at line 72 of file JCDFTable.hh.
typedef JTOOLS::JMultiFunction<JFunction1D_t, JMaplist_t, JDistance_t> JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::JMultiFunction_t |
Definition at line 73 of file JCDFTable.hh.
|
inherited |
Definition at line 88 of file JFunctional.hh.
|
inherited |
Definition at line 89 of file JFunctional.hh.
anonymous enum |
Enumerator | |
---|---|
NUMBER_OF_DIMENSIONS |
Definition at line 67 of file JCDFTable.hh.
|
inline |
Default constructor.
Definition at line 79 of file JCDFTable.hh.
|
inline |
Constructor.
input | multi-dimensional PDF |
eps | minimal step size for CDF |
Definition at line 91 of file JCDFTable.hh.
|
inline |
Constructor.
input | multi-dimensional histogram |
eps | minimal step size for CDF |
Definition at line 112 of file JCDFTable.hh.
|
inline |
Application of weight function.
transformer | function transformer |
Definition at line 130 of file JCDFTable.hh.
|
inline |
Get number of photo-electrons.
x | comma separated argument list |
Definition at line 156 of file JCDFTable.hh.
|
inline |
Generate arrival time.
x | comma seperated argument list (last value is random number between 0 and 1) |
Definition at line 181 of file JCDFTable.hh.
|
inlinevirtual |
Read CDF from input.
in | reader |
Implements JIO::JSerialisable.
Definition at line 205 of file JCDFTable.hh.
|
inlinevirtual |
Write CDF to output.
out | writer |
Implements JIO::JSerialisable.
Definition at line 232 of file JCDFTable.hh.
|
inlineprotectedvirtual |
Function compilation.
Definition at line 250 of file JCDFTable.hh.
|
inlineprotected |
Insert value at given multidimensional key.
key | multi-dimensional key |
value | function or histogram |
eps | minimal step size for CDF |
Definition at line 265 of file JCDFTable.hh.
|
inlineprotected |
Insert multi-dimensional histogram at multi-dimensional key.
key | multidimensional key |
histogram | multidimensional histogram |
eps | minimal step size for CDF |
Definition at line 295 of file JCDFTable.hh.
|
inlineinherited |
Load from input file.
file_name | file name |
Definition at line 29 of file JObjectBinaryIO.hh.
|
inlineinherited |
Store to output file.
file_name | file name |
Definition at line 40 of file JObjectBinaryIO.hh.
|
pure virtualinherited |
Recursive function value evaluation.
pX | pointer to abscissa values |
Implemented in JTOOLS::JSplineMap< JKey_t, JValue_t, JGridMap, JResultType< JValue_t >::result_type, JDistance_t >, JTOOLS::JSplineMap< JKey_t, JValue_t, JMap, JResultDerivative< JResultType< JValue_t >::result_type >, JDistance_t >, JTOOLS::JSplineMap< JKey_t, JValue_t, JMap, JResultType< JValue_t >::result_type, JDistance_t >, JTOOLS::JSplineMap< JKey_t, JValue_t, JGridMap, JResultDerivative< JResultType< JValue_t >::result_type >, JDistance_t >, JTOOLS::JSplineFunction< JElement_t, JCollection_t, JResultPDF< typename JResultType< typename JElement_t::ordinate_type >::result_type >, JDistance_t >, JTOOLS::JSplineFunction< JElement_t, JCollection_t, JResultDerivative< typename JResultType< typename JElement_t::ordinate_type >::result_type >, JDistance_t >, JTOOLS::JHermiteSplineFunction< JElement_t, JCollection_t, JResultPDF< typename JResultType< typename JElement_t::ordinate_type >::result_type >, JDistance_t >, JTOOLS::JSplineFunction< JElement_t, JCollection_t, typename JResultType< typename JElement_t::ordinate_type >::result_type, JDistance_t >, JTOOLS::JHermiteSplineFunction< JElement_t, JCollection_t, JResultDerivative< typename JResultType< typename JElement_t::ordinate_type >::result_type >, JDistance_t >, JTOOLS::JHermiteSplineFunction< JElement_t, JCollection_t, typename JResultType< typename JElement_t::ordinate_type >::result_type, JDistance_t >, JTOOLS::JConstantFunction1D< JArgument_t, JResult_t >, JTOOLS::JFunctionObject1D< JArgument_t, JResult_t >, and JTOOLS::JExternalFunction1D< JArgument_t, JResult_t >.
|
inlinestaticinherited |
Recursive function value evaluation.
function | function |
pX | pointer to abscissa values |
Definition at line 107 of file JFunctional.hh.
|
inlinestaticinherited |
Termination of recursive function value evaluation.
value | result |
pX | pointer to abscissa values |
Definition at line 121 of file JFunctional.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Set the supervisor for handling of exceptions.
supervisor | supervisor |
Definition at line 288 of file JFunctional.hh.
JMultiQuantile_t JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::intensity |
Definition at line 241 of file JCDFTable.hh.
JMultiFunction_t JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::function |
Definition at line 242 of file JCDFTable.hh.
JLANG::JSharedPointer<transformer_type> JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::transformer |
Definition at line 243 of file JCDFTable.hh.
|
mutableprotected |
Definition at line 311 of file JCDFTable.hh.
|
mutableprotected |
Definition at line 312 of file JCDFTable.hh.
|
protectedinherited |
Definition at line 295 of file JFunctional.hh.