Jpp
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t > Class Template Referenceabstract

Multi-dimensional CDF table for arrival time of Cherenkov light. More...

#include <JCDFTable.hh>

Inheritance diagram for JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >:
JIO::JSerialisable JIO::JObjectBinaryIO< T > JTOOLS::JFunctional< JArgument_t, JResult_t >

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_typemultikey_t
 
typedef JTOOLS::JConstantFunction1D< double, argument_typeJConstantFunction1D_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_typefunctional_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...
 
JReaderread (JReader &in)
 Read CDF from input. More...
 
virtual JWriterwrite (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 JExceptionHandlergetExceptionHandler () 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_typetransformer
 

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_typebuffer
 
JSupervisor supervisor
 

Detailed Description

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
class JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >

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.

Member Typedef Documentation

◆ argument_type

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
typedef JFunction1D_t::argument_type JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::argument_type

Definition at line 58 of file JCDFTable.hh.

◆ result_type

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
typedef JFunction1D_t::result_type JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::result_type

Definition at line 59 of file JCDFTable.hh.

◆ value_type

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
typedef JFunction1D_t::value_type JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::value_type

Definition at line 60 of file JCDFTable.hh.

◆ transformablemultifunction_t

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
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.

◆ multimap_type

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
typedef transformablemultifunction_t::multimap_type JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::multimap_type

Definition at line 64 of file JCDFTable.hh.

◆ transformer_type

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
typedef transformablemultifunction_t::transformer_type JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::transformer_type

Definition at line 65 of file JCDFTable.hh.

◆ multikey_t

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
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.

◆ JConstantFunction1D_t

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
typedef JTOOLS::JConstantFunction1D<double, argument_type> JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::JConstantFunction1D_t

Definition at line 71 of file JCDFTable.hh.

◆ JMultiQuantile_t

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
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.

◆ JMultiFunction_t

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
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.

◆ functional_type

template<class JArgument_t, class JResult_t>
typedef JFunctional<argument_type, result_type> JTOOLS::JFunctional< JArgument_t, JResult_t >::functional_type
inherited

Definition at line 88 of file JFunctional.hh.

◆ supervisor_type

template<class JArgument_t, class JResult_t>
typedef JSupervisor JTOOLS::JFunctional< JArgument_t, JResult_t >::supervisor_type
inherited

Definition at line 89 of file JFunctional.hh.

Member Enumeration Documentation

◆ anonymous enum

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
anonymous enum
Enumerator
NUMBER_OF_DIMENSIONS 

Definition at line 67 of file JCDFTable.hh.

Constructor & Destructor Documentation

◆ JCDFTable() [1/3]

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::JCDFTable ( )
inline

Default constructor.

Definition at line 79 of file JCDFTable.hh.

79  :
81  {}

◆ JCDFTable() [2/3]

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
template<class JPDF_t , class JPDFMaplist_t , class JPDFDistance_t >
JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::JCDFTable ( const JTransformableMultiFunction< JPDF_t, JPDFMaplist_t, JPDFDistance_t > &  input,
const typename JPDF_t::ordinate_type  eps = JMATH::zero 
)
inline

Constructor.

Parameters
inputmulti-dimensional PDF
epsminimal step size for CDF

Definition at line 91 of file JCDFTable.hh.

92  :
94  {
95  this->transformer.reset(input.transformer->clone());
96 
97  for (typename JTransformableMultiFunction<JPDF_t, JPDFMaplist_t, JPDFDistance_t>::super_const_iterator i = input.super_begin(); i != input.super_end(); ++i) {
98  this->insert((*i).getKey(), (*i).getValue(), eps);
99  }
100 
101  this->compile();
102  }

◆ JCDFTable() [3/3]

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
template<class JHistogram1D_t , class JHistogramMap_t , class JHistogramDistance_t >
JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::JCDFTable ( const JTransformableMultiHistogram< JHistogram1D_t, JHistogramMap_t, JHistogramDistance_t > &  input,
const typename JHistogram1D_t::ordinate_type  eps = JMATH::zero 
)
inline

Constructor.

Parameters
inputmulti-dimensional histogram
epsminimal step size for CDF

Definition at line 112 of file JCDFTable.hh.

113  :
115  {
116  this->transformer.reset(input.transformer->clone());
117 
118  this->insert(JMultiKey<0, typename JHistogram1D_t::abscissa_type>(), input, eps);
119 
120  this->compile();
121  }

Member Function Documentation

◆ transform()

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
template<class JFunctionTransformer_t >
void JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::transform ( const JFunctionTransformer_t &  transformer)
inline

Application of weight function.

Parameters
transformerfunction transformer

Definition at line 130 of file JCDFTable.hh.

131  {
132  for (typename JMultiQuantile_t::super_iterator i = intensity.super_begin(); i != intensity.super_end(); ++i) {
133 
134  const typename transformer_type::array_type array = (*i).getKey();
135  JConstantFunction1D_t& function = (*i).getValue();
136 
137  const double W1 = this->transformer->getWeight(array);
138  const double W2 = transformer .getWeight(array);
139 
140  const result_type y = function(JMATH::zero);
141 
142  function = JConstantFunction1D_t(y * W1 / W2);
143  }
144 
145  this->transformer.reset(transformer.clone());
146  this->compile();
147  }

◆ getNPE()

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
double JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::getNPE ( const argument_type  x,
  ... 
) const
inline

Get number of photo-electrons.

Parameters
xcomma separated argument list
Returns
number of photo-electrons

Definition at line 156 of file JCDFTable.hh.

157  {
158  va_start(ap, x);
159 
160  buffer[0] = x;
161 
162  for (int i = 1; i != NUMBER_OF_DIMENSIONS - 1; ++i) {
163  buffer[i] = va_arg(ap, argument_type);
164  }
165 
166  va_end(ap);
167 
168  const double W = transformer->getWeight(buffer);
169  const double npe = intensity.evaluate(buffer.begin());
170 
171  return W * npe;
172  }

◆ getTime()

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
double JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::getTime ( const argument_type  x,
  ... 
) const
inline

Generate arrival time.

Parameters
xcomma seperated argument list (last value is random number between 0 and 1)
Returns
arrival time

Definition at line 181 of file JCDFTable.hh.

182  {
183  va_start(ap, x);
184 
185  buffer[0] = x;
186 
187  for (int i = 1; i != NUMBER_OF_DIMENSIONS; ++i) {
188  buffer[i] = va_arg(ap, argument_type);
189  }
190 
191  va_end(ap);
192 
193  const argument_type y = function.evaluate(buffer.begin());
194 
195  return transformer->getXn(buffer, y);
196  }

◆ read()

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
JReader& JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::read ( JReader in)
inlinevirtual

Read CDF from input.

Parameters
inreader
Returns
reader

Implements JIO::JSerialisable.

Definition at line 205 of file JCDFTable.hh.

206  {
207  in >> intensity;
208  in >> function;
209 
211 
212  if (buffer.read(in))
213  transformer.reset(buffer.clone());
214  else
216 
217  compile();
218 
219  intensity.setExceptionHandler(new typename JMultiQuantile_t::function_type::JDefaultResult(JMATH::zero));
220  function .setExceptionHandler(new typename JMultiFunction_t::function_type::JDefaultResult(JMATH::zero));
221 
222  return in;
223  }

◆ write()

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
virtual JWriter& JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::write ( JWriter out) const
inlinevirtual

Write CDF to output.

Parameters
outwriter
Returns
writer

Implements JIO::JSerialisable.

Definition at line 232 of file JCDFTable.hh.

233  {
234  out << intensity;
235  out << function;
236 
237  return transformer->write(out);
238  }

◆ do_compile()

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
virtual void JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::do_compile ( )
inlineprotectedvirtual

Function compilation.

Definition at line 250 of file JCDFTable.hh.

251  {
252  intensity.compile();
253  function .compile();
254  }

◆ insert() [1/2]

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
template<class JPDF_t >
void JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::insert ( const multikey_t key,
const JPDF_t &  value,
const typename JPDF_t::ordinate_type  eps 
)
inlineprotected

Insert value at given multidimensional key.

Parameters
keymulti-dimensional key
valuefunction or histogram
epsminimal step size for CDF

Definition at line 265 of file JCDFTable.hh.

268  {
269  try {
270 
271  const typename transformer_type::array_type array(key);
272 
273  JFunction1D_t buffer;
274 
275  const argument_type z = transformer->getXn(array, 1.0) - transformer->getXn(array, 0.0);
276  const result_type V = JTOOLS::makeCDF(value, buffer, eps);
277 
279  function .insert(key, buffer);
280  }
281  catch(const JException& error) {
283  }
284  }

◆ insert() [2/2]

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
template<unsigned int N, class JKey_t , class JValue_t , class JHistogramMaplist_t , class JHistogramDistance_t >
void JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::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 
)
inlineprotected

