Combined multiple recursive generator (L'Ecuyer) see here
Definition at line 454 of file GSLRndmEngines.h.
Public Types | |
typedef GSLRandomEngine | BaseType |
Public Member Functions | |
GSLRngCMRG () | |
Public Member Functions inherited from ROOT::Math::GSLRandomEngine | |
GSLRandomEngine () | |
default constructor. | |
GSLRandomEngine (const GSLRandomEngine &eng) | |
Copy constructor : clone the contained GSL generator. | |
GSLRandomEngine (GSLRngWrapper *rng) | |
create from an existing rng. | |
virtual | ~GSLRandomEngine () |
call Terminate() | |
void | Initialize () |
initialize the generator If no rng is present the default one based on Mersenne and Twister is created | |
unsigned long | IntRndm () const |
Generate an integer number between [0,max_generator-1] (including 0 and max-1) if max is larger than available range of algorithm an error message is printed and zero is returned. | |
unsigned long | MaxInt () const |
return the maximum integer +1 a generator can handle | |
unsigned long | MinInt () const |
return the minimum integer a generator can handle typically this value is 0 | |
std::string | Name () const |
return name of generator | |
double | operator() () const |
Generate a random number between ]0,1] 0 is excluded and 1 is included. | |
GSLRandomEngine & | operator= (const GSLRandomEngine &eng) |
Assignment operator : make a deep copy of the contained GSL generator. | |
void | RandomArray (double *begin, double *end) const |
Generate an array of random numbers The iterators points to the random numbers. | |
template<class Iterator > | |
void | RandomArray (Iterator begin, Iterator end) const |
Generate an array of random numbers. | |
double | Rndm () const |
Generate a random number between ]0,1] 0 is excluded and 1 is included. | |
unsigned long | RndmInt (unsigned long max) const |
Generate an integer number between [0,max-1] (including 0 and max-1) if max is larger than available range of algorithm an error message is printed and zero is returned. | |
void | SetSeed (unsigned int seed) const |
set the random generator seed | |
unsigned int | Size () const |
return the state size of generator | |
void | Terminate () |
delete pointer to contained rng | |
double | Gaussian (double sigma) const |
Gaussian distribution - default method is Box-Muller (polar method) | |
double | GaussianZig (double sigma) const |
Gaussian distribution - Ziggurat method. | |
double | GaussianRatio (double sigma) const |
Gaussian distribution - Ratio method. | |
double | GaussianTail (double a, double sigma) const |
Gaussian Tail distribution. | |
void | Gaussian2D (double sigmaX, double sigmaY, double rho, double &x, double &y) const |
Bivariate Gaussian distribution with correlation. | |
void | GaussianND (const int dim, double *pars, double *covmat, double *genpars) const |
Multivariate Gaussian distribution. | |
double | Exponential (double mu) const |
Exponential distribution. | |
double | Cauchy (double a) const |
Cauchy distribution. | |
double | Landau () const |
Landau distribution. | |
double | Gamma (double a, double b) const |
Gamma distribution. | |
double | Beta (double a, double b) const |
Beta distribution. | |
double | LogNormal (double zeta, double sigma) const |
Log Normal distribution. | |
double | ChiSquare (double nu) const |
Chi square distribution. | |
double | FDist (double nu1, double nu2) const |
F distrbution. | |
double | tDist (double nu) const |
t student distribution | |
double | Rayleigh (double sigma) const |
Rayleigh distribution. | |
double | Logistic (double a) const |
Logistic distribution. | |
double | Pareto (double a, double b) const |
Pareto distribution. | |
void | Dir2D (double &x, double &y) const |
generate random numbers in a 2D circle of radious 1 | |
void | Dir3D (double &x, double &y, double &z) const |
generate random numbers in a 3D sphere of radious 1 | |
unsigned int | Poisson (double mu) const |
Poisson distribution. | |
unsigned int | Binomial (double p, unsigned int n) const |
Binomial distribution. | |
unsigned int | NegativeBinomial (double p, double n) const |
Negative Binomial distribution. | |
std::vector< unsigned int > | Multinomial (unsigned int ntot, const std::vector< double > &p) const |
Multinomial distribution. | |
Additional Inherited Members | |
Protected Member Functions inherited from ROOT::Math::GSLRandomEngine | |
void | SetType (GSLRngWrapper *r) |
internal method used by the derived class to set the type of generators | |
GSLRngWrapper * | Engine () |
internal method to return the engine Used by class like GSLMCIntegrator to set the engine | |
#include <Math/GSLRndmEngines.h>
Definition at line 456 of file GSLRndmEngines.h.
ROOT::Math::GSLRngCMRG::GSLRngCMRG | ( | ) |
Definition at line 443 of file GSLRndmEngines.cxx.