Jpp
|
Multi-dimensional PDF table for arrival time of Cherenkov light. More...
#include <JPDFTable.hh>
Public Member Functions | |
JPDFTable () | |
Default constructor. More... | |
template<class JPDF_t , class JPDFMaplist_t , class JPDFDistance_t > | |
JPDFTable (const JTransformableMultiFunction< JPDF_t, JPDFMaplist_t, JPDFDistance_t > &input) | |
Constructor. More... | |
template<class JHistogram1D_t , class JHistogramMaplist_t , class JHistogramDistance_t > | |
JPDFTable (const JTransformableMultiHistogram< JHistogram1D_t, JHistogramMaplist_t, JHistogramDistance_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 > &Crange) |
Compresses PDF to abscissa range specified by Crange. More... | |
virtual JReader & | read (JReader &in) |
Read from input. More... | |
virtual JWriter & | write (JWriter &out) const |
Write from input. More... | |
template<class JPDF_t , class JPDFMaplist_t , class JPDFDistance_t > | |
void | insert (const JTransformableMultiFunction< JPDF_t, JPDFMaplist_t, JPDFDistance_t > &input) |
Insert multidimensional input. More... | |
template<class JHistogram_t , class JHistogramMaplist_t , class JHistogramDistance_t > | |
void | insert (const JTransformableMultiHistogram< JHistogram_t, JHistogramMaplist_t, JHistogramDistance_t > &input) |
Insert multidimensional input. More... | |
const JTransformableMultiFunction & | getTransformableMultiFunction () const |
Get transformable multidimensional function. More... | |
JTransformableMultiFunction & | getTransformableMultiFunction () |
Get transformable multidimensional function. More... | |
template<class JPDF_t , class JPDFMaplist_t , class JPDFDistance_t > | |
void | insert (const JTransformableMultiFunction< JPDF_t, JPDFMaplist_t, JPDFDistance_t > &input) |
Insert multidimensional input. More... | |
template<class JHistogram_t , class JHistogramMaplist_t , class JHistogramDistance_t > | |
void | insert (const JTransformableMultiHistogram< JHistogram_t, JHistogramMaplist_t, JHistogramDistance_t > &input) |
Insert multidimensional input. 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 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... | |
template<class JMultiFunction_t > | |
void | add (const JMultiFunction_t &input) |
Add function. More... | |
result_type | operator() (const argument_type x,...) const |
Multidimensional interpolation method call. More... | |
virtual result_type | evaluate (const argument_type *pX) const |
Recursive function value evaluation. More... | |
virtual void | transform (const transformer_type &transformer) |
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 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 __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... | |
Static Protected Member Functions | |
static double | gauss (const double x, const double sigma) |
Gauss function (normalised to 1 at x = 0). More... | |
static double | Gauss (const double x, const double sigma) |
Normalised Gauss function. More... | |
static double | Gauss (const double x, const double x0, const double sigma) |
Normalised Gauss function. More... | |
Protected Attributes | |
va_list | ap |
JArray< NUMBER_OF_DIMENSIONS, argument_type > | buffer |
Multi-dimensional PDF table for arrival time of Cherenkov light.
Definition at line 39 of file JPDFTable.hh.
typedef JTransformableMultiFunction<JFunction1D_t, JMaplist_t, JDistance_t> JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::transformablemultifunction_t |
Definition at line 46 of file JPDFTable.hh.
typedef transformablemultifunction_t::argument_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::argument_type |
Definition at line 48 of file JPDFTable.hh.
typedef transformablemultifunction_t::result_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::result_type |
Definition at line 49 of file JPDFTable.hh.
typedef transformablemultifunction_t::value_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::value_type |
Definition at line 50 of file JPDFTable.hh.
typedef transformablemultifunction_t::multimap_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::multimap_type |
Definition at line 52 of file JPDFTable.hh.
typedef transformablemultifunction_t::transformer_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::transformer_type |
Definition at line 53 of file JPDFTable.hh.
typedef transformablemultifunction_t::super_const_iterator JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::super_const_iterator |
Definition at line 57 of file JPDFTable.hh.
typedef transformablemultifunction_t::super_iterator JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::super_iterator |
Definition at line 58 of file JPDFTable.hh.
typedef transformablemultifunction_t::function_type JPHYSICS::JPDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::function_type |
Definition at line 59 of file JPDFTable.hh.
|
inherited |
Definition at line 46 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 54 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 56 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 57 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 60 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 69 of file JTransformableMultiFunction.hh.
anonymous enum |
Enumerator | |
---|---|
NUMBER_OF_DIMENSIONS |
Definition at line 55 of file JPDFTable.hh.
|
inherited |
Enumerator | |
---|---|
NUMBER_OF_DIMENSIONS |
Definition at line 48 of file JTransformableMultiFunction.hh.
|
inherited |
|
inline |
Default constructor.
Definition at line 67 of file JPDFTable.hh.
|
inline |
|
inline |
Constructor.
input | multi-dimensional histogram |
Definition at line 89 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 110 of file JPDFTable.hh.
|
inline |
Compresses PDF to abscissa range specified by Crange.
Crange | Compression Range [PDF abscissa_type] |
Definition at line 194 of file JPDFTable.hh.
|
inlinevirtual |
Read from input.
in | reader |
Implements JIO::JSerialisable.
Definition at line 214 of file JPDFTable.hh.
|
inlinevirtual |
Write from input.
out | writer |
Implements JIO::JSerialisable.
Definition at line 246 of file JPDFTable.hh.
|
inlinestaticprotected |
|
inlinestaticprotected |
Normalised Gauss function.
x | x |
sigma | sigma |
Definition at line 281 of file JPDFTable.hh.
|
inlinestaticprotected |
Normalised Gauss function.
x | x |
x0 | central value |
sigma | sigma |
Definition at line 295 of file JPDFTable.hh.
|
inline |
Insert multidimensional input.
input | multidimensional function |
Definition at line 124 of file JTransformableMultiFunction.hh.
|
inline |
Insert multidimensional input.
input | multidimensional histogram |
Definition at line 138 of file JTransformableMultiFunction.hh.
|
inlineinherited |
Get transformable multidimensional function.
Definition at line 101 of file JTransformableMultiFunction.hh.
|
inlineinherited |
Get transformable multidimensional function.
Definition at line 112 of file JTransformableMultiFunction.hh.
|
inlineinherited |
Insert multidimensional input.
input | multidimensional function |
Definition at line 124 of file JTransformableMultiFunction.hh.
|
inlineinherited |
Insert multidimensional input.
input | multidimensional histogram |
Definition at line 138 of file JTransformableMultiFunction.hh.
|
inlineinherited |
Insert multidimensional histogram at multidimensional key.
key | multidimensional key |
input | multidimensional histogram |
Definition at line 202 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 224 of file JMultiFunction.hh.
|
inlineinherited |
Insert multidimensional input.
input | multidimensional function |
Definition at line 122 of file JMultiFunction.hh.
|
inlineinherited |
Insert multidimensional input.
input | multidimensional histogram |
Definition at line 134 of file JMultiFunction.hh.
|
inlineprotectedinherited |
Insert multidimensional histogram at multidimensional key.
key | multidimensional key |
input | multidimensional histogram |
Definition at line 202 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 224 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 154 of file JTransformableMultiFunction.hh.
|
inlineinherited |
Multidimensional interpolation method call.
x | comma seperated list of abscissa values |
Definition at line 188 of file JTransformableMultiFunction.hh.
|
inlinevirtualinherited |
Recursive function value evaluation.
pX | pointer to abscissa values |
Definition at line 210 of file JTransformableMultiFunction.hh.
|
inlinevirtualinherited |
Application of weight function and coordinate transformation.
transformer | function transformer |
Definition at line 230 of file JTransformableMultiFunction.hh.
|
pure virtualinherited |
Application of transformation.
transformer | function transformer |
|
inlineinherited |
Get multidimensional function.
Definition at line 99 of file JMultiFunction.hh.
|
inlineinherited |
Get multidimensional function.
Definition at line 110 of file JMultiFunction.hh.
|
inlineinherited |
|
inlineinherited |
Set the supervisor for handling of exceptions.
supervisor | supervisor |
Definition at line 158 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 279 of file JTransformableMultiFunction.hh.
|
mutableprotectedinherited |
Definition at line 235 of file JMultiFunction.hh.
|
mutableprotectedinherited |
Definition at line 236 of file JMultiFunction.hh.