ROOT logo
ROOT » ROOFIT » ROOFITCORE » RooMath

class RooMath

Function Members (Methods)

public:
RooMath()
RooMath(const RooMath&)
virtual~RooMath()
static voidcacheCERF(Bool_t flag = kTRUE)
static TClass*Class()
static voidcleanup()
static RooComplexComplexErrFunc(const RooComplex& z)
static RooComplexComplexErrFunc(Double_t re, Double_t im = 0)
static Double_terf(Double_t x)
static Double_terfc(Double_t x)
static RooComplexFastComplexErrFunc(const RooComplex& z)
static Double_tFastComplexErrFuncIm(const RooComplex& z)
static Double_tFastComplexErrFuncRe(const RooComplex& z)
static Double_tinterpolate(Double_t* yArr, Int_t nOrder, Double_t x)
static Double_tinterpolate(Double_t* xa, Double_t* ya, Int_t n, Double_t x)
virtual TClass*IsA() const
static RooComplexITPComplexErrFunc(const RooComplex& z, Int_t nOrder)
static Double_tITPComplexErrFuncIm(const RooComplex& z, Int_t nOrder)
static Double_tITPComplexErrFuncRe(const RooComplex& z, Int_t nOrder)
RooMath&operator=(const RooMath&)
virtual voidShowMembers(TMemberInspector& insp)
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
private:
static const char*cacheFileName()
static voidinitFastCERF(Int_t reBins = 800, Double_t reMin = -4.0, Double_t reMax = 4.0, Int_t imBins = 1000, Double_t imMin = -4.0, Double_t imMax = 6.0)
static Bool_tloadCache()
static voidstoreCache()

Data Members

private:
static Bool_t_cacheTableSwitch activating use of file cache for CERF-LUT
static Int_t_imBinsNumber of grid points in imaginary dimension of CERF-LUT
static double**_imCerfArrayLookup table for Im part of complex error function
static Double_t_imMaxHigh edge of imaginary dimension of CERF-LUT
static Double_t_imMinLow edge of imaginary dimension of CERF-LUT
static Double_t_imRangeRange in imaginary dimension of CERF-LUT
static Double_t_imStepGrid spacing in imaginary dimension of CERF-LUT
static Int_t_reBinsNumber of grid points in real dimension of CERF-LUT
static double**_reCerfArrayLookup table for Re part of complex error function
static Double_t_reMaxHigh edge of real dimension of CERF-LUT
static Double_t_reMinLow edge of real dimension of CERF-LUT
static Double_t_reRangeRange in real dimension of CERF-LUT
static Double_t_reStepGrid spacing in real dimension of CERF-LUT

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

RooComplex FastComplexErrFunc(const RooComplex& z)
Double_t FastComplexErrFuncRe(const RooComplex& z)
Double_t FastComplexErrFuncIm(const RooComplex& z)
void cacheCERF(Bool_t flag = kTRUE)
RooComplex ComplexErrFunc(Double_t re, Double_t im = 0)
 Return CERNlib complex error function for Z(re,im)
RooComplex ComplexErrFunc(const RooComplex& z)
 Return CERNlib complex error function

 This code is translated from the fortran version in the CERN mathlib.
 (see ftp://asisftp.cern.ch/cernlib/share/pro/src/mathlib/gen/c/cwerf64.F)
void initFastCERF(Int_t reBins = 800, Double_t reMin = -4.0, Double_t reMax = 4.0, Int_t imBins = 1000, Double_t imMin = -4.0, Double_t imMax = 6.0)
 Allocate and initialize lookup table for interpolated complex error function
 for given grid parameters
void cleanup()
RooComplex ITPComplexErrFunc(const RooComplex& z, Int_t nOrder)
 Return complex error function interpolated from lookup tabel created
 by initFastCERF(). Interpolation is performed in Im and Re plane
 to specified order.
Double_t ITPComplexErrFuncRe(const RooComplex& z, Int_t nOrder)
 Return real component of complex error function interpolated from
 lookup table created by initFastCERF(). Interpolation is performed in
 Im and Re plane to specified order. This functions is noticably faster
 than ITPComplexErrrFunc().re() because only the real lookup table
 is interpolated
Double_t ITPComplexErrFuncIm(const RooComplex& z, Int_t nOrder)
 Return real component of complex error function interpolated from
 lookup table created by initFastCERF(). Interpolation is performed in
 Im and Re plane to specified order. This functions is noticably faster
 than ITPComplexErrrFunc().im() because only the imaginary lookup table
 is interpolated
Double_t interpolate(Double_t* yArr, Int_t nOrder, Double_t x)
 Interpolate array 'ya' with 'n' elements for 'x' (between 0 and 'n'-1)
Double_t interpolate(Double_t* xa, Double_t* ya, Int_t n, Double_t x)
 Interpolate array 'ya' with 'n' elements for 'xa'
Bool_t loadCache()
 Load the complex error function lookup table from the cache file
void storeCache()
 Store the complex error function lookup table in the cache file
const char* cacheFileName()
 Construct and return the name of the complex error function cache file
Double_t erf(Double_t x)
Double_t erfc(Double_t x)
virtual ~RooMath()
{}