HepStat


HepStat is a substitute for using a namespace.

One would never instantiate a HepStat object; usage of any of these methods looks like:

HepDouble x = HepStat::erf ( .1 );

A user may wish to improve the readability of algortihm code which uses one method many times by lines like

using HepStat::erf

and later, x = erf(u); will work.

These methods are implemented in separate .cc files so that user code need pull in only the code that is necessary. Time (ROUGH estimates in cycles) and table footprint info is provided in this header.

Author

Mark Fishler

See also

Engines: HepRandomEngine, DRand48Engine , DualRand, HepJamesRandom, Hurd160Engine, Hurd288Engine, MTwistEngine, RandEngine, RanecuEngine, RanluxEngine, Ranlux64Engine, RanshiEngine, TripleRand

Distributions: HepRandom, RandBinomial, RandBit, RandBreitWigner, RandChiSquare, RandExponential, RandFlat, RandGamma, RandGauss, RandGaussQ, RandGaussT, RandGeneral, RandLandau, RandPoisson, RandPoissonQ, RandPoissonT, RandStudentT

Declaration

#include "CLHEP/Random/Stat.h"

Public Member Functions

Constructors
No public constructor
erf
static HepDouble erf(HepDouble x)
Defined in flatToGaussian.cc
erfQ
static HepDouble erfQ(HepDouble x)
Quicker, and with less footprint, than erf and gaussianCDF but only accurate to 7 digits.
flatToGaussian
static HepDouble flatToGaussian (HepDouble r)
This is defined by the satement that if e() provides a uniform random on (0,1)
then flatToGaussian(e()) is distributed as a unit normal Gaussian.
That is, flatToGaussian is the inverse of the c.d.f. of a Gaussian.
Footprint: 30 K
Time: 150 cycles
inverseErf
static HepDouble inverseErf(HepDouble t)
Defined in flatToGaussian.cc
gamml
static HepDouble gammln(HepDouble x)
ln(gamma(x))


15 May 2000
EVC