Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
RooFit::Detail::MathFuncs Namespace Reference

Functions

double approxErf (double arg)
 
double bernstein (double x, double xmin, double xmax, double *coefs, int nCoefs)
 The caller needs to make sure that there is at least one coefficient.
 
double bernsteinIntegral (double xlo, double xhi, double xmin, double xmax, double *coefs, int nCoefs)
 
double bifurGauss (double x, double mean, double sigmaL, double sigmaR)
 
double bifurGaussIntegral (double xMin, double xMax, double mean, double sigmaL, double sigmaR)
 
unsigned int binNumber (double x, double coef, double const *boundaries, unsigned int nBoundaries, int nbins, int blo)
 
double binomial (int n, int k)
 Calculates the binomial coefficient n over k.
 
double cbShape (double m, double m0, double sigma, double alpha, double n)
 
double cbShapeIntegral (double mMin, double mMax, double m0, double sigma, double alpha, double n)
 
double chebychev (double *coeffs, unsigned int nCoeffs, double x_in, double xMin, double xMax)
 
double chebychevIntegral (double const *coeffs, unsigned int nCoeffs, double xMin, double xMax, double xMinFull, double xMaxFull)
 
double constraintSum (double const *comp, unsigned int compSize)
 
double efficiency (double effFuncVal, int catIndex, int sigCatIndex)
 
double effProd (double eff, double pdf)
 
double exponentialIntegral (double xMin, double xMax, double constant)
 
double fast_fma (double x, double y, double z) noexcept
 use fast FMA if available, fall back to normal arithmetic if not
 
double flexibleInterp (unsigned int code, double const *params, unsigned int n, double const *low, double const *high, double boundary, double nominal, int doCutoff)
 
double flexibleInterpSingle (unsigned int code, double low, double high, double boundary, double nominal, double paramVal, double res)
 
double gaussian (double x, double mean, double sigma)
 Function to evaluate an un-normalized RooGaussian.
 
double gaussianIntegral (double xMin, double xMax, double mean, double sigma)
 Function to calculate the integral of an un-normalized RooGaussian over x.
 
double interpolate1d (double low, double high, double val, unsigned int numBins, double const *vals)
 
double landau (double x, double mu, double sigma)
 
double logNormal (double x, double k, double m0)
 
double logNormalIntegral (double xMin, double xMax, double m0, double k)
 
double logNormalIntegralStandard (double xMin, double xMax, double mu, double sigma)
 
double logNormalStandard (double x, double sigma, double mu)
 
double multiVarGaussian (int n, const double *x, const double *mu, const double *covI)
 
double nll (double pdf, double weight, int binnedL, int doBinOffset)
 
double poisson (double x, double par)
 
double poissonIntegral (int code, double mu, double x, double integrandMin, double integrandMax, unsigned int protectNegative)
 
template<bool pdfMode = false>
double polynomial (double const *coeffs, int nCoeffs, int lowestOrder, double x)
 In pdfMode, a coefficient for the constant term of 1.0 is implied if lowestOrder > 0.
 
template<bool pdfMode = false>
double polynomialIntegral (double const *coeffs, int nCoeffs, int lowestOrder, double xMin, double xMax)
 In pdfMode, a coefficient for the constant term of 1.0 is implied if lowestOrder > 0.
 
double product (double const *factors, std::size_t nFactors)
 
double ratio (double numerator, double denominator)
 
unsigned int rawBinNumber (double x, double const *boundaries, std::size_t nBoundaries)
 
double recursiveFraction (double *a, unsigned int n)
 
double stepFunctionIntegral (double xmin, double xmax, std::size_t nBins, double const *boundaries, double const *coefs)
 
unsigned int uniformBinNumber (double low, double high, double val, unsigned int numBins, double coef)
 

Function Documentation

◆ approxErf()

double RooFit::Detail::MathFuncs::approxErf ( double arg)
inline

Definition at line 428 of file MathFuncs.h.

◆ bernstein()

double RooFit::Detail::MathFuncs::bernstein ( double x,
double xmin,
double xmax,
double * coefs,
int nCoefs )
inline

The caller needs to make sure that there is at least one coefficient.

Definition at line 47 of file MathFuncs.h.

◆ bernsteinIntegral()

