Logo ROOT  
Reference Guide
ROOT::Math::VavilovAccurateQuantile Class Reference

Class describing the Vavilov quantile function.

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 71 of file VavilovAccurateQuantile.h.

Public Member Functions

 VavilovAccurateQuantile ()
 Default constructor. More...
 
 VavilovAccurateQuantile (const double *p)
 Constructor with parameter values. More...
 
virtual ~VavilovAccurateQuantile ()
 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 doubleParameters () 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 doubleParameters () 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/VavilovAccurateQuantile.h>

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

Constructor & Destructor Documentation

◆ VavilovAccurateQuantile() [1/2]

ROOT::Math::VavilovAccurateQuantile::VavilovAccurateQuantile ( )

Default constructor.

Definition at line 40 of file VavilovAccurateQuantile.cxx.

◆ VavilovAccurateQuantile() [2/2]

ROOT::Math::VavilovAccurateQuantile::VavilovAccurateQuantile ( 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 VavilovAccurateQuantile.cxx.

◆ ~VavilovAccurateQuantile()

ROOT::Math::VavilovAccurateQuantile::~VavilovAccurateQuantile ( )
virtual

Destructor.

Definition at line 61 of file VavilovAccurateQuantile.cxx.

Member Function Documentation

◆ Clone()

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

Return a clone of the object.

Implements ROOT::Math::IBaseFunctionOneDim.

Definition at line 101 of file VavilovAccurateQuantile.cxx.

◆ DoEval()

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

Evaluate the function.

Parameters
xThe Quantile \(z\) , \(0 \le z \le 1\)

Reimplemented from ROOT::Math::IParametricFunctionOneDim.

Definition at line 89 of file VavilovAccurateQuantile.cxx.

◆ DoEvalPar()

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

Evaluate the function, using parameters p.

Parameters
xThe Quantile \(z\), \(0 \le z \le 1\)
pvector of doubles containing the parameter values (Norm, x0, xi, kappa, beta2).

Implements ROOT::Math::IParametricFunctionOneDim.

Definition at line 94 of file VavilovAccurateQuantile.cxx.

◆ NPar()

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

Return the number of Parameters.

Implements ROOT::Math::IBaseParam.

Definition at line 74 of file VavilovAccurateQuantile.cxx.

◆ ParameterName()

std::string ROOT::Math::VavilovAccurateQuantile::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 VavilovAccurateQuantile.cxx.

◆ Parameters()

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

Access the parameter values.

Implements ROOT::Math::IBaseParam.

Definition at line 64 of file VavilovAccurateQuantile.cxx.

◆ SetParameters()

void ROOT::Math::VavilovAccurateQuantile::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 VavilovAccurateQuantile.cxx.

Member Data Documentation

◆ fP

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

Definition at line 133 of file VavilovAccurateQuantile.h.

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

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