Jpp  master_rocky-37-gf0c5bc59d
the software that should make you happy
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_type
 
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 __JFunction_t , class __JMaplist_t , class __JDistance_t >
 JCDFTable (const JTransformableMultiFunction< __JFunction_t, __JMaplist_t, __JDistance_t > &input, const typename __JFunction_t::ordinate_type eps=JMATH::zero)
 Constructor. More...
 
template<class JHistogram_t , class __JMaplist_t , class __JDistance_t >
 JCDFTable (const JTransformableMultiHistogram< JHistogram_t, __JMaplist_t, __JDistance_t > &input, const typename JHistogram_t::ordinate_type eps=JMATH::zero)
 Constructor. More...
 
template<class JFunctionTransformer_t >
void transform (const JFunctionTransformer_t &transformer)
 Application of weight function. More...
 
template<class ... Args>
double getNPE (const Args &...args) const
 Get number of photo-electrons. More...
 
template<class ... Args>
double getTime (const Args &...args) const
 Generate arrival time. More...
 
virtual JReaderread (JReader &in) override
 Read CDF from input. More...
 
virtual JWriterwrite (JWriter &out) const override
 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 () override
 Function compilation. More...
 
template<class JValue_t >
void insert (const multikey_type &key, const JValue_t &value, const typename JValue_t::ordinate_type eps)
 Insert value at given multidimensional key. 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 > &value, const __JContents_t eps)
 Insert multi-dimensional histogram at multi-dimensional key. More...
 

Protected Attributes

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 53 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 60 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 61 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 62 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 64 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 66 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 67 of file JCDFTable.hh.

◆ multikey_type

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_type

Definition at line 71 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 73 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 74 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 75 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

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 81 of file JCDFTable.hh.

81  :
83  {}
JLANG::JSharedPointer< transformer_type > transformer
Definition: JCDFTable.hh:231
static JMultiMapTransformer * getClone()
Get clone of default transformer.

◆ JCDFTable() [2/3]

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

Constructor.

Parameters
inputmulti-dimensional PDF
epsminimal step size for CDF

Definition at line 93 of file JCDFTable.hh.

94  :
96  {
97  this->transformer.reset(input.transformer->clone());
98 
99  for (auto i = input.super_begin(); i != input.super_end(); ++i) {
100  this->insert((*i).getKey(), (*i).getValue(), eps);
101  }
102 
103  this->compile();
104  }
void insert(const multikey_type &key, const JValue_t &value, const typename JValue_t::ordinate_type eps)
Insert value at given multidimensional key.
Definition: JCDFTable.hh:253
JLANG::JSharedPointer< transformer_type > transformer

◆ JCDFTable() [3/3]

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

Constructor.

Parameters
inputmulti-dimensional histogram
epsminimal step size for CDF

Definition at line 114 of file JCDFTable.hh.

115  :
117  {
118  this->transformer.reset(input.transformer->clone());
119 
121 
122  this->compile();
123  }
Multidimensional key.
Definition: JMultiKey.hh:69
JLANG::JSharedPointer< transformer_type > transformer

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 132 of file JCDFTable.hh.

133  {
134  for (typename JMultiQuantile_t::super_iterator i = intensity.super_begin(); i != intensity.super_end(); ++i) {
135 
136  const typename transformer_type::array_type array = (*i).getKey();
137  JConstantFunction1D_t& function = (*i).getValue();
138 
139  const double W1 = this->transformer->getWeight(array);
140  const double W2 = transformer .getWeight(array);
141 
142  const result_type y = function(JMATH::zero);
143 
144  function = JConstantFunction1D_t(y * W1 / W2);
145  }
146 
147  this->transformer.reset(transformer.clone());
148  this->compile();
149  }
JFunction1D_t::result_type result_type
Definition: JCDFTable.hh:61
JTOOLS::JConstantFunction1D< double, argument_type > JConstantFunction1D_t
Definition: JCDFTable.hh:73
JMultiQuantile_t intensity
Definition: JCDFTable.hh:229
multimap_type::super_iterator super_iterator
JArray< N, argument_type > array_type
static const JZero zero
Function object to assign zero value.
Definition: JZero.hh:105

◆ getNPE()

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

Get number of photo-electrons.

Parameters
argscomma separated argument list
Returns
number of photo-electrons

Definition at line 159 of file JCDFTable.hh.

160  {
161  const JArray<NUMBER_OF_DIMENSIONS - 1, argument_type> buffer(args...);
162 
163  const double W = transformer->getWeight(buffer);
164  const double npe = intensity.evaluate(buffer.data());
165 
166  return W * npe;
167  }
JFunction1D_t::argument_type argument_type
Definition: JCDFTable.hh:60
One dimensional array of template objects with fixed length.
Definition: JArray.hh:43

◆ getTime()

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

Generate arrival time.

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

Definition at line 177 of file JCDFTable.hh.

178  {
180 
181  const argument_type y = function.evaluate(buffer.data());
182 
183  return transformer->getXn(buffer, y);
184  }

◆ read()

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

Read CDF from input.

Parameters
inreader
Returns
reader

Implements JIO::JSerialisable.

Definition at line 193 of file JCDFTable.hh.

194  {
195  in >> intensity;
196  in >> function;
197 
199 
200  if (buffer.read(in))
201  transformer.reset(buffer.clone());
202  else
204 
205  compile();
206 
207  intensity.setExceptionHandler(new typename JMultiQuantile_t::function_type::JDefaultResult(JMATH::zero));
208  function .setExceptionHandler(new typename JMultiFunction_t::function_type::JDefaultResult(JMATH::zero));
209 
210  return in;
211  }
Template definition of transformer of the probability density function (PDF) of the time response of ...
void setExceptionHandler(const typename function_type::supervisor_type &supervisor)
Set the supervisor for handling of exceptions.