double RooFit::Detail::MathFuncs::bernsteinIntegral ( double xlo,
double xhi,
double xmin,
double xmax,
double * coefs,
int nCoefs )
inline

Definition at line 734 of file MathFuncs.h.

◆ bifurGauss()

double RooFit::Detail::MathFuncs::bifurGauss ( double x,
double mean,
double sigmaL,
double sigmaR )
inline

Definition at line 107 of file MathFuncs.h.

◆ bifurGaussIntegral()

double RooFit::Detail::MathFuncs::bifurGaussIntegral ( double xMin,
double xMax,
double mean,
double sigmaL,
double sigmaR )
inline

Definition at line 480 of file MathFuncs.h.

◆ binNumber()

unsigned int RooFit::Detail::MathFuncs::binNumber ( double x,
double coef,
double const * boundaries,
unsigned int nBoundaries,
int nbins,
int blo )
inline

Definition at line 190 of file MathFuncs.h.

◆ binomial()

double RooFit::Detail::MathFuncs::binomial ( int n,
int k )
inline

Calculates the binomial coefficient n over k.

Equivalent to TMath::Binomial, but inlined.

Definition at line 30 of file MathFuncs.h.

◆ cbShape()

double RooFit::Detail::MathFuncs::cbShape ( double m,
double m0,
double sigma,
double alpha,
double n )
inline

Definition at line 408 of file MathFuncs.h.

◆ cbShapeIntegral()

double RooFit::Detail::MathFuncs::cbShapeIntegral ( double mMin,
double mMax,
double m0,
double sigma,
double alpha,
double n )
inline

Definition at line 676 of file MathFuncs.h.

◆ chebychev()

double RooFit::Detail::MathFuncs::chebychev ( double * coeffs,
unsigned int nCoeffs,
double x_in,
double xMin,
double xMax )
inline

Definition at line 139 of file MathFuncs.h.

◆ chebychevIntegral()

double RooFit::Detail::MathFuncs::chebychevIntegral ( double const * coeffs,
unsigned int nCoeffs,
double xMin,
double xMax,
double xMinFull,
double xMaxFull )
inline

Definition at line 540 of file MathFuncs.h.

◆ constraintSum()

double RooFit::Detail::MathFuncs::constraintSum ( double const * comp,
unsigned int compSize )
inline

Definition at line 163 of file MathFuncs.h.

◆ efficiency()

double RooFit::Detail::MathFuncs::efficiency ( double effFuncVal,
int catIndex,
int sigCatIndex )
inline

Definition at line 116 of file MathFuncs.h.

◆ effProd()

double RooFit::Detail::MathFuncs::effProd ( double eff,
double pdf )
inline

Definition at line 374 of file MathFuncs.h.

◆ exponentialIntegral()

double RooFit::Detail::MathFuncs::exponentialIntegral ( double xMin,
double xMax,
double constant )
inline

Definition at line 497 of file MathFuncs.h.

◆ fast_fma()

double RooFit::Detail::MathFuncs::fast_fma ( double x,
double y,
double z )
inlinenoexcept

use fast FMA if available, fall back to normal arithmetic if not

Definition at line 527 of file MathFuncs.h.

◆ flexibleInterp()

double RooFit::Detail::MathFuncs::flexibleInterp ( unsigned int code,
double const * params,
unsigned int n,
double const * low,
double const * high,
double boundary,
double nominal,
int doCutoff )
inline

Definition at line 346 of file MathFuncs.h.

◆ flexibleInterpSingle()

double RooFit::Detail::MathFuncs::flexibleInterpSingle ( unsigned int code,
double low,
double high,
double boundary,
double nominal,
double paramVal,
double res )
inline

Definition at line 232 of file MathFuncs.h.

◆ gaussian()

double RooFit::Detail::MathFuncs::gaussian ( double x,
double mean,
double sigma )
inline

Function to evaluate an un-normalized RooGaussian.

Definition at line 85 of file MathFuncs.h.

◆ gaussianIntegral()

double RooFit::Detail::MathFuncs::gaussianIntegral ( double xMin,
double xMax,
double mean,
double sigma )
inline

Function to calculate the integral of an un-normalized RooGaussian over x.

To calculate the integral over mean, just interchange the respective values of x and mean.

