Jpp
17.0.0
the software that should make you happy
|
Multi-dimensional PDF table for arrival time of Cherenkov light. More...
#include <JPDFTable.hh>
Public Member Functions | |
JPDFTable () | |
Default constructor. More... | |
template<class __JFunction_t , class __JMaplist_t , class __JDistance_t > | |
JPDFTable (const JTransformableMultiFunction< __JFunction_t, __JMaplist_t, __JDistance_t > &input) | |
Constructor. More... | |
template<class JHistogram_t , class __JMaplist_t , class __JDistance_t > | |
JPDFTable (const JTransformableMultiHistogram< JHistogram_t, __JMaplist_t, __JDistance_t > &input) | |
Constructor. More... | |
void | blur (const double TTS, const int numberOfPoints=25, const double epsilon=1.0e-10, const double quantile=0.99) |
Blur PDF. More... | |
void | compress (const JRange< typename function_type::abscissa_type > &range) |
Compresses PDF to given abscissa range. More... | |
virtual JReader & | read (JReader &in) override |
Read from input. More... | |
virtual JWriter & | write (JWriter &out) const override |
Write from input. More... | |
const JTransformableMultiFunction & | getTransformableMultiFunction () const |
Get transformable multidimensional function. More... | |
JTransformableMultiFunction & | getTransformableMultiFunction () |
Get transformable multidimensional function. More... | |
template<class __JFunction_t , class __JMaplist_t , class __JDistance_t > | |
void | insert (const JTransformableMultiFunction< __JFunction_t, __JMaplist_t, __JDistance_t > &input) |
Insert multidimensional input. More... | |
template<class JHistogram_t , class __JMaplist_t , class __JDistance_t > | |
void | insert (const JTransformableMultiHistogram< JHistogram_t, __JMaplist_t, __JDistance_t > &input) |
Insert multidimensional input. More... | |
template<class __JFunction_t , class __JMaplist_t , class __JDistance_t > | |
void | insert (const JMultiFunction< __JFunction_t, __JMaplist_t, __JDistance_t > &input) |
Insert multidimensional input. More... | |
template<class JHistogram_t , class __JMaplist_t , class __JDistance_t > | |
void | insert (const JMultiHistogram< JHistogram_t, __JMaplist_t, __JDistance_t > &input) |
Insert multidimensional input. More... | |
template<class JMultiFunction_t > | |
void | add (const JMultiFunction_t &input) |
Add function. More... | |
template<class... Args> | |
result_type | operator() (const Args &...args) const |
Multidimensional interpolation method call. More... | |
virtual result_type | evaluate (const argument_type *pX) const override |
Recursive function value evaluation. More... | |
virtual void | transform (const transformer_type &transformer) override |
Application of weight function and coordinate transformation. More... | |
virtual void | transform (const transformer_type &transformer)=0 |
Application of transformation. More... | |
const JMultiFunction & | getMultiFunction () const |
Get multidimensional function. More... | |
JMultiFunction & | getMultiFunction () |
Get multidimensional function. More... | |
void | compile () |
Compilation. More... | |
void | setExceptionHandler (const typename function_type::supervisor_type &supervisor) |
Set the supervisor for handling of exceptions. More... | |
void | load (const char *file_name) |
Load from input file. More... | |
void | store (const char *file_name) const |
Store to output file. More... | |
Public Attributes | |
JLANG::JSharedPointer < transformer_type > | transformer |
Protected Member Functions | |
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 __JElement_t , template< class, class > class __JContainer_t, class __JDistance_t > | |
void | insert (const JMultiKey< JMapLength< JMaplist_t >::value, argument_type > &key, const JHistogram1D< __JElement_t, __JContainer_t, __JDistance_t > &input) |
Convert one-dimensional histogram to PDF and insert result at given multidimensional key. More... | |
template<class JHistogram_t , class __JMaplist_t , class __JDistance_t > | |
void | insert (const JMultiKey< JMapLength< JMaplist_t >::value, argument_type > &key, const JMultiHistogram< JHistogram_t, __JMaplist_t, __JDistance_t > &input) |
Convert multidimensional histogram to PDF and insert result at given multidimensional key. More... | |
Protected Attributes | |
JArray< NUMBER_OF_DIMENSIONS, argument_type > | buffer |
Multi-dimensional PDF table for arrival time of Cherenkov light.
Definition at line 40 of file JPDFTable.hh.
typedef JTransformableMultiFunction<JFunction1D_t, JMaplist_t, JDistance_t> JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::transformablemultifunction_type |
Definition at line 47 of file JPDFTable.hh.
typedef transformablemultifunction_type::argument_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::argument_type |
Definition at line 49 of file JPDFTable.hh.
typedef transformablemultifunction_type::result_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::result_type |
Definition at line 50 of file JPDFTable.hh.
typedef transformablemultifunction_type::value_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::value_type |
Definition at line 51 of file JPDFTable.hh.
typedef transformablemultifunction_type::multimap_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::multimap_type |
Definition at line 53 of file JPDFTable.hh.
typedef transformablemultifunction_type::transformer_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::transformer_type |
Definition at line 54 of file JPDFTable.hh.
typedef transformablemultifunction_type::super_const_iterator JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::super_const_iterator |
Definition at line 58 of file JPDFTable.hh.
typedef transformablemultifunction_type::super_iterator JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::super_iterator |
Definition at line 59 of file JPDFTable.hh.
typedef transformablemultifunction_type::function_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::function_type |
Definition at line 60 of file JPDFTable.hh.
|
inherited |
Definition at line 47 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 55 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 57 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 58 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 61 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 62 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 63 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 64 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 70 of file JTransformableMultiFunction.hh.
anonymous enum |
Enumerator | |
---|---|
NUMBER_OF_DIMENSIONS |
Definition at line 56 of file JPDFTable.hh.
|
inherited |
Enumerator | |
---|---|
NUMBER_OF_DIMENSIONS |
Definition at line 49 of file JTransformableMultiFunction.hh.
|
inherited |
|
inline |
Default constructor.
Definition at line 68 of file JPDFTable.hh.
|
inline |
Constructor.
input | multi-dimensional function |
Definition at line 79 of file JPDFTable.hh.
|
inline |
Constructor.
input | multi-dimensional histogram |
Definition at line 90 of file JPDFTable.hh.
|
inline |
Blur PDF.
The arrival times of Cherenkov light are smeared according to a Gaussian distribution with the specified width (i.e. TTS) using Gauss-Hermite integration. An exception is made when the time range according the specified quantile is smaller than the specified width (TTS) of the Gaussian distribution. In that case, the resulting PDF is a Gaussian distribution with the specified width (TTS) and normalisation according to the integral value of the input PDF. A smooth transition is imposed between the normal regime and this exeption.
TTS | TTS [ns] |
numberOfPoints | number of points for Gauss-Hermite integration |
epsilon | precision |
quantile | quantile |
Definition at line 111 of file JPDFTable.hh.
|
inline |
Compresses PDF to given abscissa range.
range | abscissa range |
Definition at line 196 of file JPDFTable.hh.
|
inlineoverridevirtual |
Read from input.
in | reader |
Implements JIO::JSerialisable.
Definition at line 221 of file JPDFTable.hh.
|
inlineoverridevirtual |
Write from input.
out | writer |
Implements JIO::JSerialisable.
Definition at line 253 of file JPDFTable.hh.
|
inlineinherited |
Get transformable multidimensional function.
Definition at line 102 of file JTransformableMultiFunction.hh.
|
inlineinherited |
Get transformable multidimensional function.
Definition at line 113 of file JTransformableMultiFunction.hh.
|
inlineinherited |
Insert multidimensional input.
input | multidimensional function |
Definition at line 125 of file JTransformableMultiFunction.hh.
|
inlineinherited |
Insert multidimensional input.
input | multidimensional histogram |
Definition at line 139 of file JTransformableMultiFunction.hh.
|
inlineinherited |
Insert multidimensional input.
input | multidimensional function |
Definition at line 121 of file JMultiFunction.hh.
|
inlineinherited |
Insert multidimensional input.
input | multidimensional histogram |
Definition at line 133 of file JMultiFunction.hh.
|
inlineprotectedinherited |
Insert multidimensional histogram at multidimensional key.
key | multidimensional key |
input | multidimensional histogram |
Definition at line 196 of file JMultiFunction.hh.
|
inlineprotectedinherited |
Convert one-dimensional histogram to PDF and insert result at given multidimensional key.
key | multidimensional key |
input | histogram |
Definition at line 218 of file JMultiFunction.hh.
|
inlineprotectedinherited |
Convert multidimensional histogram to PDF and insert result at given multidimensional key.
key | multidimensional key |
input | multidimensional histogram |
Definition at line 237 of file JMultiFunction.hh.
|
inlineinherited |
Add function.
Note that the summation is made via iteration of the elements in this multidimensional function.
input | multidimensional function |
Definition at line 155 of file JTransformableMultiFunction.hh.
|
inlineinherited |
Multidimensional interpolation method call.
args | comma seperated list of abscissa values |
Definition at line 190 of file JTransformableMultiFunction.hh.
|
inlineoverridevirtualinherited |
Recursive function value evaluation.
pX | pointer to abscissa values |
Definition at line 202 of file JTransformableMultiFunction.hh.
|
inlineoverridevirtualinherited |
Application of weight function and coordinate transformation.
transformer | function transformer |
Definition at line 222 of file JTransformableMultiFunction.hh.
|
pure virtualinherited |
Application of transformation.
transformer | function transformer |
|
inlineinherited |
Get multidimensional function.
Definition at line 98 of file JMultiFunction.hh.
|
inlineinherited |
Get multidimensional function.
Definition at line 109 of file JMultiFunction.hh.
|
inlineinherited |
Compilation.
Definition at line 142 of file JMultiFunction.hh.
|
inlineinherited |
Set the supervisor for handling of exceptions.
supervisor | supervisor |
Definition at line 157 of file JMultiFunction.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.
|
inherited |
Definition at line 271 of file JTransformableMultiFunction.hh.
|
mutableprotectedinherited |
Definition at line 183 of file JMultiFunction.hh.