Jpp
master_rocky-37-gf0c5bc59d
the software that should make you happy
|
General purpose class for multi-dimensional probability density function (PDF). More...
#include <JMultiPDF.hh>
Public Member Functions | |
JMultiPDF () | |
Default constructor. More... | |
template<class T > | |
JMultiPDF (const T &input) | |
Constructor. More... | |
template<class JHistogram_t , class JHistogramMaplist_t , class JHistogramDistance_t > | |
void | insert (const JMultiHistogram< JHistogram_t, JHistogramMaplist_t, JHistogramDistance_t > &input) |
Insert multi-dimensional input. More... | |
template<class JHistogram_t , class JHistogramMaplist_t , class JHistogramDistance_t > | |
void | insert (const JTransformableMultiHistogram< JHistogram_t, JHistogramMaplist_t, JHistogramDistance_t > &input) |
Insert multi-dimensional input. 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... | |
const JTransformableMultiFunction & | getTransformableMultiFunction () const |
Get transformable multidimensional function. More... | |
JTransformableMultiFunction & | getTransformableMultiFunction () |
Get transformable multidimensional function. More... | |
void | insert (const JTransformableMultiFunction< __JFunction_t, __JMaplist_t, __JDistance_t > &input) |
Insert multidimensional input. More... | |
void | insert (const JTransformableMultiHistogram< JHistogram_t, __JMaplist_t, __JDistance_t > &input) |
Insert multidimensional input. More... | |
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... | |
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... | |
void | insert (const JMultiFunction< __JFunction_t, __JMaplist_t, __JDistance_t > &input) |
Insert multidimensional input. More... | |
void | insert (const JMultiHistogram< JHistogram_t, __JMaplist_t, __JDistance_t > &input) |
Insert multidimensional input. More... | |
void | add (const JMultiFunction_t &input) |
Add function. More... | |
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... | |
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, const double weight) |
Recursive method to insert multi-dimensional histogram at multi-dimensional 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, const double weight) |
Termination method to insert multi-dimensional histogram at multi-dimensional key. More... | |
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... | |
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... | |
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 |
General purpose class for multi-dimensional probability density function (PDF).
This class is a simple wrapper around the JTransformableMultiFunction class to properly convert a multi-dimensional histogram to a multi-dimensional PDF. In this, the histogram contents in each bin are divided by the summed weight of the multi-dimensional histogram and the width (c.q. area) of the multi-dimensional bin.
Definition at line 34 of file JMultiPDF.hh.
typedef JTransformableMultiFunction<JFunction_t, JMaplist_t, JDistance_t> JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::transformablemultifunction_type |
Definition at line 42 of file JMultiPDF.hh.
typedef JFunction_t JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::function_type |
Definition at line 46 of file JMultiPDF.hh.
typedef transformablemultifunction_type::value_type JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::value_type |
Definition at line 48 of file JMultiPDF.hh.
typedef transformablemultifunction_type::argument_type JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::argument_type |
Definition at line 49 of file JMultiPDF.hh.
typedef transformablemultifunction_type::supervisor_type JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::supervisor_type |
Definition at line 50 of file JMultiPDF.hh.
typedef transformablemultifunction_type::abscissa_type JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::abscissa_type |
Definition at line 52 of file JMultiPDF.hh.
typedef transformablemultifunction_type::ordinate_type JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::ordinate_type |
Definition at line 53 of file JMultiPDF.hh.
typedef transformablemultifunction_type::result_type JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::result_type |
Definition at line 54 of file JMultiPDF.hh.
typedef transformablemultifunction_type::const_iterator JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::const_iterator |
Definition at line 56 of file JMultiPDF.hh.
typedef transformablemultifunction_type::const_reverse_iterator JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::const_reverse_iterator |
Definition at line 57 of file JMultiPDF.hh.
typedef transformablemultifunction_type::iterator JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::iterator |
Definition at line 58 of file JMultiPDF.hh.
typedef transformablemultifunction_type::reverse_iterator JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::reverse_iterator |
Definition at line 59 of file JMultiPDF.hh.
typedef transformablemultifunction_type::super_iterator JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::super_iterator |
Definition at line 61 of file JMultiPDF.hh.
typedef transformablemultifunction_type::super_const_iterator JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::super_const_iterator |
Definition at line 62 of file JMultiPDF.hh.
typedef JMultiMapTransformer<JMapLength<JMaplist_t>::value, argument_type> JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::transformer_type |
Definition at line 64 of file JMultiPDF.hh.
typedef transformer_type::array_type JTOOLS::JMultiPDF< JFunction_t, JMaplist_t, JDistance_t >::array_type |
Definition at line 65 of file JMultiPDF.hh.
|
inherited |
Definition at line 47 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 47 of file JMultiFunction.hh.
anonymous enum |
Enumerator | |
---|---|
NUMBER_OF_DIMENSIONS |
Definition at line 44 of file JMultiPDF.hh.
|
inherited |
Definition at line 49 of file JTransformableMultiFunction.hh.
|
inherited |
Definition at line 49 of file JMultiFunction.hh.
|
inline |
|
inline |
Constructor.
input | multi-dimensional input |
Definition at line 83 of file JMultiPDF.hh.
|
inline |
Insert multi-dimensional input.
input | multi-dimensional histogram |
Definition at line 97 of file JMultiPDF.hh.
|
inline |
Insert multi-dimensional input.
input | multi-dimensional histogram |
Definition at line 109 of file JMultiPDF.hh.
|
inlineprotected |
Recursive method to insert multi-dimensional histogram at multi-dimensional key.
key | multi-dimensional key |
input | multi-dimensional histogram |
weight | weight |
Definition at line 129 of file JMultiPDF.hh.
|
inlineprotected |
Termination method to insert multi-dimensional histogram at multi-dimensional key.
Convert one-dimensional histogram to PDF, normalise PDF with given weight and insert result at given multi-dimensional key.
key | multi-dimensional key |
input | histogram |
weight | weight |
Definition at line 158 of file JMultiPDF.hh.
|
inline |
Insert multidimensional input.
input | multidimensional function |
Definition at line 125 of file JTransformableMultiFunction.hh.
|
inline |
Insert multidimensional input.
input | multidimensional histogram |
Definition at line 139 of file JTransformableMultiFunction.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 histogram at multidimensional key.
key | multidimensional key |
input | multidimensional histogram |
Definition at line 72 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 72 of file JMultiFunction.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 |
Implements JTOOLS::JTransformable< JMapLength< JMaplist_t >::value, JFunction_t::argument_type >.
Definition at line 222 of file JTransformableMultiFunction.hh.
|
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.