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)
 
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.
 
unsigned int getUniformBinning (double low, double high, double val, unsigned int numBins)
 
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)
 
double recursiveFraction (double *a, unsigned int n)
 

Function Documentation

◆ approxErf()

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

Definition at line 393 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 48 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 697 of file MathFuncs.h.

◆ bifurGauss()

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

Definition at line 108 of file MathFuncs.h.

◆ bifurGaussIntegral()

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

Definition at line 445 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 31 of file MathFuncs.h.

◆ cbShape()

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

Definition at line 374 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 641 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 505 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 117 of file MathFuncs.h.

◆ effProd()

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

Definition at line 340 of file MathFuncs.h.

◆ exponentialIntegral()

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

Definition at line 462 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 492 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 312 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 213 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 86 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 410 of file MathFuncs.h.

◆ getUniformBinning()

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

Definition at line 172 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 178 of file MathFuncs.h.

◆ landau()

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

Definition at line 323 of file MathFuncs.h.

◆ logNormal()

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

Definition at line 330 of file MathFuncs.h.

◆ logNormalIntegral()

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

Definition at line 619 of file MathFuncs.h.

◆ logNormalIntegralStandard()

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

Definition at line 630 of file MathFuncs.h.

◆ logNormalStandard()

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

Definition at line 335 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 723 of file MathFuncs.h.

◆ nll()

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

Definition at line 345 of file MathFuncs.h.

◆ poisson()

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

Definition at line 198 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 572 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 130 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 473 of file MathFuncs.h.

◆ product()

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

Definition at line 93 of file MathFuncs.h.

◆ ratio()

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

Definition at line 103 of file MathFuncs.h.

◆ recursiveFraction()

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

Definition at line 363 of file MathFuncs.h.