Insert multi-dimensional histogram at multi-dimensional key.

Parameters
keymultidimensional key
histogrammultidimensional histogram
epsminimal step size for CDF

Definition at line 295 of file JCDFTable.hh.

298  {
299  if (histogram.getSize() > 1) {
300 
301  for (typename JMultiMap<JKey_t, JValue_t, JHistogramMaplist_t, JHistogramDistance_t>::const_iterator j = histogram.begin(), i = j++; j != histogram.end(); ++i, ++j) {
302 
303  const JKey_t x = 0.5 * (i->first + j->first);
304 
305  insert(JMultiKey<N+1, JKey_t>(key, x), i->second, eps);
306  }
307  }
308  }

◆ load()

template<class T>
void JIO::JObjectBinaryIO< T >::load ( const char *  file_name)
inlineinherited

Load from input file.

Parameters
file_namefile name

Definition at line 29 of file JObjectBinaryIO.hh.

30  {
31  JLANG::load<JFileStreamReader>(file_name, static_cast<T&>(*this));
32  }

◆ store()

template<class T>
void JIO::JObjectBinaryIO< T >::store ( const char *  file_name) const
inlineinherited

Store to output file.

Parameters
file_namefile name

Definition at line 40 of file JObjectBinaryIO.hh.

41  {
42  JLANG::store<JFileStreamWriter>(file_name, static_cast<const T&>(*this));
43  }