Parameters
xMinMinimum value of variable to integrate wrt.
xMaxMaximum value of of variable to integrate wrt.
meanMean.
sigmaSigma.
Returns
The integral of an un-normalized RooGaussian over the value in x.

Definition at line 445 of file MathFuncs.h.

◆ interpolate1d()

double RooFit::Detail::MathFuncs::interpolate1d ( double low,
double high,
double val,
unsigned int numBins,
double const * vals )
inline

Definition at line 197 of file MathFuncs.h.

◆ landau()

double RooFit::Detail::MathFuncs::landau ( double x,
double mu,
double sigma )
inline

Definition at line 357 of file MathFuncs.h.

◆ logNormal()

double RooFit::Detail::MathFuncs::logNormal ( double x,
double k,
double m0 )
inline

Definition at line 364 of file MathFuncs.h.

◆ logNormalIntegral()

double RooFit::Detail::MathFuncs::logNormalIntegral ( double xMin,
double xMax,
double m0,
double k )
inline

Definition at line 654 of file MathFuncs.h.

◆ logNormalIntegralStandard()

double RooFit::Detail::MathFuncs::logNormalIntegralStandard ( double xMin,
double xMax,
double mu,
double sigma )
inline

Definition at line 665 of file MathFuncs.h.

◆ logNormalStandard()

double RooFit::Detail::MathFuncs::logNormalStandard ( double x,
double sigma,
double mu )
inline

Definition at line 369 of file MathFuncs.h.

◆ multiVarGaussian()

double RooFit::Detail::MathFuncs::multiVarGaussian ( int n,
const double * x,
const double * mu,
const double * covI )
inline

Definition at line 760 of file MathFuncs.h.

◆ nll()

double RooFit::Detail::MathFuncs::nll ( double pdf,
double weight,
int binnedL,
int doBinOffset )
inline

Definition at line 379 of file MathFuncs.h.

◆ poisson()

double RooFit::Detail::MathFuncs::poisson ( double x,
double par )
inline

Definition at line 217 of file MathFuncs.h.

◆ poissonIntegral()

double RooFit::Detail::MathFuncs::poissonIntegral ( int code,
double mu,
double x,
double integrandMin,
double integrandMax,
unsigned int protectNegative )
inline

Definition at line 607 of file MathFuncs.h.

◆ polynomial()

template<bool pdfMode = false>
double RooFit::Detail::MathFuncs::polynomial ( double const * coeffs,
int nCoeffs,
int lowestOrder,
double x )
inline

In pdfMode, a coefficient for the constant term of 1.0 is implied if lowestOrder > 0.

Definition at line 129 of file MathFuncs.h.

◆ polynomialIntegral()

template<bool pdfMode = false>
double RooFit::Detail::MathFuncs::polynomialIntegral ( double const * coeffs,
int nCoeffs,
int lowestOrder,
double xMin,
double xMax )
inline

In pdfMode, a coefficient for the constant term of 1.0 is implied if lowestOrder > 0.

Definition at line 508 of file MathFuncs.h.

◆ product()

double RooFit::Detail::MathFuncs::product ( double const * factors,
std::size_t nFactors )
inline

Definition at line 92 of file MathFuncs.h.

◆ ratio()

double RooFit::Detail::MathFuncs::ratio ( double numerator,
double denominator )
inline

Definition at line 102 of file MathFuncs.h.

◆ rawBinNumber()

unsigned int RooFit::Detail::MathFuncs::rawBinNumber ( double x,
double const * boundaries,
std::size_t nBoundaries )
inline

Definition at line 178 of file MathFuncs.h.

◆ recursiveFraction()

double RooFit::Detail::MathFuncs::recursiveFraction ( double * a,
unsigned int n )
inline

Definition at line 397 of file MathFuncs.h.

◆ stepFunctionIntegral()

double RooFit::Detail::MathFuncs::stepFunctionIntegral ( double xmin,
double xmax,
std::size_t nBins,
double const * boundaries,
double const * coefs )
inline

Definition at line 776 of file MathFuncs.h.

◆ uniformBinNumber()

unsigned int RooFit::Detail::MathFuncs::uniformBinNumber ( double low,
double high,
double val,
unsigned int numBins,
double coef )
inline

Definition at line 172 of file MathFuncs.h.