Jpp 19.3.0-rc.3
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. | |
template<class __JFunction_t , class __JMaplist_t , class __JDistance_t > | |
JPDFTable (const JTransformableMultiFunction< __JFunction_t, __JMaplist_t, __JDistance_t > &input) | |
Constructor. | |
template<class JHistogram_t , class __JMaplist_t , class __JDistance_t > | |
JPDFTable (const JTransformableMultiHistogram< JHistogram_t, __JMaplist_t, __JDistance_t > &input) | |
Constructor. | |
void | blur (const double TTS, const int numberOfPoints=25, const double epsilon=1.0e-10, const double quantile=0.99) |
Blur PDF. | |
void | compress (const double Xmax, const JRange< typename function_type::abscissa_type > &range) |
Compresses PDF to given abscissa range. | |
virtual JReader & | read (JReader &in) override |
Read from input. | |
virtual JWriter & | write (JWriter &out) const override |
Write from input. | |
template<class __JFunction_t , class __JMaplist_t , class __JDistance_t > | |
void | insert (const JTransformableMultiFunction< __JFunction_t, __JMaplist_t, __JDistance_t > &input) |
Insert multidimensional input. | |
template<class JHistogram_t , class __JMaplist_t , class __JDistance_t > | |
void | insert (const JTransformableMultiHistogram< JHistogram_t, __JMaplist_t, __JDistance_t > &input) |
Insert multidimensional input. | |
const JTransformableMultiFunction & | getTransformableMultiFunction () const |
Get transformable multidimensional function. | |
JTransformableMultiFunction & | getTransformableMultiFunction () |
Get transformable multidimensional function. | |
template<class __JFunction_t , class __JMaplist_t , class __JDistance_t > | |
void | insert (const JMultiFunction< __JFunction_t, __JMaplist_t, __JDistance_t > &input) |
Insert multidimensional input. | |
template<class JHistogram_t , class __JMaplist_t , class __JDistance_t > | |
void | insert (const JMultiHistogram< JHistogram_t, __JMaplist_t, __JDistance_t > &input) |
Insert multidimensional input. | |
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. | |
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. | |
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. | |
template<class JMultiFunction_t > | |
void | add (const JMultiFunction_t &input) |
Add function. | |
template<class ... Args> | |
result_type | operator() (const Args &...args) const |
Multidimensional interpolation method call. | |
virtual result_type | evaluate (const argument_type *pX) const override |
Recursive function value evaluation. | |
virtual void | transform (const transformer_type &transformer) override |
Application of weight function and coordinate transformation. | |
virtual void | transform (const transformer_type &transformer)=0 |
Application of transformation. | |
const JMultiFunction & | getMultiFunction () const |
Get multidimensional function. | |
JMultiFunction & | getMultiFunction () |
Get multidimensional function. | |
void | compile () |
Compilation. | |
void | setExceptionHandler (const typename function_type::supervisor_type &supervisor) |
Set the supervisor for handling of exceptions. | |
void | load (const char *file_name) |
Load from input file. | |
void | store (const char *file_name) const |
Store to output file. | |
Public Attributes | |
std::shared_ptr< transformer_type > | transformer |
Multi-dimensional PDF table for arrival time of Cherenkov light.
Definition at line 40 of file JPDFTable.hh.
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.
transformablemultifunction_type::argument_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::argument_type |
Definition at line 49 of file JPDFTable.hh.
transformablemultifunction_type::result_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::result_type |
Definition at line 50 of file JPDFTable.hh.
transformablemultifunction_type::value_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::value_type |
Definition at line 51 of file JPDFTable.hh.
transformablemultifunction_type::multimap_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::multimap_type |
Definition at line 53 of file JPDFTable.hh.
transformablemultifunction_type::transformer_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::transformer_type |
Definition at line 54 of file JPDFTable.hh.
transformablemultifunction_type::super_const_iterator JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::super_const_iterator |
Definition at line 58 of file JPDFTable.hh.
transformablemultifunction_type::super_iterator JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::super_iterator |
Definition at line 59 of file JPDFTable.hh.
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 48 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 56 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 58 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 59 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 65 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 71 of file JTransformableMultiFunction.hh.
anonymous enum |
Enumerator | |
---|---|
NUMBER_OF_DIMENSIONS |
Definition at line 56 of file JPDFTable.hh.
|
inherited |
|
inherited |
Enumerator | |
---|---|
NUMBER_OF_DIMENSIONS |
Definition at line 49 of file JMultiFunction.hh.
|
inline |
Default constructor.
Definition at line 68 of file JPDFTable.hh.
|
inline |
|
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.
Xmax | maximal value first abscissa |
range | accepted range final abscissa |
Definition at line 197 of file JPDFTable.hh.
|
inlineoverridevirtual |
Read from input.
in | reader |
Implements JIO::JSerialisable.
Definition at line 226 of file JPDFTable.hh.
|
inlineoverridevirtual |
Write from input.
out | writer |
Implements JIO::JSerialisable.
Definition at line 258 of file JPDFTable.hh.
|
inline |
Insert multidimensional input.
input | multidimensional function |
Definition at line 126 of file JTransformableMultiFunction.hh.
|
inline |
Insert multidimensional input.
input | multidimensional histogram |
Definition at line 140 of file JTransformableMultiFunction.hh.
|
inlineinherited |
Get transformable multidimensional function.
Definition at line 103 of file JTransformableMultiFunction.hh.
|
inlineinherited |
Get transformable multidimensional function.
Definition at line 114 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.
|
inlineinherited |
Insert multidimensional histogram at multidimensional key.
key | multidimensional key |
input | multidimensional histogram |
Definition at line 194 of file JMultiFunction.hh.
|
inlineinherited |
Convert one-dimensional histogram to PDF and insert result at given multidimensional key.
key | multidimensional key |
input | histogram |
Definition at line 216 of file JMultiFunction.hh.
|
inlineinherited |
Convert multidimensional histogram to PDF and insert result at given multidimensional key.
key | multidimensional key |
input | multidimensional histogram |
Definition at line 235 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 156 of file JTransformableMultiFunction.hh.
|
inlineinherited |
Multidimensional interpolation method call.
args | comma seperated list of abscissa values |
Definition at line 191 of file JTransformableMultiFunction.hh.
|
inlineoverridevirtualinherited |
Recursive function value evaluation.
pX | pointer to abscissa values |
Definition at line 205 of file JTransformableMultiFunction.hh.
|
inlineoverridevirtualinherited |
Application of weight function and coordinate transformation.
transformer | function transformer |
Definition at line 227 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 276 of file JTransformableMultiFunction.hh.