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 *params, unsigned int n, double *low, double *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 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 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 378 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 682 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 430 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 359 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 626 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 490 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 325 of file MathFuncs.h.

◆ exponentialIntegral()

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

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

◆ flexibleInterp()

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

Definition at line 297 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 193 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 395 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.

◆ landau()

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

Definition at line 308 of file MathFuncs.h.

◆ logNormal()

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

Definition at line 315 of file MathFuncs.h.

◆ logNormalIntegral()

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

Definition at line 604 of file MathFuncs.h.

◆ logNormalIntegralStandard()

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

Definition at line 615 of file MathFuncs.h.

◆ logNormalStandard()

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

Definition at line 320 of file MathFuncs.h.

◆ nll()

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

Definition at line 330 of file MathFuncs.h.

◆ poisson()

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

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