Logo ROOT  
Reference Guide
ROOT::Math::VavilovAccuratePdf Class Reference

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:

  • 0: Norm: Normalization constant
  • 1: x0: Location parameter
  • 2: xi: Width parameter
  • 3: kappa: Parameter \(\kappa\) of the Vavilov distribution
  • 4: beta2: Parameter \(\beta^2\) of the Vavilov distribution

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 IBaseFunctionOneDimClone () 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 IBaseFunctionOneDimClone () 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>

Inheritance diagram for ROOT::Math::VavilovAccuratePdf:
[legend]

Constructor & Destructor Documentation

◆ VavilovAccuratePdf() [1/2]

ROOT::Math::VavilovAccuratePdf::VavilovAccuratePdf ( )

Default constructor.

Definition at line 40 of file VavilovAccuratePdf.cxx.

◆ VavilovAccuratePdf() [2/2]

ROOT::Math::VavilovAccuratePdf::VavilovAccuratePdf ( const double *  p)

Constructor with parameter values.

Parameters
pvector of doubles containing the parameter values (Norm, x0, xi, kappa, beta2).

Definition at line 48 of file VavilovAccuratePdf.cxx.

◆ ~VavilovAccuratePdf()

ROOT::Math::VavilovAccuratePdf::~VavilovAccuratePdf ( )
virtual

Destructor.

Definition at line 61 of file VavilovAccuratePdf.cxx.

Member Function Documentation

◆ Clone()

IBaseFunctionOneDim * ROOT::Math::VavilovAccuratePdf::Clone ( ) const
virtual

Return a clone of the object.

Implements ROOT::Math::IBaseFunctionOneDim.

Definition at line 101 of file VavilovAccuratePdf.cxx.

◆ DoEval()

double ROOT::Math::VavilovAccuratePdf::DoEval ( double  x) const
virtual

Evaluate the function.

Parameters
xThe Landau parameter \(x = \lambda_L\)

Reimplemented from ROOT::Math::IParametricFunctionOneDim.

Definition at line 89 of file VavilovAccuratePdf.cxx.

◆ DoEvalPar()

double ROOT::Math::VavilovAccuratePdf::DoEvalPar ( double  x,
const double *  p 
) const
virtual

Evaluate the function, using parameters p.

Parameters
xThe Landau parameter \(x = \lambda_L\)
pvector of doubles containing the parameter values (Norm, x0, xi, kappa, beta2).

Implements ROOT::Math::IParametricFunctionOneDim.

Definition at line 94 of file VavilovAccuratePdf.cxx.

◆ NPar()

unsigned int ROOT::Math::VavilovAccuratePdf::NPar ( ) const
virtual

Return the number of Parameters.

Implements ROOT::Math::IBaseParam.

Definition at line 74 of file VavilovAccuratePdf.cxx.

◆ ParameterName()

std::string ROOT::Math::VavilovAccuratePdf::ParameterName ( unsigned int  i) const
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.

◆ Parameters()

const double * ROOT::Math::VavilovAccuratePdf::Parameters ( ) const
virtual

Access the parameter values.

Implements ROOT::Math::IBaseParam.

Definition at line 64 of file VavilovAccuratePdf.cxx.

◆ SetParameters()

void ROOT::Math::VavilovAccuratePdf::SetParameters ( const double *  p)
virtual

Set the parameter values.

Parameters
pvector of doubles containing the parameter values (Norm, x0, xi, kappa, beta2).

Implements ROOT::Math::IBaseParam.

Definition at line 68 of file VavilovAccuratePdf.cxx.

Member Data Documentation

◆ fP

double ROOT::Math::VavilovAccuratePdf::fP[5]
private

Definition at line 133 of file VavilovAccuratePdf.h.

Libraries for ROOT::Math::VavilovAccuratePdf:
[legend]

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