◆ evaluate()

template<class JArgument_t, class JResult_t>
virtual result_type JTOOLS::JFunctional< JArgument_t, JResult_t >::evaluate ( const argument_type pX) const
pure virtualinherited

Recursive function value evaluation.

Parameters
pXpointer to abscissa values
Returns
function value

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 >.

◆ getValue() [1/2]

template<class JArgument_t, class JResult_t>
static result_type JTOOLS::JFunctional< JArgument_t, JResult_t >::getValue ( const JFunctional< JArgument_t, JResult_t > &  function,
const argument_type pX 
)
inlinestaticinherited

Recursive function value evaluation.

Parameters
functionfunction
pXpointer to abscissa values

Definition at line 107 of file JFunctional.hh.

109  {
110  return function.evaluate(pX);
111  }

◆ getValue() [2/2]

template<class JArgument_t, class JResult_t>
static JClass<result_type>::argument_type JTOOLS::JFunctional< JArgument_t, JResult_t >::getValue ( typename JClass< result_type >::argument_type  value,
const argument_type pX 
)
inlinestaticinherited

Termination of recursive function value evaluation.

Parameters
valueresult
pXpointer to abscissa values

Definition at line 121 of file JFunctional.hh.

123  {
124  return value;
125  }

◆ getSupervisor()

template<class JArgument_t, class JResult_t>
JSupervisor JTOOLS::JFunctional< JArgument_t, JResult_t >::getSupervisor ( ) const
inlineinherited

Get supervisor.

Returns
supervisor

Definition at line 266 of file JFunctional.hh.

267  {
268  return supervisor;
269  }

◆ getExceptionHandler()

template<class JArgument_t, class JResult_t>
const JExceptionHandler& JTOOLS::JFunctional< JArgument_t, JResult_t >::getExceptionHandler ( ) const
inlineinherited

Get exception handler.

Returns
exception handler

Definition at line 277 of file JFunctional.hh.

278  {
279  return *supervisor;
280  }

◆ setExceptionHandler()

template<class JArgument_t, class JResult_t>
void JTOOLS::JFunctional< JArgument_t, JResult_t >::setExceptionHandler ( const JSupervisor supervisor)
inlineinherited

Set the supervisor for handling of exceptions.

Parameters
supervisorsupervisor

Definition at line 288 of file JFunctional.hh.

289  {
290  this->supervisor = supervisor;
291  }

Member Data Documentation

◆ intensity

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
JMultiQuantile_t JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::intensity

Definition at line 241 of file JCDFTable.hh.

◆ function

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
JMultiFunction_t JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::function

Definition at line 242 of file JCDFTable.hh.

◆ transformer

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
JLANG::JSharedPointer<transformer_type> JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::transformer

Definition at line 243 of file JCDFTable.hh.

◆ ap

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
va_list JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::ap
mutableprotected

