KLFitter  v1.3.2
Documentation of the KLFitter library -- The Kinematic Likelihood Fitter
Static Public Member Functions | List of all members
KLFitter::ResDoubleGaussBase Class Referenceabstract

A class describing a resolution parameterized with a double Gaussian. More...

#include <ResDoubleGaussBase.h>

Inheritance diagram for KLFitter::ResDoubleGaussBase:
KLFitter::ResolutionBase KLFitter::ResDoubleGaussE_1 KLFitter::ResDoubleGaussE_2 KLFitter::ResDoubleGaussE_3 KLFitter::ResDoubleGaussE_4 KLFitter::ResDoubleGaussE_5 KLFitter::ResDoubleGaussPt

Public Member Functions

Constructors and destructors
 ResDoubleGaussBase (const char *filename)
 The default constructor.
 
 ResDoubleGaussBase (std::vector< double > const &parameters)
 A constructor. More...
 
virtual ~ResDoubleGaussBase ()
 The (defaulted) destructor.
 
Member functions (Get)
virtual double GetMean1 (double x)=0
 Calculate the mean of the first Gaussian from the TF parameters and the value of x. More...
 
virtual double GetSigma1 (double x)=0
 Calculate the width of the first Gaussian from the TF parameters and the value of x. More...
 
virtual double GetAmplitude2 (double x)=0
 Calculate the amplitude of the second Gaussian from the TF parameters and the value of x. More...
 
virtual double GetMean2 (double x)=0
 Calculate the mean of the second Gaussian from the TF parameters and the value of x. More...
 
virtual double GetSigma2 (double x)=0
 Calculate the width of the sedcond Gaussian from the TF parameters and the value of x. More...
 
double GetSigma (double par) override
 Return the approximate width of the TF depending on the measured value of x. More...
 
double logp (double x, double xmeas, bool *good, double=0) override
 Return the probability of the true value of x given the measured value, xmeas. More...
 
- Public Member Functions inherited from KLFitter::ResolutionBase
 ResolutionBase (int npar)
 The default constructor. More...
 
 ResolutionBase (std::vector< double > parameters)
 A constructor. More...
 
virtual ~ResolutionBase ()
 The (defaulted) destructor.
 
int Par (int index, double *par)
 Return a parameter of the parameterization. More...
 
int SetPar (int index, double value)
 Set a parameter value. More...
 
int SetPar (std::vector< double > parameters)
 Set all parameter values. More...
 
int ReadParameters (const char *filename, std::size_t nparameters)
 Read parameter values from ASCII file. More...
 
int Status ()
 Return a status code. More...
 

Static Public Member Functions

static bool CheckDoubleGaussianSanity (double *sigma1, double *amplitude2, double *sigma2)
 Sanity check for double gaussian parameters p2, p3 and p5 (1st sigma, scale and 2nd sigma). More...
 

Additional Inherited Members

- Protected Attributes inherited from KLFitter::ResolutionBase
int fNParameters
 The number of parameters.
 
std::vector< double > fParameters
 The parameter values.
 
int fStatus
 The status of this class (1: ok, 0: error).
 

Detailed Description

A class describing a resolution parameterized with a double Gaussian.

This class offers a simple parameterization of a resolution. The parameterization is a double Gaussian with energy dependent parameters.

Constructor & Destructor Documentation

KLFitter::ResDoubleGaussBase::ResDoubleGaussBase ( std::vector< double > const &  parameters)
explicit

A constructor.

Parameters
parametersThe parameters of the parameterization.

Member Function Documentation

static bool KLFitter::ResDoubleGaussBase::CheckDoubleGaussianSanity ( double *  sigma1,
double *  amplitude2,
double *  sigma2 
)
inlinestatic

Sanity check for double gaussian parameters p2, p3 and p5 (1st sigma, scale and 2nd sigma).

Parameters
sigma1(the 1st sigma).
amplitude2(the scale parameter).
sigma2(the 2nd sigma).
Returns
False if problem with TF.
virtual double KLFitter::ResDoubleGaussBase::GetAmplitude2 ( double  x)
pure virtual

Calculate the amplitude of the second Gaussian from the TF parameters and the value of x.

Parameters
xThe value of x.
Returns
The width.

Implemented in KLFitter::ResDoubleGaussE_1, KLFitter::ResDoubleGaussE_2, KLFitter::ResDoubleGaussE_3, KLFitter::ResDoubleGaussE_4, KLFitter::ResDoubleGaussE_5, and KLFitter::ResDoubleGaussPt.

virtual double KLFitter::ResDoubleGaussBase::GetMean1 ( double  x)
pure virtual

Calculate the mean of the first Gaussian from the TF parameters and the value of x.

Parameters
xThe value of x.
Returns
The width.

Implemented in KLFitter::ResDoubleGaussE_1, KLFitter::ResDoubleGaussE_2, KLFitter::ResDoubleGaussE_3, KLFitter::ResDoubleGaussE_4, KLFitter::ResDoubleGaussE_5, and KLFitter::ResDoubleGaussPt.

virtual double KLFitter::ResDoubleGaussBase::GetMean2 ( double  x)
pure virtual

Calculate the mean of the second Gaussian from the TF parameters and the value of x.

Parameters
xThe value of x.
Returns
The width.

Implemented in KLFitter::ResDoubleGaussE_1, KLFitter::ResDoubleGaussE_2, KLFitter::ResDoubleGaussE_3, KLFitter::ResDoubleGaussE_4, KLFitter::ResDoubleGaussE_5, and KLFitter::ResDoubleGaussPt.

double KLFitter::ResDoubleGaussBase::GetSigma ( double  par)
overridevirtual

Return the approximate width of the TF depending on the measured value of x.

Used to adjust the range of the fit parameter that correspond to the TF.

Parameters
parThe measured value of x.
Returns
The width.

Implements KLFitter::ResolutionBase.

virtual double KLFitter::ResDoubleGaussBase::GetSigma1 ( double  x)
pure virtual

Calculate the width of the first Gaussian from the TF parameters and the value of x.

Parameters
xThe value of x.
Returns
The width.

Implemented in KLFitter::ResDoubleGaussE_1, KLFitter::ResDoubleGaussE_2, KLFitter::ResDoubleGaussE_3, KLFitter::ResDoubleGaussE_4, KLFitter::ResDoubleGaussE_5, and KLFitter::ResDoubleGaussPt.

virtual double KLFitter::ResDoubleGaussBase::GetSigma2 ( double  x)
pure virtual

Calculate the width of the sedcond Gaussian from the TF parameters and the value of x.

Parameters
xThe value of x.
Returns
The width.

Implemented in KLFitter::ResDoubleGaussE_1, KLFitter::ResDoubleGaussE_2, KLFitter::ResDoubleGaussE_3, KLFitter::ResDoubleGaussE_4, KLFitter::ResDoubleGaussE_5, and KLFitter::ResDoubleGaussPt.

double KLFitter::ResDoubleGaussBase::logp ( double  x,
double  xmeas,
bool *  good,
double  = 0 
)
overridevirtual

Return the probability of the true value of x given the measured value, xmeas.

Parameters
xThe true value of x.
xmeasThe measured value of x.
goodFalse if problem with TF.
parOptional additional parameter (not used here).
Returns
The probability.

Reimplemented from KLFitter::ResolutionBase.


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