Class describing the Vavilov pdf.
The probability density function of the Vavilov distribution is given by:
\[ p(\lambda; \kappa, \beta^2) = \frac{1}{2 \pi i}\int_{c-i\infty}^{c+i\infty} \phi(s) e^{\lambda s} ds\]
where \(\phi(s) = e^{C} e^{\psi(s)}\) with \( C = \kappa (1+\beta^2 \gamma )\) and
\[\psi(s) = s \ln \kappa + (s+\beta^2 \kappa) \cdot \left ( \int \limits_{0}^{1} \frac{1 - e^{\frac{-st}{\kappa}}}{t} \, dt- \gamma \right ) - \kappa \, e^{\frac{-s}{\kappa}}\]
. \( \gamma = 0.5772156649\dots\) is Euler's constant.
The parameters are:
Benno List, June 2010
Definition at line 70 of file VavilovAccuratePdf.h.
Public Member Functions | |
VavilovAccuratePdf () | |
Default constructor. More... | |
VavilovAccuratePdf (const double *p) | |
Constructor with parameter values. More... | |
virtual | ~VavilovAccuratePdf () |
Destructor. More... | |
virtual IBaseFunctionOneDim * | Clone () const |
Return a clone of the object. More... | |
virtual double | DoEval (double x) const |
Evaluate the function. More... | |
virtual double | DoEvalPar (double x, const double *p) const |
Evaluate the function, using parameters p. More... | |
virtual unsigned int | NPar () const |
Return the number of Parameters. More... | |
virtual std::string | ParameterName (unsigned int i) const |
Return the name of the i-th parameter (starting from zero) More... | |
virtual const double * | Parameters () const |
Access the parameter values. More... | |
virtual void | SetParameters (const double *p) |
Set the parameter values. More... | |
Public Member Functions inherited from ROOT::Math::IParametricFunctionOneDim | |
double | operator() (const double *x, const double *p) const |
multidim-like interface More... | |
double | operator() (double x, const double *p) const |
Evaluate function at a point x and for given parameters p. More... | |
Public Member Functions inherited from ROOT::Math::IBaseFunctionOneDim | |
IBaseFunctionOneDim () | |
virtual | ~IBaseFunctionOneDim () |
virtual destructor More... | |
virtual IBaseFunctionOneDim * | Clone () const =0 |
Clone a function. More... | |
double | operator() (const double *x) const |
Evaluate the function at a point x[]. More... | |
double | operator() (double x) const |
Evaluate the function at a point x Use the a pure virtual private method DoEval which must be implemented by sub-classes. More... | |
Public Member Functions inherited from ROOT::Math::IBaseParam | |
virtual | ~IBaseParam () |
Virtual Destructor (no operations) More... | |
virtual unsigned int | NPar () const =0 |
Return the number of Parameters. More... | |
virtual std::string | ParameterName (unsigned int i) const |
Return the name of the i-th parameter (starting from zero) Overwrite if want to avoid the default name ("Par_0, Par_1, ...") More... | |
virtual const double * | Parameters () const =0 |
Access the parameter values. More... | |
virtual void | SetParameters (const double *p)=0 |
Set the parameter values. More... | |
Private Attributes | |
double | fP [5] |
Additional Inherited Members | |
Public Types inherited from ROOT::Math::IParametricFunctionOneDim | |
typedef IBaseFunctionOneDim | BaseFunc |
Public Types inherited from ROOT::Math::IBaseFunctionOneDim | |
typedef IBaseFunctionOneDim | BaseFunc |
#include <Math/VavilovAccuratePdf.h>
ROOT::Math::VavilovAccuratePdf::VavilovAccuratePdf | ( | ) |
Default constructor.
Definition at line 40 of file VavilovAccuratePdf.cxx.
ROOT::Math::VavilovAccuratePdf::VavilovAccuratePdf | ( | const double * | p | ) |
Constructor with parameter values.
p | vector of doubles containing the parameter values (Norm, x0, xi, kappa, beta2). |
Definition at line 48 of file VavilovAccuratePdf.cxx.
|
virtual |
Destructor.
Definition at line 61 of file VavilovAccuratePdf.cxx.
|
virtual |
Return a clone of the object.
Implements ROOT::Math::IBaseFunctionOneDim.
Definition at line 101 of file VavilovAccuratePdf.cxx.
Evaluate the function.
x | The Landau parameter \(x = \lambda_L\) |
Reimplemented from ROOT::Math::IParametricFunctionOneDim.
Definition at line 89 of file VavilovAccuratePdf.cxx.
Evaluate the function, using parameters p.
x | The Landau parameter \(x = \lambda_L\) |
p | vector of doubles containing the parameter values (Norm, x0, xi, kappa, beta2). |
Implements ROOT::Math::IParametricFunctionOneDim.
Definition at line 94 of file VavilovAccuratePdf.cxx.
|
virtual |
Return the number of Parameters.
Implements ROOT::Math::IBaseParam.
Definition at line 74 of file VavilovAccuratePdf.cxx.
|
virtual |
Return the name of the i-th parameter (starting from zero)
Reimplemented from ROOT::Math::IBaseParam.
Definition at line 78 of file VavilovAccuratePdf.cxx.
|
virtual |
Access the parameter values.
Implements ROOT::Math::IBaseParam.
Definition at line 64 of file VavilovAccuratePdf.cxx.
Set the parameter values.
p | vector of doubles containing the parameter values (Norm, x0, xi, kappa, beta2). |
Implements ROOT::Math::IBaseParam.
Definition at line 68 of file VavilovAccuratePdf.cxx.
|
private |
Definition at line 133 of file VavilovAccuratePdf.h.