Definition at line 311 of file JCDFTable.hh.

◆ buffer

template<class JFunction1D_t, class JMaplist_t, class JDistance_t = JTOOLS::JDistance<typename JFunction1D_t::argument_type>>
JTOOLS::JArray<NUMBER_OF_DIMENSIONS, argument_type> JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::buffer
mutableprotected

Definition at line 312 of file JCDFTable.hh.

◆ supervisor

template<class JArgument_t, class JResult_t>
JSupervisor JTOOLS::JFunctional< JArgument_t, JResult_t >::supervisor
protectedinherited

Definition at line 295 of file JFunctional.hh.


The documentation for this class was generated from the following file:
JTOOLS::JFunctional::supervisor
JSupervisor supervisor
Definition: JFunctional.hh:295
JTOOLS::JArray::begin
const_iterator begin() const
get iterator to begin of data
Definition: JArray.hh:188
JTOOLS::pX
pX
Definition: JPolint.hh:625
JPHYSICS::JCDFTable::result_type
JFunction1D_t::result_type result_type
Definition: JCDFTable.hh:59
JTOOLS::JTransformableMultiFunction::NUMBER_OF_DIMENSIONS
Definition: JTransformableMultiFunction.hh:48
JPHYSICS::JCDFTable::intensity
JMultiQuantile_t intensity
Definition: JCDFTable.hh:241
JTOOLS::JMultiFunction::setExceptionHandler
void setExceptionHandler(const supervisor_type &supervisor)
Set the supervisor for handling of exceptions.
Definition: JMultiFunction.hh:158
JTOOLS::j
int j
Definition: JPolint.hh:634
JTOOLS::JMultiMapTransformer::getClone
static JMultiMapTransformer * getClone()
Get clone of default transformer.
Definition: JMultiMapTransformer.hh:124
JPHYSICS::JPDFTransformer
Template definition of transformer of the Probability Density Functions of the time response of a PMT...
Definition: JPDFTransformer.hh:33
JPHYSICS::JCDFTable::NUMBER_OF_DIMENSIONS
Definition: JCDFTable.hh:67
JTOOLS::JMultiFunction< JConstantFunction1D_t, JMaplist_t, JDistance_t >::super_iterator
multimap_type::super_iterator super_iterator
Definition: JMultiFunction.hh:67
JTOOLS::JMultiMapTransformer::array_type
JArray< N, argument_type > array_type
Definition: JMultiMapTransformer.hh:45
JTOOLS::JTransformableMultiFunction::super_const_iterator
multifunction_type::super_const_iterator super_const_iterator
Definition: JTransformableMultiFunction.hh:66
JPHYSICS::JCDFTable::ap
va_list ap
Definition: JCDFTable.hh:311
JPHYSICS::JCDFTable::argument_type
JFunction1D_t::argument_type argument_type
Definition: JCDFTable.hh:58
JPHYSICS::JCDFTable::buffer
JTOOLS::JArray< NUMBER_OF_DIMENSIONS, argument_type > buffer
Definition: JCDFTable.hh:312
JTOOLS::JMultiFunction::compile
void compile()
Compilation.
Definition: JMultiFunction.hh:143
JTOOLS::JMultiFunction::insert
void insert(const JMultiFunction< JPDF_t, JPDFMaplist_t, JPDFDistance_t > &input)
Insert multidimensional input.
Definition: JMultiFunction.hh:122
JTOOLS::makeCDF
JContainer_t::ordinate_type makeCDF(const JContainer_t &input, JMappableCollection< JKey_t, JValue_t > &output, const typename JContainer_t::ordinate_type eps=JMATH::zero)
Conversion of data points to cumulative probability distribition (CDF).
Definition: JToolsToolkit.hh:51
JPHYSICS::JCDFTable::transformer
JLANG::JSharedPointer< transformer_type > transformer
Definition: JCDFTable.hh:243
JMATH::zero
static const JZero zero
Function object to assign zero value.
Definition: JZero.hh:94
JPHYSICS::JCDFTable::insert
void insert(const multikey_t &key, const JPDF_t &value, const typename JPDF_t::ordinate_type eps)
Insert value at given multidimensional key.
Definition: JCDFTable.hh:265
JPHYSICS::JCDFTable::JConstantFunction1D_t
JTOOLS::JConstantFunction1D< double, argument_type > JConstantFunction1D_t
Definition: JCDFTable.hh:71