Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::Math::GSLRngCMRG Class Reference

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.
 
GSLRandomEngineoperator= (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 (size_t dim, const double *pars, const double *covmat, double *genpars, double *lmat=nullptr) 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 distribution.
 
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 intMultinomial (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
 
GSLRngWrapperEngine ()
 internal method to return the engine Used by class like GSLMCIntegrator to set the engine
 

#include <Math/GSLRndmEngines.h>

Inheritance diagram for ROOT::Math::GSLRngCMRG:
[legend]

Member Typedef Documentation

◆ BaseType

Constructor & Destructor Documentation

◆ GSLRngCMRG()

ROOT::Math::GSLRngCMRG::GSLRngCMRG ( )

Definition at line 455 of file GSLRndmEngines.cxx.

Libraries for ROOT::Math::GSLRngCMRG:

The documentation for this class was generated from the following files: