library: libRooFit #include "RooMath.h"

# RooMath

class description - source file - inheritance tree (.pdf)

## class RooMath

| Inheritance Chart:

`RooMath`

        private:

          static const char* cacheFileName() const
                 static 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)
               static Bool_t loadCache()
                 static void storeCache()

        public:

                            RooMath()
                            RooMath(const RooMath&)
                    virtual ~RooMath()
                static void cacheCERF(Bool_t flag = kTRUE)
             static TClass* Class()
          static RooComplex ComplexErrFunc(Double_t re, Double_t im = 0)
          static RooComplex ComplexErrFunc(const RooComplex& z)
            static Double_t erf(Double_t x)
            static Double_t erfc(Double_t x)
          static RooComplex FastComplexErrFunc(const RooComplex& z)
            static Double_t FastComplexErrFuncIm(const RooComplex& z)
            static Double_t FastComplexErrFuncRe(const RooComplex& z)
            static Double_t interpolate(Double_t* yArr, Int_t nOrder, Double_t x)
            static Double_t interpolate(Double_t* xa, Double_t* ya, Int_t n, Double_t x)
            virtual TClass* IsA() const
          static RooComplex ITPComplexErrFunc(const RooComplex& z, Int_t nOrder)
            static Double_t ITPComplexErrFuncIm(const RooComplex& z, Int_t nOrder)
            static Double_t ITPComplexErrFuncRe(const RooComplex& z, Int_t nOrder)
                   RooMath& operator=(const RooMath&)
               virtual void ShowMembers(TMemberInspector& insp, char* parent)
               virtual void Streamer(TBuffer& b)
                       void StreamerNVirtual(TBuffer& b)

### Data Members

        private:

          static double** _imCerfArray  Lookup table for Im part of complex error function
          static double** _reCerfArray  Lookup table for Re part of complex error function
             static Int_t _reBins       Number of grid points in real dimension of CERF-LUT
          static Double_t _reMin        Low edge of real dimension of CERF-LUT
          static Double_t _reMax        High edge of real dimension of CERF-LUT
          static Double_t _reRange      Range in real dimension of CERF-LUT
          static Double_t _reStep       Grid spacing in real dimension of CERF-LUT
             static Int_t _imBins       Number of grid points in imaginary dimension of CERF-LUT
          static Double_t _imMin        Low edge of imaginary dimension of CERF-LUT
          static Double_t _imMax        High edge of imaginary dimension of CERF-LUT
          static Double_t _imRange      Range in imaginary dimension of CERF-LUT
          static Double_t _imStep       Grid spacing in imaginary dimension of CERF-LUT
            static Bool_t _cacheTable   Switch activating use of file cache for CERF-LUT

## Class Description

RooComplex ComplexErrFunc(Double_t re, Double_t im)

     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, Double_t reMin, Double_t reMax, Int_t imBins, Double_t imMin, Double_t imMax)

     Allocate and initialize lookup table for interpolated complex error function
     for given grid parameters

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 ya[], Int_t n, 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)

### Inline Functions

                   void ~RooMath()
             RooComplex FastComplexErrFunc(const RooComplex& z)
               Double_t FastComplexErrFuncRe(const RooComplex& z)
               Double_t FastComplexErrFuncIm(const RooComplex& z)
                   void cacheCERF(Bool_t flag = kTRUE)
                TClass* Class()
                TClass* IsA() const
                   void ShowMembers(TMemberInspector& insp, char* parent)
                   void Streamer(TBuffer& b)
                   void StreamerNVirtual(TBuffer& b)
                RooMath RooMath()
                RooMath RooMath(const RooMath&)
               RooMath& operator=(const RooMath&)

Last update: Tue Jun 28 18:13:45 2005
Copyright (c) 2000-2005, Regents of the University of California *