◆ 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
inlineoverridevirtual

Write CDF to output.

Parameters
outwriter
Returns
writer

Implements JIO::JSerialisable.

Definition at line 220 of file JCDFTable.hh.

221  {
222  out << intensity;
223  out << function;
224 
225  return transformer->write(out);
226  }

◆ 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 ( )
inlineoverrideprotectedvirtual

Function compilation.

Definition at line 238 of file JCDFTable.hh.

239  {
240  intensity.compile();
241  function .compile();
242  }
void compile()
Compilation.

◆ insert() [1/2]

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

Insert value at given multidimensional key.

Parameters
keymulti-dimensional key
valuefunction or histogram
epsminimal step size for method JTOOLS::makeCDF

Definition at line 253 of file JCDFTable.hh.

256  {
257  using namespace JPP;
258 
259  try {
260 
261  const typename transformer_type::array_type array(key);
262 
263  JFunction1D_t buffer;
264 
265  const argument_type z = transformer->getXn(array, 1.0) - transformer->getXn(array, 0.0);
266  const result_type V = makeCDF(value, buffer, eps);
267 
269  function .insert(key, buffer);
270  }
271  catch(const JException& error) {
273  }
274  }
General exception.
Definition: JException.hh:24
void insert(const JMultiFunction< __JFunction_t, __JMaplist_t, __JDistance_t > &input)
Insert multidimensional input.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
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).

◆ 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 __JAbscissa_t , class __JContents_t , template< class, class, class > class __JMap_t, class __JDistance_t >
void JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t >::insert ( const JMultiKey< N, argument_type > &  key,
const JHistogramMap< __JAbscissa_t, __JContents_t, __JMap_t, __JDistance_t > &  value,
const __JContents_t  eps 
)
inlineprotected

Insert multi-dimensional histogram at multi-dimensional key.

Parameters
keymultidimensional key
valuemultidimensional histogram
epsminimal step size for CDF

Definition at line 289 of file JCDFTable.hh.

292  {
293  if (value.getSize() > 1) {
294 
295  for (auto j = value.begin(), i = j++; j != value.end(); ++i, ++j) {
296 
297  const __JAbscissa_t x = 0.5 * (i->first + j->first);
298 
299  insert(JMultiKey<N+1, __JAbscissa_t>(key, x), i->second, eps);
300  }
301  }
302  }
int j
Definition: JPolint.hh:792

◆ 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, JMap_t, JResult_t, JDistance_t >, JTOOLS::JSplineMap< JKey_t, JValue_t, JGridMap, JResultType< JValue_t >::result_type, JDistance< JKey_t > >, JTOOLS::JSplineMap< JKey_t, JValue_t, JMap, JResultDerivative< JResultType< JValue_t >::result_type >, JDistance< JKey_t > >, JTOOLS::JSplineMap< JKey_t, JValue_t, JMap, JResultType< JValue_t >::result_type, JDistance< JKey_t > >, JTOOLS::JSplineMap< JKey_t, JValue_t, JGridMap, JResultDerivative< JResultType< JValue_t >::result_type >, JDistance< JKey_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::JSplineFunction< JElement_t, JCollection_t, typename JResultType< typename JElement_t::ordinate_type >::result_type, JDistance_t >, JTOOLS::JPolintFunction< N, JElement_t, JCollection_t, JResultHesse< typename JResultType< typename JElement_t::ordinate_type >::result_type >, JDistance_t >, JTOOLS::JPolintFunction< N, JElement_t, JCollection_t, JResultDerivative< typename JResultType< typename JElement_t::ordinate_type >::result_type >, JDistance_t >, JTOOLS::JPolintFunction< N, JElement_t, JCollection_t, JResultPolynome< M, typename JResultType< typename JElement_t::ordinate_type >::result_type >, JDistance_t >, JTOOLS::JPolintFunction< N, JElement_t, JCollection_t, JResultPDF< typename JResultType< typename JElement_t::ordinate_type >::result_type >, JDistance_t >, JTOOLS::JPolintFunction< 1, JElement_t, JCollection_t, typename JResultType< typename JElement_t::ordinate_type >::result_type, JDistance_t >, JTOOLS::JPolintFunction< 0, JElement_t, JCollection_t, typename JResultType< typename JElement_t::ordinate_type >::result_type, JDistance_t >, JTOOLS::JPolintFunction< N, JElement_t, JCollection_t, typename JResultType< typename JElement_t::ordinate_type >::result_type, JDistance_t >, JTOOLS::JPolfitFunction< N, M, JElement_t, JCollection_t, JResult_t, JDistance_t >, JTOOLS::JPolfitFunction< N, M, JElement_t, JCollection_t, typename JElement_t::ordinate_type, JDistance< typename JElement_t::abscissa_type > >, JTOOLS::JHermiteSplineMap< JKey_t, JValue_t, JMap_t, JResult_t, JDistance_t >, JTOOLS::JHermiteSplineFunction< JElement_t, JCollection_t, JResultPDF< 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::JFunctionObject1D< JArgument_t, JResult_t >, JTOOLS::JExternalFunction1D< JArgument_t, JResult_t >, and JTOOLS::JConstantFunction1D< 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 281 of file JFunctional.hh.

282  {
283  return supervisor;
284  }
JSupervisor supervisor
Definition: JFunctional.hh:310

◆ 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 292 of file JFunctional.hh.

293  {
294  return *supervisor;
295  }

◆ 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 303 of file JFunctional.hh.

304  {
305  this->supervisor = supervisor;
306  }

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 229 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 230 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 231 of file JCDFTable.hh.

◆ supervisor

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

Definition at line 310 of file JFunctional.hh.


The documentation for this class was generated from the following file: